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

 
유리, 나는 vmr 모델을 훈련할 수 있었지만 새로운 데이터를 예측할 수 없습니다. 무엇이 잘못되었는지 알려주세요. 모델 로드 메뉴를 선택하고 첨부 파일에서 train.vmr 파일을 선택한 다음 모델 사용을 클릭합니다. 로그에 "데이터를 입력하고 "확인"을 누르십시오"라는 텍스트가 표시됩니다. 하지만 그게 전부입니다. 어떤 데이터를 입력하더라도 여전히 회색 비활성화 확인 버튼이 표시되고 답변을 얻을 수 없습니다. Train.csv 및 테스트 .csv 파일도 공격을 받고 있으며 이전에 게시한 파일입니다.
파일:
train.zip  38 kb
 
Dr.Trader :
유리, 나는 vmr 모델을 훈련할 수 있었지만 새로운 데이터를 예측할 수 없습니다. 무엇이 잘못되었는지 알려주세요. 모델 로드 메뉴를 선택하고 첨부 파일에서 train.vmr 파일을 선택한 다음 모델 사용을 클릭합니다. 로그에 "데이터를 입력하고 "확인"을 누르십시오"라는 텍스트가 표시됩니다. 하지만 그게 전부입니다. 어떤 데이터를 입력하더라도 여전히 회색 비활성화 확인 버튼이 표시되고 답변을 얻을 수 없습니다. Train.csv 및 테스트 .csv 파일도 공격을 받고 있으며 이전에 게시한 파일입니다.

아마도 숫자가 아닌 것을 입력했습니까? 이렇게 하면 예외 처리기가 트리거되고 확인 버튼이 비활성화됩니다. 이 경우 jPrediction을 다시 시작해야 합니다.

가까운 장래에 사용자가 숫자가 아닌 데이터를 입력했다는 경고 메시지가 표시되도록 이 버그를 처리할 것입니다.

P/S 이미 수정되었습니다.

예를 들어 숫자 대신 문자 "z"를 입력해 보겠습니다. 결과적으로 다음과 같은 오류 메시지가 나타납니다.

지금 확인 버튼을 활성화하려면 파일>모델 사용 메뉴 항목을 선택하십시오.


수정된 버전을 내 웹사이트에 업로드했습니다.

 

이해했습니다. 오류가 잘못된 데이터 형식에 있었습니다. pdf에 있는 대로 데이터 형식을 지정했습니다. 설명이 있는 두 번째 줄, 인덱스가 있는 첫 번째 열을 추가하고 예측자에서 열 이름을 지웠습니다. 모든 것이 효과가 있었습니다. 모델은 원본 데이터와 형식이 지정된 데이터 모두에서 두 경우 모두 학습됩니다. 그러나 예측은 학습을 위해 특별히 형식이 지정된 데이터가 제공되는 경우에만 작동합니다.

그러나 불행히도 귀하의 모델은 자체 데이터에 대한 테스트를 통과하지 못했습니다. 앞서 train.csv 및 test.csv 파일을 게시했으며 예측 성능이 좋았습니다. 확인해보니 예측오류가 50%인데 좋은 지표가 전혀 없네요.

테스트 단계:

1) 위에서 설명한 대로 train.csv 파일의 형식을 지정합니다. 다음으로 파일을 물리적으로 train_part1.csv와 train_part2.csv로 나눕니다. 두 번째 파일에는 train.csv의 마지막 20줄이 포함되어 있습니다. 첫 번째 파일 - 두 파일의 데이터가 교차하지 않도록 마지막 20줄을 제외한 나머지 모든 것.

2) train_part1.csv에서 모델을 훈련하고 예측 모드로 전환합니다. 예측을 위해 train_part2.csv의 행을 하나씩 제출합니다. 20번 중 9번만 정답을 맞췄는데 기적은 일어나지 않았다.

모델 자체가 교육 및 검증을 위해 원본 교육 파일을 두 부분으로 나눈 다음 샘플 테스트를 수행하고 결국 예측 정확도가 100이 되는 이유를 모르겠습니다. 그리고 훈련 파일이 물리적으로 나누어져 있고 out of sample test가 수동으로 이루어진다면 예측은 동전 던지기보다 나을까요? 예측에 대해 훈련 샘플의 예가 제공되면 예측이 올바르게 작동합니다. 즉, 예측 기능이 정상인 것처럼 보입니다. 이것은 모두 매우 나쁘고 잘못된 것입니다. 코드에 심각한 오류가 있습니다.

파일:
vmr_test.zip  44 kb
 
산산이치 포멘코 :

R에 대해 아주 피상적으로만 아는 사람만이 "잔소리"에 대해 이야기할 수 있습니다.

물론, 우리는 R을 넣고 문자열 인터프리터를 봅니다. 깊숙이 들어가면 바이트코드를 볼 수 있지만 이것은 효율성 면에서 인터프리터의 문제를 해결하지 못합니다. 토론할 것도 없습니다 - 잔소리.

그러나 R 패키지에 대해 조금 더 파고들면 R 코드에서 보는 것이 다른 코드에 대한 호소라는 것이 금세 명백해질 것입니다. 그리고 이해하기 시작하면 계산 집약적 알고리즘의 경우 R은 항상 가능한 최대 효율성 원칙에 따라 선택된 타사 패키지를 사용한다는 것이 밝혀졌습니다. 일반적으로 C 또는 Fortran 라이브러리입니다.

또는 예를 들어, 행렬 연산. R에 "스칼라"라는 개념이 없고 모든 것이 벡터로 시작하고 행렬 산술이 R에 대해 완전히 자연스럽다는 점을 감안할 때 R로 작성되지 않은 적절한 라이브러리를 사용하는 문제는 근본적입니다. 인텔 수학 커널 라이브러리에서 사용합니다.

여기에 자신의 컴퓨터의 모든 코어뿐만 아니라 인접한 컴퓨터에 대한 계산의 병렬화는 R의 일반적인 작업이라는 점을 추가해야 합니다.

그래서 무엇이 "잔소리"이고 무엇이 아닌지는 큰 질문입니다.

추신.

R에 아무 것도 이식할 필요가 없지만 재료를 연구하기만 하면 됩니다. R에는 필요한 모든 것과 그 이상이 있습니다.

나는 SanSanych를 지원합니다. 아이디어에 필요한 모든 것이 이미 R에 있습니다.

Reshetov의 오만한 발언은 놀라운 일이 아닙니다. 이런 입장입니다.

당신은 설득할 필요가 없습니다. 무의미하다.

 
트레이더 박사 :

모델 자체가 교육 및 검증을 위해 원본 교육 파일을 두 부분으로 나눈 다음 샘플 테스트를 수행하고 결국 예측 정확도가 100이 되는 이유를 모르겠습니다. 그리고 훈련 파일이 물리적으로 나누어져 있고 out of sample test가 수동으로 이루어진다면 예측은 동전 던지기보다 나을까요? 예측에 대해 훈련 샘플의 예가 제공되면 예측이 올바르게 작동합니다. 즉, 예측 기능이 정상인 것처럼 보입니다. 이것은 모두 매우 나쁘고 잘못된 것입니다. 코드에 심각한 오류가 있습니다.

맞습니다. 코드에 버그가 있습니다. 수정하겠습니다.
 
블라디미르 페레르벤코 :

나는 SanSanych를 지원합니다. 아이디어에 필요한 모든 것이 이미 R에 있습니다.

여기서 나는 당신이 원한다면 잔소리가 속도 측면에서 의미되었으며 나는 유리와 절대적으로 동의한다고 주장 할 것입니다 ...

예, R에 대한 거의 모든 작업에 대해 기성품 솔루션을 찾을 가능성이 가장 높지만 때로는 속도에 어리석게도 안주합니다.

내가 상관 함수를 통해 많은 매개 변수에서 매우 열심히 검색한 것을 기억합니다. 처음에는 R에 내장된 표준 함수를 사용했지만(그런데 C++로 작성됨) 다른 방법으로, 내 주기의 한 원을 계산하는 데 약 3.9분 또는 230초가 걸렸습니다. 이번에는 허용되지 않았습니다. 두 번째 단계는 모든 불필요한 부분 없이 R에서 내 자신의 함수를 작성하는 것이었습니다. 내 함수는 이미 30의 속도로 작동했습니다. 초, 그러나 이것은 나에게도 전혀 어울리지 않았다. R이 나의 처음이자 유일한 언어이기 때문에 나는 친구에게 나를 위해 재미있는 글을 써달라고 부탁했다. C++에서 상관 관계를 만든 다음 R에 빌드했습니다. 함수 시간은 0.33초였습니다.

명목상의 재미. R의 상관관계 - 230초

스스로 쓴 재미. R의 코어 - 30초

펑크. C++로 작성 - 0.33초

그래서 예, Yuri가 맞습니다. R은 그가 의미한 맥락에서 잔소리지만 이 문제는 해결되고 있지만 코드 작성의 편의성과 속도 면에서 R은 모든 언어에서 멀리 갔다고 생각합니다. 왜냐하면 당신이 직접 작성할 필요가 없습니다. 내가 사랑하는 R을 위한 모든 것이 이미 준비되어 있습니다.

 
mytarmailS :

여기서 나는 당신이 원한다면 잔소리가 속도 측면에서 의미되었으며 나는 유리와 절대적으로 동의한다고 주장 할 것입니다 ...

예, R에 대한 거의 모든 작업에 대해 기성품 솔루션을 찾을 가능성이 가장 높지만 때로는 속도에 어리석게도 안주합니다.

내가 상관 함수를 통해 많은 매개 변수에서 매우 열심히 검색한 것을 기억합니다. 처음에는 R에 내장된 표준 함수를 사용했지만(그런데 C++로 작성됨) 다른 방법으로, 내 주기의 한 원을 계산하는 데 약 3.9분 또는 230초가 걸렸습니다. 이번에는 허용되지 않았습니다. 두 번째 단계는 모든 불필요한 부분 없이 R에서 내 자신의 함수를 작성하는 것이었습니다. 내 함수는 이미 30의 속도로 작동했습니다. 초, 그러나 이것은 나에게도 전혀 어울리지 않았다. R이 나의 처음이자 유일한 언어이기 때문에 나는 친구에게 나를 위해 재미있는 글을 써달라고 부탁했다. C++에서 상관 관계를 만든 다음 R에 빌드했습니다. 함수 시간은 0.33초였습니다.

명목상의 재미. R의 상관관계 - 230초

스스로 쓴 재미. R의 코어 - 30초

펑크. C++로 작성 - 0.33초

그래서 예, Yuri가 맞습니다. R은 그가 의미한 맥락에서 잔소리지만 이 문제는 해결되고 있지만 코드 작성의 편의성과 속도 면에서 R은 모든 언어에서 멀리 갔다고 생각합니다. 왜냐하면 당신이 직접 작성할 필요가 없습니다. 내가 사랑하는 R을 위한 모든 것이 이미 준비되어 있습니다.

글쎄, R이 그것과 무슨 관계가 있니?

반복합니다. R에는 속도를 포함하여 아이디어를 실현하는 데 필요한 모든 것이 있습니다.

또 다른 것은 모든 사람이 사용하는 방법을 아는 것도 아니며 모든 사람이 사용하는 것도 아니라는 것입니다.

그러나 이것은 언어의 문제가 아닙니다.

그건 그렇고, Cpp에 기능을 포함하는 편리함과 용이성은 단순히 놀랍습니다.

행운을 빕니다

 
mytarmailS :

여기서 나는 당신이 원한다면 잔소리가 속도 측면에서 의미되었으며 나는 유리와 절대적으로 동의한다고 주장 할 것입니다 ...

예, R에 대한 거의 모든 작업에 대해 기성품 솔루션을 찾을 가능성이 가장 높지만 때로는 속도에 어리석게도 안주합니다.

내가 상관 함수를 통해 많은 매개 변수에서 매우 열심히 검색한 것을 기억합니다. 처음에는 R에 내장된 표준 함수를 사용했지만(그런데 C++로 작성됨) 다른 방법으로, 내 주기의 한 원을 계산하는 데 약 3.9분 또는 230초가 걸렸습니다. 이번에는 허용되지 않았습니다. 두 번째 단계는 모든 불필요한 부분 없이 R에서 내 자신의 함수를 작성하는 것이었습니다. 내 함수는 이미 30의 속도로 작동했습니다. 초, 그러나 이것은 나에게도 전혀 어울리지 않았다. R이 나의 처음이자 유일한 언어이기 때문에 나는 친구에게 나를 위해 재미있는 글을 써달라고 부탁했다. C++에서 상관 관계를 만든 다음 R에 빌드했습니다. 함수 시간은 0.33초였습니다.

명목상의 재미. R의 상관관계 - 230초

스스로 쓴 재미. R의 코어 - 30초

펑크. C++로 작성 - 0.33초

그래서 예, Yuri가 맞습니다. R은 그가 의미한 맥락에서 잔소리지만 이 문제는 해결되고 있지만 코드 작성의 편의성과 속도 면에서 R은 모든 언어에서 멀리 갔다고 생각합니다. 왜냐하면 당신이 직접 작성할 필요가 없습니다. 내가 사랑하는 R을 위한 모든 것이 이미 준비되어 있습니다.

우리는 일반적인 질문을 몇 가지 특정 예로 대체하지 않을 것입니다.

일반적으로 R 프로그래밍 시스템에서 코드의 효율성에 대해 이야기하는 경우 효율성의 기본에 대해 썼습니다. 대부분의 프로그래밍 시스템과 달리 R의 계산 집약적 알고리즘은 간접적으로 사용되며 일반적으로 프로그래밍 분야에서 가장 효과적인 알고리즘이 일부 의미 있는 함수 내에서 사용되지만 최적화 또는 GA와 같이 직접 사용할 가능성이 있습니다.

이러한 효율성의 가장 눈에 띄는 예는 가장 계산 집약적인 연산 중 하나인 행렬 연산입니다. 프로그래머는 사용된 라이브러리에 대해 전혀 모를 수도 있습니다. 행렬에 대한 작업은 단순한 코드 줄이기 때문입니다.

또한 효율성에 대한 내 게시물에서 쓰지 않은 것은 당신이 쓴 것입니다. 이것은 cpp 코드 조각을 작성할 수 있는 기회이며, R의 구조는 이 삽입이 메인 코드에 유기적으로 추가될 것이라는 점을 강조해야 합니다. 그리고 당신이 준 예는 R에서 매우 일반적입니다.

 
좋아, 나는 R 효율성의 주제를 닫을 것을 제안합니다. 그렇지 않으면 명백한 것들의 반복이 이미 시작될 것이며 의미는 "버터 오일, 하늘은 파랗고 풀은 푸르다"입니다.
 

안녕하세요!

순환 신경망이 있는 패키지를 찾았습니다 https://cran.r-project.org/web/packages/rnn/rnn.pdf , 내 데이터를 확인하는 것이 흥미로워졌습니다(다른 사람이 확인하는 데 관심이 있을 수 있음). ) 그러나 나는 네트워크가 반복적이고 데이터가 3D 배열의 형태로 특정 방식으로 입력되기 때문에 예가 있다는 사실에도 불구하고 여전히 어떻게 되는지 이해할 수 없기 때문에 전에 만난 적이 없습니다. 효과가있다

예측 변수가 2개가 아니라 100개인 경우 "X" 변수의 코드가 어떻게 생겼는지에 대한 예는 다음과 같습니다.

 # create training numbers
X1 = sample( 0 : 127 , 7000 , replace= TRUE )
X2 = sample( 0 : 127 , 7000 , replace= TRUE )
# create training response numbers
Y <- X1 + X2
# convert to binary
X1 <- int2bin(X1)
X2 <- int2bin(X2)
Y <- int2bin(Y)
# Create 3 d array: dim 1 : samples; dim 2 : time; dim 3 : variables.
X <- array( c(X1,X2), dim=c(dim(X1), 2 ) )
사유: