2025/04 6

추천 알고리즘 - TF-IDF, CountVectorizer 활용한 코사인 유사도 기반 텍스트 분석

본 자료는 다음 링크의 내용을 참고하였습니다.Reference : https://www.kaggle.com/code/ibtesama/getting-started-with-a-movie-recommendation-system영화 추천 시스템Demographic Filtering (인구통계학적 필터링)Content Based Filtering (컨텐츠 기반 필터링)Collaborative Filtering (협업 필터링)1. Demographic Filtering (인구통계학적 필터링)import pandas as pdimport numpy as np# 영화 data 로드df1 = pd.read_csv('../data/tmdb_5000_credits.csv')df2 = pd.read_csv('../data/..

Ai/SikitLearn 2025.04.03

05. (비지도학습)_K-Means

5. K-Means군집화, 유사한 특징을 가지는 데이터들을 그룹화데이터를 K개의 클러스터(그룹)로 군집화하는 알고리즘,각 데이터로부터 이들의 속한 클러스터의 중심점(Centroid)까지의 평균 거리를 계산import numpy as npimport matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/KMeansData.csv')dataset.head() hourscore07.337313.715523.435533.068943.3379비지도 학습이기 때문에 y 값 없이 X만 가져옴X = dataset.iloc[:, :].values# X = dataset.values# X = dataset.to_numpy() # 공식 홈페이지 ..

Ai/SikitLearn 2025.04.03

04. (지도학습)_Logistic Regression(로지스틱 회귀)

4. Logistic Regression(로지스틱 회귀)공부 시간에 따른 자격증 시험 합격 가능성주어진 데이터를 정해진 범주 (category) 에 따라 분류, 예측 결과가 숫자가 아닐 때선형 회귀 방식을 분류에 적용한 알고리즘,데이터가 어떤 범주에 속할 확률을 0 ~ 1 사이의 값으로 예측더 높은 범주에 속하는 쪽으로 분류범주 : True/False, Yes/No, 합격/불합격import numpy as npimport matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/LogisticRegressionData.csv')dataset.head() hourpass00.5011.2021.8032.4042.60X = datase..

Ai/SikitLearn 2025.04.03

03. (지도학습)_Polynomial Regression(다항 회귀)

3. Polynomial Regression(다항 회귀)공부 시간에 따른 시험 점수 (우등생)import numpy as npimport matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/PolynomialRegressionData.csv')dataset.head() hourscore00.2210.5420.8630.9441.26X = dataset.iloc[:, :-1].values # 공부시간 컬럼 데이터y = dataset.iloc[:, -1].values # 점수 컬럼 데이터X, y(array([[0.2], [0.5], [0.8], [0.9], [1.2], ..

Ai/SikitLearn 2025.04.03

01. (지도학습)_Linear Regression(선형 회귀)

1. Linear Regression(선형 회귀)공부 시간에 따른 시험 점수import matplotlib.pyplot as pltimport pandas as pddataset = pd.read_csv('../data/LinearRegressionData.csv') # 데이터 로드dataset.head() # 상위 5개 데이터 확인 hourscore00.51011.2821.81432.42642.622X = dataset.iloc[:, :-1].values # 처음부터 마지막 컬럼 직전까지의 데이터 (독립 변수 - 원인)y = dataset.iloc[:, -1].values # 마지막 컬럼 데이터 (종속 변수 - 결과)X, y(array([[ 0.5], [ 1.2], [ 1.8]..

Ai/SikitLearn 2025.04.03