Data scientist 42

Preprocessing

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

자연어처리

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

Deep Learning_3

◎ Long Short-Term Memory (LSTM) Vanilla RNN을 개선한 LSTM 구조 기억할 것은 오래 기억하고, 잊을 것은 빨리 잊어버리는 능력이 있다. 단점 : 학습 매개변수가 많고 학습 노하우가 중요 ※ Cell State - 기억을 오랫동안 유지할 수 있는 구조, 새로운 특징을 덧셈으로 받는 구조(Residual Network) + RNN과 달리 Cell State가 있어서 '기억'에 관한 부분을 전담한다. ※ Hidden State - 계층의 출력/다음 타임 스텝으로 넘기는 정보 ※ Forget Gate - Sigmoid 활성 함수로, 0~1의 출력 값을 가짐, Cell state에 이를 곱해 주어서 '얼만큼 잊은지'를 결정 ※ Input Gate - Sigmoid 활성 함수로,..

Deep Learning_2

◎ 역전파 알고리즘 ※ 심층 신경망의 각 Layer를 하나의 함수로 본다면, 신경망을 합성 함수로 표현할 수 있다. ※ 미분의 연쇄 법칙과 각 함수의 수식적 미분을 이용하면, 단 한 번의 손실 함수 평가로 미분을 구할 수 있다. ※ 역전파 알고리즘의 문제점 : 1. 기울기 소실 문제 : 역전파 계층이 많아질 수록 학습이 잘 되지 않는다. ◎ 뉴럴 네트워크의 학습 ● Vanilla Gradient Descent : Gradient를 한번 업데이트 하기 위해 모든 학습 데이터를 사용한다. ● Stochastic GD (SGD) : Gradient를 한번 업데이트 하기 위해 일부의 데이터만 사용한다. ● Mini-Batch 학습법 : 학습 데이터 전체를 한번 학습하는 것을 Epoch, 한 번 Gradient를..

Deep Learning_1

◎ 인공 지능 : 기계가 사람의 행동을 모방하게 하는 기술 ◎ 기계 학습 : 데이터로부터 학습하여 실행할 수 있도록 하는 알고리즘을 개발하는 연구 분야 ◎ 딥러닝 : 기계 학습의 한 분야인 인공 신경망에 기반하여, 많은 양의 데이터를 학습해 뛰어난 성능을 이끌어내는 연구 분야 ◎ 퍼셉트론 : 신경 세포를 이진 출력의 단순 논리 게이트로 해석하여 고안한 퍼셉트론 (Perceptron) ◎ 활성 함수 : 퍼셉트론의 출력에 의미를 부여해 주며, 일반적으로 비선형(Non-linear) 함수이다. ※ Sigmoid는 하나의 입력을 0으로 강제한 2-Class Softmax 함수와 동일하다. ◎ 손실 함수 : 지도 학습 알고리즘에 반드시 정의되어야 한다. + 딥러닝 알고리즘 학습의 길잡이로서 손실 함수가 필요하다...

신경망 모형 + Python_Code

◎ Perceptron 하나의 뉴런 입력 데이터 혹은 다른 레이어의 출력물을 받아 결과값을 내는 구조 Input, weights, activation function (활성함수)로 구성 ※ Activation function(활성함수) 특징 : 연속, 비선형, 단조증가, bounded, 점근성의 특성 ※ Activation function(활성함수)의 필요성 : 은닉 layer를 의미 있게 쌓아주는 역할, 선형의 layer만 쌓인다면, 결국 하나의 선형식이 된다. 출력값의 range를 결정 ※ Input layer(입력층) : 입력 데이터를 의미 ※ Hidden layer : 입력 데이터 혹은 또는 다른 Hidden layer의 출력 값, 위의 입력값을 받는 perceptron들의 집합 ※ Output ..

의사결정나무 + Python_Code

◎ 수학적 개념 ○ 엔트로피 (Entropy) : 분류가 되어 있지 않으면 엔트로피는 높은 값을 가지며 분류가 잘 되어있으면 엔트로피 값은 낮다. ○ Information Gain : Entropy(before) - Entropy(after) Decision Tree의 특정 node 이전과 이후의 Entropy 차이 ○ Classification Tree ○ Regression Tree ◎ 의사결정나무 변수들로 기준을 만들고 이것을 통하여 샘플을 분류하고 분류된 집단의 성질을 통하여 추정하는 모형 장점 : 해석력이 높음, 직관적, 범용성 단점 : 높은 변동성, 샘플에 민감할 수 있다. ※ 의사결정나무 용어 ⓐ Node - 분류의 기준이 되는 변수가 위치. 이것을 기준으로 샘플을 나눔. - Parent n..