노트/Python : 프로그래밍(69)
-
[신경망] LSTM 모델을 이용한 리뷰 요약하기
데이터 코드 import numpy as np import pandas as pd import re from keras.preprocessing.text import Tokenizer from keras.preprocessing.sequence import pad_sequences from bs4 import BeautifulSoup from nltk.corpus import stopwords import matplotlib.pyplot as plt path = "C:\\Users\\student\\Desktop\\DY\\★ 데이터\\402. word2vec\\" data=pd.read_csv(path + "Reviews.csv", nrows=60000) print(len(data)) >>> 60000 ..
2020.05.20 -
[머신러닝] 랜덤포레스트를 이용한 은행 마케팅 (deposit 예측)
import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns from sklearn.model_selection import train_test_split from sklearn.tree import export_graphviz from sklearn import tree from sklearn import metrics %matplotlib inline 데이터 # UCI Bank Marketing data set archive.ics.uci.edu/ml/datasets.php path = "C:\\Users\\student\\Desktop\\DY\\★ 데이터\\307.bankmarketing\\" ..
2020.05.19 -
[머신러닝] 결정트리와 랜덤포레스트를 이용한 분류 기법
참고 문헌 : [파이썬 라이브러리를 활용한 머신러닝] p103~ p121 1. 결정트리 (DecisionTreeClassifier) * 만들어진 모델을 쉽게 시각화할 수 있어 비전문가도 이해하기 쉬움 * 특성의 정규화나 표준화 같은 전처리 과정이 필요없음 * 과대적합이 되는 경향이 있음 유방암 분류 예제 import sklearn from sklearn import datasets from sklearn.tree import DecisionTreeClassifier from sklearn.model_selection import train_test_split cancer = sklearn.datasets.load_breast_cancer() X_train, X_test , y_train, y_test =..
2020.05.19 -
[자연어처리] LSTM을 이용한 챗봇(chatbot) 만들기
학습 데이터 import pandas as pd path = "C:\\Users\\student\\Desktop\\chatbot\\01.data\\" chatbotData=pd.read_csv(path+"ChatData.csv") question, answer = list(chatbotData["Q"]) , list(chatbotData["A"]) print(len(question)) print(len(answer)) >>> 11823 11823 for i in range(10): print("질문:" + question[i]) print("답변:" + answer[i]) print(" ") >>> 질문:12시 땡! 답변:하루가 또 가네요. 질문:1지망 학교 떨어졌어 답변:위로해 드립니다. 질문:3박4일..
2020.05.18 -
[자연어처리] 문장 생성하기 (text generation)
# 텍스트 제너레이션 from keras.preprocessing.text import Tokenizer from keras.preprocessing.sequence import pad_sequences text="""과수원에 있는 배가 맛있다 그의 배는 많이 나왔다 가는 길에 배를 탔고 오는 길에도 배를 탔다\n""" 텍스트 인코딩 tok = Tokenizer() tok.fit_on_texts([text]) vocSize=len(tok.word_index)+1 seqs = list() for line in text.split("\n"): encoded = tok.texts_to_sequences([line])[0] for i in range(1, len(encoded)): seq = encoded[:i..
2020.05.18 -
[자연어처리] word2vec 로 워드임베딩 하기
* 원핫인코더 vs 워드임베딩 원핫인코더 -> 멀캠 => [0,1,,0,0,0,0,0,] 1000차원 워드임베딩 -> 멀캠 => [0.3,-1.5] 100차원 * word2vec 알고리즘이 구현된 사이트 https://word2vec.kr/search/ Korean Word2Vec ABOUT 이곳은 단어의 효율적인 의미 추정 기법(Word2Vec 알고리즘)을 우리말에 적용해 본 실험 공간입니다. Word2Vec 알고리즘은 인공 신경망을 생성해 각각의 한국어 형태소를 1,000차원의 벡터 스페이 word2vec.kr * Word2vec Skip-gram : 중간 단어들로 부터 주변 단어를 예측 CBOW : 주변 단어들로 부터 중간 단어를 예측 모델 생성 코드 import re from lxml import..
2020.05.18