본문 바로가기

실습

[에어] 7가지 감정의 한국어 대화, 'KOBERT'로 다중 분류 모델 만들기 (파이썬/Colab) 에어 프로젝트 #2 7가지 감정의 한국어 대화, 'KOBERT'로 다중 분류 모델 만들기 사람에게는 다양한 감정이 있고, 얼굴 표정과 말로 그 사람의 감정을 추측할 수 있다. 또한 상대방의 얼굴 표정을 볼 수 없는 메세지 또는 SNS 채팅상에서도 문맥과 문장에 들어간 단어를 통해 어느정도 상대방의 감정을 예측할 수 있다. 그렇다면 컴퓨터와 같은 기계는 텍스트만 보고도 감정을 예측할 수 있을까? 요즘 심리 상담 챗봇 등 다양한 인공지능 대화 챗봇을 많이 접할 수 있는데, 사용해보면 인공지능이 텍스트 문장만 보고도 사람의 감정을 추측해 그에 따른 적절한 답변을 내놓는 것을 볼 수 있다. 이 인공지능은 어떻게 텍스트만 보고도 그 사람이 어떠한 감정인지 예측할 수 있는 것일까? 지난 에어 프로젝트에서는 'BER.. 더보기
<AE 이미지 생성 실습> 직접 코드 구현해보기 【7】AutoEncoder 기본 다지기 / 이미지 생성 실습으로 익히는 AE 이번에는 AE 모델을 만들어보자 try: %tensorflow_version 2.x" except Exception: pass import tensorflow as tf import numpy as np from tensorflow.keras import layers,models,datasets import matplotlib.pyplot as plt 모델을 작성하기 전 간단히 패키지를 선언한다. (x_train,_),(x_test,_) = datasets.mnist.load_data() 학습에 사용할 데이터셋은 Mnist이고 AE는 비지도 학습이므로 y의 값을 불러 올 필요가 없다. x_train = x_train.astype.. 더보기
LSTM을 이용한 자연어처리 (실습) 【5】RNN 기본 다지기 / 실습으로 익히는 순환신경망 LSTM을 이용한 자연어처리 (실습) 이번에는 RNN의 강점이라고 할 수 있는 자연어처리를 해보자 모델에 사용 할 데이터셋은 IMDB 데이터다. IMDB 사이트에 등록된 리뷰를 긍정인지 부정인지를 분류하는 문제다. from tensorflow.keras import models,layers,datasets from tensorflow.keras.preprocessing.sequence import pad_sequences 텐서플로우 2.0 생략하고 자연어처리 실습에 사용될 패키지들이다. (x_train,y_train),(x_test,y_test) = datasets.imdb.load_data(num_words=10000) IMDB 데이터셋을 호출하는.. 더보기
LSTM을 이용한 시계열 데이터 분석(실습) 【5】RNN 기본 다지기 / 실습으로 익히는 순환신경망 LSTM을 이용한 시계열 데이터 분석 (실습) 이전에 실습했던 내용은 SimpleRNN을 사용했고 이번에는 LSTM을 이용한 시계열 데이터 처리를 배워보자 데이터셋은 SimpleRNN 실습 때 사용했던 것을 재사용한다. data = np.sin( np.pi * np.arange(0, 100)* 2.025 ) + np.random.random(100) x = np.array([data[i+j] for i in range(len(data)-10) for j in range(10)]) x_train = x[:700].reshape(-1,10,1) x_test = x[700:].reshape(-1,10,1) y = np.array([data[i+10] fo.. 더보기
예제로 다시 한번 이해하는 RNN 구조 【5】RNN 기본 다지기 / 순환 신경망의 출현 예제로 다시 한번 이해하는 RNN 구조 RNN을 실습해보자 import numpy as np from matplotlib import pyplot as plt from tensorflow.keras import datasets, layers, models 실습에 사용되는 패키지들이다. 텐서플로우 2.0은 선언하는 것은 생략하고 넘파이, 맷플롯립, 케라스 이렇게 사용된다. 이번에는 데이터셋을 호출하지 않고 만들어서 사용한다. data = np.sin( np.pi * np.arange(0, 100)* 2.025 ) + np.random.random(100) x = np.array([data[i+j] for i in range(len(data)-10) for j.. 더보기