본문 바로가기
반응형

전체 글232

[딥러닝 with Python] 파이썬 코드로 구현해보는 트랜스포머 이번에는 트랜스포머에 대해서 파이썬 코드로 하나씩 구현해가면서 결과를 확인해보겠습니다. 1. 트랜스포머(Transformer)먼저 트랜스포머(Transformer)에 대해 간략하게 알아보겠습니다. - 트랜스포머는 자연어 처리에서 혁신적인 변화를 준 모델로, "Attention is All you need"라는 논문에 소개된 딥러닝 구조를 말합니다.- 특히, 번역, 요약, 문장 생성 등 다양한 태스크에서 굉장히 뛰어난 성능을 보였으며, 이를 활용해서 이미지처리 분야에서는 Vision Transformer라는 모델이 나와 기존의 CNN구조의 모델들의 성능을 압도할 정도로 중요한 역할을 해내고 있습니다.- 특히, 트랜스포머는 Multi-head self attention을 활용해서 기존 RNN 기반의 순차적인.. 2024. 7. 29.
[개념정리] 인코딩과 임베딩의 차이(Encoding vs Embedding) 이번에 알아볼 것은  인코딩(Encoding)과 임베딩(Embedding)의 차이 에 대해서 알아보고자 합니다. 인코딩과 임베딩은 둘 다 데이터를 다른 형식으로 변환하는 과정이지만, 그 목적과 방식에 차이가 있습니다. 1. 인코딩(Encoding)1) 인코딩(Encoding) - 인코딩은 데이터를 특정 형식으로 변환하는 과정을 말합니다. - 인코딩의 주요 목적은 데이터를 다른 시스템이나 저장 매체에서 처리할 수 있도록 변환하는 것입니다. - 예를 들어, 텍스트 데이터를 숫자 형식으로 변환하거나, 이진 데이터를 특정 문자셋으로 변환하는 것을 의미합니다. 아래는 대표적인 인코딩의 예시입니다  a) 텍스트 인코딩(UTF-8)  * UTF-8 인코딩은 텍스트 데이터를 바이트 형식으로 변환하는 일반적인 방법을 말.. 2024. 7. 28.
[개념 정리] N-gram이란? N-gram 언어 모델이란? 1. N-gram 언어모델 이란?- N-gram 언어모델은 자연어 처리에서 많이 사용되는 확률 기반 언어 모델을 말합니다. * 언어모델(Language Model, LM)이란, 언어를 이루는 구성 요소(글자, 형태소, 단어, 단어열(문장), 문단 등)에 확률값을 부여하여 이를 바탕으로 다음 구성 요소를 예측하거나 생성하는 모델을 말함 * 이 언어모델은 크게 a) 확률에 기초한 통계적 언어모델(Statistical Language Model / SLM)과 인공 신경망에 기초한 딥러닝 언어 모델(Deep Neural Network Language Model / DNN LM)으로 나뉩니다. 오늘 알아볼 N-gram은 통계적 언어모델, 즉 SLM의 하나 입니다 - N-gram은 주어진 텍스트에서 단어의 나열을 .. 2024. 7. 27.
[개념 정리] 형태소 분석(Morphological Analysis) 1. 형태소 분석이란?- 형태소 분석은 텍스트를 구성하는 기본 단위인 형태소(morpheme)를 분석하는 과정을 말합니다.- 이때 형태소란, 의미를 가지는 가장 작은 언어 단위로 단어 또는 단어의 일부분 일 수 있습니다.  - 형태소는 크게 자립 형태소와 의존 형태소로 나눌 수 있습니다.1) 자립 형태소 : 단독으로 사용될 수 있는 형태소 * 명사 : 사람, 책, 학교 * 동사 : 먹다, 가다 * 형용사 : 예쁘다, 크다 * 부사 : 빨리, 천천히, 정말 * 감탄사 : 아!, 야!, 우와!2) 의존 형태소 : 혼자서 사용될 수 없고 다른 형태소와 결합해야 의미를 가지는 형태소 * 조사 : 이, 가, 을, 를, 에, 에게 * 어미 : 다, 요, 니, 습니다. 겠, 고 - 예시를 통해서 알아보면  "철수는 .. 2024. 7. 26.
[개념정리] MLE(Maximum Likelihood Estimation)와 MAP(Maximum A Posteriori Estimation) 이번에 알아볼 것은 MLE(Maximum Likelihood Estimation)과 MAP(Maximum A Posteriori Estimaiton) 입니다.  1. MLE (최대우도추정)- MLE는 주어진 데이터가 가장 설명될 수 있는 파라미터 값을 선택하는 것을 말하며, 이때 우도 함수(Likelihood Function)을 최대화하는 파라미터 값을 찾는 것을 말합니다. - MLE는 아래와 같이 3단계로 나누어서 진행됩니다.1) 우도 함수 정의2) 로그 우도 함수  * 계산을 간소화하기 위해 우도 함수의 로그를 취한 로그 우도함수가 자주 사용됩니다. 3) 로그 우도 함수 최대화 * 로그 우도 함수를 최대화하는 파라미터인 theta를 찾습니다.  * 보통 로그 우도 함수의 파라미터인 theta에 대한 .. 2024. 7. 25.
[딥러닝 with Python] Multiple Instance Learning을 활용한 이미지 분류[개념 정리] [해당 포스팅은 https://keras.io/examples/vision/attention_mil_classification/을 참조하였습니다] 이번에 알아볼 내용은 Multiple Instance Learning을 활용하여 이미지를 분류하는 작업에 대해서 알아보겠습니다. 1. Multiple Instance Learning이란?- Multiple Instance Learning이란, 전통적인 지도학습방식과는 다른 방식으로 레이블이 되어있는 학습데이터를 분할하여 개별 인스턴스를 만들고 그 인스턴스를 활용하는 방식입니다. * 일반적인 지도학습은, 학습 데이터인 개별 인스턴스에 대해 레이블을 가지고 있습니다. 예를 들어, 개별 인스턴스를 개나 고양이 등 각 사진 1장을 의미하고, 그 사진 1장에 대한 이름.. 2024. 7. 23.
[딥러닝 with Python] Vision Transformer를 활용한 이미지 분류 이번에는 간단한 비전 트랜스포머 코드를 활용해 CIFAR-100 Dataset에 대한 분류를 해보겠습니다. Vision Transformer에 대한 이론적인 내용은 아래 포스팅을 참조 바랍니다. [개념 정리] 비전 트랜스포머 / Vision Transformer(ViT) (1/2) [개념 정리] 비전 트랜스포머 / Vision Transformer(ViT) (1/2)이번에 알아보 내용은 Vision Transformer입니다. 해당 모델은 "An Image is worth 16x16 words: Transformers for image recognition at scale" 이라는 논문에서 등장했습니다. 해당 논문은 2021년 ICLR에서 발표된 이후, 많은jaylala.tistory.com[개념 정리].. 2024. 7. 23.
[딥러닝 with Python] KL Divergence Loss란? 이번에 알아볼 것은 KL Divergence Loss 입니다.  1. KL Divergence란?- KL Divergence는 Kullback-Leibler Divergence의 줄임말로, 두 확률 분포간의 차이를 측정하는 비대칭적인 척도를 의미합니다.* 여기서 비대칭성이란, 두 확률분포 P와 Q의 순서를 바꾸어서 KL Divergence를 계산하면 다른 결과가 나올 수 있다는 것을 의미합니다. - 이는 주로 모델이 예측한 분포와 실제 분포간의 차이를 측정하는데 사용됩니다. - KL Divergence 계산식은 다음과 같습니다 1) 두 이산형 확률 분포 P와 Q의 KL Divergence 2) 두 연속형 확률 분포의 P와 Q의 KL Divergence  - KL Divergence의 특징1) 비대칭성 :.. 2024. 7. 22.
반응형