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

 
드미트리 :

르네상스 초기에 비잔티움은 더 이상 존재하지 않았고 콘스탄티노플은 오스만 제국의 수도였으며 그보다 200년 앞서 십자군 전쟁 이 끝났습니다.

장난하지마 그러니까...

부흥 은 4단계로 나뉩니다.

  1. 프로토 르네상스 ( XIII 세기 후반 - XIV 세기)
  2. 초기 르네상스(15세기 초 ~ 15세기 후반)
  3. 전성기 르네상스(15세기 후반 - 16세기 초반 20년)
  4. 후기 르네상스(16세기 중반 - 1590년대)

4차 십자군 1202-1204 (이것은 XIII 세기 의 시작입니다)

유럽에서 가장 부유하고 가장 큰 도시를 약탈한 ... 그들(십자군)은 라틴 제국인 콘스탄티노플에 수도가 있는 국가를 만들었습니다. 50년 이상 동안 정복자들에 대한 투쟁이 있었습니다. 1261년 라틴 제국은 멸망했다. 비잔티움은 회복되었지만 결코 이전의 힘에 도달할 수 없었습니다.

비잔티움에서의 강도와 삶의 50 년 동안 새로 부유 한 유럽인 (주로 모든화물 운송과 그 지역을 수행 한 베니스)은 아름다운 삶에 대한 취향을 개발했으며 창조적 인 사람들에게 잘 지불하기 시작했습니다. 교사를 능가하는 창의적 고용/훈련 학생 등. 그래서 그것은 갔다 – 그것은 조용히 갔다.

 
CatBoost 내의 샘플에 대한 의견이 필요합니다. 여기서 훈련하려면 두 개의 샘플이 필요합니다. 첫 번째는 최적화 기능의 작업이고 두 번째는 모델의 선택입니다. 이 함수가 재학습을 피하기 위해 작업을 중지해야 하는 경우 훈련 결과가 두 번째 샘플에 적용됩니다. 실제로 2014-2016년 훈련 샘플에서 패턴을 찾고 있는 것으로 나타났습니다. 그런 다음 2016-2017년에 이 패턴을 확인하고 2018년 세 번째 샘플에서 이미 모델을 독립적으로 테스트합니다. -2019. 오랜 시간에 걸쳐 안정적인 패턴을 포착하고 싶기 때문에 테스트를 위해 많은 샘플이 필요하다는 의심, 또는 오히려 이 패턴의 지속 시간이 긴 시간 퍼짐에 혼란스러워합니다. 우리에게 알려지지 않은 방향으로 ... 나는 테스트 샘플에 2-3 개월을 포함하는 것으로 충분하다고 생각합니다. 그 기간 동안 주기적이고 이전과 이후에 반복되는 추세가 드러날 것이지만 그 다음에는 다음과 같은 위험이 있습니다. 훈련 샘플에서 이 주기가 감지되기 전에 모델은 다른 것을 설명하는 너무 많은 트리를 리벳팅한 다음 테스트 샘플의 추세를 설명하는 트리를 구성합니다. 일반적으로 세 가지 샘플 각각의 길이를 결정하는 데 도움이 되는 실험을 수행하는 방법을 이해할 수 없습니다. 누구든지 이것에 대한 아이디어가 있습니까?
 
도서관 :

비잔티움에서의 강도와 삶의 50 년 동안 새로 부유 한 유럽인 (주로 모든화물 운송과 그 지역을 수행 한 베니스)은 아름다운 삶에 대한 취향을 개발했으며 창조적 인 사람들에게 잘 지불하기 시작했습니다. 교사를 능가하는 창의적 고용/훈련 학생 등. 그래서 그것은 갔다 - 그것은 조용히 갔다.

그러나 물론 이것은 IMHO입니다.

한 유럽 방송에서 그들은 콘스탄티노플의 함락은 수십만 명의 희생자와 파괴에도 불구하고 자발적으로 고용 된 교육받은 사람들 중에서 유럽으로 쏟아져 나온 수많은 이민자들 덕분에 축복이라고 말했습니다. 중세 시대의 탈출에 기여한 로마 제국 시대의 잃어버린 지식의 일부를 반환합니다.

저것들. 전쟁과 같은 불경스러운 행위조차도 지금까지도 전 인류를 위한 선행으로 제시되고 있다... 역사는 승자의 기록이다.

 
알렉세이 비아즈미킨 :
그러나 훈련 샘플에서 이 주기가 감지되기 전에 모델이 다른 것을 설명하는 너무 많은 트리를 구축한 다음 테스트 샘플의 추세를 설명하는 트리를 구축할 위험이 있습니다.

트리나 NN 둘 다 시간에 따라 줄을 구분하지 않고 섞기도 합니다. 따라서 "나중에" 나무가 만들어지지 않습니다. 모두 고르게 혼합된 데이터를 기반으로 합니다. 2014년과 2016년 라인은 나란히 있을 수 있습니다.

NN에 대한 행을 혼합하지 않으면 첫 번째 예제에서 다시 학습하고 막다른 골목에 도달하고 마지막 데이터는 학습을 완료하지 않습니다. 행을 섞은 후 NN은 균등하게 학습합니다. 트리는 r=1(한 트리 훈련을 위한 행의 비율)인 경우 행을 섞을 수 없지만 일반적으로 과적합을 피하기 위해 <1로 설정되므로 r=0.5에서 2014년과 2015년 데이터.

알렉세이 비아즈미킨 :
세 가지 샘플 각각의 길이를 결정하는 데 도움이 되는 실험을 수행하는 방법을 알 수 없습니다. 누구든지 이것에 대한 아이디어가 있습니까?

최적화도 필요하다고 생각합니다. 하지만 표본이 대표성을 띠고 모든 무작위 편차의 평균을 내기 위해서는 선의 수는 최소한 1000-10000개는 되어야 한다고 생각합니다. 그렇지 않으면 작은 표본에 무작위 편향을 맞출 수 있습니다.

 
알렉세이 비아즈미킨 :

한 유럽 방송에서 그들은 콘스탄티노플의 함락은 수십만 명의 희생자와 파괴에도 불구하고 자발적으로 고용 된 교육받은 사람들 중에서 유럽으로 쏟아져 나온 수많은 이민자들 덕분에 축복이라고 말했습니다. 중세 시대의 탈출에 기여한 로마 제국 시대의 잃어버린 지식의 일부를 반환합니다.

저것들. 전쟁과 같은 불경스러운 행위조차도 지금까지도 전 인류를 위한 선행으로 제시되고 있다... 역사는 승자의 기록이다.

다행히도 물론 모든 사람이 스스로 인식합니다. 유럽인에게 이것은 확실히 재정과 두뇌의 이익을 훔치는 것입니다. 비잔틴 사람들에게 이것은 좋지 않았고 많은 사람들에게 그것은 죽음이었습니다.

정확히 기억은 안나지만 비잔티움 전성기에는 연간 세금이 금 2~4천 톤 정도였습니다. 우리 시대에도 이것은 많은 주에서 매우 좋은 금액입니다. 그러나 나는 수치에서 틀릴 수 있습니다. 몇 년 전에 나는 영화를 보았고 거기에 대해 말했습니다. 관심이 있으시면 살펴보십시오. 나는 영화 초반에 우연히 그것을 발견했습니다. 단지 수백 톤이 동전으로 꺼졌습니다.


 
도서관 :

트리나 NN 둘 다 시간에 따라 줄을 구분하지 않고 셔플하기도 합니다. 따라서 "나중에" 나무가 만들어지지 않습니다. 모두 고르게 혼합된 데이터를 기반으로 합니다. 2014년과 2016년 라인은 나란히 있을 수 있습니다.

가능하지 않습니다. 아이디어를 얻었습니다.

봐, 우리는 훈련 샘플에 하나의 나무를 만들었습니다. 그것은 샘플의 10%를 덮었습니다(회상). 그래서 20개의 나무가 있다고 가정해 봅시다. 각 나무는 거기에서 회상에 3% -7%를 추가하지만 이것은 훈련 샘플에 있는 반면 테스트 샘플, 아마도 5개와 6개 트리만 일반적으로 완전성과 정확성 면에서 일종의 응답을 제공하고 이전과 이후의 트리는 노이즈가 될 것이지만 "이후"가 알고리즘에 의해 잘려지면 "이전"이 유지됩니다. 따라서 분류에 도움이 되는 나무와 분류를 방해하거나 단순히 수동적으로 행동하는 나무를 받은 모델을 얻습니다. 따라서 문제는 테스트 샘플의 크기와 내용에서 정확하게 발생합니다.

전체적으로 약 14k 행이 있으며 3개의 샘플로 나누어야 합니다.

이러한 유형의 모델에서는 샘플의 여러 조각을 절단한 다음 전체 샘플에서 결과 모델을 테스트하여 안정성을 확인하는 것이 효과적일 수 있습니다.

 
도서관 :

다행히도 물론 모든 사람이 스스로 인식합니다. 유럽인에게 이것은 확실히 재정과 두뇌의 이익을 훔치는 것입니다. 비잔틴 사람들에게 이것은 좋지 않았고 많은 사람들에게 그것은 죽음이었습니다.

정확히 기억은 안나지만 비잔티움 전성기에는 연간 세금이 금 2~4천 톤 정도였습니다. 우리 시대에도 이것은 많은 주에서 매우 좋은 금액입니다. 그러나 나는 수치에서 틀릴 수 있습니다. 몇 년 전에 나는 영화를 보았고 거기에 대해 말했습니다. 관심이 있으시면 살펴보십시오. 나는 영화 초반에 우연히 그것을 발견했습니다. 단지 수백 톤이 동전으로 꺼졌습니다.


나는 비디오를 볼 것이다, 고마워.

 
알렉세이 비아즈미킨 :
아마도 5번째와 6번째 트리만 일반적으로 완전성과 정확성 면에서 일종의 응답을 제공하고 전후의 트리는 노이즈가 될 것이지만 "후"가 알고리즘에 의해 잘려지면 "이전" 남아있을 것입니다.

그리고 이미 구축된 숲에서 나무를 가지치기하는 알고리즘은 무엇입니까? 숲은 일정량에 도달하면 성장을 마치거나, 잘 배웠다고 판단되면 다른 방법으로 성장을 마칩니다. 훈련 중 클리핑이 있는 경우 이는 훈련 오류에 긍정적인 영향을 미칩니다(사용 가능한 경우 유효한 경우).

물론 일반적으로 나무의 일부는 찬성하고 일부는 반대합니다. 그리고 이것을 없애는 것은 불가능합니다. 바로 이것이 음성의 평균화로 인해 개별 나무와 달리 숲을 잘 배울 수 있기 때문입니다. 부스팅할 때 첫 번째 트리만 데이터에서 학습하고 나머지는 모두 오류에서 학습합니다.

 
도서관 :

그리고 이미 구축된 숲에서 나무를 가지치기하는 알고리즘은 무엇입니까? 숲은 일정량에 도달하면 성장을 마치거나, 잘 배웠다고 판단되면 다른 방법으로 성장을 마칩니다. 훈련 중 클리핑이 있는 경우 이는 훈련 오류에 긍정적인 영향을 미칩니다(사용 가능한 경우 유효한 경우).

어떤 알고리즘이 절단될 것인가 - 이것이 CatBoost 가 훈련 중에 수행하는 방식입니다. 거기에서 10개(얼마나 많은) 새 트리가 결과를 개선하지 않으면 이 마지막 10개 트리 없이 모델을 가져오도록 매개변수를 설정할 수 있습니다. 가장 좋은 것.

도서관 :

부스팅할 때 첫 번째 트리만 데이터에서 학습하고 나머지는 모두 오류에서 학습합니다.

흥미로운 말. 하지만 기존 트리 구성의 오류를 줄이기 위해 후속 트리를 구축했는데 왜 샘플링을 사용하지 않는지 이해가 되지 않습니다. 자세히 알려주세요. 뭔가 깊은 의미를 이해하지 못하는 것 같습니다...

 
알렉세이 비아즈미킨 :

흥미로운 말. 하지만 기존 트리 구성의 오류를 줄이기 위해 후속 트리를 구축했는데 왜 샘플링을 사용하지 않는지 이해가 되지 않습니다. 자세히 알려주세요. 뭔가 깊은 의미를 이해하지 못하는 것 같습니다...

네, 오차를 줄이기 위해 오차를 목표로 삼고 빼죠.

여기 부스팅 알고리즘이 있습니다. 저는 직접 공부하고 있습니다. https://neurohive.io/ru/osnovy-data-science/gradientyj-busting/


1. 데이터에 선형 회귀 또는 의사결정 트리 맞추기(여기서 코드에서 선택한 의사결정 트리) [ x 를 입력으로 호출하고 y 를 출력으로 호출] (1 트리는 데이터에 대해 학습됨)

2. 오차 한계를 계산합니다. 실제 목표에서 예측 목표를 뺀 값 [e1 = y - y_predicted1]

3. 동일한 입력 변수[e1_predicted라고 부름]를 사용 하여 대상 변수로 분산에 대한 새 모델을 설정합니다 (2 및 나머지 트리는 오류에서 학습).

4. 이전 예측에 예측된 편차 추가
[y_predicted2 = y_predicted1 + e1_predicted]

5. 나머지 편차의 다른 모델을 설치합니다. 저것들. [e2 = y - y_predicted2] 과적합이 시작되거나 합이 일정할 때까지 2~5단계를 반복합니다 . 검증 데이터의 정확성을 지속적으로 확인하여 과적합 관리를 제어할 수 있습니다.


나는 이것이 고전적인 부스팅이라는 것을 이해합니다. 아마도 catbust에서 그들은 그들 자신의 무언가를 생각해 냈을 것입니다 ...

Градиентый бустинг — просто о сложном
Градиентый бустинг — просто о сложном
  • 2018.11.27
  • neurohive.io
Хотя большинство победителей соревнований на Kaggle используют композицию разных моделей, одна из них заслуживает особого внимания, так как является почти обязательной частью. Речь, конечно, про Градиентный бустинг (GBM) и его вариации. Возьмем, например. победителя Safe Driver Prediction, Michael Jahrer. Его решение — это комбинация шести...
사유: