Loading...
2024. 4. 2. 00:09

test time augmentation

test time에서 augmentation을 하는 방법 test set도 사실은 서로 다른 여러가지 환경에서 관찰 될 수 있다는 사실에 기반 하나의 똑같은 test set에 여러 다른 augmentation을 적용한 상태에서 동일한 답을 낼 수 있다면 확실하게 예측을 자신할 수 있을 것 test set에서 나타날 수 있는 여러 variance를 고려하겠다는 것 test image에 augmentation을 적용한 여러 이미지 aug1, aug2, aug3,....을 만들고 이 이미지들 test image, aug1, aug2, aug3, ....에 prediction을 하면 pred1, pred2, pred3, pred4,...가 나오고 이들을 ensemble하여 얻은 값을 test image에 대한 ..

2023. 12. 7. 01:49

cross validation out of fold prediction

model training시 cross validation을 통해서 model의 fold를 여러개 나눠서 out of fold validation 성능을 측정하고 test data예측을 통해 성능 향상을 유도 대충 데이터가 다음과 같이 생겼는데 2009/12~2011/11까지 데이터가 존재하고 우리가 예측해야할 것은 2011/12 train data는 2009/12~2011/11이고 test data는 2011/12 1) 2009/12~2011/11에서 적절하게 train과 validation을 label별로 고른 비율을 가지도록 stratified k fold split함 2) 각 fold별로 validation 예측을 하고 예측한 것을 out of fold에 하나 하나 다 모으는 거 3) 그리고 각 ..

2022. 12. 31. 18:13

머신러닝 모델링 기본방법 - bootstrapping, bagging, boosting

1. bootstrapping 현재 데이터를 복원추출로 random sampling하여 얻은 여러 데이터로 학습하는 기법 각각의 sample 각각에서 모델을 만들어 예측의 consistence를 보고자 하는 것임 혹은 데이터가 부족할 때 데이터를 늘리고자 쓰는 기법 위 그림은 bootstrapping을 이용한 bagging을 나타낸다고 볼 수 있겠다 2. bagging bootstrapping으로 만든 데이터 set으로 여러 모델을 만들고 각 모델의 성능을 적절하게 aggregation 한다 aggregation하는 방법은 voting이나 averaging 등이 있다. 보통 모든 학습데이터를 써서 결과를 내는게 성능이 좋아보이지만 의외로 80% sampling bootstrapping 하여 얻은 bagg..

2021. 11. 1. 19:25

Adaboost 모형

boosting 알고리즘 중에 여러개의 model을 만들어 voting시킨다는 것이 조금 이상하다는 생각이 들 수도 있을 것 같습니다. boosting에서 말한 알고리즘 중 두 번째 알고리즘이 Adaboost인데요. 조금 더 구체적이지만 아주 간단하게? 설명하자면 다음과 같습니다. 전체 train data에서 random하게 data를 뽑습니다. random하게 data를 뽑은 sample로 하나의 model A를 학습합니다. 참고로 Adaboost에서 사용한 model A는 random forest가 완전한 tree를 사용하던 것과는 조금 다르게 두 개의 leaf만 가지는(1번만 분기하는) stump라는 tree를 사용합니다. 학습한 A로 전체 train data에 대해 validation을 수행합니다..