인공 신경망 구현에 관한 간단한 설명
TRANSCRIPT
• 원문 출처 : http://nlp.stanford.edu/~socherr/sparseAutoencoder_2011new.pdf
• 스탠포드 앤드류 응 교수의 sparse autoencoder 노트를 한글로 번역
Introduction• Supervised learningEx) 우편번호 인식 , 음성 인식 , 자동 운전 차량 , 그리고 인간의 게놈 유전자 이해에도 도움한계 ) input feature 를 입력해주어야 함
• Unsupervised learning – Autoencoder분류 안된 데이터에서 특징을 자동으로 학습하는 알고리즘The best case 의 supervised learning 보다는 성능이 낮음Ex) 음성 , 문자 인식에 좋은 성능
강의 노트 순서
• Supervised learning: 지도 학습에서 피드포워드 신경망(feedforward neural network) 과 역전파 알고리즘
• Unsupervised learning: 알고리즘 구축 . Sparse autoen-coder 구축
인공 신경망
• Input
• Hypothesis
뉴런 – 인공 신경망의 최소단위
• 입력값
• 출력값
• 활성함수 (sigmoid function)
• 활성함수 (hyperbolic tangent)
뉴럴 네트워크 (neural network)• 뉴럴 네트워크 : " 뉴런 " 을
여러개 묶어 연결 시킨 것
뉴럴 네트워크 (neural network)• 용어• "+1" 이라고 표시된 원은 bias unit• 왼쪽 레이어의 나머지들은 input
layer( 입력층 )• 가장 오른쪽의 레이어는 output
layer( 출력층 )• 중간의 레이어는 hidden layer( 은닉
층 )• 이 뉴럴 네트워크는 3 개의 input
unit( 바이어스 유닛은 세지 않음 ) 가 있고 , 3 개의 hidden unit, 그리고 1개의 output unit
뉴럴 네트워크의 계산 순서
• 네트워크의 출력을 계산하려면 , 모든 activation 을 계산
• 즉 레이어 를 계산하고 , 을 계산하고 , 까지
식 (6-7) 을 써서 완료
Multilayer, multiple output• ex) 의료 처방
어플리케이션 . 입력벡터 x 는 환자의 증상 , 출력값 y 는 각 질병 유무
Backpropagation algorithm• 입력 :• 비용함수 (cost function):
• 일반식 :
• 이 비용 함수는 분류 (classification) 에도 쓰이고 , 회귀(regression) 문제에도 쓰임
• Learning 은 batch gradient descent 함
• Minimize:
• 컨벡스 함수가 아니므로 , 그레디언트 디센트 (gradient de-scent) 는 지역 최적화 (local optima) 에 빠질 수 있음• But 현실 문제에서는 잘 풀리는 편임• Symmetry breaking 을 위해 초기 파라미터는 랜덤값 필요
• Minimize:
• 매 이터레이션에 W, b 갱신은
• 학습률 :
• 식 (8) 을 편미분하면
Backpropagation algorithm
의사코드
Autoencoder• 학습 데이터에 클래스가 없음
• Autoencoder 뉴럴 네트워크는 비지도 학습 알고리즘이고 , 역전파를 쓰며 , 타겟 값이 출력값
• Average activation
이라고 할 때 , 목적식을 다음이라고하자 (rho 는 sparsity 파라미터 . 보통 0.05).
이를 푼 해 중 하나는
• 앞의 해를 KL- 발산에 따라 다음과 같이 쓸 수 있음
이 때 는 KL- 발산 식 .
비용함수 :
구현에서 달라지는 부분 ( 둘째 레이어 )
Visualization• 10 X 10 사이즈 이미지• 활성함수