Machine Learning 7

머신러닝 프로젝트 전처리 예시 1

Can you cut the time a Mercedes-Benz spends on the test bench? https://www.kaggle.com/c/mercedes-benz-greener-manufacturing Mercedes-Benz Greener Manufacturing | Kaggle www.kaggle.com 이 프로젝트에서는... feature 엔지니어링을 잘해야한다. 적절한 feature들로만 성능이 높게 나올 수 있다. 주어진 공정들의 시간을 더해서 테스트 시간을 예측한다. 보안상 때문에 x1, x2, 등으로 이름이 붙여있음 카테고리, 0과1 등 label을 추정을 해야만 하는 한계도 있음 프로젝트 목적 test_bench time predict ML 프로젝트 수행 순서 - 라이브..

Machine Learning 2022.05.30

나이브베이즈 (Naive_bayes) 분류 모델

머신러닝 모델 - 수치형 데이터 예측 : 회귀모델 : 지도학습 : target 이 있음 - 범주형 데이터 예측 : 분류모델 : 지도학습 : target 이 있음 - 나이브베이즈 : 텍스트 데이터 분류 - SVM : 이미지, 음향 - 디시전트리(랜덤포레스트) : 그외의 경우 - 군집분석 : 비지도학습 : target 이 없음, 클러스터링 나이브 베이즈를 알려면 조건부 확률을 알아야 한다. 조건부 확률을 활용하여 베이즈 정리를 구할 수 있다. 나이브 베이즈 모델을 이해하기 위해서는 베이즈 정리를 알아야 한다. 베이즈 정리는 결과를 알고나서, 그 결과에 대한 어떠한 확률을 구하는 것이다. 나이브 베이즈 종류 앞에 나이브 라는 말은 각각 모든 사건들을 독립적으로 가정하여 그렇게 이름이 붙여졌다고 한다. 나이브 ..

Machine Learning 2022.05.27

LightGBM에 대하여

LightGBM: 기존 GBM들 보다 훨씬 더 빠르게 학습이 된다. 아이디어는 별개 아닌데, 추후 모델에 많은 기여를 한 모델이다. 기존 GBM들은 level-wise 방식으로 tree를 만들었다. Level-wise라는건 DT가 학습할 때 같은 level에 있는 노드들을 모두 split한 뒤에 다음 level로 넘어가는 방식을 얘기한다. 깊이가 너무 커지면 overfitting될 가능성이 높기 때문에, Level을 제한하여 최대한 모델을 키우는 방식을 사용해왔다. Light GBM이 제안하는 메인 아이디어는 Level-wise 방식이나 Leaf-wise 방식 모두 optional을 만들게 된다면 비슷한 DT를 만들게 된다는 것에서 시작한다. Leaf-wise를 사용한다면, 훨씬 더 빠르게 optimal..

Machine Learning 2022.05.25

XGBoost 기초 설명

XGBoost: 하드웨어를 최적화 시킨 Gradient Boosting Mdel 실제 학습이 빠르게 학습되고, 대중적으로 많이 쓰인다. 추후 LGBM 모델에 많은 영향을 주었다. Boosting & Gradient Boosting Boosting model은 Bagging 방식이 만들어지는 원리가 전체 성능을 향상하는데 직접적인 연관이 없는 것을 보완한 모델 순차적 모델 첫번째로 만든 DT가 잘못 분류한 친구들을 그 다음 DT가 보완하는 방식으로 순차적으로 Tree를 생성 다음 DT는 이전의 DT가 잘못 분류한 데이터들에 가중치를 주는 것으로 DT가 뽑을데이터의 샘플링을 조절한다. 그리고 그 DT를 다 모아서 앙상블 한다. Gradient descent algorithm을 boosting model에 도..

Machine Learning 2022.05.25

Lasso 와 Ridge 회귀 (regression)

Lasso, Ridge : Linear Regression 모델이 고차원 공간에 over fitting이 쉽게 되는 문제를 해결한 기법 Lasso weight의 L1 term을 Loss function에 더해준다 Loss가 증가한다. 추가된 항 (L1 term)도 gradient descent algorithm의 최적화 대상에 속한다. L1 term을 제약조건이라고 부르고 또는 Regularization term이라고 한다. (L1 규제) Ridge weight의 L2 term을 Loss function에 더해준다 Loss가 증가한다. 추가된 항 (L2 term)도 gradient descent algorithm의 최적화 대상에 속한다. L2 term을 제약조건이라고 부르고 또는 Regularizatio..

Machine Learning 2022.05.25

선형회귀와 LGBM 실습

캘리포니아 집값 데이터를 가지고 실습을 진행해보자 X에는 feature들, y에는 target을 가져온다. 두 row 갯수가 같은지 꼭 확인해 봐야 한다. 데이터 전처리 1. 결측치 확인 2. dtype이 object인 column 있는지 확인 -> categorical 특징 확인 3. target distribution -> 히스토 그램으로 확인 5이상인 값들을 5로 설정했기 때문에 저렇게 분포가 나옴 Train-test Split 트테트테 해서 return 값을 꼭 외우자. random_state = 42 -> 42 온 우주를 이해하는 42, 시드값 고정, 재현성을 위해서 설정 Training (Fit) 선형회귀 모델과, Light GBM 모델을 만들어줍니다. 그리고 학습을 진행합니다. Evaluat..

Machine Learning 2022.05.17

선형회귀 (Linear Regression)와 성능평가 지표

선형회귀 이상적인 학습 Ptrain 높고, Ptest 높은 모델 과적합 Ptrain 높고, Ptest 낮은 모델 과적합을 막기 위해 학습에 규제를 추가 -> 적당한 loss를 올려줌(일반화 시키기 위해) 라소, 릿지 모델이 존재 선형회귀, 라소, 릿지 3개 모델은 현업에서 많이 쓰임 polynomical 회귀는 과적합될 확률이 높음 선형 모델의 성능이 안좋다면? feature Engineering을 진행 해봐야 한다. 통상적으로 LightGBM 회귀를 사용 많이 한다. 빠르고 성능이 상당히 좋음 가성비가 좋다 회귀 분석, 회귀 task 현업에서 회귀 문제에서 많이 쓰이는 모델이다. 결정 트리 -> 랜덤 포레스트 -> GBM -> XGBOOST -> LightGBM -> CatBoost 그러면 모든 사람들..

Machine Learning 2022.05.16