| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- 오블완
- 스파르타코딩
- 내일배움카드
- 파이썬
- TiL
- 웹 스크랩핑
- R
- 스파르타 코딩
- 어쩌다 마케팅
- 회귀분석
- MySQL
- 실전 데이터 분석 프로젝트
- 미세먼지
- 텍스트 분석
- harkerrank
- 파이썬 철저 입문
- 프로젝트
- 파이썬 머신러닝 완벽 가이드
- 내일배움
- wil
- 스파르타
- SQL
- 파이썬 철저입문
- 티스토리챌린지
- 중회귀모형
- 파이썬 머신러닝 완벽가이드
- 내일배움캠프
- Cluster
- 프로그래머스
- hackerrank
- Today
- Total
목록Python (70)
OkBublewrap
: 비지도 학습의 일종으로 고객분류, 차원 축소, 이상치 탐지, 준지도학습, 이미지 검색, 이미지 분할으로 쓰인다. K-means 알고리즘 : 특정한 임의의 지점을 선택해 그 중심으로 가장 가까운 개체를 선택하는 알고리즘 장점 : 일반적인 군집화에서 가장 많이 활용되는 알고리즘, 알고리즘이 쉽고 간결 단점 : 거리 기반 알고리즘으로 속성의 개수가 많으면 정확도가 떨어진다, 반복횟수가 많을 수록 수행시간 느려진다, 몇 개의 군집을 선택할지 어렵다. # 거리기반이므로 scale from sklearn.preprocessing import scale from sklearn.cluster import KMeans import matplotlib.pyplot as plt import seaborn as sns i..
LDA : Linear Discriminant Analysis, 선형판별분석 pca와 차이점은 target이 필요한 지도학습이라는 것이다. from sklearn.discriminant_analysis import LinearDiscriminantAnalysis from sklearn.preprocessing import StandardScaler from sklearn.datasets import load_iris iris = load_iris() # LDA는 목표변수가 필요하다 lda = LinearDiscriminantAnalysis(n_components = 2) lda.fit(iris_scaled, iris.target) iris_lda = lda.transform(iris_scaled) pri..
개요 차원 축소 : feature 변수가 매우 많은 다차원 데이터 세트의 차원을 축소해서 새로운 차원의 데이터 세트를 만들기 차원 축소의 알고리즘에는 PCA, LDA, SVD, NMF이 있다. 피처가 많을 수록 개별 피처 간에 상관관계가 높을 가능성이 크다. 이는 다중 공선성 문제로 모델의 예측 성능이 저하가 된다. 차원 축소에는 피처 선택, 피처 추출로 나눌 수 있다. 피처 선택은 데이터 특징을 나타내는 변수만 선택하는 것이다. 피처 추출은 저차원으로 중요피처로 압축해서 추출하는 것이다. 차원축소를 자주 쓰는 곳은 이미지를 함축적 형태의 이미지 변환, 압축을 수행하거나, 텍스트 문서의 숨겨진 의미 추출하는데 사용이 된다. # iris data from sklearn.datasets import load..
지도학습 : 분류, 회귀 유방암데이터 import pandas as pd import numpy as np # 시각화 import matplotlib.pyplot as plt %matplotlib inline # 유방암 데이터 from sklearn.datasets import load_breast_cancer # 로지스틱회귀분석 모델 from sklearn.linear_model import LogisticRegression cancer = load_breast_cancer() type(cancer) # sklearn.utils.Bunch cancer.keys() # dict_keys(['data', 'target', 'frame', 'target_names', 'DESCR', 'feature_name..
Ridge, Lasso, ElasticNet 회귀분석을 할 때 mse을 줄이는 데 집중하면 모델이 복잡해지고 과대적합의 우려가 있다. 복잡도를 줄이기 위해서는 독립변수를 줄이거나, 회귀계수를 규제하는 방법이 있다. Ridge, Lasso, ElasticNet은 회귀계수를 규제하는 방법이다. Ridge의 비용함수(L2) $$ J(w) = MSE(w) + a\frac{1}{2}\sum_{i=1}^{n}w_{i}^{2} $$ 비용함수를 줄이기 위해서는 mse도 줄여야하고 회귀계수인 w의 크기도 줄여야한다. # Ridge from sklearn.linear_model import Ridge from sklearn.model_selection import cross_val_score boston = load_bo..
다항회귀 과대, 과소 적합 다항식 (polynomial) : 고차항이 포함된 함수 식 n = 100 np.random.seed(2022) X = 6 * np.random.rand(n, 1) -3 y = 2 * X **2 + X + 3 + np.random.randn(n, 1) * 1.5 plt.scatter(X, y) plt.show() from sklearn.proprocessing import PolynomialFeatrues poly = PolynomailFeatures(degree = 2, include_bias = False) X_poly = poly.fit_transform(X) 다항 함수가 필요할 때는 sklearn.preprocessing의 PolynomialFeatures 클래스를 쓰면 ..
경사하강법 회귀분석(1)에 나온 정규방정식은 한번의 계산으로 되지만 경사하강법은 반복적으로 수행을 해 최적의 답을 찾아나가는 방법이다. 학습률이 너무 작은 값이면 반복계산이 증가하므로 시간이 증가한다. 학습률이 너무 크면 값을 못찾을 수 있다. 경사하강법은 변수들의 scale의 값에 큰 영향을 끼치므로 정규화하는 과정이 중요하다. 배치 경사하강법을 사용한 선형 회귀 - 비용 함수의 그레이디언트 벡터 $$ \frac{\partial }{\partial w}MSE(w) = \frac{2}{N}X^{T}(Xw-y) $$ - 경사 하강법의 스텝 $$ w^{step} = w-\eta \frac{\partial }{\partial w}MSE(w) $$ eta : 학습률 # 데이터 np.random.seed(52) ..
경사하강법(Gradient Descnet) : 점진적인 하강으로 오류 값이 최소가 되는 W파라미터를 구하는 방식 DATA import numpy as np import matplotlib.pyplot as plt %matplotlib inline np.random.seed(0) # y = 4x + 6을 근사(w1=4, w0=6). 임의의 값은 노이즈를 위해 만듦. X = 2 * np.random.rand(100,1) y = 6 + 4 * X + np.random.randn(100, 1) # X, y 데이터 세트 산점도로 시각화 plt.scatter(X,y) plt.show() 정규방정식 $$ (X^{T}X)w = X^{T}y $$ $$ Y_{i}=w_{0}=W_{1}X_{i}+\epsilon _{i}, ..
결정트리 루트 노드 : 시작점 규칙노드 : 나눠지는 부분 리프 노드 : 결정된 클래스 값 브랜치/서브 트리 : 새로운 규칙 조건마다 규칙 노드 기반의 서브트리 생성 규칙에 따른 데이터의 균일도를 높이기 위해 측정하는 방법 1. 지니계수(Gini) $$ Gini=\sum_{i=1}^{n}p(i)(1-p(i)])=1-\sum_{i=1}^{3}p(i)^2 $$ 2. 엔트로피(Entropy) $$ Entropy=-\sum_{i=1}^{n}p(i)*log_{2}(p(i)) $$ 3. 정보이득(Information Gain) $$ IG = 1 - Entropy $$ Iris Data Set from sklearn.tree import DecisionTreeClassifier from sklearn.datasets ..
Data Set https://archive.ics.uci.edu/ml/datasets/Human+Activity+Recognition+Using+Smartphones UCI Machine Learning Repository: Human Activity Recognition Using Smartphones Data Set Human Activity Recognition Using Smartphones Data Set Download: Data Folder, Data Set Description Abstract: Human Activity Recognition database built from the recordings of 30 subjects performing activities of daily l..
