어제 this question 게시 됨 내 신경망 (확률 적으로 그라데이션 강하를 사용하여 backpropagation을 통해 교육하고 있음)이 지역 최소값에 걸렸을 때 어제 요청했습니다. 다음의 논문은 XOR 신경망에서 로컬 미니 마의 문제에 대해 이야기합니다. 첫 번째 것은 로컬 미니 마의 문제가 없다고 말하는 반면, 다음 논문 (1 년 후 작성)은 2-3-1 XOR 신경망에서 로컬 미니 마의 문제가 있다고 말하고있다. 제쳐두고, 저는 3-3-1 즉, 입력과 숨겨진 레이어에 바이어스를 사용하고 있습니다). 이 두 가지 (내가 그것을 읽을 수 없습니다 해요 그래서 전체 종이에 액세스 할 수없는) 초록 있습니다 Hamey LG하여활성화 함수와 초기 가중치의 선택은 신경망이 로컬 최소치에 갇혀 있는지 여부에 영향을 미칩니 까?
- XOR has no local minima: A case study in neural network error surface analysis.. 시드니, 맥쿼리 대학교 컴퓨터 공학과
- A local minimum for the 2-3-1 XOR network.Sprinkhuizen-Kuyper IG, Boers EW.
도 가장 간단한 XOR 네트워크에 대한되지 로컬 최소값이 말한다 another paper [PDF]있다, 그러나 그것은 2-3-1 네트워크에 대해 얘기하지 않는 것 같습니다.
내 실제 질문에 : 활성화 기능의 선택, 초기 가중치 및 신경 네트워크가 로컬 미니 마에서 고착 될지 여부에 미치는 영향에 대해 논의한 항목을 찾을 수 없습니다. 내가이 질문을하는 이유는 표준 Sigmoid 활성화 함수와 하이퍼 볼릭 탄젠트 활성화 함수를 사용하려고 시도했기 때문입니다. 나는 전자의 경우 20 % 정도만 붙어있는 반면, 후자의 경우 나는 훨씬 더 자주 붙어있는 경향이 있다는 것을 알았다. 나는 또한 처음으로 네트워크를 초기화 할 때마다 내 가중치를 무작위로 선택하고 있으므로 임의의 가중치 세트가 내 신경망을 "고정"하도록 더 많이 처리되는지 궁금합니다.
활성화 기능과 관련하여 오류가 결국 활성화 기능에 의해 생성 된 출력과 관련되기 때문에 나는 이의 효과 (즉, 오류 표면이 변경됨)라고 생각하고 있습니다. 그러나 이것은 직감에 기반하고 있으며 구체적인 답을 원합니다 (두 점 모두 : 초기 가중치와 활성화 함수 선택).
나는 [[(0,0), (0,1), (1,0), (1,1)]'을 사용하여'[0, 1, 1, 0 ]'. "distribute"란, 이러한 입력 패턴을 무작위로 네트워크에 표시해야한다는 의미입니까? 또한 숨겨진 레이어의 뉴런 수를 4로 늘릴 때 막히지 않고있는 것으로 나타났습니다. 코드를 수정하여 가중치를 인쇄하여 자신이 무엇인지 확인할 수있게했습니다. 나는 또한 오류를 일괄 처리하는 아이디어를 좋아한다. 오류를 추가한다는 의미입니까? 아니면 당신은 그들을 배열에 유지하고 오류 배열을 통해 iterating하여 신기원 말기에 가중치를 업데이 트합니까? –
NN에 훈련 샘플을 효과적으로 무작위로 제시하는 것을 의미합니다. [0,1,0,1]과 같은 출력 값을 가진 샘플을 시도해 볼 수 있습니다. 오류를 배치하면 주문에 대해 전혀 걱정할 필요가 없습니다. 오류를 일괄 처리하고 에포크마다 가중치를 업데이트하려면 오류 값을 계산하기 위해 역 전파 단계를 수행하지만 각 가중치를 업데이트 할 때는 평균 오류 (총 가중치/총 교육 견본)를 사용해야합니다. – Nate
아, 근본적으로 입력 패턴을 뒤섞어 야합니다. 배치 업데이트도 의미가 있습니다. 난 그냥 오류를 추가하고 일단 내가 반복의 번호로 나눌 것입니다 그리고 그 eppoch와 함께 끝났어 그 backpropagation에 대한 그 가치를 사용하는 것 같아요. 감사! 이것은 의미가 있습니다. –