본문 바로가기

Coursera 강의65

[Coursera] Deep Learning Specialization 강의 요약 Deep Learning Specialization(딥러닝 특화과정) 강의 요약을 모아서 정리해두었습니다. 1 - Neural Networks and Deep Learning Week 1,2 2020/08/30 - [Coursera 강의/Deep Learning] - Basics of Neural Network programming (Week 1, 2) 2020/09/24 - [Coursera 강의/Deep Learning] - [실습] Logistic Regression with a Neural Network(can / non-cat classifier) Week 3 2020/09/20 - [Coursera 강의/Deep Learning] - Deep Neural Network(DNN) 2020/09/.. 2020. 12. 31.
[실습] Neural Machine Translation with Attention 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 3) 3주차 실습 중의 하나는 Attention 모델이 포함된 Neural Machine Translation(NMT) 구현입니다. 이번 실습에서는 human-readable dates를 machine-readable dates로 변환하는 모델을 구현할 예정입니다. human-readable dates는 '25th of June, 2009'와 같이 영어와 숫자 등이 섞여 있는 형태이며, machine-readable dates는 '2009-06-25'와 같이 숫자와 '-' 대쉬가 섞여있는 형태입니다. 사용되.. 2020. 12. 29.
Sequence models & Attention mechnism / Speech recognition(CTC) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 3) Various sequence to sequence architectures [Basic Models] 이번 강의부터는 Sequence-to-sequence 모델에 대해서 배우게 된다. Basic model부터 시작해서 Beam search와 attention model에 대해서 알아보자. 'Jane viste l'Afrique en septembre'라는 프랑스어로 된 문장을 영어 문장으로 변환하고 싶다면, 프랑스어로 된 문장 시퀀스를 \(x^{}\)부터 \(x^{}\)까지 표시하고, \(y^{}\).. 2020. 12. 28.
[실습] Operations on word vectors - Debiasing 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 2) 2주차 첫번째 실습은 Word Embedding의 bias를 제거하는 방법을 직접 구현해보는 것입니다. 임베딩은 미리 학습된 GloVe 임베딩을 사용할 것이며, 이는 nlp.stanford.edu/projects/glove/ 에서 다운받을 수 있습니다. import numpy as np def read_glove_vecs(glove_file): with open(glove_file, 'r', encoding='utf-8') as f: words = set() word_to_vec_map = {} for.. 2020. 12. 26.
NLP and Word Embeddings: Word2vec & GloVe 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 2) [Learning word embeddings] 단어 임베딩(Word Embedding) 딥러닝 연구에서 초반에는 비교적 복잡한 알고리즘으로 시작했다. 그리고 시간이 지나면서, 훨씬 더 간단하고 단순한 알고리즘도 가능하고, 특히 큰 데이터셋에서 매우 좋은 결과를 얻을 수 있다는 것을 발견하게 되었다. 최근 가장 인기있는 몇몇의 알고리즘들은 너무 단순해서 마치 마법처럼 보일 수도 있을 정도이다. 단어 임베딩이 어떻게 동작하는지 직관적으로 이해하기 위해서 더 복잡한 알고리즘의 일부를 살펴보도록 하자. La.. 2020. 12. 26.
Introduction to Word Embeddings 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 2) - Introduction to Word Embeddings [Word Representation] 저번주 강의에서 RNN, GRU, LSTM에 대해서 배웠고, 이번주에서는 NLP에 어떤 아이디어들을 적용할 수 있는지 살펴보도록 할 것이다. NLP에서 중요한 아이디어 중의 하나는 Word Embedding(단어 임베딩)이다. 지난 주에 사용했던 1만개의 단어에 대해서 우리는 one-hot encoding을 통해서 단어를 표시했다. 즉, Man은 5391의 index를 갖고 있으며, 10000 dimen.. 2020. 12. 24.
[실습] Character-level Language Modeling 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 1) 1주차 두번째 실습은 Character-level language model을 구현해보는 것입니다. 주제는 공룡 이름 짓기이며, 기존 공룡 이름들로 학습해서 새로운 공룡 이름을 짓는 모델입니다. 기존 공룡 이름은 dataset을 참조바랍니다. 필요한 패키지들을 import하고 시작해보도록 하겠습니다. import numpy as np from utils import * import random import pprint utils에는 이전 실습에서 구현한 Simple RNN의 각 step 함수들과 초기화.. 2020. 12. 21.
[실습] Building a RNN step by step(Basic RNN, LSTM) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 1) RNN 1주차 실습은 Simple RNN, LSTM, GRU를 Step by step으로 구현해보는 것입니다. 그리고 다음 실습에서 이렇게 구현한 함수들을 통해서 Music generator를 구현해보도록 할 예정입니다. 실습에 들어가기 전에 Notation부터 설명하겠습니다. 위첨자 [l]은 \(l^{th}\) layer를 의미함 위첨자 (i)는 \(i^{th}\) sample data를 의미함 위첨자 는 \(t^{th}\) time-step을 의미함 아래첨자 i는 벡터의 \(i^{th}\) 요소를 .. 2020. 12. 21.
Recurrent Neural Networks 2 (GRU, LSTM, BRNN) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Recurrent Neural Network를 듣고 정리한 내용입니다. (Week 1) [Gated Recurrent Unit(GRU)] 앞서 Basic RNN이 어떻게 동작하는지 살펴보았고, 이번에는 GRU라는 조금 더 긴 시퀀스를 잘 캡처(장기의존성 문제)하고, Vanishing Gradient 문제를 해소할 수 있는 GRU에 대해서 살펴보도록 하자. GRU는 다음에 나오는 LSTM과 유사하지만, 조금 더 간략한 구조를 가지고 있다. GRU를 간단하게 표현하면 위와 같다. 여기서 새롭게 나타나는 c는 memory cell을 의미하며 이전 정보들이 저장되는 공간이다. 이전 정보가 \(c.. 2020. 12. 21.
Recurrent Neural Networks 1 (Basic of RNN model) 해당 내용은 Coursera의 딥러닝 특화과정(Deep Learning Specialization)의 다섯 번째 강의 Sequence Models를 듣고 정리한 내용입니다. (Week 1) [Why sequence models] 다섯번째 강의에서는 Sequence model에 대해서 배운다. 딥러닝에서 가장 흥미로운 분야 중 하나이며, Recurrent Neural Network(RNN)같은 모델은 음성 인식, 자연어 처리(NLP) 영역에 영향을 끼쳤다. 아래는 시퀀스 모델이 사용되는 몇 가지 예시들이다. 음성 인식(Speech recognition)의 경우에는 Input X인 오디오가 Text output Y에 매핑된다. 입력과 출력 모두 시퀀스 데이터인데, X는 시간에 따라 재생되는 음성이며, Y는 .. 2020. 12. 20.