2013-05-27 3 views
2

'pybrain'패키지로 작업 중이며 이미지를 인식 할 신경망을 구축하려고합니다. 사진을 분석하는 부분은 잘 작동하지만 pybrain에 익숙하지 않은 분으로서 저는 그 작업에 익숙하지 않습니다. 나는 그것을 얻지 않는 여전히 하루 정도 같이이 문제를 해결하기 위해 시도했습니다AttributeError : 'NoneType'객체에 'indim'속성이 없습니다.

AttributeError: 'NoneType' object has no attribute 'indim' 

: 어떻게 든 나는 다음과 같은 오류가 계속. 여기 내 코드의 일부이다 :

target=np.array([[0],[1]]) 
input=getNumberOfImages("photosAfterAverage/",1,2) 
ds=SupervisedDataSet(72,1) 
ds.setField('target',target) 
ds.setField('input',input) 
print ds.data 
net=buildNewNetwork(72,76,1) 
trainer = BackpropTrainer(net, ds) 

그 입력이 2 차원 containg 각 전지 셀 (72)이라고 가정.

편집 : 요청으로, 전체 오류 :

net=buildNetwork(2,500,1) 
ds=SupervisedDataSet(2,1) 
input=array([[0,1],[1,3434],[34,65],[40,56]]) 
target=array([[0],[1],[0],[1]]) 
ds.setField('input',input) 
ds.setField('target',target) 
print ds.data 
trainer = BackpropTrainer(net, ds) 
이 응답 대단히

감사합니다, 내가 발견 :

Traceback (most recent call last): 
     File "C:\Users\Eytan\Desktop\Mah\Kids_Painting\pyBrainDiffrenceBetween5GradeAnd2Grade.py", line 53, in <module> 
     trainer = BackpropTrainer(net, ds) 
     File "C:\Python27\pybrain\supervised\trainers\backprop.py", line 35, in __init__ 
     self.setData(dataset) 
     File "C:\Python27\pybrain\supervised\trainers\trainer.py", line 22, in setData 
     assert dataset.indim == self.module.indim 
    AttributeError: 'NoneType' object has no attribute 'indim' 

다음과 같은 코드가 작동하고 있음을 지적하는 것이 도움이 될 수 있습니다 문제 - 올바른 함수는 buildNewNetwork 대신 buildNetwork입니다.

+0

코드에 'indim'이 없습니다. 스택 추적을 제공하십시오. 따라서 문제에 대해 추론하기가 훨씬 쉬워집니다. –

답변

0

데이터 세트가 keyword argument으로 전송되어야하는 것처럼 보입니다. 시도해보십시오,

trainer = BackpropTrainer(net, dataset=ds) 
+0

고마워,하지만 그게 문제가 아니야, 그걸 고치지 않았어. – user2129468