2015-01-05 4 views
2

저는 신경 네트워크의 초보자이며 일부 큰 데이터 세트로 알고리즘을 시험해 보았습니다. 모든 이름을 입력 할 필요없이 모든 입력 변수를 네트워크에 포함시키는 방법이 있습니까? 예를 들어 출력을 예측하기 위해 입력으로 사용하고자하는 약 30 개의 변수가 있습니다. 다음 명령에 대한 바로 가기가 있습니까?모든 입력 변수를 사용하는 신경망?

net <- neuralnet(Output~Var1+Var2+Var3+Var4+.....upto Var30, data, hidden=0) 

나는 여기를 보았지만 이에 대한 해결책을 찾지 못했습니다. 미안 기본 질문이 있다면! 이격 응답 변수에서 data data.frame의 모든 변수 (가변 출력을 포함하는 .를 사용하여

우선 :

답변

5

함수의 식 부분에 변수를 삽입하는 3 가지 방법 이 경우) :

net <- neuralnet(Output ~ ., data, hidden=0) #apart from Output all of the other variables in data are included 

data.frame에 Output과 다른 30 개의 변수 만있는 경우 사용하십시오.

둘째 당신이 데이터에서 포함 할 이름의 벡터를 사용하려는 경우

당신이 시도 할 수 data.frame :

names <- c('var1','var2','var3') #choose the names you want 
a <- as.formula(paste('Output ~ ' ,paste(names,collapse='+'))) 

> a 
Output ~ var1 + var2 + var3 #this is what goes in the neuralnet function below 

그래서 당신이 사용할 수 있습니다

net <- neuralnet(a , data, hidden=0) #use a in the function 

사용이 경우 당신은 30 변수의 이름의 벡터를 제공 할 수 있습니다

제 3의 그냥 서브셋당신이 할 수있는 기능 예컨대 :

net <- neuralnet(Output ~ ., data=data[,1:31] , hidden=0) 

사용이 (또는 편리 다른 부분 집합)에서 원하는 열을 사용하고 출력 변수와 함께 필요로하는 30 개 변수를 선택 57,data.frame. 그런 다음 .을 사용하여 모든 것을 포함하십시오.

희망이 있습니다.

+0

도움이되었습니다. 감사합니다 – Fireworks2188

+0

도움이 되니 기뻐요 :) – LyzandeR

+0

나는 어떤 제안이라도 오류가 발생 했습니까? http://stackoverflow.com/questions/31729775/using-all-input-variables-in-neuralnet-in-r – Adam12344