欲速不達

일을 급히 하고자 서두르면 도리어 이루지 못한다.

Fantastic AI, Fantastic World
728x90
반응형

분류 전체보기 99

[논문] Collaborative Filtering for Implicit Feedback Datasets

기존의 추천시스템은 두 가지 방법론이 주류를 이룬다. 1) Content Based Approach 2) Collaborative Filtering Content Based Approach은 영화를 추천할 때 우선 영화를 장르에 따라 분류하고, 특정 장르를 좋아하는 사람에게 해당 장르의 영화를 추천해주는 방식이다. 하지만 이 방식은 각각의 Content (영화 등)의 profile(장르, 배우 등의 속성)을 구성하는 전단계가 필요하고 Overspecialization, 유저의 Content Profile을 벗어나는 추천을 하기 어렵다. 그렇기 때문에 분류된 장르에 대해서만 추천이 가능하므로 유저에게 새로운 장르를 추천하거나 하는 등의 행동으로 이어지지는 않게 된다는 문제점이 있다. Collaborativ..

[ML Statistics] KL Divergence

KL Divergence는 쉽게 말해 '두 분포 사이의 거리'를 말한다. KL Divergence을 이해하기 전에 Cross Entropy (CE)를 먼저 간단하게 정리해보자. 1. Cross Entropy 1-1) Binary Cross Entropy binary의 경우는 출력값이 0 또는 1의 두 가지로 있을 수 있다. 예를 들어, 어떤 데이터(키, 몸무게 등)에서 남자 또는 여자로 분류하는 출력을 얻기 위해서는 결과를 0과 1로 표현할 수 있게 된다. target 값을 y, 예측값이 y^이라고 했을때 Binary Cross Entropy는 위와 같은 수식이 된다. 이때, y와 y^은 경우의 수로 y = 0 또는 1, y^ = 0 또는 1이며, 조합의 수는 4가지 경우가 된다. 1-2) Cross E..

[Week 3 - 3] BoostCamp AI Tech

1. 오늘 한 일 - Deep Learning Basic 7~9강 - 기본과제 4, 5 2. 과제 및 정리 - LSTM https://kkuneeee.tistory.com/38 [DL Basic] LSTM : Long Short Term Memory 일반적으로 많이 보게 되는 차트 데이터와는 다르게 Sequence 데이터는 문맥 혹은 순서 등에 따라 의미가 달라질 수 있다. 가령. 말을 할때, 주어, 목적어, 서술어 등의 요소 중 어떤 한 요소를 누락 kkuneeee.tistory.com 3. 회고 생각보다 힘들었다. LSTM도 Transformer도 하나를 하루종일 붙잡고 공부해도 부족할 양인 것들을 한번에 하려니 힘에 부치는 듯하다. 힘들다보니 뒤로 갈수록 대강대강하게 되는 것 같아 아쉽다. LSTM..

[DL Basic] Transformer : Attention Is All You Need

시퀀스 데이터는 순서와 문맥 등이 바뀌면 의미가 달라지기 때문에 모델링하기가 까다롭다. 이러한 누락된 정보를 가진 시퀀스 데이터를 모델링하기 위해 고안된 방법이 Transformer이다. 1. Transformer Transformer의 가장 큰 특징은 recurrent하게 모델이 반복되지 않고, attention을 활용하여 context 정보를 반영할 수 있게 구현한 것이다. Transformer의 구조는 크게 encoder와 decoder로 구성되어있고 encoder 부분에서 self-attention으로 input 데이터의 representation(Q,K,V)을 추출한다. 그 후 추출한 representation에서 K, V와 decoder에 적용하여 직전 스텝의 output을 input으로 하여..

[DL Basic] LSTM : Long Short Term Memory

일반적으로 많이 보게 되는 차트 데이터와는 다르게 Sequence 데이터는 문맥 혹은 순서 등에 따라 의미가 달라질 수 있다. 가령. 말을 할때, 주어, 목적어, 서술어 등의 요소 중 어떤 한 요소를 누락시켜서 말하거나 순서가 뒤섞여서 말을 한다거나 했을 때 의미가 달라지는 것이 하나의 예이다. 그렇기 때문에 Sequence 데이터를 다루는 머신러닝 모델은 이러한 context 정보(문맥, 순서 등)를 반영하기 위해서, 과거의 데이터를 종합적으로 고려하여 다음 글자를 예측하는 방식을 취한다. 하지만 이때 데이터의 길이가 길어지게 되면 과거 데이터의 누적값이 매우 커지게 되어 여러 문제가 발생할 수 있다. 이러한 문제를 해결하고자 고안된 방법이 RNN이다. 1. RNN RNN은 누적되는 과거데이터를 단순화..

[프로그래머스] 고득점 Kit - 스택/큐 : 올바른 괄호(파이썬)

1. 문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 2. 제한 사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. 3. 입출력 예시 s answer "()()" true "(())()" true ")()(" false "(()(" fa..

[DL Basic] Optimization 최적화 - 3 : Regularization

1. Regularization 1-1) Early Stopping Early stopping는 앞선 최적화 - 1에서 언급한 Generalization 문제에서 Generalization gap에 대한 방법이다. iteration이 커질수록 test error는 줄어들다가 어느 지점에서 다시 상승하는 모양을 보일 수 있고, 이렇게 되면 gap이 다시 커지는 걸 볼 수 있다. 이때 gap을 유지하기 위해서 iteration을 멈추는 방법이 Early Stopping이다. 1-2) Parameter Norm Penalty Parameter Norm Penalty는 목적함수가 되는 loss function에 parameter norm penalty를 추가하여 모델의 크기 등을 제한하는 것에서 나오는 아이디어..

[DL Basic] Optimization 최적화 - 2 : Gradient Descent

1. Gradient Descent Method 1) Stochastic Gradient Descent : SGD vs Mini-batch Gradient Descent vs Batch Gradient Descent SGD는 확률적으로 gradient를 업데이트하는 방식이다. 이는 데이터 하나에 대해 gradient를 업데이트하는 방법이고, 모든 데이터에 대해서 업데이트하는 기존의 Gradient Descent 방법보다는 모델의 Generalization에서 좋은 성능을 보여주었다. 하지만 실제로 모델을 학습할때는 resource적인 측면에서도 효율적이어야하는데 SGD는 모든 데이터에서 하나하나의 확률적인 업데이트를 실행하기 때문에 비효율적이었고, 이에 batch를 추출하여 업데이트하는 방법이 등장하였다..

[DL Basic] Optimization 최적화 - 1 : Basic

1. Optimization의 중요성 Optimiaztion(최적화)는 머신러닝 관점에서 몇 가지 논점에서 바라 볼 수 있다. 1) 일반화 (Generalization) 2) 과대적합 vs 과소적합 (Ovefitting vs Underfitting) 3) 교차검증 (Cross Validation) 4) 편향-분산 트레이드오프 (Bias-Variance Tradeoff) 5) 부트스트래핑 (Bootstrapping) 6) 배깅과 부스팅 (Bagginf and Boosting) 1-1) 일반화 (Generalization) Generalization라고 하면 일반적으로 train error는 학습과정에서 계속해서 작아짐에 따라, test error도 줄어들었을 때 학습이 잘 되었으며, Generalizati..

[Week 3 - 2] BoostCamp AI Tech

1. 오늘 한 일 - Deep Learning Basic 1~6강 - 기본과제 1~3 2. 과제 및 정리 - Optimizer 정리 https://kkuneeee.tistory.com/34 [DL Basic] Optimization 최적화 - 1 : Basic 1. Optimization의 중요성 Optimiaztion(최적화)는 머신러닝 관점에서 몇 가지 논점에서 바라 볼 수 있다. 1) 일반화 (Generalization) 2) 과대적합 vs 과소적합 (Ovefitting vs Underfitting) 3) 교차검증 (Cros.. kkuneeee.tistory.com https://kkuneeee.tistory.com/35 [DL Basic] Optimization 최적화 - 2 : Gradient ..

728x90
반응형