베이지안 회귀 - 이 알고리즘을 사용하여 Expert Advisor를 만든 사람이 있습니까? - 페이지 26

 
СанСаныч Фоменко :

네 봤습니다...기억이 안나네요..

테스터에 대해 이야기하면 제 생각에는 그런 문제가 있습니다.

우리는 특정 샘플을 가져 와서 예를 들어 이익 요소와 같은 테스터로 간주합니다. 그런 다음 다른 샘플을 가져와서 새로운 수익 요소 값을 얻습니다. 총 2개의 숫자입니다. 두 수치가 통계적 결론의 기초인가? 이 숫자는 전혀 의미가 없습니다.

다른 방식으로 해결하고 해결해야 합니다.

샘플이 채취됩니다. 이 샘플에서 특정 하위 집합을 무작위로 선택하여 이익 요소로 간주합니다. 그런 다음 무작위 샘플을 다시 가져오는 식으로 1000번 반복합니다. 우리는 1000 이익 요소를 얻습니다. 이 세트는 이미 통계적 추론의 기초로 사용될 수 있습니다.

그건 그렇고,이 방법은 테스터, 데모의 사용을 배제하지 않습니다..

SS님, 좋은 오후입니다!

무엇의 샘플? 거래?

부트스트랩 유형을 사용하여 샘플 통계의 분위수를 추정하는 결과를 이해합니다.

그러나 TS가 사용 가능한 전체 샘플에 대해 조정된 경우 이 방법은 우리가 이미 알고 있는 것, 즉 이윤 계수가 너무 좋다는 것을 보여줄 것이라는 문제가 남아 있습니다.

나는 내 블로그에서 이 문제에 조금 다르게 접근할 것이다. k-겹 교차 검증을 사용한 첫 번째 훈련; 5개의 하위 집합(제 경우에는 5개 통화 쌍의 데이터가 됨)을 선택하고 4개 쌍에서 모델을 훈련하고 5일에 테스트하는 흥미로운 실험이 나타납니다. 그래서 5번. 하지만 그게 다가 아닙니다. 처음에 나는 외환이 예측 가능하다는 것을 보여주는 데 순전히 과학에 가까운 관심을 가졌습니다. 따라서 m-best 모델(교차 검증 세그먼트에서)은 기계가 아직 보지 못한 대규모 샘플에서 검증됩니다. 검증 샘플의 또 다른 속성은 미래의 시간으로 구분된 가격을 결합한다는 것입니다. 예를 들어 R^2 기준에 따라 18개의 예측된 출력 변수(미래 2분에서 724분 사이)에 대한 100개의 최상의 모델의 유효성 검사 결과가 있는 100 * 18의 행렬을 얻을 것으로 예상합니다. 이것은 내 "상자"가 평균보다 더 잘 예측하는지 즉시 보여줍니다.

그리고 내 자체 발굴을 위한 후원자가 있다면 Amazon Cloud를 임대하고 실험을 1,000번 반복할 수 있으며 매번 다른 교육 및 검증 세트를 생성할 수 있습니다. 그리고 3차원 행렬 1000 * 100 * 18이 있을 것이며, 이를 통해 최상의 모델과 다양한 대상에 대한 R^2 메트릭의 표준 오차를 추정할 수 있습니다. 하지만 이미 두껍습니다.

내 말은 미래 데이터(또는 과거에 대해 테스트하지만 시간상 명확하게 구분됨)에 대해 테스트해야 하며 모든 것이 좋을 것이라는 것입니다.

 
Alexey Burnakov :

SS님, 좋은 오후입니다!

무엇의 샘플? 거래?

부트스트랩 유형을 사용하여 샘플 통계의 분위수를 추정하는 결과를 이해합니다.

그러나 TS가 사용 가능한 전체 샘플에 대해 조정 된 경우 이 방법은 우리가 이미 알고 있는 것, 즉 이윤 계수가 너무 좋다는 것을 보여줄 것이라는 문제가 남아 있습니다.

나는 내 블로그에서 이 문제에 조금 다르게 접근할 것이다. k-겹 교차 검증을 사용한 첫 번째 훈련 5개의 하위 집합(제 경우에는 5개 통화 쌍의 데이터가 됨)을 선택하고 4개 쌍에서 모델을 훈련하고 5일에 테스트하는 흥미로운 실험이 나타납니다. 그래서 5번. 하지만 그게 다가 아닙니다. 처음에 나는 외환이 예측 가능하다는 것을 보여주는 데 순전히 과학에 가까운 관심을 가졌습니다. 따라서 m-best 모델(교차 검증 세그먼트에서)은 기계가 아직 보지 못한 대규모 샘플에서 검증됩니다. 검증 샘플의 또 다른 속성은 미래의 시간으로 구분된 가격을 결합한다는 것입니다. 예를 들어 R^2 기준에 따라 18개의 예측된 출력 변수(미래 2분에서 724분 사이)에 대한 100개의 최상의 모델의 유효성 검사 결과가 있는 100 * 18의 행렬을 얻을 것으로 예상합니다. 이것은 내 "상자"가 평균보다 더 잘 예측하는지 즉시 보여줍니다.

그리고 내 자체 발굴을 위한 후원자가 있다면 Amazon Cloud를 임대하고 실험을 1,000번 반복할 수 있으며 매번 다른 교육 및 검증 세트를 생성할 수 있습니다. 그리고 3차원 행렬 1000 * 100 * 18이 있을 것이며, 이를 통해 최상의 모델과 다양한 대상에 대한 R^2 메트릭의 표준 오차를 추정할 수 있습니다. 하지만 이미 두껍습니다.

내 말은 미래 데이터(또는 과거에 대해 테스트하지만 시간상 명확하게 구분됨)에 대해 테스트해야 하며 모든 것이 좋을 것이라는 것입니다.

게시물의 키워드는 빨간색으로 표시됩니다.

모델의 과적합(과적합)은 모든 과학의 방법론적 문제입니다. 과적합 모델(모든 지식 분야)은 교육 데이터의 특정 세부 사항을 고려하고 이러한 세부 사항은 교육 데이터 외부에서 발생하지 않습니다. 동시에 이 모델은 일반 인구에 공통적인 특정 패턴을 포착하지 않습니다.

내 생각에 이 문제는 모델 자체나 통계적 테스트 방법으로 해결되지 않습니다. 과적합 결과가 정당화될 것이라는 점을 올바르게 지적하셨습니다. 내 손에있는 모델을 "거칠게"하는 방법을 사용하려는 시도는 결과로 이어지지 않았습니다.

나에게 과적합 문제는 초기 데이터 집합에 의해 완전히 생성됩니다. 직관적인 수준에서: 변수와 관련된 입력 데이터(예측자)인지 여부. 극단적인 경우 - 그들은 전혀 가지고 있지 않습니다 - 나는 그것을 고려하지 않습니다. 중급: 일부가 있고 일부가 없습니다. 개인 경험에서 완벽하게 작동하는 상황, 대상 변수와 관련이 없는 예측자가 대상 변수와 관련된 예측자를 "침묵"할 때. 가장 불쾌한 노이즈 예측자를 수동으로 제거했다면 특정 순간부터 예측자를 선택하는 알고리즘이 작동하기 시작합니다.

숫자는 이렇습니다. 초기 예측변수 50~200개 중에서 직접 만든 방법을 사용하여 30개 정도를 선택했습니다. 이 30개 조각은 재학습된 모델을 생성 하지 않습니다 . 훈련, ALE, 테스트 및 검증 샘플의 성능은 거의 동일합니다. 그런 다음 패키지(저는 varSelRF를 사용하고 다른 것을 사용할 수 있음)를 사용하여 약 300-500bar의 슬라이딩 창을 사용하여 예측 변수를 선택합니다. 나는 10-15 조각의 예측 변수 작업 세트를 얻습니다. 창이 이동함에 따라 예측 변수의 구성이 변경됩니다. 얻은 예측 변수 세트도 과적합으로 이어지지 않지만 성능은 5%에서 10%로 증가합니다. 분류 문제의 경우 이것은 약 20% 오류입니다.

 
СанСаныч Фоменко :


나에게 과적합 문제는 초기 데이터 집합에 의해 완전히 생성됩니다. 직관적인 수준에서: 변수와 관련된 입력 데이터(예측자)인지 여부. 극단적인 경우 - 그들은 전혀 가지고 있지 않습니다 - 나는 그것을 고려하지 않습니다. 중급: 일부가 있고 일부가 없습니다. 개인 경험에서 완벽하게 작동하는 상황 , 대상 변수와 관련이 없는 예측자가 대상 변수와 관련된 예측자를 "침묵"할 때 . 가장 불쾌한 노이즈 예측자를 수동으로 제거했다면 특정 순간부터 예측자를 선택하는 알고리즘이 작동하기 시작합니다.

숫자는 이렇습니다. 초기 예측변수 50~200개 중에서 직접 만든 방법을 사용하여 30개 정도를 선택했습니다. 이 30개 조각은 재학습된 모델을 생성 하지 않습니다 . 훈련, ALE, 테스트 및 검증 샘플의 성능은 거의 동일합니다. 그런 다음 패키지(저는 varSelRF를 사용하고 다른 것을 사용할 수 있음)를 사용하여 약 300-500bar의 슬라이딩 창을 사용하여 예측 변수를 선택합니다. 나는 10-15 조각의 예측 변수 작업 세트를 얻습니다. 창이 이동함에 따라 예측 변수의 구성이 변경됩니다. 얻은 예측 변수 세트도 과적합으로 이어지지 않지만 성능은 5%에서 10%로 증가합니다. 분류 문제의 경우 이것은 약 20% 오류입니다.

말씀하신 대로 변수 선택으로 노이즈를 극복할 수 있습니다. 그러나 노이즈 데이터가 좋은 변수의 선택을 방해하고 일부 발견적 방법을 사용하여 미리 찾아서 제거해야 한다는 말씀을 제가 올바르게 이해하고 있습니까?

그리고 또 다른 질문. 이 약어에서 알 수 있듯이 일종의 의사 결정 포리스트를 사용하고 있습니다 (나는 그런 방법을 사용하지 않았습니다).

모든 의사결정 포리스트 트리는 변수 선택을 위한 탐욕적인 알고리즘 + 이 변수의 범위에서 분할(경계 절단)할 수 있는 메트릭입니다. 따라서 나무의 "탐욕"에 따라 가지의 상위 수준에서 가장 개별적으로 중요한 변수를 선택해야 합니다. 트리의 더 낮은 수준(실제로는 두 번째부터 시작)에서 다음으로 가장 중요한 변수는 이전 컷에 의해 형성된 관찰의 하위 표본에서 이미 선택되었습니다. 그리고 이 하위 샘플에서 다음으로 가장 중요한 변수도 검색됩니다(각 변수에 대해 가능한 모든 컷이 정렬되고 이 변수의 관련성 메트릭이 고려되는 최상의 것이 선택됨). 그러나 이것은 이미 관찰의 하위 표본으로 작업하고 있기 때문에 일반적으로 조건부 분포가 적용된다는 것이 밝혀졌습니다. 이전에 사용된 변수 #2가 있는 경우 var #18이 하위 표본 #4에서 가장 좋습니다. 따라서 트리 깊이가 증가함에 따라 변수의 중요성은 위에서 사용된 변수에 점점 더 의존하게 됩니다.

저자의 생각에 따르면 노이즈 변수는 생략해야 합니다. 하지만! 접근 방식의 탐욕스러운 특성은 예를 들어 수준 1에서 거부된 변수와 다른 가능한 두 번째 수준의 다른 가능한 변수가 목표 메트릭에 상당한 이득을 줄 수 있음을 의미합니다. 극단적인 경우 목표 변수의 관점에서 각각 노이즈인 두 개의 독립 변수가 목표 변수와 이러한 공동 분포를 제공하여 유의한 상호 작용이 될 수 있습니다. 탐욕스러운 모델은 이것을 볼 것이지만 그러한 데이터 구성의 의미에서 거의 발생하지 않습니다.

어떻게 생각하나요?

 
한 가지 질문에 답해 주십시오. Forex에서 돈을 버는 사람이 있습니까? 나는 이미 내 인생의 5년과 백만 루블 이상을 보냈으며 오늘날까지 아무 일도 일어나지 않았습니다.
 
Alexey Burnakov :

말씀하신 대로 변수 선택으로 노이즈를 극복할 수 있습니다. 그러나 노이즈 데이터가 좋은 변수의 선택을 방해하고 일부 발견적 방법을 사용하여 미리 찾아서 제거해야 한다는 말씀을 제가 올바르게 이해하고 있습니까?

정확히.

그리고 또 다른 질문. 이 약어에서 알 수 있듯이 일종의 의사 결정 포리스트를 사용하고 있습니다 (나는 그런 방법을 사용하지 않았습니다).

Forest를 예로 들 수 있지만, 표시된 문제의 선택된 모델은 노이즈 변수가 일반 변수를 "중요"할 때 문제를 해결하지 못합니다. 변수 선택은 독립적인 문제입니다.

 
Mikhail Gorenberg :
한 가지 질문에 답해 주십시오. Forex에서 돈을 버는 사람이 있습니까? 나는 이미 내 인생의 5년과 백만 루블 이상을 보냈으며 오늘날까지 아무 일도 일어나지 않았습니다.
신호로 시작하여 수익성 있는 선택 방법을 배웁니다...
 
Mikhail Gorenberg :
한 가지 질문에 답해 주십시오. Forex에서 돈을 버는 사람이 있습니까? 나는 이미 내 인생의 5년과 백만 루블 이상을 보냈으며 오늘날까지 아무 일도 일어나지 않았습니다.
당연히 분위수, 교차 검증 및 부트스트랩 측면에서 이야기하지 않습니다.
 
Mikhail Gorenberg :
한 가지 질문에 답해 주십시오. Forex에서 돈을 버는 사람이 있습니까? 나는 이미 내 인생의 5년과 백만 루블 이상을 보냈으며 오늘날까지 아무 일도 일어나지 않았습니다.

전체적으로 나는 거의 0에 이르렀습니다(작은 플러스일 수도 있음). 나의 모든 사업은 탐욕에 의해 망쳐졌습니다.

수익성 이 있는 로봇이 있더라도(저에게는 하나 있습니다) - 정말 수익성 있고 영구적인 의미에서 - 작동 중이고 결과를 몇 달 동안 기다리면 30% 성장이 충분하지 않은 것처럼 보이기 시작합니다. . 그리고 여기 깡패가옵니다. 즉, 위험을 계산하고 최대 손실을 통제하는 전자동 거래에서도 심리적으로 개인적으로 편안하지 않습니다.

따라서 나는 quantile을 다루기로 결정했습니다.

추신: 내가 좋은 자동 거래 시스템을 만든다면 모든 사람이 사용할 수 있게 만들 것입니다. 그리고 나는 돈을 위해 누군가에게 특별판을 빌릴 것이다.

 
СанСаныч Фоменко :

말씀하신 대로 변수 선택으로 노이즈를 극복할 수 있습니다. 그러나 노이즈 데이터가 좋은 변수의 선택을 방해하고 일부 발견적 방법을 사용하여 미리 찾아서 제거해야 한다는 말씀을 제가 올바르게 이해하고 있습니까?

정확히.

그리고 또 다른 질문. 이 약어에서 알 수 있듯이 일종의 의사 결정 포리스트를 사용하고 있습니다 (나는 그런 방법을 사용하지 않았습니다).

Forest를 예로 들 수 있지만, 표시된 문제의 선택된 모델은 노이즈 변수가 일반 변수를 "중요"할 때 문제를 해결하지 못합니다. 변수 선택은 독립적인 문제입니다.

노이즈가 신호를 없애는 이유는 무엇입니까? 잘 이해가 되지 않습니다.

모델 자체에 기능 정규화가 있으면 영향을 대상 변수와 비교한 후 모든 노이즈 데이터가 무시됩니다. 모델이 과적합에 대한 보호를 제공하지 않는 경우(예: 트리의 터미널 노드에 있는 관측치 수에 대한 하한 임계값이 설정되지 않은 경우) 모든 노이즈가 사용됩니다. 그러나 이것은 랜덤 포레스트 내에서도 해결됩니다.

당신의 아이디어를 더 자세히 설명해 주시겠습니까?

 
Alexey Burnakov :

노이즈가 신호를 없애는 이유는 무엇입니까? 잘 이해가 되지 않습니다.

모델 자체에 기능 정규화가 있으면 영향을 대상 변수와 비교한 후 모든 노이즈 데이터가 무시됩니다. 모델이 과적합에 대한 보호를 제공하지 않는 경우(예: 트리의 터미널 노드에 있는 관찰 수에 대한 하한 임계값이 설정되지 않은 경우) 모든 노이즈가 사용됩니다. 그러나 이것은 랜덤 포레스트 내에서도 해결됩니다.

당신의 아이디어를 더 자세히 설명해 주시겠습니까?

노이즈가 신호를 없애는 이유는 무엇입니까? 잘 이해가 되지 않습니다.

모르겠어.

목표 변수에 대한 예측 변수의 비율을 계산하는 프로그램이 있습니다. 이것은 추상적인 가치입니다.

< 1이면 노이즈

1-2 - 관여하지 않는 것이 좋습니다.

3 이상이 좋습니다.

5 이상 - 행복하지만 드물게

따라서 점수가 2 미만인 예측 변수가 너무 많으면 유용한 예측 변수를 나와 다른 방식으로 구별할 수 없습니다. 이것을 어떻게 해석해야 할지 모르겠습니다. 예측 변수는 대상 변수뿐만 아니라 그들 사이에도 영향을 미친다는 사실을 잊지 말자. 매우 자주 제거할 예측 변수 목록뿐만 아니라 제거 순서도 중요합니다.

나는 왜 이 모든 것입니까?

거래의 기본 문제는 과적합(overfitting)의 문제이며, 적용되는 모델과 방법에 의존하지 않는 독립적인 문제입니다.