본문 바로가기
  • 공부한 것들과 여러가지를 기록해요

Python35

딥러닝의 학습 방법 딥러닝의 학습 방법 1. 인공 신경망은 입력에 대해서 순전파 연산을 함 2. 순전파 연산을 통해 나온 예측값과 실제값의 오차를 손실 함수(loss function)을 통해 계산 3. 이 손실(오차, loss)을 미분해서 기울기를 구함 -> 최솟값 찾기위해 4. 이를 통해 출력층 -> 입력층 방향으로 가중치와 편향을 업데이트 하는 역전파(옵티마이저)를 수행 : 인공신경망의 학습 단계 개념 정리 . . 순전파(Forward Propagation) - 인공 신경망에서 입력층에서 출력층 방향으로 연산을 진행하는 과정 - 주어진 입력이 입력층으로 들어가서 은닉층을 지나 출력층에서 예측값을 얻는 과정 행렬로 순전파 이해해해보기 아래의 예시에선 매개변수(가중치, 편향)이 총 6+2 = 8개 임을 알 수 있음 행렬로 .. 2023. 3. 19.
활성화 함수, 과적합, 기울기 소실 활성화 함수(Activation function) - 은닉층과 출력층의 뉴런에서 출력값을 결정하는 함수 - 비선형 함수 - 활성화 함수를 사용하는 은닉층 - 비선형층(nonlinear layer) 왜 활성화 함수로 비선형 함수를 사용해야하는가? - 선형 함수로 은닉층을 여러번 추가하더라도 1회 추가한 것과 차이 없음 - ex) 활성화 함수 f(x) = wx, y(x) = f(f(f(x))) = wwwx = kx - 선형 함수 층을 사용하지 않겠다는 건 아니다! - 선형 함수 층을을 비선형 층들과 함께 인공신경망의 일부로 추가하는 경우도 있음 -> 학습 가능한 가중치가 새로 생긴다는 점에서 의미 있음 - 선형 함수를 사용한 층을 활성화 함수를 사용하는 은닉층과 구분 - > 선형층(linear layer) .. 2023. 3. 19.
퍼셉트론 , ANN vs DNN 퍼셉트론(Perceptron) - 초기 형태의 인공 신경망 - 다수의 입력으로 하나의 결과를 내보내는 알고리즘 - 뉴런의 동작과 유사 - 가지돌기에서 신호 받아서 일정치 이상의 크기면 축삭돌기를 통해 신호 전달 - x : 입력값 - w: 가중치 - 축삭돌기의 역할 - y : 출력 - 인공 뉴런 - 각각의 입력값에는 각각의 가중치 존재. 가중치의 값이 클수록 해당 입력 값이 중요! - 입력값과 가중치의 곱의 전체 합이 임계치(threshold)를 넘으면 인공 뉴런은 1출력, 그렇지 않으면 0 출력 : 계단함수 - 활성화 함수 : 뉴런에서 출력값을 변형시키는 함수 - 퍼셉트론의 활성화 함수 : 계단함수 단층 퍼셉트론(Single-Layer Perceptron) - 위에서 배운 퍼셉트론 - 두 단계로만 이루어.. 2023. 3. 19.
순환 신경망(RNN) RNN RNN(Recurrent Neural Network)이란? - 입력과 출력을 시퀀스 단위로 처리하는 시퀀스 모델 - 가장 기본적인 인공신경망 시퀀스 모델 시퀀스 모델이란?? - 연속적인 입력으로 부터 연속적인 출력을 생성하는 모델 - EX) 챗봇, 기계번역 - 단어의 시퀀스 = 문장 , 문장(단어 시퀀스)을 입력받는 모델을 시퀀스 모델로 볼 수 있음! RNN 특징 - 피드포워드 신경망이 아님 : 피드포워드 신경망에서는 시계열 데이터의 성질(패턴)을 충분히 학습할 수 없음. - 은닉층의 노드에서 활성화 함수를 통해 나온 결과값을 -> 출력층 방향으로 + 은닉층의 노드의 다음 계산의 입력으로 " 즉, 활성화 함수를 거쳐서 나온 출력 값을 출력층 방향으로 내보내고, 이 값을 그 다음으로 들어오는 입력값.. 2023. 3. 14.
피드 포워드 신경망 언어 모델(NNLM) 피드 포워드 신경망 언어 모델(Feed Forward Neural Network Language Model) - 신경망 언어 모델의 시초 피드 포워드 신경망(FFNN) - 오직 입력층에서 출력층 방향으로 연산이 전개되는 신경망 기존 N-gram 언어모델의 한계 : 희소문제(훈련코퍼스에 존재하지 않으면 확률이 0) 희소문제는 기계가 단어의 의미적 유사성을 알 수 있다면 해결할 수 있는 문제 언어 모델 또한 단어의 의미적 유사성을 학습할 수 있도록 설계한다면 훈련 코퍼스에 없는 단어 시퀀스에 대한 예측이라도 유사한 단어가 사용된 시퀀스를 참고하여 예측 가능 -> 신경망 언어모델(NNLM) 아이디어 NNLM - N-gram 모델 처럼 다음 단어 예측시 정해진 개수(N)의 단어만을 참고함 - N : 윈도우 - .. 2023. 3. 14.
펄플렉서티(Perplexity, PPL) 펄플렉서티(Perplexity, PPL) - 언어 모델의 평가 방법 - perplexed : 헷갈리는. PPL : 헷갈리는 정도 - PPL이 낮을수록 언어 모델의 성능이 좋다 - 문장의 길이로 정규화된 문장 확률의 역수 N : 문장 W의 길이 - PPL은 이 언어 모델이 특정 시점에서 평균적으로 몇 개의 선택지를 가지고 고민하는지를 의미 - ex) PPL = 10 : 다음 단어를 예측하는 모든 시점마다 평균 10개의 단어를 가지고 어떤 것이 정답인지 고민 다음 단어를 예측하는 모든 시점마다 1/10 확률 PPL이 작다면 이 확률이 줄어들어서 성능이 좋은 것! - PPL이 낮다는 건 테스트 데이터 상에서 높은 정확도를 보인다는 뜻 - 사람이 직접 느끼기에 좋은 언어모델이라는 걸 바드시 의미하지는 않음 - .. 2023. 3. 14.