[Day 15] Sprint Review
2022. 2. 10. 19:28ㆍAI/Codestates
728x90
반응형
코딩부트캠프 | 코드스테이츠 - 비전공생도 개발자가 될 수 있습니다
코딩부트캠프를 찾는다면? 개발자로 커리어 전환을 위한 책임있는 코딩 교육 기관! 서비스 기획자, 그로스 마케터, 데이터 사이언티스트 등 다양한 전문 커리어에 도전하세요. 취업 성공의 후기
www.codestates.com
Summary
- Data Structure
- 1D : List
- 2D : Pandas의 DataFrame, 2차원 List, 2차원 Array, 2차원 Matrix 등
- Dimensionality Reduction : PCA, SVD
- 사이즈가 큰 데이터 셋을 사이즈가 작은 부분으로 나누는 작업 ( 일반적으로 시각화나 다른 모델링을 위해서 사용 )
- 스칼라, 벡터
- 스칼라 : 단일 숫자
- 벡터 : 크기와 방향을 가지는 값
- 벡터의 크기 : 모든 원소의 제곱을 더한 후 루트를 씌운 값
- 벡터의 내적 : 각 구성요소를 곱한 뒤 더한 값
- 매트릭스 ( Matrix ) : 행과 열을 통해 배치되어 있는 숫자들
- Dimesionality : 매트릭스의 행과 열의 숫자를 차원 이라 표현
- Determinant : 모든 정사각 매트릭스가 갖는 속성
-
import numpy as np np.linalg.det(m)
- 행렬식이 0인 경우 ( = 특이( Singular ) 매트릭스 ) : 역행렬이 존재하지 않는다.
-> 매트릭스의 행과 열이 선형의 의존관계가 있는 경우
-
- Inverse : 역행렬을 계산하는 방법은 여러가지가 있으면 행렬의 역수와 같이 표현 할 수 있다
-
import numpy as np np.linalg.inv(m)
-
- 분산 ( Variance ) : 데이터가 얼마나 퍼져 있는지
- 표준 편차 ( Standard Deviation ) : 분산 값에 루트를 씌여준 값
- 공분산 ( Covariance ) : 1개의 변수 값이 변화 할때 다른 변수가 어떠한 연관성을 나타내며 변하는지를 측정하는 것
- 상관 계수 ( Correlation Coefficient ) : 공분산의 Scale 조절
- 수직성 ( Orthogonality ) : 벡터 혹은 매트릭스가 서로 수직으로 있는 상태
- Span : 주어진 두 벡터의 ( 합이나 차와 같은 ) 조합으로 만들 수 있는 모든 가능한 벡터의 집합
- ex) 선, 평면 등
- Rank : 매트릭스의 열을 이루고 있는 벡터들로 만들 수 있는 ( Span ) 공간의 차원
- 고유벡터 ( Eigenvector ) : Transformation에 영향을 받지 않는 회전축, ( 혹은 벡터 ) 을 공간의 고유벡터 라고 부름.
- 고유값 ( Eigenvalue ) : 고유벡터가 변화하는 특정 스칼라 값
- Dimension Reduction
- PCA ( Principal Component Analysis )
- 고차원 데이터를 효과적으로 분석하기 위한 기법
- 낮은 차원으로 차원축소
- 고차원 데이터를 효과적으로 시각화 + Clustering
- 원래 고차원 데이터의 정보 ( 분산 ) 를 최대한 유지하는 벡터를 찾고, 해당 벡터에 대해 데이터를 ( Linear ) Projection
- PCA의 특징
- 데이터에 대해 독립적인 축을 찾는데 사용할 수 있음
- 데이터의 분포가 정규성을 띄지 않는 경우 적용이 어려움
-> 이 경우는 커널 PCA를 사용 가능 - 분류 / 예측 문제에 대해서 데이터의 라벨을 고려하지 않기 때문에 효과적 분리가 어려움
-> 이 경우는 PLS 사용 가능
- PCA ( Principal Component Analysis )
- Machine Learning ( 개요 )
- 지도 학습 ( Supervised Learning ) : Supervised Learning은 트레이닝 데이터에 라벨 ( 답 ) 이 있을 때 사용할 수 있음.
- 분류 ( Classificantion ) : 분류 알고리즘은 주어진 데이터의 카테고리 혹은 클래스 예측을 위해 사용
- 회귀 ( Prediction ) : 회귀 알고리즘은 Continuous 한 데이터를 바탕으로 결과를 예측하기 위해 사용
- 비지도 학습 ( Unsupervised Learning )
- 클러스터링 ( Clustering ) : 데이터의 연관된 Feature를 바탕으로 유사한 그룹을 생성
- 차원축소 ( Dimensionality Redution ) : 높은 차원을 갖는 데이터셋을 사용하여 Feature Selection / Feature Extraction 등을 통해 차원을 줄이는 방법
- 연관 규칙 학습 ( Association Rule Learning ) : 데이터셋의 Feature들의 관계를 발견하는 방법 ( Feature - Output이 아닌 Feature - Feature )
- 강화 학습 (Reinforcement Learning ) : 머신러닝의 한 형태로, 기계가 좋은 행동에 대해서는 보상, 그렇지 않은 행동에는 처벌 이라는 피드백을 통해서 행동에 대해 학습해 나가는 형태
- 지도 학습 ( Supervised Learning ) : Supervised Learning은 트레이닝 데이터에 라벨 ( 답 ) 이 있을 때 사용할 수 있음.
- Clustering : Unsupervised Learning Algorithm의 한 종류
- 목적 : Clustering이 대답할 수 있는 질문은 주어진 데이터들이 얼마나, 어떻게 유사한지 이다. 그러나 동시에 정답을 보장하지 않는다 는 이슈가 있어서 production의 수준 혹은 예측을 위한 모델링에 쓰이기보다는 EDA를 위한 방법으로써 많이 쓰임.
- 종류 :
- Hierarchical
- Agglomerative : 개별 포인트에서 시작 후 점점 크게 합쳐감.
- Divisive : 한 개의 큰 Cluster에서 시작 후 점점 작은 Cluster로 나눠감.
- Point Assignment : 시작시에 Cluster의 수를 접한 다음, 데이터들을 하나씩 Cluster에 배정시킴
- Hierarchical
- Similarity
- Euclidean -> 일반적으로 많이 쓰임
- Cosine
- Jaccard
- Edit Distance
- Etc.
- K - Mean Clustering
- 과정 : N - 차원의 데이터에 대해서
- K개의 랜덤한 데이터를 Cluster의 중심점으로 설정
- 해당 Cluster에 근접해 있는 데이터를 Cluster로 할당
- 변경된 Cluster에 대해서 중심점을 새로 계산
Cluster에 유의미한 변화가 없을 때까지 2-3을 반복
- 과정 : N - 차원의 데이터에 대해서
728x90
반응형
'AI > Codestates' 카테고리의 다른 글
[Day 22] Section 1 Review (0) | 2022.02.22 |
---|---|
[Day 16 ~ Day 21] Section 1 Project (0) | 2022.02.22 |
[Day 14] Clustering (0) | 2022.02.09 |
[Day 13] Demension Reduction (0) | 2022.02.08 |
[Day 12] Linear Algebra + (0) | 2022.02.07 |