트레이딩의 머신러닝: 이론, 모델, 실전 및 알고리즘 트레이딩 - 페이지 1704

 
마이클 마르쿠카이테스 :

오류 오류가 다릅니다. 작은 실수가 큰 영향을 미칠 수 있습니다.

그리고 NN은 중복 데이터를 잡지 않도록 요청받습니다. 반복적인 데이터가 없는 상황에서 올바른 결과를 얻기 위해 숨겨진 패턴을 식별해야 합니다. 일반화의 개념입니다. 유한한 데이터 영역이 있지만 해당 데이터의 50%만 있는 경우. 네트워크는 훈련되었으며 패턴을 식별하면 본 적이 없는 나머지 데이터를 구축할 수 있습니다. 네트워크가 자체적으로 그리는 누락된 픽셀이 있는 오래된 비디오를 복원하는 것과 같습니다.

음, 이것은 통계적 접근입니다! 예를 들어, 다른 삼각형의 사진이 20장 있습니다. 21일에는 삼각형에 빗변이 없습니다. 나는 수집된 통계를 기반으로 이것이 과소 그려진 삼각형임을 쉽게 결정할 수 있습니다 - (각 사진에 삼각형이 있습니다). 즉, 삼각형 그리기의 오류는 이미 일반적으로 통계를 가지고 있기 때문에 중요하지 않습니다. 이 원칙이 국회에 통하지 않습니까?
 
피터 코노우 :
음, 이것은 통계적 접근입니다! 예를 들어, 다른 삼각형의 사진이 20장 있습니다. 21일에는 삼각형에 빗변이 없습니다. 나는 수집된 통계를 기반으로 이것이 과소 그려진 삼각형임을 쉽게 결정할 수 있습니다. 각 사진에는 삼각형이 있습니다. 즉, 삼각형 그리기의 오류는 이미 일반적으로 통계를 가지고 있기 때문에 나에게 중요하지 않습니다. 이 원칙이 국회에 통하지 않습니까?
글쎄, 대략 21 장의 사진에서 각도를 그리고 삼각형에 대한 질문이 없다는 점을 제외하고는 ...
 
마이클 마르쿠카이테스 :
글쎄, 대략 21 장의 사진에서 각도를 그리고 삼각형에 대한 질문이 없다는 점을 제외하고는 ...
이것이 통계 기반 예측이 작동하는 방식입니다. 나는 이것이 다음 사진에서 속이 빈 삼각형이 될 것이라고 예측합니다.
 
그렇게 말하겠습니다. 모든 것은 경험과 함께 오고, MO에는 이론과 실제의 두 가지 유형의 경험이 있습니다. 더 많이 연습할수록 이 영역의 철학을 더 많이 이해하기 시작합니다. 자, 자가격리의 일환으로 감자를 찾으러 갔는데 퀘스트 같네요 :-)(
 

신경망의 본질과 이론적 기초를 이해하려면 Kolmogorov, Arnold 및 Hecht-Nilson의 이론에 대한 지식이 필요합니다.

연습을 위해이 지식은 특별히 필요하지 않지만 일반적인 이해는 손상되지 않습니다.

 
도서관 :

JSO 데이터에서 분할을 볼 수 있는 링크를 제공했습니다. 여기에서 전체 모델을 파일로 언로드하기만 하면 됩니다. 그런 다음 분할을 읽습니다.

이미 비대칭 트리를 언로드할 수 있다고 확신합니까?


도서관 :

부스팅에서는 정의상 모든 트리가 중요합니다. 각각의 후속 작업은 이전의 모든 항목을 수정합니다. 중간에 하나의 나무를 버리면 그 이후의 모든 것이 잘못된 데이터로 작동합니다. 버려진 나무를 고려하지 않고 다시 훈련해야합니다. 이 경우 첫 번째 나무는 버려진 나무를 매우 밀접하게 반복합니다.

아니요, 완전히 사실이 아닙니다. 모델이 준비되면 그 안에 많은 나무 잎사귀가 앉아 있고 약 0.5의 확률을 제공합니다. 실제로는 쓰레기입니다.


도서관 :

네. 부스팅에서 별도의 잎이 결함이 있기 때문입니다. 다른 정제 나무의 잎의 반응으로 보완됩니다. 예를 들어 나무 100개와 같은 일련의 답변만이 정답을 제공합니다.

부스트된 모델의 한 장에서 신뢰할 수 있는 것을 얻으려고 하는 것은 불가능합니다.
부스팅에서는 100개 나무의 모든 100개 응답이 합산되며, 각각은 예를 들어 총 0.01 = 1을 제공합니다. 잎 1개의 값 = 0.01 - 이로부터 무엇을 얻고 싶습니까? 그 안에는 아무것도 없습니다. 100잎의 합이 정답입니다.
사실, 첫 번째 나무는 거기에서 강하고 예를 들어 0.7을 제공하고 나머지는 합을 1에 가깝게 만듭니다. 별도로 고려하면 첫 번째 나무의 잎만 있지만 나는 그들이 어떤 나무보다 약하다고 생각합니다. 더 작은 깊이로 인해 랜덤 포레스트에서.
임의의 포리스트에는 평균이 있습니다. 예를 들어 100그루의 나무의 각 잎 \u003d 1이고 평균도 \u003d 1입니다. 그 안에 여우는 완전하지만 무작위 편차가 있습니다. 그러나 100개의 응답으로 이루어진 군중은 평균을 상당히 정확한 답변으로 제공합니다.

한 나무에서 유용한 것을 얻는 것은 가능하지만 드문 일입니다.

첫 번째 나무도 최고는 아닙니다.

부스팅은 빠르지만 거기에서 모델을 신중하게 선택해야 하고, 이는 큰 샘플을 필요로 하는 문제입니다.

 
알렉세이 니콜라예프 :

신경망의 본질과 이론적 기초를 이해하려면 Kolmogorov, Arnold 및 Hecht-Nilson의 이론에 대한 지식이 필요합니다.

연습을 위해이 지식은 특별히 필요하지 않지만 일반적인 이해는 손상되지 않습니다.

고마워.

위의 신경망 모델과 관련된 엄격한 이론이 없다고 해서 실제 문제를 해결하기 위한 적용 가능성에 대한 연구를 방해하지는 않습니다.

 
알렉세이 비아즈미킨 :

이미 비대칭 트리를 언로드할 수 있다고 확신합니까?

Grow_policy='Lossguide'를 추가하여 예제를 시도했습니다.
다음은 분할이 포함된 모델의 일부입니다.

'split': {'border': 16.049999237060547, 'float_feature_index': 1, 'split_index': 0, 'split_type': 'FloatFeature'}}, 'right': {'left': {'value': 0.05454545454545454, 'weight': 153}, 'right': {'value': 0.8265895953757225, 'weight': 161}, 'split': {'border': 5.999999046325684, 'ctr_target_border_idx': 0, 'split_index': 4, 'split_type': 'OnlineCtr'}}, 
'split': {'cat_feature_index': 1, 'split_index': 1, 'split_type': 'OneHotFeature', 'value': -845129958}}, {'left': {'left': {'value': -0.43103007753084105, 'weight': 444}, 'right': {'value': -0.10906568919445614, 'weight': 133}, 'split': {'border': 6.999999046325684, 'ctr_target_border_idx': 0, 'split_index': 2, 'split_type': 'OnlineCtr'}}, 'right': {'left': {'value': 0.02835585997337218, 'weight': 163}, 'right': {'value': 0.5713236394502054, 'weight': 151},
'split': {'border': 5.999999046325684, 'ctr_target_border_idx': 0, 'split_index': 3, 'split_type': 'OnlineCtr'}}, 
'split': {'cat_feature_index': 1, 'split_index': 1, 'split_type': 'OneHotFeature', 'value': -845129958}

Depthwise와도 분할이 있습니다. 그러나 이것은 Python에 있습니다. R에서는 모델을 언로드할 기회를 보지 못했습니다. 하지만 R에서 내부 형식으로 모델을 저장하고 Python에서 열고 JSON에 업로드할 수 있다고 생각합니다. 그리고 그것에서 이미 사용하는 데 필요한 모든 것

 
동료. 주제는 흥미롭지만 테스터에서 머신러닝이 단순 매개변수 최적화와 어떻게 다른지 이해가 안 가나요? 결국 목표는 거의 동일할 것입니다. 진입(출구) 매개변수가 일치하면 시장에 진입(출퇴)하기로 결정합니다. 그리고 그와 그 방법은 시장의 강한 변화와 함께 작동하지 않습니다. 다시 훈련하고 최적화해야 합니다. 가능하면 철학 없이 간략하게.
 
얀 바르민 :
동료. 주제는 흥미롭지만 테스터에서 머신러닝이 단순 매개변수 최적화와 어떻게 다른지 이해가 안 가나요? 결국 목표는 거의 동일할 것입니다. 진입(출구) 매개변수가 일치하면 시장에 진입(출퇴)하기로 결정합니다. 그리고 그와 그 방법은 시장의 강한 변화와 함께 작동하지 않습니다. 다시 훈련하고 최적화해야 합니다. 가능하면 철학 없이 간략하게.

차이점은 도구 유연성에 있습니다. 신경망은 모든 계열에 적응할 수 있습니다. 아래의 다항식을 보십시오. 계수의 비트 깊이와 계수는 완전히 다를 수 있습니다.

 double getBinaryClassificator1( double v0, double v1, double v2, double v3, double v4, double v5, double v6, double v7, double v8, double v9, double v10) {
   double x0 = 2.0 * (v0 + 2.6721302849319 ) / 5.70376880500565 - 1.0 ;
   double x1 = 2.0 * (v1 + 0.862195874260524 ) / 4.318953971518134 - 1.0 ;
   double x2 = 2.0 * (v2 + 0.636958350251177 ) / 2.893126110958697 - 1.0 ;
   double x3 = 2.0 * (v3 + 1.28131145039971 ) / 4.47439455086403 - 1.0 ;
   double x4 = 2.0 * (v4 + 1.40655622673661 ) / 3.84454848827483 - 1.0 ;
   double x5 = 2.0 * (v5 + 1.05792133319783 ) / 4.0361119526354905 - 1.0 ;
   double x6 = 2.0 * (v6 + 0.960632890559664 ) / 2.810809591513934 - 1.0 ;
   double x7 = 2.0 * (v7 + 2.50474545671368 ) / 4.50657217846072 - 1.0 ;
   double x8 = 2.0 * (v8 + 3.37124943164126 ) / 5.00153555828254 - 1.0 ;
   double x9 = 2.0 * (v9 + 1.01434366581359 ) / 3.81959911946484 - 1.0 ;
   double x10 = 2.0 * (v10 + 0.997401251919643 ) / 2.959840023725593 - 1.0 ;
   double decision = 0.0455519244734931 * sigmoid(x0 + x5 + x8)
  + 0.01733841684822077 * sigmoid(x5 + x7 + x8)
  + 0.21269063180827888 * sigmoid(x0 + x5 + x7 + x8)
  + 0.02875816993464052 * sigmoid(x0 + x8 + x9)
  - 0.025853304284676835 * sigmoid(x0 + x4 + x8 + x9)
  + 0.021169208424110384 * sigmoid(x0 + x7 + x10)
  + 0.07184095860566449 * sigmoid(x0 + x8 + x10)
  + 0.03769063180827887 * sigmoid( 1.0 + x0 + x3 + x5 + x8)
  - 0.03179012345679012 * sigmoid( 1.0 + x3 + x6 + x9)
  + 0.02750544662309368 * sigmoid( 1.0 + x0 + x5 + x7 + x9)
  + 0.1463507625272331 * sigmoid( 1.0 + x1 + x2 + x8 + x9)
  + 0.012799564270152506 * sigmoid( 1.0 + x0 + x2 + x10)
  + 0.1864560639070443 * sigmoid( 1.0 + x0 + x1 + x5 + x8 + x10)
  + 0.07494553376906318 * sigmoid( 1.0 + x0 + x2 + x5 + x8 + x10)
  + 0.014669571532316631 * sigmoid( 1.0 + x2 + x5 + x6 + x8 + x10)
  + 0.05266884531590414 * sigmoid( 1.0 + x0 + x1 + x7 + x8 + x10)
  + 0.04566085693536674 * sigmoid( 1.0 + x0 + x1 + x2 + x8 + x9 + x10)
  + 0.061546840958605666 * sigmoid( 1.0 + x0 + x2 + x4 + x8 + x9 + x10);
   return decision;
}

이제 옵션의 수를 상상해 보십시오. 어떤 다중 매개변수 Expert Advisor 도 이러한 유연성을 자랑할 수 없습니다. 그리고 일반화 능력도 있다고 하는데 정확하지 않습니다 :-)

사유: