Transformer 이전까지의 DeepLearning Skimming(Not paper)
딥러닝이란?
인공지능(AI)의 한 분야인 머신러닝의 하위 영역으로, 인공신경망(특히 다층 신경망)을 활용하여 데이터를 학습하고 패턴을 인식하는 기술이다. 머신러닝은 데이터로부터 학습하여 예측이나 결정을 내리는 알고리즘을 연구하는 분야이고, 딥러닝은 그중에서도 인간의 두뇌 구조를 모방한 신경망을 깊게 쌓아 복잡한 문제를 해결하는 방법이다.
간단하고 명확히 이야기 하면, 딥러닝 모델은 숫자 형태의 데이터를 입력받고, 추론 결과를 숫자로 출력하는 블랙박스 모델로 볼 수 있다.
간단하게 CV Task와 NLP Task로 예를 들어보자.
짧게 우선 요약하면 아래와 같다.
두 Task 모두 결론적으로는 숫자를 입력받고, 숫자로 추론결과를 반환한다는 대전제를 따른다.
이미지와 글자의 특성을 고려하여 Image를 처리할 때에는 이미지 각 픽셀의 Topological information(위상학적 정보)를 보존하기 위한 모델이 만들어졌으며, Word를 처리할 때에는 각각 단어의 sequential information(순차적 정보) 및 Contextual information(문맥적 정보)를 보존하기 위한 모델이 만들어졌다.
CV(CNN) Task in DeepLearning
이미지는 그 자체를 높이 × 너비 × 3(RGB채널)로 이루어진 3차원 텐서로 볼 수 있다. 따라서 별도의 숫자변환 과정이 필수적이지 않다.
앞서 말했듯이, 이미지는 각 픽셀간의 상호위치;위상학적 정보가 이미지의 특징을 이루고 있기 때문에 이를 보존하기 위해서 receptive field라는 개념이 도입된 convolution layer가 사용되는 모델이 사용되어 왔다.
NLP Task in DeepLearning
NLP Task는 전처리 과정이 필수적이다. 글자는 숫자가 아니기 때문이다.
자연어는 크게는 Corpora, 작게는 Document단위로 이루어져 있다. 글자들의 순차적 흐름과 문맥적 정보를 파악하기 위해서는 각각의 문장을 잘게 나누는 작업(Tokenization)과 숫자로 변환하는 작업(Embedding)이 필요하다.
TBD