본문 바로가기

Study51

비용함수(Cost function)와 경사하강법(Gradient Descent) IndexCost function 인공지능 모델을 '학습'할때는 모델이 무엇이든 학습목적은 똑같다 : "목적함수(Objective function)을 최적화하는 Parameter를 찾는것" 이다. 그리고 이것은 일반적인 경우 비용함수(Cost function)을 최소화 하는 것이다. Cost는 Output(=실제값)과 Target(=예측값)간에 차이를 의미한다. 아래 그림은 분류문제의 예시이기 때문에 output의 값이 여러개이고 각output마다 cost를 따로 계산하여 더하는 모습이다.Cost function으로 주로 쓰이는 함수는 회귀문제의 경우 MSE,MAE,RMSE. 분류문제에서는 Cross-Entropy 손실함수가 주로 쓰인다.Cross-Entropy 함수는 아래 수식과 같이 실제값(y)=1 .. 2023. 6. 29.
Deep Neural Network, Perceptron, MLP Index딥러닝은 머신러닝에 속하는 개념으로, (Deep) Neural Network 를 기반으로 한 학습모델이다. 많은 layer를 progressive하게 학습시켜 high level feature를 뽑아내기 때문에, 일반적으로 머신러닝 대비해서 훨씬 큰 사이즈의 데이터로 학습할때 성능이 좋고, 다만 많은 layer와 node로 인해 black box와 같이 어떻게 결론에 도달했는지 해석력이 부족한 단점이 있다.  Perceptron딥러닝의 기본이 되는 Neural Network는 인간의 신경망 구조모양을 본떠만든 Perceptron으로 시작input node(x)에 weight(w)를 곱하고 bias(b)를 더한 선형결합에 nonlinear한 activation function(활성화 함수)을 씌워.. 2023. 6. 28.
예측모델 실습 (mercari제품가격 예측) Index 제품가격 예측모델 코드 실습.price 를 예측하는 회귀문제이지만, 비정형의 텍스트 형태 피쳐가 포함된 데이터셋이다.데이터의 전처리부터, 예측모델 학습, 평가까지 전반적인 프로세스 흐름을 만들어본다.  (출처 - 파이썬 머신러닝 완벽가이드) 1. 데이터 탐색(EDA) & 전처리 데이터 불러오기. price 가 타겟이고, 나머지 7개 피처중에 4개정도가 비정형의 텍스트형 피쳐다. from sklearn.linear_model import Ridge , LogisticRegressionfrom sklearn.model_selection import train_test_split , cross_val_scorefrom sklearn.feature_extraction.text import CountV.. 2023. 6. 22.
12. 군집화(Clustering) Index군집분석은 대표적인 머신러닝의 비지도 학습이다. 머신러닝의 분류/회귀와 같이 직접적인 예측을 수행하는 알고리즘은 아니지만, 데이터의 탐색단계 (EDA)에서 데이터간의 군집/패턴등을 시각화하고 이해하는데 유용하고 (이상탐지에도 쓰일 수 있겠다) 전처리 단계에서도 사용될 수 있는데, 예를들어 데이터셋이 우리가 알지 못했던 명확한 특성을 가진 몇가지 군집으로 분류된다면 각 군집별로 개별적인 머신러닝/딥러닝 모델을 학습시키는게 효율적일 수 있다. 이번 포스팅에서는 Clustering의 대표적인 모델  4가지에 대해서, 그리고 정답이 따로 없는 군집화 모델들에 대한 평가 방법에 대해 정리한다. 군집화의 대표적인 모델  1. K-means Clustering 군집화의 가장 대표적이고 간결한 알고리즘군집의 .. 2023. 6. 5.
11. 차원축소(PCA,LDA,SVD) Index● 차원축소 개요 차원의 저주(Curse of Dimensionality): 데이터의 차원이 너무 크면 모델을 학습하는데 여러가지 문제점이 있을수 있다.데이터간의 거리가 기하적으로 멀어지며 희소(sparse)한 구조를 갖게된다. 따라서 데이터 거리기반의 알고리즘 (KNN, SVM)에 부적합해지며, 과적합의 위험성도 커지고 계산속도도 저하된다. 피쳐가 많다는 의미는 그만큼 다중공선성(multi-collinearity) 문제가 발생할 경향이 크다. 이러한 이유로 우리는 고차원 데이터에 대해, 전처리 과정 중 하나로 차원축소를 진행하는데, 방법은 크게 두가지이다. Feature Selection : 특정 피처에 종속성이 강한 불필요한 피처는 제거하고 독립적인 피처들만 선택Feature Extracti.. 2023. 6. 1.
10. 회귀(Regression) - 로지스틱 회귀, 회귀 트리 Index● Logistic Regression (로지스틱 회귀) 모델의 모형은 선형회귀와 비슷하지만 (입력변수가 Continous 하고, 회귀계수가 선형) 예측하고자 하는 종속변수가 {0,1} 의 Binary 한 값이기 때문에 Binary Classification, 분류모델에 해당한다. 하지만 결국 continuous한 P(Y=1 | X) 조건부 확률에 대한 분포를 예측하는 것이기 때문에 Regression이기도 하다. LR의 회귀식은 X 의 선형결합식에 Sigmoid 를 씌워 (0,1) 사이의 값으로 만든다. (Logistic function 이라고도 부름) Cost function : 일반 회귀에서는 MSE를 활용했다면, 로지스틱회귀는 분류 문제이기 때문에 Cross-Entropy 활용한다. 목적.. 2023. 5. 31.
9. 회귀(Regression) - 선형회귀 Index● Linear Regression 개요회귀(Regression)모델의 가장 큰 구분은 ①독립변수의 개수에 따라 단일회귀/다중회귀  ② "회귀계수"의 종류에 따라 선형회귀/비선형회귀로 구분된다. (비선형 회귀와 다항회귀를 혼동하면 안된다). 선형회귀는 피쳐와 라벨간에 선형적인 관계가 있다고 가정하고 최적의 선형함수를 탐색한다. (실제는 선형적 관계가 아닐수 있음에도) 회귀모델은 오류(=Cost=Loss function ; residual, RSS, MAE, MSE 등으로 측정)를 최소화하는 회귀계수 혹은 회귀선을 찾는것을 목적으로 한다. 최적의 회귀계수를 찾는 대표적인 방법론 : Gradient Descent (경사하강법). Gradient는 Cost를 parameter(회귀계수)에 대해 편미분.. 2023. 5. 31.
8. 베이지안 최적화(Bayesian Optimization) Index● 베이지안 최적화 개요GridSearch 와 같은 방식의 파라미터 튜닝은, 모든 조합의 수를 다해보기 때문에 computational cost가 매우 크다. 따라서 데이터 사이즈가 크거나, XGB, LightGBM 과 같이 느린 모델에는 베이지안 최적화기법이 선호된다. 베이지안 최적화란 ? "목적함수의 식을 모를 때 최대/최소 y값(f(x))을 반환하는 x를 찾는 기법" 이다. 베이지안 최적화의 중요한 두가지 요소는 대체모델(Surrogate Model)과 획득함수(Acquisition Function)이다.  대체모델(Surrogate Model)은 미지의 목적함수를 확률적으로 추정하는 모델로, 획득함수가 계산한 입력값(하이퍼 파라미터)기반으로 모델(최적함수)를 개선해 나간다. 아래 그림에서.. 2023. 5. 30.