목록딥러닝 (12)
Note
모델 설계 임베딩 벡터 차원 : 10 은닉 상태의 크기 : 32 해당 모델은 마지막 시점에서 모든 가능한 단어 중 하나의 단어를 예측하는 다중 클래스 분류 문제를 수행하는 모델 따라서 다중 클래스 분류 문제는 활성화 함수로 소프트맥스 함수를 사용한다. 손실 함수는 크로스 엔트로피 함수 사용. from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Embedding, Dense, SimpleRNN embedding_dim = 10 hidden_units = 32 model = Sequential() model.add(Embedding(vocab_size, embedding_dim)) model.add(SimpleR..
첫 번째 문장 : 경마장에 있는 말이 뛰고 있다 두 번째 문장 : 그의 말이 법이다 세 번째 문장 : 가는말이 고와야 오는 말이 곱다 1. X : 경마장에 Y: 있는 2. X : 경마장에 있는 Y : 말이 3. X : 경마장에 있는 말이 Y : 뛰고 4. X : 경마장에 있는 말이 뛰고 Y : 있다 5. X : 그의 Y : 말이 6. X : 그의 말이 Y : 법이다 7. X : 가는 Y : 말이 8. X : 가는 말이 Y : 고와야 9. X : 가는 말이 고와야 Y : 오는 10. X : 가는 말이 고와야 오는 Y : 말이 11. X : 가는 말이 고와야 오는 말이 Y : 곱다 1 ~ 11번은 모델이 문맥을 학습하기 위해 문장의 앞의 단어들을 전부 고려하여 학습하도록 데이터를 재구성한 모습. import..
GRU는 LSTM의 장기 의존성 문제에 대한 해결책을 유지하면서, 은닉 상태를 업데이트하는 계산을 줄였습니다. GRU는 성능은 LSTM과 유사하면서 복잡했던 LSTM의 구조를 단순화 했다.
RNN(Recurrent Neural Network)은 인공 신경망으로, 이름 답게 유닛간의 연결이 순환적 구조를 갖는 특징을 갖고 있다. RNN은 입력과 출력을 시퀀스 단위로 처리하는 시퀀스(Sequence) 모델로 순방향 신경망과 달리 내부의 메모리를 이용해 시퀀스 형태의 입력을 처리할 수 있다. 순방향 신경망은 입력층에서 출력층 한 방향으로 진행하지만, RNN은 은닉층의 노드에서 활성화 함수를 통해 나온 결과값을 출력층 방향으로도 보내면서, 다시 은닉층 노드의 다음 계산의 입력으로 보내는 특징을 갖고있습니다. RNN에서 은닉층에서 활성화 함수를 통해 결과를 내보내는 역할을 하는 노드를 셀(cell)이라고 한다. 은닉층 셀은 각 시점에서 바로 이전 시점에서의 은닉층 셀에서 나온 값을 자신의 입력으로 ..
활성화 함수의 특징 선형 함수로는 은닉층을 여러 번 추가하더라도 1회 추가한 것과 차이를 줄 수 없기 때문에 비선형 함수이다. (1) 계단 함수 현재는 거의 쓰이지 않지만 인공신경망을 배울 때 가장 먼저 접하는 활성화 함수. (2) 시그모이드(Sigmoid) 함수 출력 값은 0과 1 사이의 값으로 출력하며, 이진 분류에 사용한다. 미분해서 기울기를 구하는 과정에서 0이나 1에 가까워질수록 기울기 소실 문제가 발생한다. 이로 인해 은닉층에 시그모이드를 주로 사용하지 않고 출력층에 사용한다. (3) 소프트맥스(Softmax) 함수 시그모이드와 마찬가지로 출력층에서 주로 사용된다. 세 가지 이상의 다중 클래스 분류에 사용한다. (4) 렐루(ReLU) 함수 음수 값은 0으로 출력하고 양수 값은 입력 값 그대로 ..