2012-06-06 2 views
1

Pybrain의 SupervisedDataSetbuildNetwork 기능을 사용하여 피드 전달 네트워크를 구축했다고 가정합니다. 아키텍처는 10, 5, 2 : 10 입력 노드, 단일 숨겨진 레이어의 5 개의 숨겨진 노드 및 2 개의 출력 노드 일 수 있습니다. 우리가 출력 배열 conn.params을 해석 할 수있는 방법 Pybrain의 네트워크 아키텍처의 데이터 구조는 무엇입니까?

>>> our_network = buildNetwork(10,5,2) 
>>> for mod in our_network.modules: 
... for conn in our_network.connections[mod]: 
...  conn.params 

array([-0.82432749, -1.77414037, ... , 1.96635753]) 

은, 위의 건축으로 훈련 네트워크를 검사 할 때? 위의 아키텍처의 출력을 검사하면 입력과 숨겨진 레이어 사이에 50 개의 연결/가중치가 생깁니다. 어떤 입력이 가장 강한 연결과 관련되는지 파악하는 데 관심이 있습니다. 특히 반환 된 처음 5 개의 배열 요소가 입력 레이어의 첫 번째 노드와 5 개의 숨겨진 레이어 노드 사이의 연결과 관련되어 있다고 가정하는 것이 안전합니까?

지난 1 시간 동안 Pybrain을 역 공학으로 통찰력을 얻지는 않습니다.

답변

1

모듈 및 연결은 고유 한 방식으로 정렬됩니다 (평가 순서는 사전 순으로 매겨져 있으며 sortModules()입니다). 전역 .params 배열은 모든 구성 요소의 (병합 된) 매개 변수의 연결입니다.

도 참조하십시오. this related question.

관련 문제