전체 글 102

[논문 읽기] BERT: Pre-training of Deep Bidirectional Transformers forLanguage Understanding (NAACL 2019)

BERT ( Bidirectional Encoder Representations from Transformers) 2018년에 구글이 공개한 트랜스포머 기반의 사전 훈련된 모델 위키피디아(25억 단어)와 BooksCorpus(8억 단어)와 같은 레이블이 없는 텍스트 데이터로 사전 훈련 주로 fine-tuning을 거쳐 여러 task에 이용 → 사전 훈련된 BERT 모델 + 추가적 훈련 + 하이퍼 파라미터 재조정 BERT는 사전 학습을 위해 두 가지 방법 (Masked Language Model(MLM)과 Next Sentence Prediction(NSP))를 사용함으로써 BERT가 양방향으로 학습되어 문맥을 더 잘 파악할 수 있게 한다. # Intro 전이학습 모델 구글의 Devlin(2018)이 제안..

BoW(Bag of Words), DTM

단어의 표현 방법 단어의 표현 방법에 대한 큰 체계를 한 번 정리해보자면, 지금까지 원핫인코딩, n-gram까지는 짚어봤다. 이들은 단어들끼리의 관계를 봐주진 않았고, 해당 단어 자체만 보고 특정값을 매핑하는 방법이었다. 되새겨보자면, 원핫인코딩의 경우에는 해당하는 자리에는 1을 쓰고 그 이외에는 0으로 벡터를 다 채워줬었다. 그리고 n-gram에서는 해당 단어구가 전체 훈련문장들 사이에서 몇 번 등장하냐 카운트해줬었다. 그리고 이들을 국소표현이라고 한다. 반대로 단어들 간에 중심단어를 두고 주변단어를 둬서 둘 사이의 관계로 표현하는 방법은 분산표현이라고 한다. Bag of words Bag of words란 단어들의 순서는 전혀 고려하지 않고, 단어들의 출현 빈도수에만 집중해서 텍스트를 수치화하는 표현..

[네이버부스트캠프 ai tech 6기] week4 회고

개인회고 방식을 바꿔볼까한다. 기존에는 '과제제출'용도로 공부99% 생각1% 느낌으로 썼는데, 이렇게 5개월간 쓰다가는 마음에 남는게 없다는 생각이 들어서 공부 1% 생각99% 비율로 밀고가보려한다. (물론 공부한 내용은 개별 포스팅으로 정리하고 있음) 머릿속으로 계속 맴도는 잡생각, 고민, 방황들이 .. 훗날의 멋.찐. 나를 완성시켜줄 자산이 되어있길 .. 바라묜쏘 .. 👥멘토링 세션 트랜스포머 모델을 공부할 때, 질문리스트로는 - 어텐션 매커니즘이 어떤식으로 계산되는지? - 인풋과 계산과정, 아웃풋이 어떻게 되는지 ? -기본적인 개념 : weight update, backward, activation funtion의 역할, 을 물어볼 것 같다고 하심. + 대학원 컨택을 하려면 6-7개월, 또는 1년 ..

[네이버부스트캠프 ai tech 6기] week3 회고

📚Learned (배운 것) Multi-Layer Perceptron 신경망의 기본 형태로, 여러 개의 층과 노드로 구성되어 복잡한 패턴을 학습 01. 퍼셉트론 인공신경망에 대해서 간단히 개념을 짚어볼까한다. 우선 퍼셉트론부터 !! 퍼셉트론 신경망의 기본 단위는 뉴런이다. 이 하나의 뉴런에서 다수의 신호를 입력 받아 하나의 신호를 출력하는 알고 uumini.tistory.com Optimization Algorithms 딥러닝 모델의 성능을 향상시키기 위해 손실 함수를 최소화하는 방법을 찾는 알고리즘 06. 옵티마이저 (optimizer) 옵티마이저 (optimizer) 경사하강법 알고리즘에 변화를 살짝 추가해줄 수 있는 요소로 optimizer가 등장을 합니다. 1. 모멘텀 먼저 모멘텀은 경사 하강법에..

[논문 읽기] GPT-1 : Improving Language Understanding by Generative Pre-Training (OpenAI)

GPT1 Abstract 1. Natural language understanding comprises a wide range of diverse tasks such as textual entailment, question answering, semantic similarity assessment, and document classification. 2. large unlabeled text corpora are abundant, labeled data for learning these specific tasks is scarce 3.We demonstrate that large gains on these tasks can be realized by generative pre-training of a l..

[네이버부스트캠프 ai tech 6기] week2 회고

📚Learned (배운 것) 1️⃣ Tensor 기본 연산 2023.11.17 - [데이터 스터디/DL] - [Pytorch] 파이토치 텐서(tensor) 기초함수, 연산 [Pytorch] 파이토치 텐서(tensor) 기초함수, 연산 Tensor PyTorch 딥러닝 프레임워크는 현재 활발히 사용되는 프레임워크 중 하나입니다. PyTorch 의 tensor는 numpy의 ndarry와 비슷한 구조를 가지고 실제로 numpy와 tensor간의 변환이 가능하다. Tensor 생성 1차 uumini.tistory.com 2️⃣ 2D gather 2차원 텐서에서 대각선 요소만 가져오기. step1) 원하는 output shape으로 index shape을 맞춰준다. step2) 인풋데이터의 차원에 따라 inde..

[Pytorch] 파이토치 Dataset, Dataloader

torch에는 데이터를 처리하기 위해 torch.utils.data.DataLoder와 torch.utils.data.Dataset의 두가지 요소를 제공 dataset : 미리 준비된 데이터셋을 불러 올 수 있으며, 가지고 있는 데이터와 라벨을 저장 dataloader : dataset을 데이터에 쉽게 접근할 수 있도록 batch를 설정해 iterable(반복가능객체)로 만듦. Dataset 관련 모듈 torch.utils.data: 데이터셋의 표준을 정의하고 데이터셋을 불러오고 자르고 섞는데 쓰는 도구들이 들어있는 모듈입니다. torchvision.dataset torchtext.dataset torchvision.transforms torchvision.tils Dataset의 기본 구성 요소 fro..

[Pytorch] 파이토치 nn.Module, nn.funcional (parameter, forward, backward연산)

torch.nn.Module & nn.funcional 두 패키지가 제공하는 기능은 비슷하지만 사용하는 방법에 차이가 있다. nn패키지 : 가중치(weight), 편향(bias) 값들이 내부에서 자동 생성되는 layer nn.functional : weight나 bias를 직접 선언 nn이 제공하는 기능 Parameters Containers Conv Layers Pooling Layers Padding Layers Non-linear Activation Normalization Layers Recuurent Layers Linear Layers Dropout Layers Sparse Layers Distance Functions Loss ... nn.functional이 제공하는 기능 Conv func..

[Pytorch] 파이토치 텐서(tensor) 기초함수, 연산

Tensor PyTorch 딥러닝 프레임워크는 현재 활발히 사용되는 프레임워크 중 하나입니다. PyTorch 의 tensor는 numpy의 ndarry와 비슷한 구조를 가지고 실제로 numpy와 tensor간의 변환이 가능하다. Tensor 생성 1차원 텐서 tensor = torch.FloatTensor([0., 1., 2., 3.]) 2차원 텐서 data = [[1, 2],[3, 4]] x_data = torch.tensor(data) numpy nd-array를 tensor로 변경 n_array = np.arange(10).reshape(2,5) # nd array를 PyTorch tensor로 변환합니다. t_array = torch.FloatTensor(n_array) print("ndim :"..

[논문 읽기] Attention IS All You Need (Transformer)

Transformer 0) Architecture 배경 seq2seq은 sequence가 길어지는 경우 앞부분의 gradient를 잘 반영못한 context vector를 이용하게 돼 기울기 소실 문제 발생 문맥 벡터 하나로는 모든 정보를 담기 힘듦. ⇒ attention mechanism을 이용하자 encoder에서 모든 hidden state를 보존 ⇒ 내적값을 구해서 alignment score 구하는 방식 채택 1) Input into Encoder input embedding 문장의 토큰을 원-핫인베딩으로 인코딩 후 가중치행렬 w와 내적(=인덱싱)함 이때 토큰은 sequential(x) parallel(한꺼번에) 입력되는 형태이므로 순서정보가 보존되지 않아, positional encoding ..