pytorch를 이용한 자연어입문
-
6_요약_Surname_Classification_with_RNNs.ipynbpytorch를 이용한 자연어입문 2024. 5. 24. 15:23
RNN순차적 데이터 (Sequential data)Gradient vanishing - 로스를 w에 대해 미분했을때 곲하는값이 많아져서 gradient값(기울기 = 미분) 이 거의 0된데 Long term dependency문장 길이가 길어지면 초반 내용을 기억능력이 떨어짐-> 해결책 -> bidirectional RNN -> 좋은해결책아님장기 의존성(Long-term dependencies)은 모델, 시스템 또는 알고리즘이 입력 시퀀스의 초반부에서 중요한 정보를 시간적 또는 맥락적으로 먼 거리까지 기억하고 활용하는 능력을 말합니다. 이는 여러 머신러닝 및 자연어 처리(NLP) 작업에서 매우 중요한 개념으로, 특히 문장이나 문서 내에서 멀리 떨어진 단어들이나 개념들 간의 관계를 이해하는 데 필요합니다...
-
5-3_요약_new 분류pytorch를 이용한 자연어입문 2024. 5. 17. 16:13
출처https://product.kyobobook.co.kr/detail/S000001810395 파이토치로 배우는 자연어 처리 | 델립 라오 - 교보문고파이토치로 배우는 자연어 처리 | 쉽고 빠르게 익히는 자연어 처리 입문 가이드북자연어 처리(NLP)는 인공지능이 지닌 무한한 능력을 이용해 애플 시리, 아마존 알렉사, 구글 번역 등과 같은 제품product.kyobobook.co.kr 5-1 ((Pretrained) 단어의 vector화) 사전학습 된 Embedding -> 버트, GPT (라벨이 없어도 학습가능 5-2 직접 Embedding 처음부터 학습 -> Embedding=단어의 vector화 (주변 단어 보고 가운데 맞추기, sequence 보고 다음 단어 맞추기) Task: 문서 분류,..
-
5-2_요약_Continuous_Bag_of_Words_CBOW.ipynb_단어와 타입 임베딩pytorch를 이용한 자연어입문 2024. 5. 10. 15:40
Data typecontinuous(연속) - 이미지discrete(이산) - 자연어 Embedding : 단어, 토큰의 벡터표현 one hot vector로 단어를 표현하면 n개의 전체단어수 = vocab size = vector 크기 = vocab size onehot vector의 문제-> sparse 표현(예 000001)1. 계산문제 : size 너무 커서 비효율적2. 통계적, 서로 관계 알기 어려움 onehot vector 해결점 -> dense표현으로 기존 10만(sparse표현)을 몇백단위로 줄여서 표현1. 계산 줄어듬2. 단어간 의미를 고려할수 있음.3. 특정 task에 적합하도록 학습시킬수 있다.(backpropagation) 아래그림backprop..
-
4-3_요약_Classifying_Surnames_with_a_CNN.ipynbpytorch를 이용한 자연어입문 2024. 4. 20. 13:10
CNN (Convolution Neural Network)CNN : Kernel 로 stride 해주면서 연산하는 Neural Network (convoultion연산 - 내적x)사용이유: 순차적 데이터(이미지 특히) sequential data에 처리하기 좋아서 -> 이유: local feture를 잘 캐치함. 아래그림)모서리에 흰색왼쪽 빨간네모등 전체적 x는 다르지만 위치직 특징( local feature)를 잘뽑아낸다. 출처 https://velog.io/@skkumin/CNNConvolution-Neural-Network-%EC%9D%B4%EB%A1%A0 CNN(Convolution Neural Network) 이론컨브넷(convnet)이라고도 불리는 합성곱 신경망..
-
4-2_요약_ Classifying_Surnames_with_an_MLP.ipynb_ 다층 퍼셉트론으로 성씨 분류하기 - overfitting 방지법 (데이터 늘리기, Early stopping(validation data), Weight Decay(가중치 감쇠), Dropout, Batch Normalizationpytorch를 이용한 자연어입문 2024. 4. 19. 16:18
SummaryDropout : 학습중에 일부 가중치를 확률적으로 0으로 만드는것Dropout 쓰는이유: overfitting 막는데 도움 Overfitting: 학습데이터를 모델이 거의 외워버린 상태 => 새로운 테스트 데이터 대해 모델이 성능 낮음Overfitting 막는 방법: 데이터 늘리기, Early stopping(validation data), Weight Decay(가중치 감쇠), Dropout, Batch Normalization 아래그림) dropout 아래그림)Overfitting: 학습데이터를 모델이 거의 외워버린 상태 => 새로운 테스트 데이터 대해 모델이 성능 낮음 아래그림)train data, validation data, test datatrain data만 있..
-
4-1_요약_XOR_Problem2.ipynb_ 요약_20240403pytorch를 이용한 자연어입문 2024. 4. 3. 14:20
SUMMARY문제상황: Perceptron으로 XOR을 표현하려고 했는데, 표현 되지않았다.해결책: multi layer perceptron으로 풀수있다는것을 실험으로 확인함.XOR problem은 perceptron으로 풀수 없음을 실험으로 확인함.그래서 XOR problem을 풀려면 multi layer perceptron으로 풀수있다는것을 실험으로 확인함. XOR연산으로는 1개선으로 구분안됨(and, or은 1개선으로 구분됨)==>해결책: hidden layer를 통해서 hidden space에 한쪽으로 class들을 모아놓음으로써 구분할수 있게 해준다. 아래그림) 퍼셉트론으로는 아무리 학습해도 동그라미랑 별을 구분할수 없음 아래그림)원래그림을 maping하면 직선하나로 구분가능 activat..