Data Science/파이썬 머신러닝 완벽 가이드

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (51) - 텍스트 분류 실습 - 20 뉴스그룹 분류

텍스트 분류 실습 - 20 뉴스그룹 분류 사이킷런이 내부에 갖고 있는 예제 데이터인 20 뉴스그룹 데이터셋을 이용해 텍스트 분류를 적용해보자 → fetch_20newsgroups() 텍스트를 피처 벡터화로 변환하면 희소 행렬 형태가 된다. 이런 희소 행렬에 분류를 효과적으로 잘 처리할 수 있는 알고리즘은 로지스틱 회귀, 선형 서포트 벡터 머신, 나이브 베이즈 등이다. 텍스트 정규화 In [1]: from sklearn.datasets import fetch_20newsgroups news_data = fetch_20newsgroups(subset='all', random_state=156) In [2]: print(news_data.keys()) dict_keys(['data', 'filenames', ..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (50) Bag of Words - BOW

Bag of Words - BOW Bag of Words 모델은 문서가 가지는 모든 단어를 문맥이나 순서를 무시하고 일괄적으로 단어에 대해 빈도값을 부여해 피처값을 추출하는 모델이다. 다음과 같은 2개의 문장이 있다고 가정하고 이 문장을 BOW의 단어 수 기반으로 피처를 추출해보자 문장 1: 'My wife likes to watch baseball games and my daughter likes to watch baseball games too' 문장 2: 'My wife likes to play baseball' 문장 1과 문장 2에 있는 모든 단어에서 중복을 제거하고, 각 단어를 칼럼 형태로 나열한다. 그리고 각 단어에 고유의 인덱스를 다음과 같이 부여한다. 'and':0, 'baseball':1..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (49) 텍스트 사전 분비 작업(텍스트 전처리) - 텍스트 정규화

텍스트 사전 분비 작업(텍스트 전처리) - 텍스트 정규화 텍스트 정규화는 텍스트를 머신러닝 알고리즘이나 NLP 애플리케이션에 입력 데이터로 사용하기 위해 클렌징, 정제, 토큰화, 어근화 등의 다양한 사전 작업을 수행하는 것이다. 텍스트 정규화의 주요 작업을 NLTK 패키지를 이용해 실습해보자 클렌징 텍스트에서 분석에 오히려 방해가 되는 불필요한 문자, 기호 등을 사전에 제거하는 작업. 예를 들어, HTML, XML 태그나 특정 기호 등을 제거 텍스트 토큰화 문서에서 문장을 분리하는 문장 토큰화 문장의 마침표(.), 개행문자(\n) 등 문장의 마지막을 뜻하는 기호에 따라 분리하는 것이 일반적이다. 또한, 정규 표현식에 따른 문장 토큰화도 가능하다. 문장 토큰화는 각 문장이 가지는 sementic적인 의미가..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (48) 자연어처리(NLP, Natural Language Processing)와 텍스트 분석(Text Analytics)

자연어처리(NLP, Natural Language Processing)와 텍스트 분석(Text Analytics) NLP는 기계가 인간의 언어를 이해하고 해석하는데 더 중점을 두고 기술이 발전해왔다. 언어를 해석하기 위한 기계 번역 자동으로 질문을 해석하고 답해주는 질의응답 시스템 텍스트 분석을 향상하게 하는 기반 기술이라도고 볼 수 있다. 텍스트 마이닝(Text Mining)이라고도 불리는 텍스트 분석은 비정형 텍스트에서 의미 있는 정보를 추충하는 것에 좀 더 중점을 두고 발전해왔다. 머신러닝, 언어 이해, 통계 등을 활용해 모델을 수립하고 정보를 추출해 비즈니스 인텔리전스(BI)나 예측 분석 등의 분석 작업을 주로 수행한다. 텍스트 분류(Text Classification): 예를 들어, 특정 신문 ..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (47) 군집화 실습 - 고객 세그먼테이션(Customer Segmentation)

군집화 실습 - 고객 세그먼테이션(Customer Segmentation) 고객 세그먼테이션이란? 다양한 기준으로 고객을 분류하는 기법을 지칭한다. CRM(고객 관계 관리)나 마케팅의 중요 기반 요소다. 고객 분류가 사용되는 대부분의 비즈니스가 상품 판매에 중점을 두고 있기 때문에 어떤 상품을 얼마나 많은 비용을 써서 얼마나 자주 사용하는가에 기반한 정보로 분류하는 것이 보통이다. 고객 세그먼테이션의 주요 목표는 타겟 마케팅이다. 고객을 여러 특성에 맞게 세분화해서 그 유형에 따라 맞춤형 마케팅이나 서비스를 제공하는 것. 어떤 요소를 기반으로 군집화할 것인가를 결정하는 것이 중요한데, 이번엔 기본적 고객 분석 요소안 RFM 기법을 이용해보자 Recency: 가장 최근 상품 구입일에서 오늘까지의 기간 Fr..

Data Science/파이썬 머신러닝 완벽 가이드

[sklearn] (46) DBSCAN(밀도 기반 클러스터링), make_circles

DBSCAN(Density Based Spatial Clustering of Applications with Noise) DBSCAN 개요 DBSCAN은 밀도 기반 군집화의 대표적인 알고리즘이다. DBSCAN은 간단하고 직관적인 알고리즘으로 되어있지만 특정 공간 내에 데이터 밀도 차이에 기반하여 데이터의 분포가 기하학적으로 복잡한 데이터셋에도 효과적인 군집화가 가능하다. DBSCAN를 구성하는 가장 중요한 두 가지 파라미터: 입실론 주변 영역(epsilon): 개별 데이터를 중심으로 입실론 반경을 가지는 원형의 영역 최소 데이터 개수(min points): 개별 데이터의 입실론 주변 영역에 포함되는 타 데이터의 개수 입실론 주변 영역 내에 포함되는 최소 데이터 개수를 충족시키는가 아닌가에 따라 데이터 포..

얆생
'Data Science/파이썬 머신러닝 완벽 가이드' 카테고리의 글 목록