본문 바로가기

Study/ML 공부

(7)
Few shot learning? Meta Learning? %% 경고 %% 해당 포스팅은 수학적인 설명은 하지 않습니다. 같은 Few Shot Learning 일 지라도, Training strategy 전략에 따라 설명을 달라질 것이기 때문입니다 이번 포스팅에서는 포괄적인 설명만 다루고 있습니다. Reference What is Meta Learning By Cem Dilmegani Few Shot Learning 이란 By zzaebok님 Few Shot Learning 이란 By seujung님 Few Shot Learning 이란 By borealisai님 Few Shot Learning 이란 By sjinu님 Few Shot Learning 이란 BY 후이님 Few Shot Learning 이란 BY Deval Shah님 Few Shot Learning..
Bayesian Optimization(베이지안 최적화)란? Bayesian Optimization(베이지안 최적화) 베이지안 최적화 방법 핵심은 사전 정보를 최적 값 탐색에 반영하는 것 사전 정보란? 사전에 검색/입력된 파라미터와 사전에 정의된 목적함수의 결과 셋 검색/입력된 파라미터 : 입력값 x 사전에 정의된 목적 함수 : 미지의 목적함수 f(x), black-box function 따라서 사전 정보는 ( (x1, f(x1)) , (x2, f(x2))... (xn, f(xn))) 사전 정보를 생성한 후 위 같은 사전 정보를 바탕으로 Surrogate Model을 생성함 Surrogate Model 대리/대체 모델이라고도 불림 기존 입력 값을 바탕으로 미지 함수 f(x) 형태에 대한 확률적인 추정을 하는 모델 Surrogate Model이 미지 함수에 대한 확..
[Study] SVD vs TruncatedSVD 차이점 SVD는 특이값을 분해하는 것을 말함 특이값이란? 쉽게 말해, 고윳값에 루트를 씌운 값 교유 값과 고유 벡터? 정방 행렬 A를 선형 변환할 경우, 선형 변환 A에 의한 변환 결과가 자기 자신의 상수 배가 되는 0이 아닌 벡터를 고유 벡터라 하며, 상수에 해당되는 값을 고유 값이라고 함 다시 말해, 정방 행렬 A에 대해서 Aν=λν를 만족하는 0이 아닌 열 벡터를 고유 벡터, 상수 λ를 고유 값이라고 함 정방 행렬(Square matrix) 같은 수의 행과 열을 가지는 행렬 n*n 행렬은 차수(order)가 n인 정방 행렬이라고도 하며, n차 정방 행렬이라고도 함 선형 변환과 추가 설명 선현 변환은 벡터에 사칙연산을 해주는 개념 위의 설명을 예시로, Aν라는 것은 '열벡터 ν에 선현 변환 A를 했음'이라고..
[Study] AdaBoosting vs GradientBoosting 차이점 사이킷런에서는 앙상블 모델인 AdaBoostingClassifier와 GradientBoostingClassifier를 지원합니다 본 포스팅은 둘의 차이점이 궁금해 공부하며 정리한 포스팅이며, 다른 훌륭한 분들의 블로그를 많이 참조했습니다. Ensemble Model 앙상블 방식에는 Bagging, Boosting, Stacking 등이 있는데 그중 AdaBoosting과 GradientBoosting은 Boosting 방식입니다. AdaBoostingClassifier vs GradientBoosting 차이점 한줄 요약 AdaBoosting은 Stump로 구성되어 있고 하나의 Stump에서 발생한 Error가 다음 Stump에 영향을 주며 서로 순차적으로 계속 연결되어 최종 결과를 도출함 반면에 Gr..
[Study] ExtraTreesClassifier vs RandomForestClassifier 차이점 사이킷런에서는 Tree 기반 앙상블 모델인 ExtraTreesClassifier와 RandomForestClassifier를 제공합니다. 앙상블 모델 앙상블 방식에는 Bagging, Boosting, Stacking 등이 있는데 RandomForestClassifier는 Bagging 방식입니다. ExtraTreesClassifier vs RandomForestClassifier 첫 번째 차이점을 알기 전 알아야 할 지식 1. Bagging Bagging이란 Bootstrap aggregating의 줄임말입니다. Bootstrap은 중복을 허용한 랜덤 샘플링을 뜻합니다. 즉, 복원 추출로 생성된 샘플링 데이터셋입니다. aggregating의 뜻은 결합입니다. 따라서 Bagging 방식이란 중복을 허용해서..
원핫인코더 fit은 한번만 할 껀데? (feat.check_is_fitted, try-except , if - else) 사이킷런의 OneHotEncoder.fit을 예외처리와 조건문을 통해 한번만 한다. 코드는 블로그 코드 블록에서 날 코딩한 것, 불편해도 넘어가자 일단 원핫인코딩을 하기 전에 '머신러닝 모델을 사용한 학습부터 예측까지'라고 하면 아래와 같은 일련의 과정이 필요하다고 해보자 Data load Data preprocessing Model.fit Model.predict 1번부터 4번까지의 파이프라인을 클래스로 작성할 것이다. 아래와 같이 대충 HGomForest 모델의 메서드를 정의했다. Class HGomForest: def __init__(self): pass def dataload(self, data): pass def preprocessing(self, data): pass def fit(self, ..
워드 임베딩과 텍스트 벡터화 차이점 텍스트 벡터화와 워드 임베딩 차이점 워드 임베딩과 텍스트 벡터화의 차이점보다 횟수 기반 임베딩과 예측 기반 임베딩 차이점으로 봐주시면 감사하겠습니다. 텍스트 벡터화는 단순히 단어가 출현한 빈도를 고려하는 방법이고 워드 임베딩은 단어들 간의 의미를 고려해 예측하면서 단어를 벡터로 만드는 차이점을 가지고 있습니다. 텍스트 벡터화 Vectorization? 텍스트를 수치형 텐서로 변환하는 과정 자연어 처리(NLP : Natural Language Processing)에서 주로 사용 특징을 추출하는 방법 중 하나임 입력 데이터를 원시 형식(텍스트)에서 머신럴닝 모델이 지원하는 형식인 실수 벡터로 변환하는 방식에 대한 전문 용어 텍스트 벡터화 방식 희소 표현 방식(Sparse Representation) 밀집 표..