skinOptions.hljs
[GAN] GAN이란?
·
공부정리/Computer Vision
Generative Adversarial Networks(GANs) 1강 - GAN이란 무엇인가? 문제 복잡하고 고차원인 학습 분포로부터 데이터를 샘플링을 하고자 하나, 이를 직접적으로 하는 것이 불가능 해결책 쉽게 데이터를 샘플링하는 것이 가능한 간단한 분포를 이용(random noise와 같은 것) 이 간단한 분포를 학습 분포로 변형(transformation) 하는 법을 학습 Q. 이러한 복잡한 변형을 표현하려면 어떤 것을 사용해야할까? -> 정답은 Neural network!!! 입력 이미지를 따르는 정규 분포로 Z를 흭득함 -> 그것으로 학습 Neural Network 문제 하지만 각 Sample Z가 어떤 이미지로 매핑 되는지 알 수 없음 학습 이미지를 복원하는 것으로는 학습 불가능 해결책 d..
[GAN] VAE(Variational Auto-Encoder)
·
공부정리/Computer Vision
VAE 목표: Input image X를 잘 설명하는 feature를 추출하여 Latent vector z에 담고, 이 Latent vector z를 통해 X와 유사하지만 완전히 새로운 데이터를 생성하는 것 각 feature가 가우시안 분포를 따른다고 가정하고 latent z는각 feature의 평균과 분산값을 나타냄 수식을 약간 곁들여 이를 표현하면 아래와 같이 나타낼 수 있다. p(z): latent vector z의 확률밀도함수. 가우시안 분포를 따른다고 가정 p(x|z): 주어진 z에서 특정 x가 나올 조건부 확률에 대한 확률밀도함수 θ: 모델의 파라미터 VAE의 구조 Input image X를 Encoder에 통과시켜 Latent vector z를 구하고, Latent vector z를 다시 D..
[GAN] 확률 밀도의 추정과 샘플링
·
공부정리/Computer Vision
확률 분포(Probability distribution)의 추정 (estimation) 주사위를 굴렸을 때 각각의 수를 얻는 확률은 어떻게 될까? 이미지를 학습할 때 확률 변수 x는 64x64x3와 같은 차원을 갖는 고차원 벡터로 표현될 수 있다. 아래 예를 들어 얼굴을 그리기 위해 눈, 코, 입 등의 feature를 Latent vector z에 담고, 그 z를 이용해 그럴듯한 한국인의 얼굴을 그려내야 한다. 이러한 생성 모델에서는 확률 분포가 실제 존재하는 확률 분포와 얼마나 가까이 추정하였는지에 따라 달라질 수 있다. latent vector x3은 금발 여성의 눈 모양의 평균 및 분산, 한국인 코 길이의 평균 및 분산, 한국인 머리카락 길이의 평균 및 분산 등등의 정보를 담고 있다고 생각할 수 있..
[NLP] DialoGPT 를 이용해서 데이터 커스텀을 통한 GPT 생성 - HuggingFace
·
공부정리/NLP
{ "cells": [ { "cell_type": "markdown", "metadata": { "cell_id": "00000-e1532e6c-1d68-438a-9ae3-e3d5d228be0b", "deepnote_cell_type": "markdown", "id": "VTze-VbeU1c0" }, "source": [ "# Fine-tune a DialoGPT model\n", "\n", "Adapted from the notebook in this Medium post." ] }, { "cell_type": "markdown", "metadata": { "cell_id": "00001-f1561e9e-4ec2-471c-947d-1fb1e9006488", "deepnote_cell_type": "ma..
[NLP] KoNlPy Okt 형태소 분석기 사전에 추가하기
·
공부정리/NLP
일단 내가 사용하고 있는 anaconda 가상환경의 경로를 알아야 한다. anaconda prompt 창을 열어 가장 먼저 나오는 경로를 찾으면 된다. 해당 경로에서 anaconda 폴더를 찾고 envs로 들어간다. envs에서 내가 사용중인 가상환경폴더로 들어간다. 그러면 다음과 같이 보일 것이다. 이제 여기서 konlpy폴더를 찾아야 하는데 그냥 검색창에 konlpy 입력해서 나오는 폴더를 찾으면 된다. 위 사진처럼 보인다면 성공이다. 이제 java폴더에서 open-korean-text-2.1.0압축파일을 해제한다. 압축해제한 폴더에서 org > openkoreantext > processor > util 을 찾는다. 일단 명사부터 수정하기 위해 noun을 들어가 후 원하는 파일을 연다. 나는 일단 ..
[Vision] albumentations라이브러리와 CutMix를 통한 이미지 증강
·
공부정리/Computer Vision
본 게시글은 이미지 증강 과정의 예시를 시각화한 과정입니다. HTML 삽입 미리보기할 수 없는 소스 자세한 코드는 여기에..
[Vision] timm 으로 이미지 사전학습 모델 (ImageNet) 불러오기 / Python 파이썬
·
공부정리/Computer Vision
일반적으로 image classification 분야에서 새로운 model을 설계하는 것은 매우 어려운일이다. 그 이유는, 1) 단순하게 layer를 추가 구성해서 붙이는 과정으로는 model을 효율적으로 업그레이드 하는 것은 불가능함 2) 일반적으로 이미지 입력 크기의 경우 224-by-224 사이즈를 쓰게되는데 충분한 하드웨어 리소스 없이는 batch size를 백단위로 구성하는 것도 힘들며, batch size를 줄여서 학습을 하게 되면 모델 하나 학습하는데 몇일씩 걸리기 때문에 연구 개발 과정이 너무 길어지게 됨 따라서, image classification 분야에서는 주로 이미 개발된 뛰어난 model들을 가져와서 사용하게 된다. (출처: https://paperswithcode.com/sota..
[NLP] Hugging Face 허깅페이스에서 불러온 모델 미세조정 후 모델업로드하기 (SQuAD v1.1 Dataset)
·
공부정리/NLP
HTML 삽입 미리보기할 수 없는 소스 이렇게 모델을 올리고 나면 내 허깅페이스 레파지토리에 잘 올라간 모습을 볼 수 있습니다. 이렇게 내 계정에 모델을 올리면 허깅페이스 API를 통해 간편하게 다른 코드에서 모델을 불러와 바로 적용할 수 있습니당~! 모델의 주소는 [계정명]/[모델명] 이렇게 작성하면 됩니다. 예시1. sillon/huggingface-tutorial 예시2. sillon/linux_test
[NLP] Hugging Face API, 허깅페이스 API / Trainer, Training Arguments 구현
·
공부정리/NLP
Trainer class는 모델학습부터 평가까지 한 번에 해결할 수 있는 API를 제공한다. 다음의 사용예시를 보면 직관적으로 이해할 수 있다. from transformers import Trainer #initialize Trainer trainer = Trainer( model=model, args=training_args, train_dataset=train_dataset eval_dataset=eval_dataset compute_metrics, tokenizer=tokenizer ) #train trainer.train() #save trainer.save_model() #eval metrics = trainer.evaluate(eval_dataset=eval_dataset) Initializ..
[NLP] Hugging Face 허깅페이스 오류 / 깃 설정 오류 / OSError: Tried to clone a repository in a non-empty folder that isn't a git repository. If you really want to do this, do it manually:git init && git remote add origin && git pull origin ma..
·
공부정리/NLP
모델을 저장하려는데 오류가 생겼다! OSError: Tried to clone a repository in a non-empty folder that isn't a git repository. If you really want to do this, do it manually: git init && git remote add origin && git pull origin main or clone repo to a new folder and move your existing files there afterwards. 바로 깃에 연결되지 않아서 그렇다.. ㅎ !pip install hf-lfs !git config --global user.email "" !git config --global user.name..
[NLP] Hugging Face 오류 / 토큰 권한 변경 / HfHubHTTPError: <class 'requests.exceptions.HTTPError'> (Request ID: Root=1-63d9c8e7-7270e6f27fc51f431f1a5df3)You don't have the rights to create a model under this namespace - You don't have the rights..
·
공부정리/NLP
학습을 끝마치고 다음과 같은 오류가 생겼다. HfHubHTTPError: (Request ID: Root=1-63d9c8e7-7270e6f27fc51f431f1a5df3) You don't have the rights to create a model under this namespace - You don't have the rights to create a model under this namespace 이러한 오류는 토큰에서 read 로만 권한을 설정했기 때문이다! 따라서 write으로 설정된 토큰으로 변경해주자!
[NLP] 허깅페이스(Huggingface)에 로그인하여 내 모델 포팅(porting)하기 / 토큰 발급, 허깅페이스 로그인, 모델 포팅
·
공부정리/NLP
Hugging Face – The AI community building the future. The AI community building the future. Build, train and deploy state of the art models powered by the reference open source in machine learning. huggingface.co 허깅페이스(Huggingface)는 사람들이 모델을 만들고 학습시켜 올려둘 수 있는 저장소이다. 기본적으로는 git을 기반으로 돌아간다. 허깅페이스의 transformers 모듈을 사용하면 자신에게 필요한 여러 모델들을 손쉽게 가져다 쓸 수 있다. 여기에 자기가 만들어 학습을 시킨 혹은 기존의 pre-trained된 모델을 가져다가..