재학습이 가능하기 때문에 최대 깊 이를 3~4개 이상 사용하면 안 된다고 들었기 때문에 이 상황이 매우 혼란스럽습니다. 하지만 재학습 시 모델이 이와 같이 작동하는 것은 훈련되지 않은 모델처럼 보입니다. .
나는 그러한 상황에서 선택할 의사 결정 트리의 깊이 또는 어떤 모델조차도 일반적으로이 방향으로 더 작업 할 가치가 있는지, 아마도 무언가가 누락되었는지 (예 : 데이터 세트가 100 행이 아님), 더 많은 예측자를 추가 할 수 있는지 여부 및 그러한 크기의 데이터 세트에 얼마나 더 추가 할 수 있는지 (2-5 개 더 추가 할 것임) 이해하지 못합니다.
Elvin Nasirov #: 재훈련이 가능하기 때문에 최대 깊이를 3-4 이상으로 사용해서는 안된다고 들었 기 때문에이 상황에 매우 혼란 스럽습니다. 그러나 이것이 모델이 재 훈련 될 때 작동하는 방식입니까, 그것은 훈련되지 않은 모델처럼 보입니다.
나는 그러한 상황에서 선택할 의사 결정 트리의 깊이 또는 어떤 모델조차도이 방향으로 더 작업 할 가치가 있는지, 일반적으로 무언가 누락되었는지 (예 : 데이터 세트가 100 행이 아닌 경우), 더 많은 예측자를 추가 할 수 있는지 여부 및 그러한 크기의 데이터 세트에 얼마나 더 추가 할 수 있는지 (2-5 개를 더 추가 할 것임) 이해하지 못합니다.
Join our FREE Discord community https://discord.gg/zhvUwUUhFirst 5 days of January bullish were followed by Full-year gains 83% of the time since 1950.Earnin...
이 경우 새로운 것은 지그재그와 그 지그재그를 따라 흐르는 채널인데, 이것이 바로 엔지니어링의 아방가르드입니다.
그게 전부가 아닙니다.
허용된 것의 5%에 불과합니다.)))
마지막 단어와 햄버거와 같습니다.))
항상 자신을 정당화할 기회를 스스로에게 주어야 합니다.
안녕하세요, 여러분!
누군가 조언을 해 주실 수 있을까요? "DecisionTreeClassifier" 모델을 사용하여 그날의 통화 쌍의 방향(상승 또는 하락)을 예측하려고 합니다.
예측을 위해 5개의 예측 변수만 사용하며, 예측 결과는 상승(1) 또는 하락(-1) 추세입니다. 데이터 집합 크기: 999행, 6열(데이터 집합 첨부).
그런데 'max_depth'를 늘리면 훈련 샘플과 테스트 샘플의 정확도가 동시에 증가하는 문제가 발생했습니다. 테스트 샘플의 정확도는 증가를 멈추고 최대_뎁스=22에서 0.780000과 같은 상수가 됩니다. max_depth의 다른 값에서의 결과:
1) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=3)
훈련 세트의 정확도: 0.539424 테스트 세트의 정확도: 0.565000
2) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=5)
훈련 세트의 정확도: 0.579474 테스트 세트의 정확도: 0.585000
3) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=7)
훈련 세트의 정확도: 0.637046 테스트 세트의 정확도: 0.640000
4) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=9)
훈련 세트의 정확도: 0.667084 테스트 세트의 정확도: 0.700000
5) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=11)
훈련 세트의 정확도: 0.700876 테스트 세트의 정확도: 0.710000
6) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=13)
훈련 세트의 정확도: 0.720901 테스트 세트의 정확도: 0.720000
7) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=15)
훈련 세트의 정확도: 0.734668 테스트 세트의 정확도: 0.740000
8) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=17)
훈련 세트의 정확도: 0.747184 테스트 세트의 정확도: 0.760000
9) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=19)
훈련 세트의 정확도: 0.755945 테스트 세트의 정확도: 0.765000
10) clf_20=DecisionTreeClassifier(criterion='엔트로피', max_depth=22)
훈련 세트의 정확도: 0.760951 테스트 세트의 정확도: 0.780000
재학습이 가능하기 때문에 최대 깊 이를 3~4개 이상 사용하면 안 된다고 들었기 때문에 이 상황이 매우 혼란스럽습니다. 하지만 재학습 시 모델이 이와 같이 작동하는 것은 훈련되지 않은 모델처럼 보입니다. .나는 그러한 상황에서 선택할 의사 결정 트리의 깊이 또는 어떤 모델조차도 일반적으로이 방향으로 더 작업 할 가치가 있는지, 아마도 무언가가 누락되었는지 (예 : 데이터 세트가 100 행이 아님), 더 많은 예측자를 추가 할 수 있는지 여부 및 그러한 크기의 데이터 세트에 얼마나 더 추가 할 수 있는지 (2-5 개 더 추가 할 것임) 이해하지 못합니다.
코드는 간단하며 데이터 세트와 함께 첨부합니다:
나는 그러한 상황에서 선택할 의사 결정 트리의 깊이 또는 어떤 모델조차도이 방향으로 더 작업 할 가치가 있는지, 일반적으로 무언가 누락되었는지 (예 : 데이터 세트가 100 행이 아닌 경우), 더 많은 예측자를 추가 할 수 있는지 여부 및 그러한 크기의 데이터 세트에 얼마나 더 추가 할 수 있는지 (2-5 개를 더 추가 할 것임) 이해하지 못합니다.
코드는 간단하며 데이터 세트와 함께 첨부합니다:
안녕하세요.
더 많은 분할 수 - 더 많은 메모리 = 샘플 학습의 위험.
저는 파이썬에 능숙하지는 않지만:
1. 혼합하지 않고 샘플을 분할해 보세요.
2. 축소된 샘플이 아닌 전체 샘플에 대해 학습하고 있는 것 같습니다.
안녕하세요.
분할 횟수 증가-메모리 증가 = 샘플 학습의 위험성 증가.
저는 파이썬에 능숙하지는 않지만:
1. 혼합하지 않고 샘플을 분할해 보세요.
2. 축소된 샘플이 아닌 전체 샘플로 훈련하고 있는 것 같습니다.
감사합니다! 맞는 것 같습니다.
위 코드에서 "clf_20.fit(X, y)"를 "clf_20.fit(X_train, y_train)"으로 바꾸니 그림이 거의 50/50으로 바뀌었습니다.
감사합니다! 네 말이 맞아요.
위 코드에서 "clf_20.fit(X, y)"를 "clf_20.fit(X_train, y_train)"으로 바꿨더니 그림이 거의 50 대 50으로 바뀌었습니다.
너무 좋은 결과는 항상 코드에서 버그를 찾기 시작해야 하는 이유이기 때문에 이런 결과가 나오는 것은 정상입니다.
너무 좋은 결과는 항상 코드의 버그를 찾기 시작해야 하는 이유입니다.
다른 질문이 하나 더 있습니다.
최대_뎁스=1에서 가장 좋은 결과를 얻을 수 있으며 다음과 같이 보입니다:
훈련 세트의 정확도: 0.515021 테스트 세트의 정확도: 0.503333
동전을 던질 확률과 같을 정도로 매우 나쁜 결과인 것 같습니다. 아니면 이것을 좋은 결과로 간주하고 외환 이동 확률과 동전 던지기로 결과 확률을 평준화할 수 있는 공식화를 찾았다고 결론을 내릴 수 있을까요?
즉, 예측 변수의 각 조합에 대해 상승 또는 하락이라는 두 가지 동등한 시장 변동 변형이 있는 상황이므로 현재 조합에서 여전히 상승 또는 하락을 지정할 수 있는 데이터 세트를 보완해야 합니다.
또 다른 질문이 나왔습니다.
최대_뎁스=1에서 최상의 결과를 얻을 수 있으며 다음과 같이 보입니다:
훈련 세트의 정확도: 0.515021 테스트 세트의 정확도: 0.503333
동전을 던질 확률과 같을 정도로 매우 나쁜 결과인 것 같습니다. 아니면 이것을 좋은 결과로 간주하고 외환 이동 확률과 동전 던지기 확률을 평준화할 수 있는 공식화를 찾았다고 결론을 내릴 수 있을까요?
즉, 예측 변수의 각 조합에 대해 시장 움직임의 상승 또는 하락이라는 두 가지 동등한 변형이 있는 상황이므로 현재 조합에서 여전히 상승 또는 하락을 지정할 수 있는 데이터 세트를 보완할 필요가 있습니다.
먼저 훈련 결과를 평가하는 다른 메트릭인 리콜(완전성) 및 정밀도(정확도)에 대해 읽어보세요. 특히 불균형 샘플링과 관련이 있습니다. 이 전략은 정답과 오답의 확률이 동일한 분류에 대해 긍정적인 재정적 결과를 도출하는 것일 수 있습니다.
좀 더 복잡하지만 논리적인 목표 마크업을 고려해 보세요. 하루가 개장 시점에 어떻게 마감될지 결정하는 것은 하루 개장 시점의 몇 퍼센트만큼 상승 및 하락할 확률을 결정하는 것보다 더 어려운 일중 패턴을 식별할 확률이 있습니다.
저에게는 샘플이 너무 작습니다.
시장을 설명할 수 있는 예측 변수를 만들어 보세요. 제 생각에는 예측 지표에서 차트를 보지 않고도 차트 상황을 복원 할 수 있어야합니다.
훈련을 위해 CatBoost를 사용해 보는 것이 좋습니다. 모델을 빠르게 빌드하고 목발없이 MT5에서 작업하기 위해 모델을 코드로 전송하는 문제가 해결됩니다.
최대_뎁스=1일 때 가장 좋은 결과를 얻을 수 있으며 다음과 같이 표시됩니다:
훈련 세트의 정확도: 0.515021 테스트 세트의 정확도: 0.503333
또한 가장 좋은 결과는 깊이=1에서 나타나는데, 이는 특징 중 하나에 대해 단 한 번만 분할이 이루어졌음을 의미합니다. 트리를 더 분할하면 훈련에서는 과훈련이 발생하고 테스트에서는 결과가 나빠집니다.
또한 가장 좋은 결과는 깊이=1에서 나타나는데, 이는 피처 중 하나에서 단 한 번의 분할이 이루어졌음을 의미합니다. 트리를 더 분할하면 훈련에 대한 재학습과 테스트 결과의 악화로 이어집니다.
어제 결과를 확인한 결과 모든 사례에 대한 모델이 평균적으로 "1"의 예측을 제공하므로 50/50으로 나타났습니다. 모델 없이도 할 수 있습니다. 항상 "위로"라고 말하면됩니다.
이것이 제가 이해하는 지지와 저항 수준입니다.....
모든 사람이 이해하지는 못하겠지만, 이해한다면 그들에게 찬사를 보냅니다....