일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Self-loop attention
- machine learning
- python practice
- Transformer
- pytorch
- overfitting
- Set Transformer
- abstraction
- XOR
- sigmoid
- elif
- NLP
- Attention
- sentence embedding
- deep learning
- Classificaion
- GNN
- word2vec
- neural net
- Python
- Today
- Total
목록Study/Deep Learning (11)
Research Notes

▶ Sequence data : 우리가 사용하는 시퀀스 데이터가 많다. 한 단어만으로 이루어지는 것이 아니라 연속적으로 이루어져 있다는 뜻.(한 단어를 이해하기 위해서는 이전의 단어를 이해해야 하는 것과 같음) 기존의 Neural Net과 CNN은 Sequence data를 사용할 수 없다. - ex) 음성인식 ▶ RNN - State의 개념 중요. : 이전의 state가 입력으로 사용되고(ht-1), 새로운 time step(y)을 벡터 형태로 입력한다. → 이러한 형태가 거의 모든 RNN의 구조에 적용됨. - RNN의 연산방법 · WX와 같은 형태로 각각에 가중치를 만들어준다. · y값은 계산된 H에다가 다른 W를 곱해준다. (y가 몇개의 vector로 나올것인지는 W가 어떤 형태인지에 따라 정해짐)..

▶ ConvNet의 Conv 레이어 만들기 - CNN 레이어 구조: 하나의 이미지가 존재할 때 이미지를 잘라서 각각 Convolution 층에 넘김. 이 다음 활성화함수 ReLU를 사용하여 학습할 수도 있고, Pooling 층도 존재할 수 있음 - CNN의 기본 원리 · 32*32*3의 형태를 가진 이미지가 존재.(*3인 이유는 색 이미지이기 때문) · 한 부분만 떼어서 학습을 시작 --> 이 부분 : Filter(5*5*3) --> Filter를 사용하여 한 개의 값을 추출. · Filter는 값을 어떻게 추출할까? 아래의 그림과 같이 Wx + b와 같은 가설함수를 사용하여 하나의 값을 도출한다. (ReLU 활성화 함수를 앞에 붙이며 대부분 사용) · 이 Filter를 옆으로 넘기며 이미지에 존재하는 ..

▶ Overfitting - 위 그림처럼 학습 데이터에 모델이 너무 편향된 경우. 학습 데이터는 완벽하게 배웠지만 다른 데이터들에 적용할 경우 성능이 좋지 않디 - Overfitting인지 알 수 있는 방법? : Training Dataset에서는 거의 100%의 정확도를 내지만, Testing Dataset에서는 성능이 이보다 훨씬 떨어지는 경우. - Overfitting 문제해결 1) 학습 데이터의 양을 늘리기 2) Regularization : 가중치를 너무 큰 값으로 주지 않도록 하는 것 ▶ Dropout - 왼쪽은 기존의 평범한 모델, 오른쪽은 Dropout을 적용한 모델. - (b)는 모델에서 몇 개의 노드를 없애버리고 나머지 노드들을 사용하여 학습을 시킴. = 전체를 학습한 효과를 낼 수 있..

▶ ReLU의 출현 - 신경망의 층이 깊을때, Backpropagation을 사용하였을 경우 학습이 잘 안됨 : Vanishing Gradient(경사 감소 소멸) - sigmoid의 잘못된 사용 ▶ReLU : Rectified Linear Unit - ReLU 함수 : x가 0보다 크면 y=x, x가 0보다 작으면 0 ▶ 다양한 Activation Functions - sigmoid, tanh, ReLU, Leaky ReLU, Maxout, ELU 등 여러 가지의 활성화함수가 존재 ▶ Weight 초기값 정하기 - Vanishing Gradient를 해결할 수 있는 방법 1) ReLU 함수의 사용 2) Weight의 초기값을 잘 정하기 - 초기값을 줄 때 주의점 · 값에 0을 주면 안됨 · RBM(..

▶ XOR 문제 딥러닝으로 해결하기 - XOR문제는 하나의 유닛으로는 해결할 수 없음. - NN(Neural Network) -- 여러 유닛을 사용해 XOR문제를 해결할 수 있음. - NN을 사용한 XOR(식에 대입해보기) 1) 첫 번째 유닛에 XOR(0,0)값 대입, 대입해서 나온 값을 시그모이드 함수에 대입하면 y1값(0) 나옴. 2) 두 번째 유닛에 XOR(0,0)값 대입, 대입해서 나온 값을 시그모이드 함수에 대입하면 y2값(1) 나옴. 3) y1,y2를 최종 유닛에 대입하고 y를 구하여 XOR(0,0)의 결과값과 동일한지 비교. 4) 이러한 방식으로 XOR(0,0)/XOR(0,1)/XOR(1,0)/XOR(1,1)의 값들을 모두 비교. 모두 비교해본 결과 여러 유닛을 사용하여 XOR 문제를 해결할..

▶ Background of Deep Learning ▶ Perceptrons - MLP(Multilayer neural nets)를 사용한다면 XOR 문제를 해결할 수 있음. 퍼셉트론의 개념 등장 - 여러 layer들을 만들어 문제를 해결. ▶ Backpropagation(역전파) - 모델 학습 후 나온 W와 b의 값을 오차를 통해 조정해나가는 것. 기존 학습 순서를 역방향으로 수행한다. - Training -> forward -> dog(판별) : 순전파 // Error -> backward -> Trainig : 역전파 - 그러나 Neural net의 문제가 대두 - Neural net의 문제 : 역전파가 층이 깊어지면서 학습이 어려워졌고, 다른 머신러닝 알고리즘들이 더 좋은 성능을 냈다. ▶ ..

Research Question Is there a task and a corresponding loss that will allow us to learn highly generic sentence representations? Proposed Methods generic sentence embedding/representation을 통해, 현재 문장을 가지고 이전/이후 문장을 예측할 수 있는 모델을 개발함 단어 확장 방법(vocabulary expansion method)을 통해, encode된 word가 학습 시에만 활용되는 것이 아니라 수만개의 단어로 확장될 수 있도록 함 학습 후, 추출된 vector들은 8가지 task에 활용할 수 있음 (semantic relatedness, paraphrase..
1. Sent2Vec Sent2vec은 문장 하나를 하나의 vector로 embedding하는 방법. Word2Vec 모델을 기반으로 만들어짐 2. Sent2Vec의 특징 2.1 Subsampling 비활성화 문장의 모든 n-gram을 조합하여 학습할 수 있도록, window size를 문장 전체로 고정하며, 중요한 n-gram 쌍 생성을 방해하지 않도록 subsampling을 사용하지 않음 2.2. Dynamic context window 비활성화 Sent2vec은 문장 전체의 의미를 살리기 위해, 문장의 모든 n-gram을 조합하여 학습함. Sent2Vec의 Context window 크기는 문장의 전체 길이로 고정함 (* n-gram: bi-gram의 최대거리 ) 2.3 단어 n-gram Sent2..

1. Background of Word Embedding 모든 word embedding 관련 학습은 '비슷한 분포를 가진 단어는 비슷한 의미를 가진다'는 가정에 입각하여 이루어진다. (=Distributional Hyphothesis) 비슷한 분포를 가졌다는 것은 기본적으로 단어들이 같은 문맥에서 등장한다는 의미이며, 단어들이 같이 등장하는 일이 빈번하게 일어난다면, 단어들이 유사한 의미를 가진다는 것을 유추할 수 있다. 이러한 식으로 단어들의 관계에 대해 파악할 수 있다. 2. Word2Vec 기존 Neural Net 기반 학습방법에 비해 크게 달라진 것은 아니지만, 계산량이 현저하게 적어서 사람들이 많이 사용하는 방법이 되었다. 또한, Word2vec은 기존 연구와 다르게 학습을 위한 모델이 2가지..

1. Graph Graph의 구성 Graph Representation Degree Neighborhood Normalization 2. Graph Neural Networks(GNN) GNN Tasks GNN Learning Process GNN Variants 1. Graph 1) Graph의 구성 Graph Data Structure는 Node(그래프 하나의 원소)와 Edge(노드들 간의 연결 관계)로 이루어져 있다. Graph G = (V, E) V: nodes, E: edges, weight(edge property) Graph Data: Data 간의 Relation이 포함되어 있는 Data임. node들 간의 관련성을 표현하는 것이 매우 중요함 Graph는 Directed Gra..