U E D R , A S I H C RSS

정모/2022.08.03


1. OMS

attention is all you need - 연사자: 김동영

1.1. 트랜스포머

  • 트랜스포머는 2017년부터 연구되어오던 주제
  • 기계 번역의 성능을 높이기 위해서 나온 주제

1.2. 딥러닝

  • 딥러닝이라 하면 일반적으로 알고리즘으로 풀 수 없는 문제들을 딥러닝으로 많이 해결함.
  • 처음 도입되는건 함수를 근사하는 목적으로 만들어 졌음.
  • 예를 들어 컴퓨터는 고양이를 숫자로 보고 고양이라고 판단하는 과정을 학습하는데, 기계 번역 쪽에서도 사람의 말을 어떻게 번역할 것인가에 대한 내용이다.
  • 통계 기반의 알고리즘이 있었는데, 이에 딥러닝이 사용도기 시작하였다.

1.3. dnn

  • dnn = deep neural network
  • 이걸 어떻게 번역에 사용할 것인가에 대한 연구가 진행되어오고 있음.
  • 단어들의 순서 정보가 들어가는게 필요해서 rnn을 만들게 되었음.

1.4. rnn

  • 순차적으로 받아들일 수 있는 모델을 rnn이라고 부름.
  • 번역도 정보가 순차적으로 들어와서 진행될 것임.
  • rnn으로 무엇을 할 수 있는가?
    • 사진설명 붙이기 - one to many
    • 감성분석 - many to one
    • 번역 - many to many

1.5. 번역

  • 번역은 seq2seq가 유명함
  • 시퀸스 데이터가 없다? => 사진을 볼 때는 사진 딱 하나만 들어와서 순차적이지 않음.
  • 그러나 DNN은 순차적인 정보에 어울리지 않음

1.6. LSTM

  • rnn의 일종
  • rnn 2개가 합쳐져 있는 모델이 있음.
  • i am a student 같은 문장이 들어온다고 할 때, 이를 사람이 보는 정보인 "특징 vector"로 분류하게 됨.
  • 이렇게 분류된 걸 context, 문맥이라고 부르고 context를 decoder에 넣어서 출력을 하는 방식이다.

1.6.1. Problem 1

  • 문장이 길어지면 context vector를 작게 표현하는게 가능한가?
  • 많은 양의 데이터를 정해진 양으로 압축해야 한다는 문제가 발생한다.

1.6.2. Problem 2

  • 순차적으로 정보를 처리하는데, long term dependecy 문제가 있다.
  • 시간이 늘어날 수록 원래 있던 정보에 새로운 정보가 희석되면서 정보가 왜곡될 수 있다.

1.7. summary

  • Mnt에서는 seq2seq를 많이 썼음
    • dnn 성능이 너무 안좋아서
  • 기존 seq2swq는 인코더에서 입력이 context vector로 압축되고, 디코더가 이를 출력을 만드는 방식으로 작동한다.
  • 아직 2개의 문제가 남아있다.
    • long term dependecy
    • compress all the necessary information into a fixed-length vector
  • 병렬 처리도 어렵다(순차적으로 해야하기 때문)
  • 따라서 seq2seq는 입력 문장의 길이가 길어질수록 성능이 떨어진다.

1.8. Attention

  • 여기서 attention 메커니즘이 등장한다.
  • 디코더로 넘어가는건 똑같으나, context vector가 없다.
  • 인코더에서 hidden state가 있는데 이를 모두 저장하고 현재 디코더에서 현재 상태를 같이 넣어서 sofrmax에 넣게 된다.
  • 그래서 어느 단어들이 연관성이 높은지 찾게되고 이를 통해 더 정확한 뜻을 찾을 수 있게 된다.

1.9. 문제점

  • attention도 rnn에서 벗어나지 못하는 문제점이 있다.
  • rnn을 빼버리면 되지 않을까? 하는 아이디어 제시
    • transfomer가 등장하게 된다.
  • sota = state of the art(기술), sota라는 대회(?)가 있는데 여기에 transfomer가 상위권 대다수를 먹게 됨

1.10. Transformer?

  • seq2seq는 rnn + attention
  • seq2seq는 rnn 기반이기 때문에 병렬처리가 어렵다 -> rnn을 빼자는 아이디어 제시
  • transformer는 rnn 없이 attention만을 사용함

1.11. attention is all you need

  • 라는 제목의 논문이 2017년에 나옴
  • seq2seq는 input sequence와의 attention score를 구하기 위해 input length 만큼의 시간이 필요했음
  • transformer는 self-attention을 사용해 시간복잡도를 O(1)로 줄여 긴 문장도 해결할 수 있게 되었음
  • rnn을 안쓰면 데이터 순서 정보가 사라지지 않은가?
    • posirional encoding을 사용해서 데이터에 시간 정보를 추가할 수 있음
  • inference 할 때는?
    • 그리디 서치, 빔 서치를 하면 됨
  • transformer가 2017년에 나왔을 때 큰 파장을 일으켰음.
  • X-former는 바닐라 transformer를 발전시킨 것

2. 새싹교실 및 새싹톤 결과 공유

2.1. 새싹교실


- 3/9 ~ 6/21 새싹교실 진행
- 8개 반 개설
- 새싹16명이 C, C++, Python, Java를 주제로 진행
- 6/26 새싹톤 설명회 및 개최
- 4팀 참가신청, 2팀 중도포기
- 7/4 새싹톤 발표회 및 시상
- 1등 : Java보시던지(임지민, 박창훈)의 카페 키오스크 구현 - 15만원
- 2등 : Champion(전영은)의 새싹 키우기 게임 - 10만원

3. Devils Camp 결과 공유


- 일자 : 7/14 ~ 7/16
- 19시 ~ 23시

- 장소 : 208관 415호 실습실

== 연사자 =

3.1. 회고


- 홍보가 부족해 보인다(참여자 적음)
- 구글 미트보다는 줌 같은 자동 입장 수락 플랫폼은 어땠을까
- 참여자에 대한 수준과 인원수를 미리 조사하여 연사자에게 전달했다면
- 이번에는 밤을 새지 않았으니 주말에는 차라리 낮이었다면?
- 연사 목차 등 자세한 정보를 연사자에게도 전달했다면
- 오프라인 상황에 대한 경험 부족
- 미리 테스트할 시간이 부족
- 녹화 환경과 발표 환경도 미흡
- 장소 대여에 있어서 커뮤니케이션 에러가 발생한 적 있음
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2022-10-05 08:26:24
Processing time 0.0265 sec