본문 바로가기

스터디/딥러닝12

Attention Mechanisms RNN에 기반한 언어 모델은 크게 2가지 문제가있다. 1. 하나의 고정된 크기 벡터에 모든 정보를 압축하려고 하니 정보 손실이 발생 2. RNN의 고질적인 문제인 기울기 소실(Vanishing Gradient) 문제 존재 이를 해결하기 위해 등장한 기법이 바로 어텐션(attention)! 어텐션 기본 아이디어는 디코더에서 출력 단어를 예측하는 매 시점 마다, 인코더에서의 전체 입력 문장을 다시 한 번 참고하는 것이다.주목할 점은 모든것을 동일한 비율로 참고하는 것이 아니라, 해당 시점에서 예측해야 할 단어와 '연관성 있는 부분을 더 집중'하게 된다. 소프트 맥스층을 거쳐 나온 붉은 막대는 출력 단어를 예측할 때 얼마나 도움이 되는지 정도를 나타낸것. 해당 수치는 하나의 정보로 디코더에 전송된다. 결과적으.. 2022. 7. 22.
Chapter1. 한눈에 보는 머신러닝 1.1 머신러닝이란? 일반적 정의 [머신러닝은] 명시적인 프로그래밍 없이 컴퓨터가 학습하는 능력을 갖추게 하는 연구 분야다. 조금 더 공학적 정의 어떤 작업 T에 대한 컴퓨터 프로그램의 성능을 P로 측정했을 때 경험 E로 인해 성능이 향상됐다면, 이 컴퓨터 프로그램은 작업 T와 성능 측정 P에 대해 경험 E로 학습한 것이다. 스팸 필터는 스팸메일과 일반 메일의 샘플을 이용해 스팸메일 구분법을 배울 수 있는 머신러닝 프로그램이다. 시스템이 학습하는 데 사용하는 샘플을 훈련 세트 training set라고 하고 각 훈련 데이터를 훈련 사례 trainnig instance 혹은 샘플이라고 한다. 이 경우 작업 T는 새로운 메일이 스팸인지 구분하는 것이고, 경험 E는 훈련 데이터 trainnig data이며, .. 2022. 7. 20.
[논문] ViT(Vision Transformer) NLP에서 Transformer가 RNN을 구축한 것 처럼, 이미지 인식에서도 Transformer가 CNN을 구축할 수 있을 것이라는 기대를 받고 있는 새로운 모델 ViT에 대해 살펴보자! 논문 : An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale Vision Transformer(=ViT)의 중요한 부분은 세 가지이다. 1) 입력 이미지 2) 아키텍처 3) 사전학습과 파인 튜닝 1. 입력 이미지 기본적으로 Transformer에서는 각 단어가 벡터로 표현되어 있는 문장을 한 번에 입력한다. 이러한 Transformer에 이미지를 넣어 다루고 싶은 경우에 아래의 과정을 생각해 볼 수 있다. 이미지를 패치로 나눠서 각 배.. 2022. 7. 18.
CNN VS FC FC(완전연결) 계층의 문제점 완전 연결 계층(fully connected layer)을 이용해 MNIST 데이터 셋을 분류하는 모델을 만들 때, 3 차원(세로, 가로, 채널)인 MNIST 데이터(28, 28, 1)를 입력 층(input layer)에 넣어주기 위해서 아래의 그림처럼, 3 차원 → 1 차원의 평평한(flat) 데이터로 펼쳐줘야 한다. 즉, (28, 28, 1)의 3 차원 데이터를 28X28X1= 784의 1 차원 데이터로 바꾼 다음 입력 층에 넣었다. 이러한 완전 연결 계층의 문제점은 바로 '데이터의 형상이 무시' 된다는 것 이미지 데이터의 경우 3 차원(세로, 가로, 채널)의 형상을 가지며, 이 형상에는 '공간적 구조(spatial structure)'를 가진다. 예를 들어 공간적으로 .. 2022. 7. 14.
Pytorch vs Tensorflow > 현재 많은 연구자들의 논문에서 Tensorflow 보다 Pytorch 관련 논문의 비율이 앞도적으로 늘어나고 있음 > 전체 논문에서도 Torch가 Tensorflow보다 많은 비율을 차지하고 있는 추세 Simplicity •numpy와 유사하고 매우 pythonic하고 파이썬 환경 시스템과 쉽게 통합할 수 있다. •Tensorflow에서는 debugging 하기 굉장히 까다롭다. Great API •대부분 Tensorflow보다 Pytorch를 더 선호한다. •왜냐하면 tensorflow에서는 많은 변경이 있었다. (layers -> slim -> estimators -> tf.keras) Performance •PyTorch의 동적 그래프는 최적화의 기회를 엄격히 줄여준다는 사실에도 불구하고, Py.. 2022. 3. 15.
CNN-based Approaches For Cross-Subject Classification in Motor Imagery: From The State-of-The-Art to DynamicNet https://github.com/jesus-333/Dynamic-PyTorch-Net GitHub - jesus-333/Dynamic-PyTorch-Net: Class to automatic create Convolutional Neural Network in PyTorch Class to automatic create Convolutional Neural Network in PyTorch - GitHub - jesus-333/Dynamic-PyTorch-Net: Class to automatic create Convolutional Neural Network in PyTorch github.com convolutional neural network (CNN)-based DL models Dynamic.. 2022. 3. 12.