2011-07-28 4 views
1

train 기능을 사용하여 신경 네트워크를 학습하려고합니다. 문제는 SSH 연결을 사용하여 인터넷을 통해 원격으로이 작업을 수행하려고한다는 것입니다.Matlab - 명령 행 환경에서 기차 기능 실행

그러나, 나는 다음과 같은 오류를 수신하고 있습니다 :

??? Error using ==> nntraintool at 28 
NNTRAINTOOL requires Java which is not available 
Error in ==> trainbr>train_network at 257 
[userStop,userCancel] = nntraintool('check');` 
Error in ==> trainbr at 116` 
[net,tr] = train_network(net,tr,data,fcns,param);` 
Error in ==> network.train at 107` 
[net,tr] = feval(net.trainFcn,net,X,T,Xi,Ai,EW,net.trainParam);` 
Error in ==> ClassifierScript at 28` 
[MFLDefectSNetwork, tr] = train(MFLDefectSNetwork, TrainingInputSet, 
TrainingSTargets);` 

나는 때문에 당신이 신경 그물 훈련을 수행 할 때 표시되는 훈련 인터페이스의이 오류가 생각합니다. 그렇다면, 말해 줄 수 있겠습니까? ssh 연결을 사용하여 시각적 인 인터페이스를 어떻게 해제 할 수 있습니까?

답변

2

나는 nntraintool에 전화하기 전에 network objectnetwork object 매개 변수를 false으로 설정하여이 문제를 해결할 수 있다고 생각합니다. 네트워크 개체가 변수 net에 저장되어있는 경우 예를 들어, 당신이 할 것입니다 당신은 훈련 전에 :

net.trainParam.showWindow = false; 

MATLAB Newsgroup thread 또한 당신이 열 수있는 nntraintool에 몇 줄을 주석 처리 할 수 ​​있음을 시사 명령어는 edit nntraintool입니다.

+0

작동하지 않습니다 ... nntraintool을 편집하려했지만 유닉스 환경에서 열리지 않습니다. 이유를 모르겠습니다. .. – Simon

+1

문제를 파악 했습니까? – gnovice

+0

아닙니다 ... 저는 방금 ssh에 대한 시각적 연결 대신에 시각적 인 원격 연결을 사용하여 교육을 실행 해 보았습니다.이 방법을 사용하면 효과적이었습니다. – Simon

0

(면책 조항 :. 다음이 안된 I는 현재 MATLAB의 Windows 설치에 액세스 할 수 있습니다)

MATLAB (당신이 -nojvm 옵션을 사용하지 않도록주의를) 시작하는 명령 다음과 같은 일련의 시도를 일단 MATLAB에서

# on your machine 
ssh -x [email protected] 

# on the host 
unset DISPLAY 
matlab -nodisplay 

, 당신은 명시 적으로 자바를 사용할 수 있는지 확인할 수 있습니다

>> usejava('jvm') 
>> java.lang.String('str') 

다음, 생성 및 신경 네트워크를 사용하여 진행 (당신은 training feedback을 억제해야) : 보조 노트로

%# load sample dataset 
load simpleclass_dataset 

%# create and train neural network 
net = newpr(simpleclassInputs, simpleclassTargets, 20); 
net.trainParam.showWindow = false;   %# no GUI (as @gnovice suggested) 
net.trainParam.showCommandLine = true;  %# display in command line 
net.trainParam.show = 1;     %# display every iteration 
net = train(net, simpleclassInputs, simpleclassTargets); 

%# predict and evaluate performance 
simpleclassOutputs = sim(net, simpleclassInputs); 
[c,cm] = confusion(simpleclassTargets,simpleclassOutputs) 

, 우리는 모든 디스플레이를 비활성화하더라도, 우리는 여전히 물건 (보이지 않는하지만) 및 수출을 플롯 할 수 있습니다 파일에 그림이 표시되어 있습니다. previous 관련 questions ...

관련 문제