AI
-
2022년 3월 7일(월)부터 11일(금)까지 네이버 부스트캠프(boostcamp) AI Tech 강의를 들으면서 개인적으로 중요하다고 생각되거나 짚고 넘어가야 할 핵심 내용들만 간단하게 메모한 내용입니다. 틀리거나 설명이 부족한 내용이 있을 수 있으며, 이는 학습을 진행하면서 꾸준히 내용을 수정하거나 추가해 나갈 예정입니다. 추천 시스템이란? 서비스는 매우 많은 아이템으로 이루어져 있다. 이 매우 많은 아이템에서 사용자의 데이터를 기반으로 비즈니스 목적에 맞게 사용자가 선호할 만한 아이템을 추천하는 것이다. Search(검색)와 Recommendation(추천) 검색은 사용자가 의도를 가지고 아이템을 찾는 행위이다. 사용자의 의도가 담긴 쿼리(query)라는 키워드가 사용된다. 검색을 통해 아이템을 소..
추천 시스템에서 자주 사용하는 용어와 평가 지표2022년 3월 7일(월)부터 11일(금)까지 네이버 부스트캠프(boostcamp) AI Tech 강의를 들으면서 개인적으로 중요하다고 생각되거나 짚고 넘어가야 할 핵심 내용들만 간단하게 메모한 내용입니다. 틀리거나 설명이 부족한 내용이 있을 수 있으며, 이는 학습을 진행하면서 꾸준히 내용을 수정하거나 추가해 나갈 예정입니다. 추천 시스템이란? 서비스는 매우 많은 아이템으로 이루어져 있다. 이 매우 많은 아이템에서 사용자의 데이터를 기반으로 비즈니스 목적에 맞게 사용자가 선호할 만한 아이템을 추천하는 것이다. Search(검색)와 Recommendation(추천) 검색은 사용자가 의도를 가지고 아이템을 찾는 행위이다. 사용자의 의도가 담긴 쿼리(query)라는 키워드가 사용된다. 검색을 통해 아이템을 소..
2022.03.11 -
Generative Model Generative Model이란? Discriminative Model과 Generative Model 일반적으로 머신러닝에서 모델을 크게 두 범주로 분류하자면 discriminative model과 generative model로 구분할 수 있다. Discriminative model은 데이터의 레이블링을 예측하는 것처럼 decision boundary를 잘 결정하는 것이 목표인 모델이며, 우리가 일반적으로 잘 아는 classficiation, segmentation, detection과 같은 task를 잘 수행하는 모델로 볼 수 있다. 그에 반해 생성 모델(generative model)은 기본적으로 어떠한 입력이 주어졌을 때 이를 모델에 통과하여 output을 내는데..
생성 모델(Generative Model)과 VAE 그리고 GANGenerative Model Generative Model이란? Discriminative Model과 Generative Model 일반적으로 머신러닝에서 모델을 크게 두 범주로 분류하자면 discriminative model과 generative model로 구분할 수 있다. Discriminative model은 데이터의 레이블링을 예측하는 것처럼 decision boundary를 잘 결정하는 것이 목표인 모델이며, 우리가 일반적으로 잘 아는 classficiation, segmentation, detection과 같은 task를 잘 수행하는 모델로 볼 수 있다. 그에 반해 생성 모델(generative model)은 기본적으로 어떠한 입력이 주어졌을 때 이를 모델에 통과하여 output을 내는데..
2022.02.17 -
Sequential Model Sequential Model이 어려운 이유 언어 문장을 예로 들면 완벽한 문장 구조에 대응되도록 문장을 만드는 경우는 흔치 않은데, 이러한 문제는 sequential model에 있어서 난관이다. 또한 기존 Seq2Seq 모델은 고정된 크기의 context vector에 source 문장 정보를 압축하는데, 이는 병목(bottleneck)을 발생시켜 성능 하락의 원인이 된다. 하나의 문맥 vector가 source 문장의 모든 정보를 가지고 있어야 하므로 성능이 저하된다는 문제가 있다. 그래서 매번 source 문장에서의 출력 전부를 입력으로 받는 것이 transformer의 아이디어이다. 최근 트렌드는 입력 시퀀스 전체에서 정보를 추출하는 모델로 발전하는 방향이다. Tr..
Self-Attention을 사용하는 Transformer(트랜스포머)Sequential Model Sequential Model이 어려운 이유 언어 문장을 예로 들면 완벽한 문장 구조에 대응되도록 문장을 만드는 경우는 흔치 않은데, 이러한 문제는 sequential model에 있어서 난관이다. 또한 기존 Seq2Seq 모델은 고정된 크기의 context vector에 source 문장 정보를 압축하는데, 이는 병목(bottleneck)을 발생시켜 성능 하락의 원인이 된다. 하나의 문맥 vector가 source 문장의 모든 정보를 가지고 있어야 하므로 성능이 저하된다는 문제가 있다. 그래서 매번 source 문장에서의 출력 전부를 입력으로 받는 것이 transformer의 아이디어이다. 최근 트렌드는 입력 시퀀스 전체에서 정보를 추출하는 모델로 발전하는 방향이다. Tr..
2022.02.17 -
Sequential Model Sequential Data [출처] https://machinelearningmastery.com/multivariate-time-series-forecasting-lstms-keras 일상적으로 접하는 데이터는 대부분 sequential data이다. (예: 음성, 비디오 등) Naive Sequence Model $$ p(x_t | x_{t-1}, x_{t-2}, \cdots) $$ 시간이 지남에 따라 고려해야 하는 데이터의 개수가 계속 증가한다. 길이가 주어지지 않아서 받아들여야 하는 데이터의 입력의 차원을 알 수 없다는 단점이 있다. Autoregressive Model [출처] https://www.researchgate.net/figure/Autoregressi..
순차 데이터와 RNN(Recurrent Neural Network) 계열의 모델Sequential Model Sequential Data [출처] https://machinelearningmastery.com/multivariate-time-series-forecasting-lstms-keras 일상적으로 접하는 데이터는 대부분 sequential data이다. (예: 음성, 비디오 등) Naive Sequence Model $$ p(x_t | x_{t-1}, x_{t-2}, \cdots) $$ 시간이 지남에 따라 고려해야 하는 데이터의 개수가 계속 증가한다. 길이가 주어지지 않아서 받아들여야 하는 데이터의 입력의 차원을 알 수 없다는 단점이 있다. Autoregressive Model [출처] https://www.researchgate.net/figure/Autoregressi..
2022.02.17 -
Generalization 학습된 모델이 다른 새로운 데이터에 관해서도 잘 작동하도록 하는 것이 일반화이다. 학습 Iteratiion이 늘어남으로 인해 무조건 training error가 낮아진다고 해서 test error도 낮아진다는 보장이 없다. Generalization Gap Training error와 test error의 차이로 인해 실제 테스트 결과가 검증 결과와 차이가 생기는 것이다. Overfitting 모델이 학습 데이터에 관해서만 너무 학습되어서 예측률이 떨어져서 새로운 데이터에 관해서는 좋은 결과를 보이지 못하는 현상이다. Underfitting Network가 단순하거나 일반화에 너무 치중한 나머지 모델이 학습 데이터에 관해 덜 학습된 현상이다. Cross-validation 데이..
딥 러닝에서의 일반화(Generalization)와 최적화(Optimization)Generalization 학습된 모델이 다른 새로운 데이터에 관해서도 잘 작동하도록 하는 것이 일반화이다. 학습 Iteratiion이 늘어남으로 인해 무조건 training error가 낮아진다고 해서 test error도 낮아진다는 보장이 없다. Generalization Gap Training error와 test error의 차이로 인해 실제 테스트 결과가 검증 결과와 차이가 생기는 것이다. Overfitting 모델이 학습 데이터에 관해서만 너무 학습되어서 예측률이 떨어져서 새로운 데이터에 관해서는 좋은 결과를 보이지 못하는 현상이다. Underfitting Network가 단순하거나 일반화에 너무 치중한 나머지 모델이 학습 데이터에 관해 덜 학습된 현상이다. Cross-validation 데이..
2022.02.16 -
Neural Networks Neural Networks are computing systems vaguely inspired by the biological neural networks that constitute animal brains. - WikiPedia - 인간의 뇌를 모방해서 성능이 좋다는 게 아니라 그 모델 자체를 수학적으로 분석하는 게 바람직하다. 비행기의 발명이 새가 나는 모습을 보고 영감을 받은 건 맞지만, 비행기가 나는 원리가 새가 나는 원리와 일치한 것은 아닌 것과 유사하다. Neural networks are function approximators that stack affine transformations followed by nonlinear transformations. ..
신경망(Neural Network)과 다층 퍼셉트론(Multi Layer Perceptron)Neural Networks Neural Networks are computing systems vaguely inspired by the biological neural networks that constitute animal brains. - WikiPedia - 인간의 뇌를 모방해서 성능이 좋다는 게 아니라 그 모델 자체를 수학적으로 분석하는 게 바람직하다. 비행기의 발명이 새가 나는 모습을 보고 영감을 받은 건 맞지만, 비행기가 나는 원리가 새가 나는 원리와 일치한 것은 아닌 것과 유사하다. Neural networks are function approximators that stack affine transformations followed by nonlinear transformations. ..
2022.02.16 -
Deep Learning에서 중요한 요소 The data that the model can learn from The model how to transform the data The loss function that quantifies the badness of the model The algorithm to adjust the parameters to minimize the loss Data 데이터는 해결해야 할 문제에 의존적이다. Classification 이미지에 대한 label 찾기 예) 개·고양이 분류 문제 Sementic Segmentation 픽셀이 어떠한 개체에 속하는지를 분류 이미지 내 요소 구분 문제 Detection 이미지에서 개체에 대한 bounding box 찾기 사물 감지 문제 ..
딥 러닝에서 알아두어야 할 요소와 역사적으로 중요한 모델Deep Learning에서 중요한 요소 The data that the model can learn from The model how to transform the data The loss function that quantifies the badness of the model The algorithm to adjust the parameters to minimize the loss Data 데이터는 해결해야 할 문제에 의존적이다. Classification 이미지에 대한 label 찾기 예) 개·고양이 분류 문제 Sementic Segmentation 픽셀이 어떠한 개체에 속하는지를 분류 이미지 내 요소 구분 문제 Detection 이미지에서 개체에 대한 bounding box 찾기 사물 감지 문제 ..
2022.02.16 -
2022년 1월 24일(월)부터 28일(금)까지 네이버 부스트캠프(boostcamp) AI Tech 강의를 들으면서 개인적으로 중요하다고 생각되거나 짚고 넘어가야 할 핵심 내용들만 간단하게 메모한 내용입니다. 틀리거나 설명이 부족한 내용이 있을 수 있으며, 이는 학습을 진행하면서 꾸준히 내용을 수정하거나 추가해 나갈 예정입니다. PyTorch로 딥러닝 하는 과정에서 문제 발생 시 해결하기 ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memory DL 모델링을 하면서 자주 보게 될 오류로 GPU 상에서의 OOM(Out Of Memory)가 있다. 이는 다음과 같은 문제를 지닌다. 왜..
PyTorch 딥 러닝 과정에서 자주 발생하는 문제 해결을 위한 팁2022년 1월 24일(월)부터 28일(금)까지 네이버 부스트캠프(boostcamp) AI Tech 강의를 들으면서 개인적으로 중요하다고 생각되거나 짚고 넘어가야 할 핵심 내용들만 간단하게 메모한 내용입니다. 틀리거나 설명이 부족한 내용이 있을 수 있으며, 이는 학습을 진행하면서 꾸준히 내용을 수정하거나 추가해 나갈 예정입니다. PyTorch로 딥러닝 하는 과정에서 문제 발생 시 해결하기 ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memory DL 모델링을 하면서 자주 보게 될 오류로 GPU 상에서의 OOM(Out Of Memory)가 있다. 이는 다음과 같은 문제를 지닌다. 왜..
2022.02.15