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

 
블라디미르 페레르벤코 :

좋은 결과를 얻지 못했습니다. 강한 상관 관계가 있는 예측 변수(다른 모델과 달리)가 필요합니다.

나는 받아들일 만한 결과를 줄 것을 찾지 못했습니다. 사실, 나는 짧은 시간 동안 실험했습니다. 시간이 촉박합니다. 당신은 시도합니다. 예제에는 완전한 기능의 코드가 있습니다.

행운을 빕니다

추신. 시도하는 경우 입력 행렬에서 예측 변수는 열이 아닌 행이어야 합니다.

고맙지만 불행히도 나는 지금 완전히 다른 일을하고 있습니다. 가까운 장래에 확실히 앉을 수 없을 것입니다. 작업 방법에 부딪힌 것 같습니다. 그러나 모든 것이 여전히 축축하고 연구는 이제 시작이고 오래 끌릴 것 같아서 일이 많고 ...

또 다른 질문입니다. 그냥 두지 마세요.) 표준 MO 패키지, 포리스트, 네트워크, 벡터, 컨볼루션 등을 사용할 수 있습니까? 교사 없이 학습에서?

가능한 것 같은데 방법을 모르겠습니다.

예를 들어 포레스트에서

data( "iris" )

library(randomForest)

label <- factor(iris$Species)
set <- iris[,-ncol(iris)]


model <- randomForest(x = set ,data = set , mtry= 4 , ntree= 20 )

선생님 없이 가르치는 것처럼

Google 번역에 따르면 ----> 감독되지 않은 분류

> model

Call:
randomForest(x = set, ntree = 20 , mtry = 4 , data = set)
               Type of random forest: unsupervised
                     Number of trees: 20
No. of variables tried at each split: 4

하지만 어떻게 인식합니까? ))

predict(model , set [ 1 ,])



Error in predict.randomForest(model, set [ 1 , ]) :
  No forest component in the object


어떻게 든 나를 위해 이것을 명확히 할 수 있습니까?

 
mytarmailS :

고맙지만 불행히도 나는 지금 완전히 다른 일을하고 있습니다. 가까운 장래에 확실히 앉을 수 없을 것입니다. 작업 방식에 부딪힌 것 같지만 모든 것이 여전히 젖어 있고 연구는 시작일뿐입니다. 오래 끌릴 것 같아서 일이 많고 ...

그런 또 다른 질문은 치지 마세요.) 표준 MO 패키지, 포리스트, 네트워크, 벡터, 컨볼루션 등을 사용할 수 있습니까? 교사 없이 학습에서?

가능한 것 같은데 방법을 모르겠습니다.

예를 들어 포레스트에서

data( "iris" )

library(randomForest)

label <- factor(iris$Species)
set <- iris[,-ncol(iris)]


model <- randomForest(x = set ,data = set , mtry= 4 , ntree= 20 )

선생님 없이 가르치는 것처럼

Google 번역에 따르면 ----> 감독되지 않은 분류

> model

Call:
randomForest(x = set, ntree = 20 , mtry = 4 , data = set)
               Type of random forest: unsupervised
                     Number of trees: 20
No. of variables tried at each split: 4

하지만 어떻게 인식합니까? ))

predict(model , set [ 1 ,])



Error in predict.randomForest(model, set [ 1 , ]) :
  No forest component in the object


어떻게 든 나를 위해 이것을 명확히 할 수 있습니까?

=================================================

"RandomUniformForest"를 사용하는 것이 좋습니다. 다른 "숲"에서는 볼 수 없는 많은 기회가 있습니다. 특히 비지도 학습의 경우:

Random Uniform Forests를 사용한 비지도 학습

설명

Random Uniform Forests의 감독되지 않은 모드는 모든 경우에 클러스터링, 차원 축소, 쉬운 시각화, 깊은 변수 중요도, 관찰, 변수 및 클러스터 간의 관계를 제공하도록 설계되었습니다. 또한 손쉬운 평가(클러스터 분석) 및 동적 클러스터링이라는 두 가지 특정 포인트가 제공되어 모든 클러스터링 모양을 즉석에서 변경할 수 있습니다. 3계층 엔진이 사용됩니다: 비유사성 매트릭스, 다차원 스케일링(MDS) 또는 스펙트럼 분해, k-평균 또는 계층적 클러스터링. 비지도 모드는 갭 통계 덕분에 클러스터 수를 알 필요가 없으며 감독 모드의 주요 알고리즘 속성을 상속하므로 (거의) 모든 유형의 변수를 허용합니다.

행운을 빕니다

 
블라디미르 페레르벤코 :

예, 질문은 일반적입니다. randomforest , nnet , svm 등의 교사 없이 인기 있는 모든 MO 패키지를 가르칠 수 있습니까?

포레스트, 예를 들어 ...

일반적으로 교사 없이 길쌈 네트워크 를 훈련하고 싶습니다.

 
mytarmailS :

예, 질문은 일반적입니다. randomforest , nnet , svm 등의 교사 없이 인기 있는 모든 MO 패키지를 가르칠 수 있습니까?

포레스트, 예를 들어 ...

일반적으로 교사 없이 길쌈 네트워크를 훈련하고 싶습니다.

그녀에게 무엇을 가르치고 싶습니까?

아이디어는 무엇입니까?

저는 비지도 학습을 위한 AutoEncoder, RBM, 다양한 종류의 RF, 클러스터링 모델만 알고 있습니다. 하지만 컨볼루션은 불가능...

행운을 빕니다

 
블라디미르 페레르벤코 :

그녀에게 무엇을 가르치고 싶습니까?

아이디어는 무엇입니까?

저는 비지도 학습을 위한 AutoEncoder, RBM, 다양한 종류의 RF, 클러스터링 모델만 알고 있습니다. 하지만 컨볼루션은 불가능...

행운을 빕니다

글쎄, 컨볼루션 네트워크 는 모양이 약간 다른 유사한 패턴을 인식할 수 있기 때문에 일반적인 "선형" ML과 구별됩니다.

숲 유형, obch. 네트워크 등...

그리고 저는 선생님 없이 가르치고 싶습니다. 마치 "자연스럽게, 유사하게" 하듯이 먼저 클러스터로 쪼개서 타겟과 비교하는 것이 타겟과 즉시 가르치는 것보다 훨씬 낫습니다. / 클러스터를 대상으로 조정

나는 클러스터에 대한 아이디어에 대해 썼습니다. 읽어보면 내 대상에 대한 기존 ML보다 실제로 더 잘 작동합니다.

이 모든 것에는 한 가지 더 문제가 남아 있습니다. 이것은 시장에 절대적으로 동일한 상황이 없다는 것입니다. 그것들은 비정상입니다. 여기에서 여기까지 두 가지 방법이 있습니다. 이것은 컨볼루션 네트워크 또는 dtw 알고리즘입니다. 거의 이해되지 않고 번짐은 일종의 보간 또는 외삽입니다.

이러한 아이디어는 클러스터를 비정상성에 더 잘 적응하도록 만드는 것입니다.

 

이해를 도와주세요...

다음과 같은 코드가 있습니다.

#есть вектор с некими нужными событиями "999" и не нужными "0"

X <- rep( 0 , 1000 )
Y <- rep( 999 , 100 )

dat <- sample(c(X, Y))
dat
> dat
   [ 1 ]   0 999    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0
  [ 28 ]   0    0    0 999 999    0    0    0    0    0    0    0    0    0    0 999    0    0    0    0    0    0    0    0    0 999    0
  [ 55 ]   0    0    0    0 999    0    0    0    0    0 999    0    0    0    0    0 999    0    0    0    0    0    0    0    0    0    0
  [ 82 ]   0    0    0    0    0    0    0    0 999    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0
[ 109 ]   0    0    0    0    0    0    0    0 999    0    0    0 999    0    0    0    0    0    0    0    0    0    0    0    0    0    0
[ 136 ]   0    0    0    0    0    0    0 999    0    0    0    0    0 999    0 999    0    0    0    0    0    0    0    0    0    0    0

# ///в каждой итерации цыкла я хочу видеть последние три нуждые события те когда было "999"

for (i in 101 :length(dat)){
    
       idx <- 1 :i
      
                  s1 <- dat[idx]
                  s2 <- which(s1!= 0 )   # s2 - получаем индексы нужного события те когда s1 было не ноль
                  s3 <- tail(s2, 3 )     # оставляем три поледних индекса
                  
                  print(  dat[s3]   )
                  
}

[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999
[ 1 ] 999 999 999

모든 것이 정상이고 모든 것이 작동하지만 라인에 문제가 있습니다.

idx <- 1 :i

반복할 때마다 idx 벡터가 증가하고 데이터가 많으면 코드가 자연적으로 엄청나게 느려지고 더 많이 ...

문제를 간단하게 해결했습니다. 각 반복에서 전체가 아닌 벡터의 마지막 100개 값만 가져옵니다.

idx<-(i-100):i

for (i in 101 :length(dat)){
    

       idx <- (i- 100 ):i # последние 100 значени вместо idx <- 1 :i
      
                  s1 <- dat[idx]
                  s2 <- which(s1!= 0 )   # s2 - получаем индексы нужного события те когда s1 было не ноль
                  s3 <- tail(s2, 3 )     # оставляем три поледних индекса
                  
                  print(  dat[s3]   )
                  
}

그러나 그러한 코드의 출력은 이미 일종의 쓰레기입니다.

[ 1 ] 0 0 0
[ 1 ] 0 0 0
[ 1 ] 0 0 0
[ 1 ] 0 0 0
[ 1 ] 0 0 0
[ 1 ] 0 0 0
[ 1 ] 999    0    0
[ 1 ] 0 0 0
[ 1 ]   0    0 999
[ 1 ] 999    0    0
[ 1 ] 0 0 0
[ 1 ] 0 0 0

뭐야? 여전히 사실인 것 같습니다. 버그 또는 무엇입니까?

 
어찌할 바를 모르는? :) 보기에..
 

mytarmailS :


뭐야? 여전히 사실인 것 같습니다. 버그 또는 무엇입니까?

이것을 '속옷'이라고 하는데, 마치 속옷이 신사 숙녀 여러분의 얼굴에 뻔뻔스럽게 찔리는 것처럼 다른 사람들은 그것을 별로 좋아하지 않습니다. 밑면은 숨기는 것이 바람직합니다. 예를 들어 Nikolai Kositsyn이나 Reshetov가 속옷을 보여주는 것을 본 적이 있습니까?
 
팬츄럴 :

실제로는 "버그가 있는데 어떻게 재현할 수 있는지 예가 없다"라고 한다. 100개 이상의 열이 있는 특별히 설계된 테이블이 필요합니다. 그러면 문제가 발생합니다. 그리고 예를 들어 아무것도 확인할 수 없는 테이블의 작은 조각이 제공되며 RData 파일이 아닌 텍스트도 제공됩니다.

순전히 무작위로 - 오류가 색인에 있다고 생각합니다. s3의 값은 시작 인덱스 i에 관계없이 항상 1에서 100 사이입니다.
dat 테이블의 시작을 기준으로 (i-100)-1만큼 s1을 오프셋하는 경우 수신된 새 인덱스로 dat에 다시 액세스할 때 이 오프셋을 고려해야 합니다. 마지막 줄은 인쇄 되어야 합니다(dat[i-101+s3]). 아마도 101이 아니라 100. 또는 102. 그 숫자의 어딘가에 :)

 

팬츄럴 :
이것을 '속옷'이라고 하는데, 마치 속옷이 신사 숙녀 여러분의 얼굴에 뻔뻔스럽게 찔리는 것처럼 다른 사람들은 그것을 별로 좋아하지 않습니다. 밑면은 숨기는 것이 바람직합니다. 예를 들어 Nikolai Kositsyn이나 Reshetov가 속옷을 보여주는 것을 본 적이 있습니까?

===========================

아마도 이것이 당신이 "속옷"이라고 부르는 것일 수도 있지만, R 커뮤니티에서는 질문할 때 재현 가능한 코드를 제공하는 것이 관례입니다. 그리고 맞습니다. 코드가 없는 이야기는 빈 단어입니다. 이 스레드의 목적은 MO 예제에서 배우는 것입니다.

왜 주위 사람들을 위해 서명합니까? 규칙을 설정할 필요가 없으며 아무도 그렇게 하도록 승인하지 않았습니다.

많은 사람들이 스스로 유용한 것을 배울 수 있는 코드 예제를 제공하는 mytarmailS 및 기타 기여자들에 의해 모든 것이 올바르게 수행됩니다.

사유: