전체 글 108

Word Embedding

◎ Word Embedding 단어는 discrete symbol & categorical value 형태이지만, 우리의 머릿속에서는 다르게 동작, 어휘는 계층적 의미 구조를 지니고 있으며, 이에 따라 단어 사이의 유사성을 지닌다. One-hot 인코딩으로 표현된 값은 유사도나 모호성을 표현할 수 없다. (Dense vector로 표현하는 것이 유리) ※ Feature Vector Feature(특징) : 샘플을 잘 설명하는 특징, 특징을 통해 우리는 특정 샘플을 수치화 할 수 있다. Feature Vector : 각 특징들을 모아서 하나의 vector로 만든 것 ※ Word Embedding 딥러닝의 시대에 단어를 연속적인 값으로 표현하고자 하는 시도가 이어짐 이전에 비해 휼륭한 dense vector..

Preprocessing

◎ NLP Project Workflow 문제 정의 ▷ 데이터 수집 ▷ 데이터 전처리 및 분석 ▷ 알고리즘 적용 ▷ 평가 ▷ 배포 ◎ Preprocessing Workflow 데이터 수집 ▷ 정제 ▷ 레이블링 ▷ Tokenization ▷ Subword Segmentation ▷ Batchify ◎ 말뭉치(Corpus)란? 자연어처리를 위한 문장들로 구성된 데이터셋 복수 표현 : Corpora Parallel Corpus : 대응되는 문장 쌍이 labeling 되어 있는 형태 ◎ Service Pipeline ◎ 데이터 구입 및 외주의 한계 구입 : 양질의 데이터를 얻을 수 있음, 양이 매우 제한적이다. 외주 : 수집, 정제 및 레이블링을 외주 줄 수 있음, 가장 높은 비용 -> 양이 매우 제한적, 품질..

Chapter 6. 학습 관련 기술들

◎ 밑바닥부터 시작하는 딥러닝(1)¶ ● chapter 6. 학습 관련 기술들¶ 6.1 매개변수 갱신 최적화(Optimization) : 매개변수의 최적값을 찾는 것 확률적 경사 하강법(SGD)이란 매개변수의 기울기를 구해, 기울어진 방향으로 매개변수 값을 갱신하는 일을 몇 번이고 반복해서 점점 최적의 값을 도출해내는 방법 In [1]: # SGD 구현하기 class SGD: def __init__(self, lr=0.01): self.lr = lr # learning rage(학습률) def update(self, parms, grads): for key in params.keys(): params[key] -= self.lr*grads[key] SGD의 단점 SGD는 단순하고 구현도 쉽지만, 문제에 ..

Chapter 5. 오차역전파법

◎ 밑바닥부터 시작하는 딥러닝(1)¶ ● chapter 5. 오차역전파법¶ 신경망의 가중치 매개변수의 기울기를 효율적으로 계산하는 '오차역전파법(backpropagation)' 5.1 계산 그래프 계산 그래프는 계산 과정을 그래프로 나타낸 것이며 노드(node)와 에지(edge)로 표현됩니다. 계산 그래프로 풀다 계산을 왼쪽에서 오른쪽으로 진행하는 단계를 순전파(forward propagation)이라고 한다. 오른쪽에서 왼쪽으로 진행하는 단계는 역전판(backward propagation)이라고 한다. 국소적 계산 계산 그래프의 특징은 '국소적 계산'을 전파함으로써 최종 결과를 얻는다는 점에 있다. 국소적 계산은 결국 전체에서 어떤 일이 벌어지든 상관없이 자신과 관계된 정보만으로 결과를 출력할 수 있다..

Chapter 4. 신경망 학습

◎ 밑바닥부터 시작하는 딥러닝(1)¶ ● chapter 4. 신경망 학습¶ 학습이란 훈련 데이터로부터 가중치 매개변수의 최적값을 자동으로 획득하는 것을 뜻한다. 손실 함수는 신경망이 학습할 수 있도록 해주는 지표이다. 손실 함수의 결괏값을 가장 작게 만드는 가중치 매개변수를 찾는 것이 학습의 목표 4.1 데이터에서 학습한다! 신경망의 특징은 가중치 매개변수의 값을 데이터를 보고 자동으로 결정하는 특징이 있다. +신경망은 모든 문제를 주어진 데이터 그대로를 입력 데이터로 활용해 'end-to-end'로 학습할 수 있다. 기계학습은 사람의 개입을 최소화하고 수집한 데이터로부터 패턴을 찾습니다. 딥러닝을 종단간 기계학습(end-to-end machine learning)이라고도 한다. 기계학습 문제는 데이터를..

자연어처리

◎ What is Language? 사람들이 자신의 머릿속에 있는 생각을 다른 사람에게 나타내는 체계 사물, 행동, 생각 그리고 상태를 나타내는 체계 사람들이 자신이 가지고 있는 생각을 다른 사람들에게 전달하는 데 사용하는 방법 ※ 사람의 생각을 컴퓨터에게 전달하는 방법 Naive Interface : 인공 언어, 사람이 이해할 수 있지만, 엄격한 문법과 모호성이 없는 형태의 전달 방식 Better Interface : 자연 언어, 사람이 실제 사용하는 형태에 가까운 전달 방식 ※ 자연어(Natural Language)란? 자연어 혹은 자연 언어는 사람들이 일상적으로 쓰는 언어를 인공적으로 만들어진 언어인 인공어와 구분하여 부르는 개념 사람이 이해하는 자연어를 컴퓨터가 이해할 수 있는 값으로 바꾸는 과정..

[혼자 공부하는 머신러닝 + 딥러닝] Chapter 9 텍스트를 위한 인공 신경망

09-1 순차 데이터와 순환 신경망¶ 순환 신경망¶ ☆ 순차 데이터(sequential data)는 텍스트나 시계열 데이터와 같이 순서에 의미가 있는 데이터 ☆ 완전 연결 신경망이나 합성곱 신경망은 하나의 샘플(또는 하나의 배치)을 사용하여 정방향 계산을 수행하고 나면 그 샘플은 버려지고 다음 샘플을 처리할 때 재사용하지 않습니다. ☆ 입렵 데이터의 흐름이 앞으로만 전달되는 신경망을 피드포워드 신경망(feedforward neural network)이라 한다. ☆ 순환 신경망(RNN)은 완전 연결 신경망 + 이전 데이터의 흐름을 순환하는 고리, 이전 타임스텝의 샘플을 기억하지만 오래될수록 순환되는 정보는 희미해 진다. ☆ 순환 신경망(RNN)은 순환층을 1개 이상 사용한 신경망 ☆ 타임스텝(timeste..