감정 분석(Sentiment Analysis)
·
Machine Learning/Embedding & NLP
1. 감정 분석이란?감정 분석은 텍스트에서 작성자의 감정 상태나 태도를 파악하고 분류하는 과정이다. 이는 텍스트 마이닝과 자연어 처리(NLP) 분야에 속하며, 기본적으로 긍정적(Positive), 부정적(Negative), 중립적(Neutral)의 세 가지 범주로 텍스트의 감정을 분류한다. 감정 분석은 소셜 미디어, 고객 서비스, 헬스케어 등 다양한 분야에서 활용되어, 사용자의 감정을 이해하고 그에 따른 전략을 수립하는 데 중요한 역할을 한다.2. 감정 분석의 주요 응용 분야소셜 미디어 감성 모니터링소셜 미디어 플랫폼에서 게시물을 분석하여 대중의 감정과 태도를 파악한다.특정 사건, 제품, 브랜드, 정치적 이슈 등에 대한 대중의 반응을 모니터링한다.마케팅의 효과를 분석하는 데 사용된다.고객 서비스 분석 및..
문장 임베딩
·
Machine Learning/Embedding & NLP
1. 단어와 문장 임베딩의 차이문장 임베딩은 단어 임베딩의 확장으로, 단어 단위가 아닌 문장 전체의 의미를 벡터 형태로 표현한다. 이는 전반적인 글의 이해, 문맥 파악, 글 생성 등 복잡한 자연어 처리 작업을 가능하게 한다.단어 임베딩과의 주된 차이점은, 문장 임베딩이 문장 전체의 의미를 포착하여 다루는 반면, 단어 임베딩은 개별 단어의 의미와 문맥적 유사성에 중점을 둔다.2. 문장 임베딩 방법원핫 인코딩원핫 인코딩 방식을 문장에 적용하면, 각 단어는 고유의 인덱스에 1을 부여받고, 나머지는 0으로 채워진 벡터로 표현된다. 예를 들어,"사과는 맛있다" → [1, 0, 1]"바나나는 맛있다" → [0, 1, 1]단어 임베딩의 평균단어 임베딩을 기반으로 문장의 평균 벡터를 생성하는 방법은 직관적이지만, 서로..
단어 임베딩
·
Machine Learning/Embedding & NLP
1. 원핫 인코딩(One-hot encoding)원핫 인코딩은 단어를 0과 1로 구성된 벡터로 표현하는 임베딩 방법이다. 예를 들어, 'dog', 'cat', 'apple'이라는 단어가 있다면,dog : [1, 0, 0]cat : [0, 1, 0]apple : [0, 0, 1]이렇게 각 단어는 고유한 위치에 1을 가지며 나머지는 0으로 채워진 벡터로 표현된다. 이 과정에서 문장은 먼저 단어로 분해되고, 각 고유 단어에는 독립된 인덱스가 부여된다.2. 학습 기반 임베딩분포 가설(Distribution Hypothesis)분포 가설에 따르면, 단어의 의미는 그 단어가 사용되는 문맥에 의해 결정된다. 예를 들어, "우리 엄마는 물을 매일 마신다"에서 '물' 자리에 올 수 있는 '사과 주스'나 '우유' 등은 '..
텍스트 마이닝과 데이터 마이닝
·
Machine Learning/Embedding & NLP
임베딩 (Embedding)1. 컴퓨터는 '사과'를 알까?컴퓨터는 '사과'나 'apple'을 직접 이해하지 못한다. 대신 언어는 특정 개념을 표현하기 위한 약속의 집합이므로, 컴퓨터에게 단어를 알려주기 위해 숫자의 형태로 변환해야 한다. 이 과정을 임베딩이라고 하며, 이는 컴퓨터가 단어를 인식하고 처리할 수 있게 한다.2. 임베딩이란?임베딩은 텍스트 데이터를 벡터로 변환하는 기술이다. 이는 텍스트 마이닝과 자연어 처리에서 기본적인 과정으로, 텍스트에서 유용한 정보를 추출해 분석하는 데 사용된다. 임베딩 과정은 다음과 같다:데이터 준비: 원문 데이터 또는 다른 소스로부터 데이터 수집전처리: 불용어, 오타 등의 데이터 제외임베딩: 목적에 맞는 임베딩 알고리즘 적용시각화: 필요시 임베딩 결과를 확인임베딩은 단..
Matrix Factorization 실습
·
Machine Learning/Recommendation
Matrix Factorization 실습¶ KNN과 동일한 ratings 데이터에 모델 기반 협업필터링 방법 중 하나인 Matrix Factorization을 적용합니다. In [1]: import pandas as pd import numpy as np np.random.seed(2021) 1. Data¶ 1.1 Data Load¶ 유저-영화 평점 데이터를 이용해 유저가 아직 평가하지 않은 영화를 추천하겠습니다. 데이터에서 유저 고유 아이디를 나타내는 userId, 영화 고유 아이디를 나타내는 movieId, 유저가 영화를 평가한 점수 rating 컬럼을 이용합니다. In [2]: ratings = pd.read_csv("ratings_small.csv") ratings = ratings[["user..
KNN 협업 필터링 실습
·
Machine Learning/Recommendation
KNN 협업 필터링 실습¶ 유저-영화 평점 데이터를 이용해 유저가 아직 평가하지 않은 영화를 추천을 해보겠습니다. In [1]: import pandas as pd import numpy as np np.random.seed(2021) 1. Data¶ 1.1 Data Load¶ 데이터에서 유저 고유 아이디를 나타내는 userId, 영화 고유 아이디를 나타내는 movieId, 유저가 영화를 평가한 점수 rating 컬럼을 이용합니다. In [2]: ratings = pd.read_csv("ratings_small.csv") ratings = ratings[["userId", "movieId", "rating"]] In [3]: ratings.head() Out[3]: userId movieId rating..
TF-IDF 실습
·
Machine Learning/Recommendation
영화 메타 데이터와 TF-IDF 실습¶영화 줄거리 데이터에 TF-IDF를 적용해 영화별 유사도를 계산해보겠습니다. In [1]: import pandas as pd import numpy as np import matplotlib.pyplot as plt np.random.seed(2021) 1. Data¶ 1.1 Data Load¶데이터에서 영화 제목을 나타내는 title과 줄거리 overview 컬럼을 이용합니다. In [2]: df = pd.read_csv("movies_metadata.csv") C:\Users\sjy99\AppData\Local\Temp\ipykernel_18724\1650877637.py:1: DtypeWarning: Columns (10) have mixed types. Sp..
유사도 함수 실습
·
Machine Learning/Recommendation
샘플 데이터와 샘플링 기법¶ In [2]: pip install -U imbalanced-learn Collecting imbalanced-learn Downloading imbalanced_learn-0.11.0-py3-none-any.whl (235 kB) -------------------------------------- 235.6/235.6 kB 2.4 MB/s eta 0:00:00 Requirement already satisfied: numpy>=1.17.3 in c:\users\sjy99\appdata\local\programs\python\python311\lib\site-packages (from imbalanced-learn) (1.23.5) Requirement already sat..
out-of-distribution detection
·
Machine Learning/Abnomaly Detection
샘플 데이터와 Out-of-Distribution 모델¶ In [1]: !pip install -U imbalanced-learn Requirement already satisfied: imbalanced-learn in /usr/local/lib/python3.7/dist-packages (0.8.0) Requirement already satisfied: numpy>=1.13.3 in /usr/local/lib/python3.7/dist-packages (from imbalanced-learn) (1.19.5) Requirement already satisfied: scikit-learn>=0.24 in /usr/local/lib/python3.7/dist-packages (from imbalance..
Sampling
·
Machine Learning/Abnomaly Detection
\ 샘플 데이터와 샘플링 기법¶ In [2]: pip install -U imbalanced-learn Collecting imbalanced-learn Downloading imbalanced_learn-0.11.0-py3-none-any.whl (235 kB) -------------------------------------- 235.6/235.6 kB 2.4 MB/s eta 0:00:00 Requirement already satisfied: numpy>=1.17.3 in c:\users\sjy99\appdata\local\programs\python\python311\lib\site-packages (from imbalanced-learn) (1.23.5) Requirement already s..