본문 바로가기
728x90

Machine Learning7

범주형 변수 인코딩 방법(Categorical Feature Encoding Methods) 안녕하세요, 끙정입니다. 오늘은 정형 데이터를 다룰 때면 흔히 마주치는 문제인 변수 인코딩(Feature Encoding)에 대해서 알아보겠습니다. 모든 인코딩 방법을 알아야 하는 건 아니기 때문에, 쉽게 쓸 수 있는 인코딩 방법 몇개만 소개하도록 하겠습니다. 가정. 범주형 변수는 데이터가 대부분 String으로 되어 있기 때문에 모델들은 이해하지 못합니다. 따라서 숫자로 인코딩을 해주어야 하는데, 인코딩 방식에 따라 알고리즘이 받아들이는 기준이 다릅니다. 인간은 정보를 보고 단번에 알아차릴 수 있지만, 컴퓨터는 일일이 다 알려줘야만 알아 먹죠. 정보 손실을 최소화하기 위해서는 데이터에 맞는 인코딩 방법을 써야 합니다. 그래야만 학습도 잘 되고, 설명력도 좋아집니다. Nominal & Ordinal. 범.. 2021. 5. 14.
오버샘플링 기법(Over Sampling Methods) 안녕하세요, 끙정입니다. 오늘은 분류(Classification) 문제에서 자주 발생하는 클래스 불균형(Imbalance) 문제를 해결하는 방법 중에 하나인 오버샘플링 기법(Over Sampling Methods)에 대해서 알아보겠습니다. 오버 샘플링의 종류는 주로 SMOTE에서 뻗어나간 방식들이 많습니다. 최근에는 GAN을 활용한 오버 샘플링 기법도 많은 연구가 이루어지고 있습니다. 다만 이번 포스팅에서는 SMOTE 친구들만 다루도록 하겠습니다. 사실 오버 샘플링 외에도 언더 샘플링(Under Sampling) 기법이 있지만, 따로 다루지는 않겠습니다. 가정 오버 샘플링이 필요한 이유에 대해서 먼저 간단히 짚고 넘어가겠습니다. 일반적으로 우리는 머신러닝을 통해 분류 문제를 해결할 때, 이진 분류라고 하.. 2021. 5. 7.
지니(Gini) vs 엔트로피(Entropy) 그리고 정보 이득량(Information Gain) 안녕하세요, 끙정입니다. 오늘은 Tree Based Method에서 파티션(노드)을 분할할 때 기준으로 쓰이는 두 가지 측정방법, Gini(지니)와 Entropy(엔트로피)를 알아보겠습니다. 그리고 추가로 Information Gain(정보 이득량)을 통해서 Tree가 어떻게 Nodes를 펼쳐 나가는지 알아보겠습니다. 딥러닝에서는 크로스 엔트로피를 손실 함수로 사용하기 때문에 엔트로피는 익숙하신 분도 계실 겁니다. 지니도 엔트로피와 매우 유사하지만 조금은 헷갈립니다. 가정. 우리는 각기 다른 4개의 구슬이 담긴 3개의 주머니가 있습니다. 순도. 우리는 이제 기준으로 순도(Purity)를 이야기할 겁니다. 순도는 얼마나 순수한지에 대한 기준입니다. 여기서 순수의 개념은 homogeneity, 균질성입니다... 2021. 4. 30.
트리 기반 메서드(Tree Based Method) 끙정입니다. 오늘은 더 심연으로 돌아가서 Tree-Based Method에 대해서 탐구해보고자 합니다. 많은 사람들이 Random Forest를 쓰고, LGBM, XGB 등의 Boosting 알고리즘을 사용합니다. 도대체 어떤 원리로 Tree Based Model들이 작동하는지 기초를 다시 복습해보도록 합시다. 오늘 살펴볼 것은 세 가지입니다. ⓐ 어떻게 Tree가 뻗어 나가는가? ⓑ 어떤 기준으로 가지가 나눠지는가? ⓒ 왜 그 가지가 선택되었는가? 자, 그럼 오늘도 탐험을 시작해보도록 하겠습니다. ⓐ 나무는 어떻게 뻗어 나가는가? Tree Based Method의 핵심은 데이터를 어떠한 규칙에 의해 연속적으로 나눠가는 것이라고 이해하시면 됩니다. 예를 들어 야구 선수의 메이저리그 활동 기간(year)과.. 2021. 4. 27.
엑스트라 트리(Extra Trees) vs 랜덤 포레스트(Random Forest) 끙정입니다. 일전에 데이콘에서 주최하는 '시스템 품질 변화로 인한 사용자 불편 예지' 경진대회를 참가했을 때, 팀원이 pycaret을 사용해 모델의 성능들을 비교한 적이 있습니다. 생전 처음 보는 모델들도 종종 있었는데, 그중에서도 도대체 이건 뭘까 하는 모델이 있었죠. 바로 Extra Trees입니다. Extra Trees를 제대로 이해하고 싶어서 인터넷도 뒤지고, 책도 뒤졌지만 제대로 설명해주는 곳이 많지 않습니다. 특히나 한글로 된 블로그는 그 차이를 제대로 설명하고 있는 곳이 없습니다. 핸즈온 머신러닝에서도 많은 지면을 할애하지 않아 이해가 잘 가지 않았습니다. 다행히도 해외 유튜버와 해외 블로그를 뒤져서 조금은 이해를 했습니다. 엑스트라 트리는 랜덤 포레스트의 친구라고 보면 될 정도로 닮아 있습.. 2021. 4. 26.
GBM vs XGB vs LGBM vs CATB 안녕하세요, 끙정입니다. 오늘은 정형 데이터 모델링에서 최강의 성능을 보이는 전통 강자, 부스팅 모델들에 대해 살펴보려고 합니다. 그러나 부스팅은 종류가 매우 많고, 각 부스팅 알고리즘들이 어떤 차이를 가지고 있는지 알기 어렵습니다. 오늘 각 알고리즘을 비교 분석하면서 어떤 부스팅은 어떤 강점과 단점이 있는지 알아보겠습니다. 가정. 본 글에서 다룰 부스팅 종류는 총 3가지입니다. GBM(Gradient Boosting Machine)은 부스팅 가문의 시조입니다. 그러나 현재 널리 활용되고 있는 알고리즘은 아니기에 따로 다루지는 않겠습니다. 그리고 NGB(Natural Gradient Boosting)는 가장 최근에 나온 알고리즘이기는 하지만, 아직 많은 연구가 이루어지지 않고 있습니다. 따라서 우리는 X.. 2021. 4. 25.
728x90