CNN은 이미지 분류 분야에서 좋은 성능을 보여준 아키텍쳐입니다. 이전에 cs231n을 수강했었는데 CNN에 궁금한 점들이 생기면서 다시 공부하면서 정리했습니다. CNN의 기본 아이디어는 동물이 물체를 구분할 때에 과정에 착안하여 만들어진 신경망 모델입니다. CNN의 기본적인 구조는 위 그림과 같은데, 특징을 추출하는 Conv Layer와 정보를 압축하는 Pooling Layer의 반복이 핵심입니다. Convolution Layer Convolution Layer는 CNN의 핵심입니다. 이 layer가 입력받은 이미지의 특징을 추출하는 역할을 하기 때문인데, CNN은 이 convolution layer를 여러겹 쌓아 만들게 됩니다. Convolution layer에서는 filter를 가지고 이미지를 순회..
(김기현님의 강의를 참고한 내용입니다.) 처음 실습환경에서 jupyter를 유용하게 사용하곤 한다. 각 task를 코딩하고 바로바로 확인할 수 있기 때문이다. 하지만 실제 딥러닝과 같이 대량의 실험 환경에서는 Jupyter Notebook이 적합하지 않다. 셀들을 하나씩 실행시켜 가는 구조이기 때문이다. 그래서 jupyter Notebook은 시각적으로 바로바로 결과를 체크해야할 때 적합하다. 실제 결과를 확인하고 다음 셀의 작업에 적용하는 task일 때 좋다는 것이다. 그래서 복잡한 프로그램을 구성할 때에는 적합한 형태가 아니다. 특히 실무에서의 베포는 python script를 만들어서 베포하는 환경이므로 Jupyter로 딥러닝을 구현하기에 적합하지 않다. 딥러닝 실험 과정은 CLI(Command l..
0. Abstract Transformer는 longer-term dependency의 학습에 잠재력이 있지만, 고정된 길이의 문맥만을 학습하기 때문에 한계가 있습니다. 따라서 본 논문에서는 고정된 길이를 넘어 의존성을 학습할 수 있는 Transformer-XL을 소개하고자 합니다. longer-term dependency를 포착하고 context fragmentation을 해결하는 것이 주된 목적입니다. 결과적으로 Transformer-XL은 RNNs보다 80%, vanilla Transformer보다 450% 더 길게 의존성을 학습했고, 짧은 문장과 긴 문장 모두에서 더 나은 성능을 보여줬습니다. 1. Introduction Language Modeling은 비지도 사전학습 적용뿐만 아니라 long-..
앞서 Paper Review 했던 것들... (정리가 깔끔하진 않음) Abstract BERT는 라벨링되지 않는 텍스트 문서의 context를 파악하기 위해 bidirectional 한 모델이다. pre-trained BERT 모델은 output layer를 추가해 fine-tune하는 것만으로 광범위한 task에서 SOTA를 달성했다. 1. Introduction pre-training 언어모델은 많은 자연어 처리 task의 향상에 효과적이었다. down-stream task를 위해 pre-trained 언어 표현을 사용하는 방식은 두가지 전략이 있다: feature-based, fine-tuning 접근 방식 feature-based 접근 방식: ELMo fine-tuning 접근 방식: GPT pr..
주어진 데이터로부터 미지의 값을 예측할 때, 의도에 맞게 잘 예측했는지 알기 위해서는 평가지표가 있어야 합니다. 즉, 평가의 기준이 있어야 하는 것인데, 분류작업에서는 대표적으로 모델이 얼마나 정확한 분류를 했는지 + 얼마나 정밀한지 + 실용적인 분류를 해냈는지에 대해 평가를 수행합니다. 이러한 내용을 모두 포함하는 것이 confusion matrix입니다. Confusion Matrix 이진 분류를 한다고 가정해보겠습니다. 주어진 데이터를 Positive, Negative로 분류한다고 할 때 우리의 관심 범주는 Positive라고 하겠습니다. 그렇다면 모델을 통해 분류된 결과를 아래와 같이 4가지 정보로 나눌 수 있습니다. (Positive = P / Negative = N 이라고 간단히 표현하겠습니다..
