귀퉁이 서재

스터디 - 밑바닥부터 시작하는 딥러닝 2 본문

토이(Toy) 프로젝트

스터디 - 밑바닥부터 시작하는 딥러닝 2

Baek Kyun Shin 2020. 4. 11. 21:24

자연어 처리(NLP) 입문서로 유명한 '밑바닥부터 시작하는 딥러닝 2' 스터디를 했습니다. 약 2주 정도 걸렸습니다. 책의 앞부분은 딥러닝에 대해 간략하게 다루고 있기 때문에 그 부분은 빠르게 넘어갈 수 있어 2주 정도밖에 안 걸렸습니다. 이 책을 스터디한 목적은 캐글의 텍스트 대회에 참가하기 위해서입니다. 텍스트 대회가 너무 재미있어 보였는데, NLP에 대해 잘 몰라 이 참에 공부를 했습니다.

제 책꽂이에는 머신러닝/딥러닝 관련 책이 10권도 넘게 있습니다. 물론 다 제가 직접 산 것은 아니고, 컨퍼런스 가서 받았거나 공짜로 얻은 것들이 더 많습니다. 지식 습득이 목적인 다른 책들도 모두 마찬가지이겠지만 머신러닝/딥러닝은 절대 광고나 책 표지만 보고 사면 안 되는 것 같습니다. 직접 그 책으로 공부해본 사람들의 후기를 듣고 사는 것이 언제나 안전합니다. 저는 캐글 코리아 오픈 채팅방에 들어가 있는데, 그곳에서는 공부하기 좋은 자료, 책, 사이트 등을 서로 공유합니다. 작년에 봤던 '파이썬 머신러닝 완벽 가이드'도 캐글 코리아에서 추천해줬던 책입니다. '밑바닥부터 시작하는 딥러닝 2'도 마찬가지입니다.

서론이 길었지만 이 책 역시 '파이썬 머신러닝 완벽가이드'와 마찬가지로 저자의 노력이 절실히 느껴지는 책이었습니다. 이 책에 정말 만족했고, 다른 분들께도 강추합니다. 이 책의 첫 번째 장점은 이해가 쉽다는 것, 두 번째 장점은 원리를 설명해준다는 것, 세 번째 장점은 개앞맵시님이 번역하셔서 번역이 깔끔하다는 것입니다. 무엇보다 numpy를 통해 정말 밑바닥부터 딥러닝/자연어 처리를 구현해서 원리를 이해하기가 쉬웠습니다.

스터디 히스토리나 코드가 궁금하신 분들은 제 깃헙을 참고해주시기 바랍니다.

2020.03.24: 밑바닥부터 시작하는 딥러닝 2 책 구매

2020.03.24 ~ 03.25: 1장 신경망 복습 (벡터와 행렬, 신경망 추론, 신경망 학습, 신경망 구현)

2020.03.25 ~ 03.26 : 2장 자연어 단어의 분산 표현 (시소러스, 통계 기반 기법 (분산 표현, 분포 가설, 동시발생행렬, 유사도), 통계 기반 기법 개선하기

2020.03.27 ~ 03.29 : 3장 word2vec (추론 기반 기법, CBOW 구현, 맥락과 타깃, skip-gram모델, 통계 기반 vs 추론 기반)

2020.03.30 ~ 03.31 : 4장 word2vec 속도 개선 (Embedding 계층, 네거티브 샘플링, 개선판 word2vec 학습, 단순 word2vec의 속도 문제점을 Embedding, 네거티브 샘플링을 통해 개선)

2020.04.01~2020.04.02 : 5장 순환 신경망(RNN) (확률과 언어모델, 순환 신경망(RNN)의 이해, BPTT, Truncated BPTT, RNN 구현, RNNLM 구현)

2020.04.03~2020.04.04 : 6장 게이트가 추가된 RNN (기존 RNN의 문제점(기울기 폭발과 소실), LSTM, RNNLM)

2020.04.05~2020.04.06 : 7장 RNN을 사용한 문장 생성 (언어 모델을 사용한 문장 생성, seq2seq 이해 및 구현)

2020.04.07~2020.04.09 : 8장 어텐션 (seq2seq의 문제점, 어텐션의 구조, 어텐션을 갖춘 seq2seq 구현(Encoder, Decoder, seq2seq), 어텐션 평가, 양방향 RNN)

추후, 자연어 처리(NLP) 관련해서도 블로그에 올릴 예정입니다. 현재는 전처리와 관련된 아주 간단한 내용에 대해서만 올라가 있습니다. 자연어 처리 대회가 2~3달 정도 남았는데 그 대회가 다 끝나면 천천히 정리해서 올릴 예정입니다.

Comments