본문 바로가기

반응형

분류 전체보기

(291)
RNN-딥러닝을 이용한 문서 분류 (1) 10.1 왜 RNN일까? 10.1.1 RNN의 이해 RNN(Recurrent Neural NEtworks): 순환 신경망, 시계열 데이터를 다루기 위한 모형 시계열 데이터: 어떤 변수의 값이 시간에 따라 변화하는 것 시계열 모형에서는 입력으로 일정 기간의 연속된 값을 사용 10.1.2 RNN이 문서 분류에 적합한 이유 사람이 문맥을 이해하는 것이 순차적으로 들으면서 이해하는 형태 RNN은 앞에서부터 순차적으로 미치는 영향을 계속 축적하는 모형임 RNN은 구조상 문맥을 파악하기에 좋은 모형 RNN은 딥러닝의 대표적인 문제인 경사소실 문제가 심각 개념적으로 보았을 때 RNN은 문맥의 파악을 잘 반영하며 텍스트 마이닝에 딥러닝을 적용하는 의미 깊은 출발점이 됨 10.1.3 RNN의 문서 분류 적용방향 각 단어..
인공신경망과 딥러닝의 이해 9.1 인공신경망의 이해 9.1.1 인공신경망의 구조와 구성요소 인공신경망은 인간의 뇌를 본따서 ㅁ나들어짐 뇌의 뉴런들은 수상돌기를 통해 다른 뉴런들로부터 입력신호를 받아들이고 변환과정을 수행한 후에 축삭돌기를 이용해 다른 뉴런에 전달 인공신경망에서는 노드가 뉴런과 같은 역할을 함 여러 노드에서 값을 받아 가중합을 계산하고 활성화 함수를 적용해서 값을 변환한 후 다음 노드로 전달 9.1.2 인공신경망에서의 학습 학습: 주어진 학습 데이터를 이용해 올바른 가중치를 찾아가는, 조정하는 과정 인공신경망은 입력값들에 대해 목표 출력값 혹은 실제 출력값을 매칭시킨 학습자료를 이용해서, 주어진 입력값에 대해 매칭되는 출력값을 예측할 수 있도록 가중치를 조정하는 지도학습 사용 9.1.3 손실함수의 이해 손실 함수: ..
감성 분석 (3) 8.3 학습을 통한 머신러닝 기반의 감성 분석 8.3.1 NLTK 영화 리뷰에 대한 머신러닝 기반 감성 분석 from sklearn.model_selection import train_test_split #sklearn에서 제공하는 split 함수를 사용 X_train, X_test, y_train, y_test = train_test_split(reviews, categories, test_size=0.2, random_state=7) print('Train set count: ', len(X_train)) print('Test set count: ', len(X_test)) """ Train set count: 1600 Test set count: 400 /usr/local/lib/python3.10..
감성 분석 (2) 8.2 감성 사전을 이용한 영화 리뷰 감성 분석 8.2.3 AFINN을 이용한 감성 분석 AFINN 어휘 목록은 덴마크의 핀 아럽 닐셀이 2009년부터 2011년까지 수작업으로 -5 에서 5 사이의 극성을 부여한 영어 단어들의 리스트 !pip install afinn from afinn import Afinn def sentiment_Afinn(docs): afn = Afinn(emoticons=True) results = [] for doc in docs: if afn.score(doc) > 0: results.append('pos') else: results.append('neg') return results print('#Afinn을 이용한 리뷰 감성분석의 정확도:', accuracy_score(c..
감성 분석 (1) 8.1 감성분석의 이해 감성분석(Sentiment Analysis): 텍스트에 나타난 의견, 평가, 태도와 같은 주관적인 정보를 분석하는 것 감성: 어떤 대상에 대한 주관적인 감정으로 긍정, 중립, 부정으로 나뉘어짐 8.1.1 어휘 기반의 감성 분석 감성이 표현될 수 있는 명사, 형용사, 동사를 대상으로 모든 단어에 대해 긍정 혹은 부정의 감성을 붙여서 감성 사전을 구축한 후에, 이를 기반으로 텍스트에 대한 감성 분석을 수행하는 방식 특별한 경우가 아니면 외부의 감성 사전을 이용 8.1.2 머신러닝 기반의 감성 분석 학습을 위한 데이터셋이 필요함 머신러닝 기반의 감성 분석은 학습에 사용한 말뭉치의 영향을 많이 받음 8.2 감성 사전을 이용한 영화 리뷰 감성 분석 8.2.1 NLTK 영화 리뷰 데이터 준비..
토픽 모델링으로 주제 찾기 (5) 7.4 토픽 트렌드로 시간에 따른 주제의 변화 알아내기 !pip install wget import os import wget import ssl data_dir = 'data' url = 'https://s3.ap-northeast-2.amazonaws.com/data10902/petition/petition_sampled.csv' ssl._create_default_https_context = ssl._create_unverified_context if not os.path.exists(data_dir): os.mkdir(data_dir) wget.download(url, data_dir) """ /usr/local/lib/python3.10/dist-packages/ipykernel/ipkernel..
토픽 모델링으로 주제 찾기 (4) 7.3 Gensim을 이용한 토픽 모델링 7.3.2 혼란도와 토픽 응집도를 이용한 최적값 선택 from gensim.models import CoherenceModel cm = CoherenceModel(model=model, corpus=corpus, coherence='u_mass') coherence = cm.get_coherence() print(coherence) """ /usr/local/lib/python3.10/dist-packages/ipykernel/ipkernel.py:283: DeprecationWarning: `should_run_async` will not call `transform_cell` automatically in the future. Please pass the re..
토픽 모델링으로 주제 찾기 (3) 7.3 Gensim을 이용한 토픽 모델링 7.3.1 Gensim 사용법과 시각화 Gensim: 토픽 모델링을 비롯해 의미적인 자연어 처리를 위한 다양한 라이브러리 !pip install --upgrade gensim import nltk nltk.download('stopwords') """ [nltk_data] Downloading package stopwords to /root/nltk_data... [nltk_data] Unzipping corpora/stopwords.zip. True """ # 필요한 library들을 import from nltk.corpus import stopwords from nltk.tokenize import RegexpTokenizer cachedStopWords =..
토픽 모델링으로 주제 찾기 (2) 7.2 사이킷런을 이용한 토픽 모델링 7.2.1 데이터 준비 from sklearn.datasets import fetch_20newsgroups categories = ['alt.atheism', 'talk.religion.misc', 'comp.graphics', 'sci.space', 'comp.sys.ibm.pc.hardware', 'sci.crypt'] #학습 데이터셋을 가져옴 newsgroups_train = fetch_20newsgroups(subset='train', categories=categories) print('#Train set size:', len(newsgroups_train.data)) print('#Selected categories:', newsgroups_train.t..
토픽 모델링으로 주제 찾기 (1) 7.1 토픽 모델링과 LDA의 이해 7.1.1 토픽 모델링이란? 텍스트 마이닝 기법 중에서 가장 많이 활용되는 기법 중 하나로, 다양한 문서 집합에 내재한 토픽, 주제를 파악할 때 사용하는 방법 구체적이고 명확하게 의미를 보여줄 수 있음 7.1.2 LDA 모형의 구조 LDA(Latent Dirichlet Allocation): 토픽 모델리에 가장 널리 쓰이는 기본적인 알고리즘 7.1.3 모형의 평가와 적절한 토픽 수의 결정 Perplexity: 혼란도, 혼잡도, 특정한 확률 모형이 실제로 관측되는 값을 얼마나 유사하게 예측해내는지를 평가할 때 사용, 값이 작을수록 좋음 토픽 응집도(coherence): 각 토픽에서 상위 비중을 차지하는 단어들이 의미적으로 유사한지를 나타내는 척도, 값이 클수록 좋음 토픽..

반응형