728x90

09_DL(Deep_Learning) 39

26_임베딩

임베딩(embedding) ● 컴퓨터는 자연어를 직접 처리할 수 없기 때문에 자연어를 숫자나 벡터 형태로 변환하는 과정이 필요● 단어나 문장을 수치화해 벡터 공간으로 표현하는 과정을 의미● 딥러닝의 입력값으로 많이 사용됨● 임베딩에는 문법적인 정보가 포함되어 임베딩 품질이 좋다면 단순한 모델로도 좋은 결과를 얻을 수 있음 단어 임베딩 ● 말뭉치에서 각각의 단어를 벡터로 변환하는 기법● 의미와 문법적 정보를 지니고 있으며, 단어를 표현하는 방법에 따라 다양한 모델이 존재 01. 원-핫 인코딩(one-hot encoding) ● 단어를 숫자 벡터로 변환하는 가장 기본적인 방법● 요소들 중 단 하나의 값만 1이고, 나머지 요솟값은 0인 인코딩을 의미● 원-핫 인코딩으로 나온 결과를 원-핫 벡터라고 ..

25_토크나이징

토크나이징(전처리의 시작) ● 토큰(token) ■ 일정한 의미가 있는 가장 작은 단어들 ● 토크나이징 ■ 주어진 문장에서 토큰 단위로 정보를 나누는 작업 ■ 문장 형태의 데이터를 처리하기 위해 제일 처음 수행하는 기본적인 작업 ■ 텍스트 전처리 과정에서 사용됨 ■ 토크나이징을 어떻게 하느냐에 따라 성능 차이가 날 수 있음 ● 한국어 토크나이징에는 KoNLPy가 많이 사용됨 01. Kkma ● 서울대학교 IDS(Intelligent Data System) 연구실에서 자연어 처리를 위해 개발한 한국어 형태소 분석기● 다른 형태소 분석기에 비해 속도가 느리지만 지원하는 품사 태그가 다양해서 속도가 느리더라도 정확한 품사 정보가 필요할 때 사용..

23_전이학습(transfer learning)_pytorch

pytorch를 이용한 전이학습(transfer learning) 01. 전이학습 ● 일반적으로 합성곱 신경망 기반의 딥러닝 모델을 제대로 훈련시키려면 많은 양의 데이터가 필요함● 하지만 큰 데이터셋을 확보하고 훈련시키는 데에 많은 돈과 시간이 필요● 이러한 문제를 해결하기 위해 전이 학습을 이용● 전이 학습 ■ 아주 큰 데이터셋을 써서 훈련된 모델의 가중치를 가져와 우리가 해결하려는 문제에 맞게 보정해서 사용하는 것 ○ 이 때 아주 큰 데이터셋을 사용하여 훈련된 모델을 사전 학습 모델(사전 훈련된 모델)이라고 함 ■ 전이 학습을 이용하면 비교적 적은 수의 데이터를 가지고도 원하는 과제를 해결할 수 있음 02. 특성 추출 기법(feature ext..

22_이미지 분류 신경망

이미지 분류 신경망 AlexNet 영상 데이터베이스를 기반으로 한 화상 인식 대회 "ILSVRC 2012"에서 우승한 CNN 구조AlexNet은 합성곱층 다섯 개와 완전연결층 세 개로 구성되어 있으며, 맨 마지막 완전 연결층은 카테고리 1000개를 분류하기 위해 소프트맥스 활성화 함수를 사용LeNet5와 크게 다르지 않지만 GPU 두 개를 기반으로 한 병렬 구조인 점이 가장 큰 차이점AlexNet의 차별점ReLU의 사용이전까지는 tanh 함수를 사용tanh에 비해 6배 빠른 속도overlapping pooling풀링 커널이 움직이는 보폭인 stride를 커널 사이즈보다 작게 하는 방법Local Response Normalization(LRN)ReLU를 사용하여 양수값을 그대로 전달하면 너무 큰 값이 전달..

21_Fashion_MNIST(파이토치)

Fashion_MNIST(파이토치) import torchfrom torch.utils import dataimport torch.nn as nn # 신경망 모델from torch import optim # optimizer 모듈import torch.nn.functional as F # nn 모듈의 함수 버전from torchvision import datasets, transforms # 패션 MNIST 데이터 # 상수(바뀌지 않는 수)는 대문자 변수로 지정하는 경우가 많음USE_CUDA = torch.cuda.is_available()DEVICE = torch.device("cuda" if USE_CUDA else "cpu") DEVICEdevice(type='cpu') # 이미지를 텐서로 변경tr..

20_파이토치_기초예제(car_evaluation)

car_evaluation 데이터셋컬럼 구성price : 자동차 가격maint : 자동차 유지 비용doors : 자동차 문 개수persons : 수용 인원lug_capacity : 수하물 용량safety : 안전성output(종속 변수): 차 상태아래의 범주 중 하나의 값을 가짐unacc : 허용 불가능한 수준acc : 허용 가능한 수준good : 양호vgood : 매우 좋은(very good) import torchimport torch.nn as nnimport numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns import osos.environ["KMP_DUPLICATE_LIB_OK"] = "True"..

19_파이토치_기초문법

파이토치_기초문법 텐서파이토치는 텐서로 시작해서 텐서로 끝남텐서를 잘 다룰 수 있어야 신경망에서 데이터 입력과 출력을 제어할 수 있음 # 파이토치 설치# https://pytorch.org/# Stable(2.7.0)>Windows>Pip>Python>CPU# pip3 install torch torchvision torchaudio import torch 텐서 생성 및 변환텐서는 파이토치의 가장 기본이 되는 데이터 구조numpy의 다차원배열과 비슷하며 GPU에서도 연산 가능# 2차원 텐서 생성torch.tensor([[1, 2], [3, 4]])tensor([[1, 2], [3, 4]]) # gpu가 있다면# torch.tensor([[1, 2], [3, 4]], device = "cud..

18_konlpy.Okt를 활용한 감성분석(네이버 영화 리뷰)

konlpy.Okt를 활용한 감성분석(네이버 영화 리뷰) from konlpy.tag import Okt, Kkma # 성능이 좋은 한국어 형태소분석기(별도의 설치 과정이 필요함)import pandas as pdfrom tensorflow.keras.preprocessing.text import Tokenizerfrom tensorflow import kerasimport numpy as npimport matplotlib.pyplot as pltfrom tensorflow.keras.preprocessing.sequence import pad_sequencesfrom sklearn.model_selection import train_test_splitimport re 형태소 분석기okt = Okt(..

728x90