본문 바로가기

AI

(163)
윈도우 cmd에서 nvidia-smi 실시간 모니터링 https://kyumdoctor.co.kr/10 NVIDIA-SMI 확인방법 및 활용하기 NVIDIA-SMI 확인방법 및 활용하기 nvidia-smi 옵션 사용법 nvidia gpu를 사용하기 위해서는 nvidia에서 제공하는 GPU Driver를 각각의 os에 맞게 설치해야 한다. 드라이버 설치에 성공하고 가장 먼저 사용하는 kyumdoctor.co.kr 윈도우 cmd에서 nvidia-smi 실시간 모니터링 for /l %g in () do @(cls & nvidia-smi & timeout /t 5) /t 5 : 갱신 주기
transfer learning transfer learning - 특정 태스크를 학습한 모델을 다른 태스크 수행에 재사용 하는 기법 - 워3를 처음 해도 스타를 해봤다면 금방 배움 언어 모델 language model - 다음 단어 예측으로 업스트림 태스크를 수행한 모델 - GPT가 대표적 마스크 언어 모델 masked language model - 빈칸 채우기로 업스트림 태스크를 수행한 모델 - Bert계열 모델이 대표적 자기지도학습 self-supervised learning - 업스트림 된 모델을 바탕으로 트랜스퍼 러닝 하는 학습방법 파인튜닝 fine-tuning - 프리트레인을 마친 모델을 다운스트림 태스크에 맞게 업데이트 하는 기법 중 하나 대표적 다운스트림 태스크 학습 기법 파인튜닝(find-tuning) 다운스트림 태스크..
BERT, Electra, XLNet, RoBERTa, T5 BERT - Bidirectional Encoder Representations from Transformers - 방대한 학습 데이터를 미리 학습해놓은 모델 - BiMM(MLM, NSP) 방식을 사용해 단어, 문장, 위치 임베딩을 진행 후 이를 합쳐 모델을 학습 - NLU task에서 기존 Word2Vec, GloVe 등의 방식보다 성능이 대폭 개선 - 단점 : 일반 NLP 모델에서는 잘 작동하지만 특정 분야(과학, 금융 등)의 언어모델에서는 성능이 떨어지는데, 각 분야마다 사용 언어가 다르고, 언어 특성이 다르기 때문, 특정 분야의 BERT 성능 개선을 위해서는 그 분야의 언어 데이터를 수집하고 추가 학습이 필요함 * MLM : Masked Language Model, 입력 문장에서 임의로 토큰을 버..
PyTorch #주피터 노트북 환경 세팅 파이토치 코랩 환경과 주피터 노트북 환경을 맞추기 1. 코랩 환경 확인 import torch import torchvision import torchtext print(f'torch version: {torch.__version__}') print(f'torchvision version: {torchvision.__version__}') print(f'torchtext version: {torchtext.__version__}') 2. 파이토치 설치 코랩 환경과 맞추기 위해 1.10.0 버전을 찾아 설치, GPU에 따른 쿠다 툴킷 버전은 개인별로 다를 수 있음 자신의 환경에 맞춰 관리자 권한의 cmd 창에서 실행 v1.10.0 Conda OSX # conda conda install pytorch==1..
PyTorch #다대일 RNN 딥 러닝을 이용한 텍스트 분류의 작업 및 구성 * 텍스트 분류는 다대일 문제에 속함 텍스트 분류 프로세스(다대일 RNN) 1. 데이터 분석 - 어떤 문제인지?, 지도 학습인지, 비지도 학습인지 - 데이터의 양은? - 데이터의 구성은? (텍스트의 언어, 라벨의 구성) 2. 하이퍼 파라미터 설정 - 배치 사이즈, 학습율, 에포크 3. 데이터 전처리 - 데이터 분할 - 워드 임베딩 - 단어 집합 생성 5. 모델 구현 - 모델 클래스 생성 - 모델 설계 - 옵티마이저 설정 - 모델 훈련 함수 생성 - 모델 평가 함수 생성 6. 모델 훈련 7. 모델 평가 IMDB 리뷰 감성 분류 1. 세팅 # 도구 임포트 import os import torch import torch.nn as nn import torch.nn..
PyTorch #다대다 RNN 다대다 RNN - 모든 시점의 입력에 대해서 모든 시점에 출력을 함 - 대표적으로 품사 태깅, 개체명 인식 등에 사용 1. 문자 단위 RNN(Char RNN) - RNN의 입출력 단위가 단어 레벨이 아닌 문자 레벨 - 도구 임포트 # 도구 임포트 import torch import torch.nn as nn import torch.optim as optim import numpy as np - 훈련 데이터 전처리 # sputnik!!를 입력 받으면 satellite 를 출력하는 RNN 구현 # 1. 입력 데이터와 레이블 데이터에 대해 문자 집합(vocabulary) 생성, 이때 문자 집합은 중복을 제거한 문자들의 집합 input_str = 'sputnik!!' label_str = 'satellite' ..
PyTorch #순환 신경망(RNN) 순환 신경망(Recurrent Neural Network, RNN) - RNN은 입력과 출력을 시퀀스 단위로 처리하는 시퀀스 모델임 1. 순환 신경망(RNN)의 특징 - RNN은 은닉층의 노드에서 활성화 함수를 통해 나온 결과값을 출력층 방향으로도 보내 다시 은닉층 노드의 다음 계산의 입력으로 보냄 - 셀(cell)은 RNN의 은닉층에서 활성화 함수를 통해 결과를 내보내는 역할을 하는 노드, 이전의 값을 기억하려고 하는 일종의 메모리 역할을 수행하므로 메모리 셀 또는 RNN 셀이라 표현 - 은닉층의 셀은 각각의 시점(time step)에서 바로 이전 시점의 셀에서 나온 값을 자신의 입력으로 사용 - 은닉 상태(hidden state)는 셀이 출력층 방향 또는 다음 시점의 자신에게 보내는 값 - RNN은 ..
PyTorch #원-핫 인코딩 #워드 임베딩 원-핫 인코딩 1. 원-핫 인코딩이란? 표현하고 싶은 단어의 인덱스에 1의 값, 나머지 인덱스에는 0을 부여하는 벡터 표현 방식이며, 이렇게 표현된 벡터를 원-핫 벡터라고 부름 2. 원-핫 인코딩 프로세스 3. 원-핫 인코딩의 한계 - 단어 개수가 늘어날 수록 벡터를 저장하기 위한 공간이 늘어남(저장 공간 및 연산 측면에서 비효율) - 단어의 유사도를 표현할 수 없음 4. 한국어 문장을 원-핫 벡터로 생성하는 예시 문장: 오늘 아침 커피는 맛있습니다. - 한국어 형태소 분석을 위한 konlpy 설치 # 형태소 분석을 위한 konlpy 설치 !pip install konlpy - 형태소 분석기로 문장 토큰화 # 형태소 분석기로 문장을 형태소 단위로 나눔(문장 토큰화) from konlpy.tag impor..

반응형