본문 바로가기

Machine Learning21

[ML] PCA 개념 Principal Component Analysis - 데이터 집합 내에 존재하는 각 데이터의 차이를 가장 잘 나타내 주는 요소를 찾아 내는 방법 - 통계 데이터 분석(주성분찾기), 데이터 압축(차원감소), 노이즈 제거 등 다양한 분야에서 사용 PCA 개념 - 차원축소(dimensionality)와 변수추출(feature extraction)기법으로 널리 쓰이고 있는 주성분분석(PCA) - PCA는 데이터의 분산을 최대한 보존하면서 서로 직교하는 새 기저(축feature)를 찾아, 고차원 공간의 표본들을 선형 연관성이 없는 저차원 공간으로 변환하는 기법 - 변수추출(Feature Extraction)은 기존 변수를 조합해 새로운 변수를 만드는 기법 (기존의 변수선택(Feature Selection)과 구.. 2023. 2. 24.
[ML] 추천시스템_ 책 추천 알고리즘 - GoodBooks Data Download https://www.kaggle.com/datasets/zygmunt/goodbooks-10k import pandas as pd import numpy as np import os os.listdir('./goodBooks') books = pd.read_csv('./goodBooks/books.csv', encoding='ISO-8859-1') ratings = pd.read_csv('./goodBooks/ratings.csv', encoding='ISO-8859-1') book_tags = pd.read_csv('./goodBooks/book_tags.csv', encoding='ISO-8859-1') tags = pd.read_csv('./goodB.. 2023. 1. 12.
[ML] 추천시스템_ 장르 유사도를 고려한 영화 추천 알고리즘 최근접 이웃 협업 필터링 - 축적된 사용자 행동 데이터를 기반으로 사용자가 아직 평가하지 않은 아이템을 예측 평가 - 사용자 기반 : 당신과 비슷한 고객들이 다음 상품을 구매했다. - 아이템 기반 : 이 상품을 선택한 다른 고객들은 다음 상품도 구매했다. - 일반적으로는 사용자 기반보다는 아이템 기반 협업 필터링이 정확도가 더 높다. - 비슷한 영화를 좋아한다고 취향이 비슷하다고 판단하기 어렵거나, 매우 유명한 것의 경우 취향과 관계없이 관람하는 경우가 많고, 평점을 매기지 않은 경우가 많기 때문이다. 잠재 요인 협업 필터링 - 사용자-아이템 평점 행렬 데이터를 이용해서 "잠재요인"을 도출하는 것이다. - 주 요인과 아이템에 대한 잠재요인에 대해 행렬 분해를 하고 다시 행렬곱을 통해 아직 부여하지 않은 .. 2023. 1. 11.
[ML] GBM GBM - 부스팅 알고리즘은 여러개의 약한 학습기(week learner)를 순차적으로 학습-예측하면서 잘못 예측한 데이터에 가중치를 부여하여 오류를 개선해가는 방식 - GBM은 가중치를 업데이트할 때 경사 하강법(Gradient Descent)를 이용하는 것이 큰 차이 - 일반적으로 GBM의 성능 자체는 랜덤포레스트보다 좋다고 알려져 있으나, sklearn의 GBM은 속도가 아주 느리다. import pandas as pd import matplotlib.pyplot as plt url = "https://raw.githubusercontent.com/PinkWink/ML_tutorial/master/dataset/HAR_dataset/features.txt" feature_name_df = pd.re.. 2023. 1. 10.
[ML] Credit Card Fraud Detection STEP 01. DATA INFO 신용카드 부정사용 검출에 관한 논문의 예 - 신용카드와 같은 금융 데이터들은 구하기가 어렵다 - 금융 데이터들의 데이터는 다루기 쉽지 않다 - 그러나 지능화되어가는 현대 범죄에 맞춰 사전 이상 징후 검출 등 금융기관이 많은 노력을 기울이고 있다 - 이 데이터 역시 센서를 이용한 사람의 행동 과정 유추처럼 머신러닝의 이용 분야 중 하나이다 데이터 다운로드 - https://www.kaggle.com/datasets/mlg-ulb/creditcardfraud 데이터 개요 - 신용카드 사기 검출 분류 실습용 데이터 - 데이터에 class 컬럼이 사기유무를 의미한다 - class 컬럼의 불균형이 극심해서 전체 데이터의 약 0.172%가 1(사기 Fraud)을 가진다 데이터 특성.. 2023. 1. 10.
[ML] Ensemble _HAR data _ DecisionTree / RandomForest 01. 앙상블 기법 - 전통적으로 Voting, Bagging, Boosting, 스태깅 등으로 나눈다. - 여러개의 분류기를 생성하고 그 예측을 결합하여 정확한 최종 예측을 기대하는 기법이다. - 목표 : 다양한 분류기의 예측 결과를 결합함으로서 단일 분류기보다 신뢰성이 높은 예측 값을 얻는 것이다. * 현재 정형데이터를 대상으로 하는 분류기에서는 앙상블기법이 뛰어난 성과를 보여주고 있다. 1-1 앙상블 - Voting 기법 - 전체 데이터 셋을 가지고 각기 다른 아는 알고리즘을 다 돌린 다음에 다수결의 원칙, 즉 voting을 통해 결정하는 것 1-2 앙상블 - bagging 기법(bagging기법의 앙상블은 거의 대부분 DecisionTree 사용한다) 알고리즘이 똑같고, 데이터셋을 random하게.. 2023. 1. 9.
[ML] Cost Function_ Boston 집값 예측 from sklearn.datasets import load_boston boston = load_boston() print(boston.DESCR) Price와 RM(방의 수), LSTAT(저소득층 인구)가 높은 상관관계를 보인다. -> RM과 LSTAT와 PRICE의 관계에 대해 좀 더 관찰해본다. from sklearn.model_selection import train_test_split X = boston_pd.drop('PRICE', axis=1) y = boston_pd['PRICE'] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=13) from sklearn.linear_model .. 2023. 1. 7.
[ML] Cost Function _poly1d 학습 데이터 각각에 정답(주택가격)이 주어져 있으므로 지도학습(Supervised Learning)이며, 주택 가격을 연속된 값으로 예측하는 것이므로 회귀(Regression) 문제이다. 선형회귀 (Linear Regression) 문제의 정의 : 입력 변수(특징) x가 하나인 경우, 선형회귀 문제는 주어진 학습데이터와 가장 잘 맞는 Hypothesis함수 h를 찾는 문제가 된다. a = np.ploy1d[[1, 1]) b = np.ploy1d[[1, -1] ploy1d[[1, 1]) = x + 1 / ploy1d[[1, -1]) = x -1을 의미한다. 고로 a * b = (x+1)(x-1) = x^2 -1인데, 이는 poly1d([1, 0, -1])로 출력된다. x^이 1, x항이 없으니 0, 상수항.. 2023. 1. 6.
[ML] ROC Curve 정확도 Accuracy 전체 데이터 중 맞게 예측한 것의 비율 오차행렬 Confusion Matrix 정밀도 Precision 양성이라고 예측한 것 중에서 실제 양성의 비율 재현율 Recall = TPR True Positive Rate 참인 데이터들 중에서 참이라고 예측한 경우 Fall-Out = FPR False Positive Rate 실제 양성이 아닌데, 양성이라고 잘못 예측한 경우 TNR True Nagative Rate 실제 음성을 음성이라고 맟춘 경우 FNR False Nagative Rate 실제 양성을 음성이라고 잘못 예측한 경우 F1-Score Recall과 Precosion을 결합한 지표 둘이 한쪽으로 치우치지 않고 둘다 높은 값을 가질수록 높은 값 나옴 ROC Curve FRR이 변.. 2023. 1. 6.