컴퓨터공학/Machine Learning Study
PCA Dimensionality Reduction이란? PCA란?
PCA(Principle Component Analysis)란? 데이터 세트를 기반으로 새로운 직교(Orthogonal) Feature 백터세트를 찾는 방법인데, 이 벡터는 Feature 백터나 Dimension 에서 최대로 확산될 수 있는 데이터를 의미한다. PCA는 데이터의 분산이나 퍼지는 정도에 따라 감소하는 순서로 Feature 백터의 등급을 매긴다. 데이터 포인터들(datapoints)은 첫번째 Feature 백터에서 최대 분산 값을 가진다. 그리고 가장 마지막 Feature 백터에서 최소 분산 값을 가진다. Feature 백터에서 데이터포인트들의 분산은 방향(Direction)의 정보를 측정이라고 할 수 있다. 과정 데이터 포인트들을 표준화한다. 주어진 데이터 포인트들로 부터 공분산(Covar..
Imbalanced Data in Classification, 분류에서 불안정한 데이터
도형 분류기 아래 그림과 같이 도형을 분류하는 Classifier가 있다고 생각해보자. Blue, Green의 도형이 있고 이 분류기는 Blue label을 분류할때 사용된다. 정확도(Accuracy)는 맞는 예측(Correct Predictions) / 전체 예측(Total Predicitons)식으로 구할 수 있다. 이 Classifier는 Blue Label을 예측할때 예측의 정확도를 항상 90%만큼 가지게 된다. 하지만 정확도(Accuracy)는 항상 훈련된 모델에 대한 올바른 통찰을 주지않는다. 모델과 관련된 용어들 Accuracy(정확도): 올바른 예측을 하는 것에 대한 %(Percentage) 전체 Precitions(예측들)에서 올바른 예측이 얼마나 나오는지에 대한 값. 전체 네트워크에 ..
P-value란? 유의 확률
통계적 가설 검정 Statistical Hypothesis Test(통계적 가설 검정)은 통계적 추론의 하나이다. 모집단 실제의 값이 얼마가 된다는 주장과 관련하여 표본의 정보를 사용하여 가설의 합당성 여부를 판정하는 과정이다. 간단하게 말하면 가설 검정 또는 가설 검증이라고 부르기도 한다. P-value(Probability Value), 유의 확률 통계적 가설 검정에서 유의 확률(Significance Probability, Asymptotic Significance) 또는 p-value(Probability Value)는 귀무 가설이 맞다고 가정할 때, 결과보다 극단적인 결과가 실제로 관측될 확률이다. 실험의 표본 공간에서 정의되는 확률 변수이며 0 ~ 1 사이의 값을 가진다. p-value는 귀무..
[Machine Learning] Bias-Variance Tradeoff
Bias 란? 편향이라고 부르며, Model Prediction 평균과 Ground Truth 사이의 에러를 뜻한다. Estimated Function 의 Bias 는 값들을 예측할 수 있는 근본적인 모델의 용량을 알려준다. Ground Truth 란? 학습하고자 하는 데이터의 원본 혹은 실제 값이며, 우리의 모델이 원하는 답으로 예측해주길 바라는 이상적인 데이터를 뜻한다. Variance 란? 한국말로 분산이라고 하며, 주어진 데이터 셋을 위한 모델 예측안의 평균 Variability 이다. Variability 는 가변적인 상태 또는 특성이라고 할 수 있다. Estimated function 의 Variance 는 함수가 데이터 셋 안에서 얼마나 많이 변화를 조절할 수 있는 가를 말해준다. Bias ..
[머신러닝 시스템 디자인 스터디 Part5] Performance and Capacity Considerations
Performance and Capacity Considerations (성능과 공간 고려사항) 머신러닝 시스템을 위한 복잡성 고려 훈련의 비교와 복잡성 평가 분석 대규모 시스템에서의 성능과 공간 고려 계층, 깔때기 기반 모델링 접근 머신 러닝 기반의 시스템에 관련 한 작업에서 목표는 일반적으로 성능과 공간 요구조건을 만족시키면서 메트릭스들 (참여율, 등)을 향상시키는 것이다. 두가지 머신러닝 시스템 구축 단계에서 중요한 성능과 공간의 토론이 나타난다. 훈련 시간: 얼마나 많은 훈련 데이터와 공간이 Predictor 를 구축하는데 필요한가? 평가 시간: Service level agreement (SLA) 이 무엇인가? 머신 러닝 모델 기술을 선택하는 것으로 그 시스템을 구축하는 과정 결정을 사용하고 훈..
[머신러닝 시스템 디자인 스터디 Part5]Offline model building and evaluation
Offline model building and evaluation 오프라인 모델을 구축하고 평가하기 데이터 생성 훈련 Training data generation 특성 공학 Feature Engineering 모델 훈련 Model Training 오프라인 평가 Offline Evaluation 데이터 생성 훈련 Training data generation 학습 Learning 에 있어 훈련은 음식과 같이 매우 중요하기 때문에 좋은 품질과 수량이 있어야한다. 사람이 라벨링한 데이터 Human labeled data 예시: 만약 운전 이미지의 분할 Segmentation 을 수행한다면, ML task 를 위해 데이터 라벨링이 필요하다. 라벨링을 하는 사람들은 Label box 같은 프로그램을 사용할 것이..
[머신러닝 시스템 디자인 스터디 Part4]Architecting for Scale
Architecting for Scale(확장을 위한 설계) 문제를 이해하고 정의하는 동안 수집된 요구사하은 구조를 설계하는데 도움이 된다. 문제 예시: 사용자들과 관련된 광고들을 표시해주는 머신러닝 시스템 설계 문제를 설정하는 동안 사용자들과 광고들이 매우 크고 증가하고 있다는 것을 질문하고 이해해야한다. 데이터가 증가하더라도 모든 사용자들에게 관련있는 광고들을 빠르게 찾을 수 있는 시스템이 필요하다. 이 시스템은 증가하는 요소들을 다루기 위해서 확장가능해야한다. 이러한 이유들 때문에 복잡한 머신러닝 모델을 설계하면 안된다. 그리고 시스템의 모든 광고들을 위해 모델을 사용해야한다. 만일, 복잡한 모델을 설계할 경우 많은 시간과 자원이 필수불가결할 것이다. 해결 방안: Funnel Approach(깔때..
[머신러닝 시스템 디자인 스터디 Part3]Defining metrics
Metrics for Online Testing 먼저, 오프라인에서 성능이 좋은 모델들을 선택하면 생산 환경에서 모델들을 테스트 할수 있는 온라인 메트릭스를 사용해야할 것이다. 또한 새롭게 생선된 모델을 효율적으로 사용할 수 있는 결정은 온라인 테스트의 성능에 따라 다르다. Component-wise 와 End-to-End 메트릭스 검색 순위 모델을 만든다고 가정해보자. Component-wise 는 NDCG와 같은 메트릭스를 의미하고, End-to-End 는 시스템에 새로운 모델을 적용하여 얼마나 좋은 성능을 찾을 수 있는지를 의미한다. 일반적으로 End-to-End 메트릭은 사용자의 참여율과 유지율에 관한 시나리오로 생각할 수 있다. 다른 예로, 다른 작업들에서 사용될 Machine Learning ..