전체 글

0. Pretrained Model Pretrained Model이란 대규모 데이터셋을 기반으로 학습된 모델로, 학습한 task에 대한 일반적인 지식을 갖추고 있는 모델로, GPT / PALM / Stable-Diffusion 등이 이에 해당한다. 1. Transfer Learning Transfer Learning: 전이학습이란 사전학습된 모델의 지식을 다른 task에 활용하는 것을 말한다. 모델이 이미 학습한 일반적인 지식을 기반으로 더 빠르고 효과적이게 새로운 지식을 학습할 수 있다. 이러한 방법은 보통 특정 딥러닝 모델을 사용하는 것보다 더 적은 양의 학습 데이터를 사용하면서도 학습 속도도 빠르고 성능도 우수한 결과를 보인다. 이렇게 이미 학습된 모델을 사용해 문제를 해결함에 따라 layer, A..
0. PyTorch Process 파이토치에서는 위와 같은 딥러닝의 단계들을 쉽게 구현할 수 있도록 도와준다. Data = `torch.utils.data.Dataset` , `torch.utils.data.DataLoader` Model = `torch.nn.Module` Loss = `torch.nn`, `torch.nn.functional` Optimization = `torch.optim` 1. Dataset, DataLoader Dataset과 DataLoader을 사용하면 데이터 셋에서 미니배치 크기의 데이터를 반환하게 된다. 또한 미니 배치의 크기는 `batch_size`라는 파라미터를 이용하여 설정해 줄 수 있다. 1-1. Dataset `Dataset`은 단일 데이터를 모델의 입력으로 사..
문제 17609번: 회문 각 문자열이 회문인지, 유사 회문인지, 둘 모두 해당되지 않는지를 판단하여 회문이면 0, 유사 회문이면 1, 둘 모두 아니면 2를 순서대로 한 줄에 하나씩 출력한다. www.acmicpc.net 코드 My answer import sys input=sys.stdin.readline def main(s): def check(substring): return substring == substring[::-1] for i in range(len(s) // 2): if s[i] != s[len(s) - 1 - i]: substring_left = s[:i] + s[i + 1:] substring_right = s[:len(s) - 1 - i] + s[len(s) - i:] if chec..
이번에는 PyTorch를 이용하여 DNN 구조를 구현하는 것을 데이터를 불러오는 것부터 하나하나 실습해 보도록 할 것이다. 0. Environmet setting 나는 Python 3.9.0, Cuda=11.7, PyTorch=2.0.0 환경에서 실습을 진행하였다. 딥러닝 NVIDIA GPU / cuda 사용하기 1. CUDA 설치 아래 링크에서 본인의 그래픽 카드에 맞는 NVIDIA 드라이버 다운로드.(나: RTX 3060TI) Download the latest official NVIDIA drivers Download the latest official NVIDIA drivers www.nvidia.com 2. CUDA Toolkit 설치 아래 changsroad.tistory.com 1. 사전세팅..
이번 글에서는 딥러닝의 발전에 크게 기여한 모델들에 대하여 간단하게만 알아볼 것이다. 1. LeNet-5 1998년 Yann LeCun에 의해 제안된 LeNet-5 모델은 손글씨 숫자를 인식하기 위해 설계된 최초의 합성곱 신경망 구조이다. 2. ILSVRC Mnist 데이터 셋에 대하여 모델들이 성능이 뛰어나자 새로운 데이터 셋을 생성하였다. ILSVRC: ImageNet Large Scale Visual Recognition Challenge라고 부르며, 수백만 개의 이미지로 구성된 데이터베이스로, 각 이미지는 라벨이 붙어 있어 다양한 컴퓨터 비전 연구에서 사용된다. ImageNet 자체는 거대한 이미지 데이터베이스이며, ILSVRC는 이 데이터셋을 이용해 2010~2017년에 개최된 대회로, 여러 비..
· ML & DL/NLP
0. BERT 등장 BERT는 Google의 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 논문에서 처음 제안된 모델로, 이전의 Transformer의 인코더 기반의 언어 모델이다. 우선 unlabeld data로부터 pre-train을 진행한 후, 전이학습을 하는 모델이며, 하나의 output layer을 pre-trained BERT에 추가하여 다양한 NLP task에서 SOTA를 달성하였다. 기존의 사전학습된 벡터 표현을 이용하는 방법은 크게 2가지가 존재하였다. 0-1. feature based approach 대표적으로 ELMo가 있으며, pre-trained representations를 하나의 ..
· ML & DL/NLP
오늘은 생성 모델 GPT에 대한 강의를 정리해 보도록 하겠다. 0. GPT 등장 GPT 모델은 2018년에 OpenAI에서 "Improving Language Understanding by Generative Pre-Training"이라는 논문에서 처음 등장하였다. 일반적으로 자연어처리에서 특정 작업을 진행하기 위한 데이터셋이 부족하기 때문에 기존에도 unsupervised learning이나, semi-supervised learning 같이 라벨이 없는 비정형 텍스트를 사용하는 방법들이 계속 제안되었었다. 또한 ELMo 같이 LM을 기반으로 사전학습을 거친 모델들이 좋은 성능을 보인다는 것이 알려져 있었다. 그러나 RNN기반의 모델들은 구조적 한계가 있었다. 그래서 GPT는 Transformer이 등..
창빵맨
Let's be Developers