본문 바로가기

머신러닝, 딥러닝/머신러닝23

앙상블 기법(Ensemble Method) - Bagging 📚 Bagging (Bootstrap Aggregating) 일반적으로 단일 weak learner를 사용하면 충분한 성능을 확보하기 어렵다. 따라서 앙상블 기법(Ensemble method)은 여러 개의 weak learner를 결합하여 stronger learner를 생성한다. 앙상블 방법에는 Bagging과 Boosting이 있다. 이 포스트에서는 Bagging 방식에 대해서 정리한다. 배깅은 학습 데이터에서 sub-sampling을 진행해서 여러 개의 하위 샘플을 생성하고, 각 샘플들에 대해서 DT를 만들어서 예측을 진행하고 결과를 종합한다. 여러 개의 모델을 결합하기 때문에 과적합 가능성이 감소하고 모델의 일반화 가능성이 증가한다는 장점이 있다. 대표적으로 Random Forest 기법이 배깅 .. 2022. 5. 24.
의사결정나무 (Decision Tree) 📚 Decision Tree DT는 기본적으로 독립변수 값에 따라서 종속변수를 값이 유사한 여러 개의 그룹으로 분리하고, 각 그룹에 속한 관측치들을 모두 동일한 값으로 예측한다. DT는 종속변수를 그룹으로 나누기 위해서 데이터 포인트를 트리 구조로 분리한다. DT는 회귀문제와 분류문제 모두에 사용할 수 있다. DT는 독립변수를 이용해서 각 데이터 포인트를 그룹으로 묶고, 각 그룹에 모두 동일한 값을 할당하여 리턴한다. 회귀문제는 각 그룹 종속변수의 평균값을 사용하고, 분류문제는 각 그룹의 최빈값을 사용한다. ✅ 노드를 분류하는 기준? 기본적으로 각 노드에서 split을 했을 때, 발생하는 error의 정도를 최소화 하는 방향으로 split 한다. 여기서 회귀문제와 분류문제에서는 error의 정도를 계산하.. 2022. 5. 24.
나이브 베이즈 (Naive Bayes) 📚 나이브 베이즈 ✅ 기본 개념 • 베이즈 룰을 사용해서 종속변수의 확률을 계산하는 알고리즘이다. 즉, 새로운 관측치에 대해서, "종속변수가 특정 값을 가질 확률"을 학습데이터에서 베이즈 공식을 이용하여 구한다. 일반적으로 확률이 제일 큰 값을 종속 변수의 값으로 선정한다. • 일반 머신러닝 알고리즘과는 다르게 학습 과정이 없기 때문에 별도의 비용함수가 존재하지 않는다. 즉, 학습데이터에 라벨이 관측치들로 확률을 한 번 계산하면 예측값을 도출할 수 있다. • 최근에는 많이 사용되지 않고 벤치마크로 사용하는 경우가 많다. 0,1을 분류하는 문제에서 k개의 피쳐가 있을 때, 종속변수=1일 확률을 아래와 같이 나타낼 수 있다. ✅ 계산 과정 독립변수가 2개, 종속변수는 1 or 0인 경우에 대해서 나이브 베이.. 2022. 5. 15.
영화리뷰 감성분석 (Sentiment Analysis) 📚 감성 분석이란 ✅ 개념 감성분석은 각 문서에 사용된 단어들을 이용하여 해당 문서의 긍정/부정 감성을 파악하는 분석을 의미한다. 감성 분석에는 크게 두 가지 접근방식이 있다. (1) 머신러닝 기반 접근 : 지도학습 (2) Lexicon Based(감성어 사전 기반) 최근에는 머신러닝 기반 감성 분석 방법이 많이 사용된다. 한국어 감성 사전이 존재하기는 하지만 공개되어 있는 사전들은 포함된 단어의 수도 적고 특정 도메인에 특화된 방식으로 생성된 것이 많아서 좋은 성능을 기대하기는 어렵다. 머신러닝으로 지도학습을 하기 위해서는 해당 문서의 감성 라벨링이 되어있어야 하는데, 라벨링 된 채로 공개되는 데이터가 많지 않기 때문에 연구자들이 직접 라벨링을 실시하는 경우도 많다. 머신러닝 알고리즘 중에서 감성 분석.. 2022. 5. 15.
TF-IDF (Term Frequency - Inverse Document Frequency) 📚 TF-IDF 란 TF-IDF는 단어의 빈도와 역 문서 빈도를 사용하여 단어들마다 중요한 정도에 따라서 가중치를 부여하는 방법이다. 모든 문서에서 등장하는 단어는 중요도가 낮으며, 특정 문서에서만 자주 등장하는 단어는 중요도가 높다. TF-IDF 생성을 위해서는 문서를 사용된 단어의 벡터로 나타내야 한다. 즉, 각 문서들을 하나의 문자열로 나타내야 한다. 위의 세 가지 문서의 경우 apple/banana/carrot/eggplant/mango/orange로 구성된 벡터로 나타낼 수 있다. 각 문서마다 벡터의 차원은 동일하다. 이 때 벡터의 원소들로 단순 corpus의 빈도를 사용할 수도 있고, TF-IDF 를 사용할 수도 있다. ✅ Term Frequency : 단순 빈도 각 문서에서 나타난 전체 단어.. 2022. 5. 15.
[머신러닝] 데이터 불균형, Oversampling 방법 📚 Imbalanced Dataset ✔ 데이터 불균형 : 이진 분류 문제에서 특정 클래스의 관측치가 상대적으로 더 많은 경우. 이러한 경우에는 majority에 대해서는 예측을 잘 진행할 수 있으나, minority class에 대해서는 예측 성능이 떨어진다. ✔ 예시 : fraud detection, 질병 예측, 신용불량자 예측, 기기 고장 예측, spam detection → 이러한 task는 minority class를 정확하게 예측하는 것이 더 중요하다. 하지만 대부분의 데이터에는 majority class의 샘플이 훨씬 많다. 📌사용하는 평가 지표 데이터 불균형이 심할 경우에 평가 지표로 accuracy를 사용하는 것은 바람직하지 않다. 전체 데이터에서 majority class가 90%인 경.. 2022. 4. 18.