목록전체 글 (8)
EHFKSWL

Transformer에 대하여 논문을 정리해 보고자 한다. 이 논문은 2017년도에 구글에서 발표한 것으로 RNN과 CNN을 사용하지 않고 Attention 만으로 번역 task에서 당시 SOTA를 달성하였다. 지금까지도 많은 논문들이 Transformer를 기반으로 많이 나왔으며 그 분류한 표는 아래와 같다. Transformer는 자연어처리 뿐만아니라 vision 분야에서도 좋은 성능을 내고 있으므로 반드시 알아야 할 개념이라고 생각한다. Eschewing Recurrence Transformer와 LSTM, GRU 같은 RNN 계열 모델과의 가장 큰 차이는 Transformer가 recurrence의 특성을 제거했다는 것이다. Recurrence는 hidden state인 h_t가 h_t-1의 함수..

유튜브에 있는 앤드류 응 교수님의 A Chat with Andrew on MLOps: From Model-centric to Data-centric AI 강의를 주로 요약하였습니다. 유튜버 백색나무의 테슬라가 데이터를 다루는 방법 영상도 내용이 괜찮습니다. 그림이 많아서 길어보이는데 실제 내용은 얼마 없고 반복되는 것이 많아서 금방 읽을 수 있습니다. AI system 은 코드와 데이터의 결합이다. 여기서 코드는 model 이나 알고리즘을 말한다. Steel 제조업에서 딥러닝을 이용하여 defect를 검출하는 모델의 성능을 개선시키고자 한다. 현재 잘 튜닝된 hyperparemter의 system의 accuracy는 76.2%이다. 이 모델의 정확도를 90% 까지 높이려면 어떤 점 을 개선시켜야 할까 예..
코딩테스트 준비와 개발 실력 향상을 위해 여러 플랫폼(해커랭크, 백준, 프로그래머스 등)에서 문제를 풀고 있다. 어려운 문제도 있고 쉬운 문제도 있지만, 문제를 풀면서 공부하는 알고리즘이나 새로운 방법, 개념들을 어느 공간에 남기지 않으면 나중에 잊어버리게 된다. 그래서 잘 몰랐던 개념이나 어려운 내용에 대해서는 이 챕터에서 글로 남겨보고자 한다. 알고리즘 종류에 대해서는 딱히 분류를 하지 않을 것이다.

Seq-to-Seq Sequence-to-sequence 모델은 입력된 sequence로 부터 특정 도메인의 sequence를 출력하는 모델을 말한다. 예를 들어 RNN을 이용한 언어 번역 모델이 여기에 해당한다. 예를 들어 위와 같이 영어 문장 'How is the wheather?'를 번역하는 모델이 있다고 하자. 먼저 번역하고자 하는 문장의 각 단어를 순서대로 받아서 context vector를 만든다. 이 부분이 Encoder 이다. 그리고 context vector와 start를 합쳐서 번역을 시작한다. 위의 그림과 같이 Recurrent 하게 hidden state 와 이전 번역 단어를 합쳐서 다음 단어를 번역한다. End가 나오면 번역을 끝낸다. 번역하는 부분을 Decoder라고 한다. se..

Batch Normalization: Accelerating Deep Network Training b y Reducing Internal Covariate Shift 위 논문 내용의 일부를 요약하였습니다. Batch Normalization을 이해하기 전에 딥러닝에서 Normalization이 왜 필요한지 먼저 이해해야 한다. BN은 Normalization 앞에 Batch가 붙은 것이므로 Batch 단위로 Normalization을 진행하겠다는 것을 예상해 볼 수 있다. Normalization이란? Normalization은 말 그대로 데이터를 정규화 시키는 것을 말한다. 고 3때 통계 과목에서 정규화라고 하여 x에 평균값을 빼주고 표준편차로 나누는 것을 배운 경험이 있을 것이다. 이것도 정규화 방..

이활석님의 강의를 들으며 가장 신기했던 부분은 Manifold에 대한 개념이었다. 데이터, 특히 이미지를 바라보는 새로운 관점을 가질 수 있었다. 먼저 아래와 같은 28X28X1의 MNIST 이미지 데이터 셋이 있다고 하자. 이미지는 pixel단위의 점들이 모여서 시각적으로 어떤 형태를 보여지는 데이터라는 것은 잘 알고 있을 것이다. 이 흑백이나 칼라이미지에 따라서 gray scale이나, RGB로 나누어 보기도 하지만 공통적으로 width X height X depth의 형태를 가진다. 그리고 28X28X1의 image라는 것은 사실 28X28X1의 개의 값을 가지는 하나의 데이터라고 볼 수 있다. 즉 하나의 데이터를 784차원 공간의 한 점으로 생각해 볼 수 있다. 그럼 28X28X1의 크기를 가지는..

지난 Autoencoder 글에 이어 VAE에 대한 설명글을 작성해보고자 한다. Autoencoder는 VAE를 이해하기 위한 포석 같은 것이었다. 이 VAE에는 재밌지만 어려운 개념들이 많이 나와서 VAE를 공부하면서 많은 것들을 배울 수 있었다. VAE를 구현하기 위해 공부해야 했던 많은 개념들도 포함해서 같이 작성하겠다. 주요 참고 논문 Tutorial on Variational Autoencoders The Autoencoding Variational Autoencoder github 주소 https://github.com/DaeseungLee/VAE-Tensorflow2.0 1. Introduction Autoencoder에서는 Latent vector z가 원본 데이터를 최대한 잘 복원하도록 ..

Intro 이활석님의 오토인코더의 모든것 강의를 듣고 AE, VAE를 구현하였다. 강의에는 VAE 뿐만아니라, Loss function을 바라보는 두 가지 관점( Backpropagation, Maximum likelihood)에 대한 설명이나, Autoencoder에 대한 설명도 있는데 내용이 매우 좋다. 그래서 강의를 듣고 더 공부한 것들을 남겨보고자 한다. 이 주제에 대해서는 AE와 VAE 두가지 챕터로 나누어 설명할 것이다. Autoencoder는 많은 도메인에서 사용 중인 것 같은데 image processing(vision)에 좀더 집중하여 살펴보고자 한다. 보통 딥러닝 기초 강의를 들으면 Unsupervised(답이 없는 문제) 보다는 Supervised(답이 있는 문제) 예제를 먼저 접하게..