목록Artificial Intelligence/[파이썬 머신러닝 완벽가이드] (18)
AI 공부 저장소
In [1]: # 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. # 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. In [2]: # 한글 NLP가 어려운 이유 # 1) 띄어쓰기를 틀리는 경우가 자주 발생 # 2) 다양한 형태의 조사 존재 In [3]: # 형태소 : 단어로서 의미를 가지는 최소 단위 # 형태소 분석 : 말뭉치를 형태소 어근 단위로 쪼개고, 각 형태소에 품사태깅을 부착하는 작업 In [4]: import pandas as pd # 데이터 출처 : https://github.com/e9t/nsmc # 사용할 txt파일은 탭(\t)으로 컬럼이 구분되므로 sep를 '\t'로 설정 train_df..

In [1]: # 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. # 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. In [41]: # 코사인 유사도 # 벡터와 벡터 간의 유사도를 비교할 때, 벡터의 크기보다는 벡터의 상호 방향성 유사에 기반 In [2]: # 코사인 유사도가 문서의 유사도 비교에 가장 많이 사용되는 이유 # 문서를 피처벡터화 하면, 차원이 매우 많은 희소 행렬이 되기 쉽다. # 이때 문서와 문서 벡터간의 크기에 기반한 유사도 지표(유클리드 거리)는 # 정확도가 떨어지기 쉽다. # 또한, 문서가 매우 긴 경우 단어의 빈도수도 더 많을 것이기에 # 이러한 빈도수 기반의 유사도 비교는 공정하지 않다. # 예..
In [1]: # 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. # 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. In [2]: # 문서 군집화(Document Clustering)은 비슷한 텍스트 구성의 문서를 군집화 하는 것 # 텍스트 분류 기반의 문서 분류는 결정 카테고리 값을 가진 학습 데이터가 필요 # 그러나, 문서 군집화는 학습 데이터가 필요 없는 비지도학습 기반으로 동작 In [3]: # 사용할 데이터셋 # https://archive.ics.uci.edu/ml/datasets/Opinosis+Opinion+%26frasl%3B+Review # 51개의 텍스트 파일로 구성, 각 파일은 Tripadvisor..
In [1]: # - 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. # 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. In [2]: # Topic Modeling : 숨어있는 중요 주제를 효과적으로 찾아낼 수 있는 모델을 만드는 과정 # 중심단어를 함축적으로 추출 In [3]: # Topic Modeling에 자주 사용되는 기법은 LSA(Latent Sematic Analysis)와 LDA(Latent Dirichlet Allocation) # 이번 챕터에선 LDA를 이용할 것 In [4]: # 20 뉴스그룹은 20가지의 주제를 가진 뉴스 그룹의 데이터를 가짐 # 이 중 모토사이클, 야구, 그래픽스, 윈도우, 중동, ..
In [ ]: # - 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. # 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. In [1]: # 지도학습 기반 감정분석 In [2]: import pandas as pd review_df = pd.read_csv('./labeledTrainData.tsv', header = 0, sep = "\t", quoting = 3) # tsv는 탭으로 컬럼이 분리되었기에 sep='\t' review_df.head(3) Out[2]: id sentiment review 0 "5814_8" 1 "With all this stuff going down at the ..
- 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. In [1]: from sklearn.datasets import fetch_20newsgroups import pandas as pd # news_data는 파이썬 딕셔너리 형태와 비슷한 Bunch 객체 news_data = fetch_20newsgroups(subset = 'all', random_state = 156) # subset을 통해 갖고오고자 하는 데이터를 선정해 가져올 수 있음. # 예를 들어, subset = 'test'라면 미리 분류된 test set을 가져옴 print('target 클래스의 값과 분포..

- 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. [1] Bag Of Words란? Bag Of Words 모델은 문서가 가지는 모든 단어(Words)를 문맥이나 순서를 무시하고 일괄적으로 단어에 대해 빈도 값을 부여해 피처 값을 추출하는 모델입니다. 예를 들어 보겠습니다. 문장1 : My wife likes to watch baseball games and my daughter likes to watch baseball games too 문장2 : My wife likes to play baseball 이라는 두 문장에 대해 BOW를 수행해보죠. ① 문장1과 문장2에 있..

- 본 글은 파이썬 머신러닝 완벽 가이드 (권철민 지음)을 공부하며 내용을 추가한 정리글입니다. 개인 공부를 위해 만들었으며, 만약 문제가 발생할 시 글을 비공개로 전환함을 알립니다. 텍스트 정규화 작업은 크게 다음과 같이 분류할 수 있습니다. ㆍ클렌징(Cleansing) ㆍ토큰화(Tokenization) ㆍ필터링 / 스톱 워드 제거 / 철자 수정 ㆍStemming ㆍLemmatization [1] 텍스트 토큰화 토큰화는 문장 토큰화와 단어 토큰화로 나눌 수 있습니다. 토큰화란 '더 작은 단위로 나누는 것' 정도로 이해하면 되는데요, 문장 토큰화란 전체 텍스트 문서에서 문장 단위로 나누는 것, 단어 토큰화란 문장에서 단어 단위로 나누는 것이라고 생각하면 됩니다. ① 문장 토큰화 문장 토큰화는 문장의 마침..