SVD
·
머신러닝
SVD SVD 역시 PCA와 유사한 행렬 분해 기법을 이용한다. PCA의 경우 정방행렬 만을 고유벡터로 분해 할 수 있지만, SVD는 정방행렬 뿐만 아니라 행과 열의 크기가 다른 행렬 에도 적용할 수 있다. 일반 적으로 SVD는 m x n 크기의 행렬 A를 다음과 같이 분해하는 것을 의미한다. SVD는 특이값 분해로 불리며, 행렬 U와 V에 속한 벡터는 특이 벡터이며, 모든 특이 벡터는 서로 직교하는 성질을 가진다. ∑는 대각행렬이며, 행렬의 대각에 위치한 값만 0이 아니고 나머지 위치의 값은 모두 0이다. ∑가 위치한 0이 아닌 값이 바로 행렬 A의 특이값이다. 하지만 일반적으로 ∑ 의 비대각인 부분과 대각 원소중에 특이값이 0 인 부분도 모두 제거 하고 제거된 ∑에 대응되는 U와 V원소도 함께 제거해..
LDA (Linear Discriminant Analysis)
·
카테고리 없음
LDA (Linear Discriminant Analysis) LDA는 선형 판별 분석법으로 불리며, PCA와 매우 유사하다. LDA는 PCA와 유사하게 입력 데이터 셋을 저차원 공간에 투영해 차원을 축소하는 기법이지만, 중요한 차이는 LDA는 지도학습의 분류에서 사용하기 쉽도록 개별 클래스를 분별할 수 있는 기준을 최대한 유지하면서 결정 값 클래스를 최대한으로 분리 할 수 있는 축을 찾는다. LDA는 특정 공간상에서 클래스 분리를 최대화 하는 축을 찾기 위해 클래스 간 분산과 클래스 내부 분산의 비율을 최대화 하는 방식으로 차원을 축소한다. 즉 , 클래스 간 분산은 최대한 크게 가져가고, 클래스 내부의 분산은 최대한 작게 가져가는 방식이다. 다음 그림은 좋은 클래스 분리를 위해 클래스 간 분산이 크고 ..
차원축소 / PCA(주성분 분석)
·
머신러닝
차원 축소 차원 축소는 많은 피처로 구성된 다차원 데이터 셋의 차원을 축소해 새로운 차원의 데이터 셋을 생성하는 것이다. 일반적으로 차원이 증가할수록 데이터 포인트 간의 거리가 기하급수적으로 멀어지게 되고, 희소(sparse)한 구조를 가지게 된다. 수백 개 이상의 피처로 구성된 데이터 셋읭 경우 상대적으로 적은 차원에서 학습된 모델보다 에측 신뢰도가 떨어진다. 또한 피처가 많은 경우 개별 피처 간의 상관관계가 높을 가능성이 크다. 선형 회귀와 같은 선형 모델에서는 입력 변수 간의 상관관계가 높을 경우 이로 인한 다중 공선성 문제로 모델의 예측 성능이 떨어진다. 다중공선성 : 일부 변수가 다른 변수와 상관도가 높아, 데이터 분석 시 부정적인 영향을 미치는 현상 수십개 이상의 피처가 있는 데이터의 경우 이..
회귀 트리
·
머신러닝
5.8 회귀 트리 트리 기반의 회귀는 회귀 트리를 이용 하는 것입니다. 즉 ,회귀를 위한 트리를 생성하고 이를 기반으로 회귀 예측을 하는 것이다. 회귀 트리는 분류 트리와 크게 다르지 않지만, 리프 노드에서 예측 결정 값을 만드는 과정에서 차이가 있다. 분류 트리가 특정 클래스 레이블을 결정하는 것과 달리 회귀 트리는 리프 노드에 속한 데이터 값의 평균값을 구해 회귀 예측값을 계산한다. 매우 간단한 데이터 셋을 이용해 회귀 트리가 어떻게 동작하는 지살펴보자. 피처가 단 하나인 X 피처 데이터 셋과 결정값 Y가 2차원 평면상에 다음과 같이 있다고 가정하자. 이 데이터 셋의 X 피처를 트리 기반으로 분할하면 X값의 균일도를 반영한 지니 계수에 따라 루트 노드를 Split 0 기준으로 분할하고, 이렇게 분할된..
로지스틱 회귀
·
머신러닝
로지스틱 회귀 로지스틱 회귀는 선형 회귀 방식을 분류에 적용한 알고리즘이다. 즉, 로지스틱 회귀는 분류에 사용된다 . 로지스틱 회귀가 선형 회귀와 다른 점은 학습을 통해 선형함수의 회귀 최적선을 찾는 것이 아니라 시그모이드 함수 최적선을 찾고 이 시그모이드 함수의 반환 갑승 확률로 간주해 확률에 따라 분류를 결정 한다는 것이다. 로지스틱 회귀 실습 - 위스콘신 유방암 데이터 먼저 사이킷런의 load_breast_cancer()를 호출해 전체 데이터 셋을 생성 한다 . import pandas as pd import matplotlib.pyplot as plt %matplotlib inline from sklearn.datasets import load_breast_cancer from sklearn.li..
다항 회귀
·
머신러닝
파이썬 머신러닝 완벽 가이드 (권철민 저)을 요약정리했습니다. 다항회귀 회귀가 독립변수의 단항식이 아닌 2차. 3차방정식과 같은 다항식으로 표현되는 것을 다항 회귀 라고한다. 한 가지 주의 할 것은 다항 회귀를 비선형 회귀로 혼동하기 쉽지만, 다항 회귀는 선형회귀라는 점이다. 아쉽게도 사이킷런에는 다항 회귀를 위한 클래스는 존재 하지않고, 대신 다항 회귀 역시 선형회귀 이기 때문에 비선형 함수를 선형 모델에 적용시키는 방법을 사용해 구현 할 수 있다. 사이킷런의 Polynomial Features 클래스를 통해 피처를 Polynomial(다항식) 피처로 변환시킨다. 단항값 [x_1,x_2]를 2차 다항값 으로 변환 시켜 보자. from sklearn.preprocessing import Polynomia..
ariz1623
'머신러닝' 태그의 글 목록 (3 Page)