본문 바로가기

머신러닝 & 딥러닝 공부/호기심 기록

나를 위한 딥러닝 용어정리

반응형

[딥러닝]

- 텐서(Tensor) : 수학적인 개념으로 데이터의 배열이라고 할 수 있다. 

 

- MLP : 다층 퍼셉트론(Multi-Layer Perceptron, MLP)이다. 

 

- DNN : 심층 신경망(Deep Neural Network) 로 입력층(Input layer)과 출력층(output layer) 사이에 여러 개의 은닉층(hidden layer)들로 이뤄진 인공 신경망(Artificial Neural Network, ANN)이다. 

 

-Sequential: 신경망에서 계층의 순서를 정의합니다.

-Flatten: 정사각셩을 1차원 세트로 바꾼다. 주로 첫줄에서 이미지 따위를 변환할 때 쓰인다.

-Relu : X> 0 일때는  X를 반환하고 그렇지 않으면 0을 반환합니다. 현재 가장 많이 쓰이는 활성화 함수다.

-Softmax : 주로 마지막 층에 쓰이는 활성화 함수 , [0.1, 0.1, 0.05, 0.1, 9.5, 0.1, 0.05, 0.05, 0.05] -> [0,0,0,0,1,0,0,0,0] -- 이렇게 바꿔서 많은 코딩을 절약한다.

 

- 오차역전파(Back-propagation) : 컴퓨터가 예측값의 정확도를 높이기 위해 출력값과 실제 예측하고자 하는 값을 비교하여 가중치 변경

[오차역전파 과정]

1) 주어진 입력값에 상관없이, 임의의 초기 가중치(w)를 준 뒤 은닉층을 거쳐 결과를 계산합니다.

2) 계산 결과와 실제 예측하고자 하는 값 사이의 오차를 구합니다.

3) 가중치를 업데이트 합니다.

4) '1~3'의 과정을 오차가 더이상 줄어들지 않을 때까지 반복합니다.

 

-불용어(Stopword) : 갖고 있는 데이터에서 유의미한 단어 토큰만을 선별하기 위해서는 큰 의미가 없는 단어 토큰을 제거하는 작업이 필요합니다. 여기서 큰 의미가 없다라는 것은 자주 등장하지만 분석을 하는 것에 있어서는 큰 도움이 되지 않는 단어들을 말합니다. 예를 들면, I, my, me, over, 조사, 접미사 같은 단어들은 문장에서는 자주 등장하지만 실제 의미 분석을 하는데는 거의 기여하는 바가 없는 경우가 있습니다. 이러한 단어들을 불용어(stopword)라고 하며, NLTK에서는 위와 같은 100여개 이상의 영어 단어들을 불용어로 패키지 내에서 미리 정의하고 있습니다.

 

<Optimizers , keras.io/ko/optimizers/

 

Optimizers - Keras Documentation

옵티마이저의 사용법 옵티마이저는 Keras 모델을 컴파일하기 위해 필요한 두 개의 매개변수(parameter) 중 하나입니다. from keras import optimizers model = Sequential() model.add(Dense(64, kernel_initializer='uniform', inp

keras.io

 

-SGD(Stochastic Gradient Descent) :확률적 경사하강법 옵티마이저, 모멘텀, 네스테로프 모멘텀, 학습률 감소 기법(lr decay)를 지원하며, 파라미터는 아래와 같다.

  • lr: 0보다 크거나 같은 float 값. 학습률.
  • momentum: 0보다 크거나 같은 float 값. SGD를 적절한 방향으로 가속화하며, 흔들림(진동)을 줄여주는 매개변수입니다.
  • decay: 0보다 크거나 같은 float 값. 업데이트마다 적용되는 학습률의 감소율입니다.
  • nesterov: 불리언. 네스테로프 모멘텀의 적용 여부를 설정합니다.
반응형