AI 엔지니어 기초 다지기 - 5주차 - Historical Review

hyonun·2024년 2월 13일
0

딥러닝이란게 어떻게 지금의 위상을 가지게 됐나 알게되는 시간.

  • Denny Britz 가 작성한 Historical Review 를 기반으로 설명한다.

2012 - AlexNet

  • 컨볼루전 네트워크
    224x224의 이미지를 분류하기 위해 사용한다.

이 알렉스넷 다음부터 deeplearning 블랙 매직?(ㅋㅋ) 을 이긴 알고리즘은 대회에서 나오지 못했다.
-> 모든 기계학습의 판도를 바꿔버렸다.

2013 - DQN

  • 알파고를 만든 알고리즘 강화학습.
  • Q러닝이라고 불리는 강화학습 반복론을 사용했다.

2014 - Encoder/Decoder

  • 뉴럴 머신 트랜스레이션을 풀기위함.
  • 구글 번역에서 사용되는 스타일 . 특히 번역 언어 문장이 주어 졌을때 얘를 잘 표현해서 우리가 원하는 다른언어의 연속으로 뱉어주는게 목표이다.
  • 어떤 벡터로 인코딩하고 그 벡터를 디코딩하여 다른언어로 표현한다.

Adam Optimizer

  • 다들 아담을 많이 사용한다. 학습시키려고 하는 모델이있을때 Optimizer로 사용한다.
  • 아담을 그냥 쓰는이유는 결과가 잘나와서.
  • 왠만하면 잘된다.

2015 - GAN(Generative Adversarial Network)

  • 이미지를 만들때 이미지를 어떻게 만들 수 있을지에 대한 이야기.
  • 제네릭 모델은 딥러닝에서 굉장히 중요하다.

ResNet(Residual Networks)

Residual : 관측값과의 차이를 나타내는 값. 잔여

  • 딥러닝은 뉴럴네트워크를 깊게 쌓는다.
  • 원래 깊게 쌓으면 학습이 잘 안된다라는 말이 있엇다. (테스트를 했을때 성능이 좋게 안나온다.)
  • 가장 중요한 논문이엿다. 왜 딥러닝을 딥러닝이냐고 부르냐면, 네트워크를 deep 하게 쌓기 때문이라는 말이 있다.
  • 이게 나오고 난 다음, 네트워크를 100단까지 쌓아도 테스트 데이터의 성능이 좋게 나올수 있게 만들어 줬다.
  • 네트워크를 깊게 쌓을수있는 페러다임이였다.

2017 - Transformer

  • Attention Is All You Need(굉장히 도발적인 제목?)
  • 왠만한 리커런트 구조를 다 대체했다. MH(멀티헤드어텐션) 구조를 아는게 굉장히 중요하다.

2018 - BERT(Find-tuned NLP models)

  • 딥러닝의 흐름을 바꾸는데 있어서 파인튠-NLP모델이 굉장히 중요하다.
  • 자연어 모델은 language 모델을 학습한다. 이전 언어가 나올때 그다음 언어가 뭐가나올까를 알려준다.
  • 근데 내가 풀고자 하는 문제가 있다고 가정하면, 예를들어 뉴스 기사를 쓰려고한다.
  • 이 fine-tuned 모델은 위키피디아 같은 큰 말뭉치를 통해 학습하고, 내가 풀고자 하는 문제에 맞춰 네트워크를 파인튜닝 해준다.

2019 - Big Language Models(GPT-X)

  • GPT-3 라는 연구 논문이 OpenAI에서 발표된다.
  • fine-tuned NLP Model의 끝판왕이다.
  • 약간의 파인튠을 통해 다양한 문장, 프로그램, 표를 만들거나 여러가지 시퀀셜 모델을 만들 수 있게된다.
  • 굉장히 많은 파라미터로 되어있다. Bert와 다르게 BIG Language Models 이라고 부른다. (175억개의 파라미터를 사용했다.)

2020 - Self-Supervised Learning

  • SimCLR 방법론이 아주 핫했다.
  • 이미지 분류와 같은 분류문제를 풀때 한정된 학습데이터를 주엇을때 loss펑션, 모델을 바꿔가면서 하는게 일반적이면, 주어진 학습데이터 외의 unsupervised(라벨을모르는) 데이터를 사용하겠다는 것.
  • 강아지 고양이 데이터가 10만장이있을때, 라벨은 모르지만 다양한 구글의 이미지들을 학습에 같이 활용하고 싶다.
  • visual representation - 어떻게 해야 컴퓨터가 이해할 수 있는 언어로 바꿀까?
  • Contrastive learning: 샘플데이터의 유사도를 측정하기위해 여러 데이터셋을 가져와서 데이터 끼리의 거리를 측정한다. (데이터 끼리 비교)
profile
비전공자 + 타업계 경력2년의 IT 개발자 도전기~

0개의 댓글