sklearn SVM(Support Vector Machine) 가이드
·
머신러닝/약간 덜매운맛
오늘은 Support Vector Machine (SVM)을 사용하는 데 있어서 알아두면 좋을 하이퍼파라미터들과 간단한 수식들을 정리해 본다. svm은 대게 분류모델의 시작점으로 사용하기 유용하며, sklearn에서 모델을 제공하기 때문에 사용하기 용이하다. 라이브러리 버전은 1.3을 기준으로 작성한다. 참고 1 : https://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html sklearn.svm.SVC Examples using sklearn.svm.SVC: Release Highlights for scikit-learn 0.24 Release Highlights for scikit-learn 0.22 Classifier comparis..
transformer 구현, pytorch 공식 코드로 알아보기
·
머신러닝/약간 덜매운맛
오늘은 지난 시간 Multi Head Attention의 pytorch 구현체를 까본 것에 이어 transformer를 분해해 보겠다. pytorch의 torch.nn.modules.transformer를 기준으로 한다. 참고 : https://pytorch.org/docs/stable/_modules/torch/nn/modules/transformer.html#Transformer torch.nn.modules.transformer — PyTorch 2.0 documentation Shortcuts pytorch.org 1. class Transformer nn.modules.transformer에서 import 하는 라이브러리들은 다음과 같다. import copy from typing import ..
pytorch 공식 구현체로 보는 transformer MultiheadAttention과 numpy로 구현하기
·
머신러닝/파이썬 구현 머신러닝
transformer(트랜스포머)가 사용되는 모델의 대표작은 작년 말에 나온 ChatGPT가 있다. 자연어 생성 모델의 대표작인 ChatGPT가 있다면 이미지 모델에선 Vision Tansformer(ViT)가 다양한 모델의 백본(backbone)으로 사용되고 있다. 트랜스포머가 쏘아올린 작은 공은 많은 분야에 큰 반향을 불러왔다. 오늘은 이 transformer를 pytorch 공식 코드를 보며 이해해 보고 빠르게 구현까지 해보자.   Optionalattentionattention 함수를 정의하면 정말 간단하게 나타난다. query Q, key K, value V 3개의 계산이 정말 한 큐에 끝난다. 수식이 간단하기 때문이다.   import numpy as npimport soft..
Exponential Family 개념 정리
·
머신러닝/아맞다
들어가며 오늘은 머피의 머신러닝 3. Probability의 3.4 The exponential family에 대한 내용을 기반으로 정리를 해보고자 한다. 사실 exponential family라 하면 ML을 배우고 있는 사람들에게는 모르는 줄 알지만 알고있는 개념일 가능성이 크다. 나또한 그랬기 때문이다. 오늘 할 일은 exponential family가 어떤 개념인지를 파악하고, 예시로 bernoulli 분포가 exponential family에 속함을 수식적으로 확인해 볼 것이다. 참고 : 머피의 머신러닝 0. [Optional] 사전 지식 convex 머신러닝에서는 일반적으로 특정 함수가 convex 함수임을 전제로 들고 문제를 풀기 시작한다. 머신러닝에서 모델은 학습하는 함수가 가장 '최적값'..
LDA(선형판별분석) 에 대한 완벽 개념
·
머신러닝/아맞다
오늘은 Linear Discriminant Analysis(LDA)에 대한 수식적 이해를 돕도록 하겠다. 참고 : 머피의 머신러닝 1, CPSC 540 0. optional - 사전 지식 0-1. prior, posterior, likelihood prior, posterior, likelihood에 대해 샘플 데이터 D, 학습하고 싶은 파라미터 θ를 기반으로 정리하면 다음과 같다. prior : P(θ) posterior : P(θ|D) likelihood : P(D|θ) posterior ~= prior * likelihood (by baysian) 이번엔 데이터가 피쳐 x와 라벨 y로 구성되어 있다 가정하자. 그러면 식이 다음과 같이 바뀔 수 있다. 아래와 같이 수식을 접근하게 되면 라벨 y의 클래..
MLE 완벽 개념
·
머신러닝/아맞다
[아 맞다] 시리즈 첫 번째. 앞으로는 갑자기 디테일이 생각이 안나는 머신러닝 개념들에 대해 풀어보는 시간을 가지고자 한다. 그 시작으로는 Maximum Likelihood Estimation(MLE)에 대한 내용이다. 들어가면서 우리가 ML에서 하고자 하는 것은 최적의 parameters θ를 찾기 위함이다. 따로 다룰지는 모르겠으나, prior, posterior, likelihood에 대해 식만 간단히 정리해 보자. prior : P(θ) posterior : P(θ|D) likelihood : P(D|θ) θ의 최적값을 찾기 위해서 사용되는 것 중 대표적인 것은 optimize function, 주로 loss function을 optimize 하는 것이다. 즉 모델을 피팅하기 위해서 우리가 하고자..
lu.na
'머신러닝' 카테고리의 글 목록 (4 Page)