AI(50)
-
Decision Tree 실습 - 지니 계수 및 서울 지역 다중 분류 (2)
이 포스트는 허민석님의 유튜브 머신러닝 내용을 정리한 글입니다. 실습 코드는 도서 나의 첫 머신러닝/딥러닝에서 발췌해왔습니다. 실습 코드와 자료는 링크의 Github에서 볼 수 있습니다 이번 포스트에서는 서울 지역의 위치 정보(위도, 경도)로 임의의 지역을 한강을 기준으로 하는 네 지역(강북, 강남, 강동, 강서)로 분류하는 Decision Tree 모델을 생성하고 학습해보겠습니다. 모든 머신러닝 문제는 문제 정의 및 데이터 수집에서 출발합니다. 바로 위에서 말했듯이 우리는 이번 실습에서 서울 지역의 위치 정보(위도, 경도)를 데이터로 서울을 한강을 기준으로 하는 네 지역(강북, 강남, 강동, 강서)로 분류하고, 임의의 지역의 위치 정보를 테스트 데이터로 삼아 분류해보겠습니다. 서울의 위치 정보는 구(d..
2022.01.19 -
Decision Tree 실습 - 지니 계수 및 서울 지역 다중 분류 (1)
이 포스트는 허민석님의 유튜브 머신러닝 내용을 정리한 글입니다. 실습 코드는 도서 나의 첫 머신러닝/딥러닝에서 발췌해왔습니다. 실습 코드와 자료는 링크의 Github에서 볼 수 있습니다 이번 포스트에서는 Decision Tree를 활용해 서울 지역 위치 정보를 데이터로 서울 지역을 강동, 강서, 강남, 강북 네 군집으로 다중 분류해보겠습니다. 이전 Deicision Tree에서 우리는 ID3 알고리즘은 정보 이득(information gain)과 엔트로피(entrophy)를 이용하는 알고리즘임을 알아봤습니다. 반면 사이킷런의 Decision Tree는 CART(classification and regression tree) 타입으로, CART는 트리의 노드마다 특징을 이진 분류(Binary classif..
2022.01.19 -
머신러닝 모델의 성능을 알아보자
이 포스트는 허민석 님의 저서 "나의 첫 머신러닝/딥러닝"의 내용을 정리하였습니다. 저번 포스트에서 우리는 아래와 같이 사이킷런의 classifiaction_report와 accuracy_score를 사용하여 SVM 모델의 정확도를 측정해봤습니다. 정확도(accuracy) 0.95는 한눈에 들어오지만 classification_report에 나오는 precision, recall, f1-score 지표들은 한눈에 들어오지 않아 이해에 어려울 수 있습니다. 이번 포스트에서는 precision, recall, f1-score 등 다양한 머신러닝 모델의 평가 방법을 알아보고, 최종적으로는 아래의 표를 해석해보겠습니다. 시작에 앞서, 이해를 위해 선행되는 5가지에 대해 알아보겠습니다. 1. 혼동 행렬(confu..
2022.01.08 -
SVM(Support Vector Machine) 실습 - 농구 선수 포지션 예측
이 포스트는 허민석님의 유튜브 머신러닝 내용을 정리한 글입니다. 실습 코드는 도서 나의 첫 머신러닝/딥러닝에서 발췌해왔습니다. 실습 코드와 자료는 링크의 Github에서 볼 수 있습니다. 이번 포스트는 SVM(Support Vector Machine) 모델로 kNN 알고리즘에서처럼 2020-21 시즌 NBA 농구 선수의 포지션을 예측해보겠습니다. 데이터 크롤링과 EDA 과정은 이전 포스트에서 다뤘으므로, 모델을 생성하는 작업부터 시작하겠습니다. 먼저 필요한 라이브러리들을 임포트한 다음, 2020-21 NBA 농구 선수들의 데이터를 읽어 들여 판다스 데이터 프레임의 형태로 생성합니다. kNN EDA 과정에서 찾은 분별력이 떨어지는 특징들을 데이터 프레임에서 제거한 다음 전체 데이터를 학습 데이터와 테스트 ..
2022.01.08 -
SVM(Support Vector Machine)
이 포스트는 허민석님의 유튜브 머신러닝 내용을 정리한 글입니다. 실습 코드는 도서 나의 첫 머신러닝/딥러닝에서 발췌해왔습니다. 실습 코드와 자료는 링크의 Github에서 볼 수 있습니다. 이번 포스트에서는 SVM, 서포트 벡터 머신 알고리즘에 대해 알아보겠습니다. SVM은 kNN, Decision Tree와 마찬가지로 주로 classificaion을 위해 사용되는 알고리즘으로, 이해하기 어렵지 않은 알고리즘에 비해 성능이 매우 우수하여 지도학습 머신러닝 알고리즘으로 자주 사용됩니다. 서포트 벡터 머신은 적은 데이터에 대해서 다른 알고리즘에 비해 높은 정확도를 내며 예측 속도가 빠르고, 뒤에서 알아볼 커널 트릭을 통해 다양한 feature를 갖는 데이터를 분류하기 쉽다는 장점이 있습니다. 그렇다면 SVM ..
2022.01.07 -
kNN(k-Nearest Neighbors) 알고리즘 - 농구선수 포지션 예측(2)
이 포스트는 허민석님의 유튜브 머신러닝 내용을 정리한 글입니다. 실습 코드는 도서 나의 첫 머신러닝/딥러닝에서 발췌해왔습니다. 실습 코드와 자료는 링크의 Github에서 볼 수 있습니다. 이전 포스트에서는 2020-21 시즌 NBA 농구 선수의 실제 데이터를 담은 사이트에서 크롤링하여 판다스의 데이터 프레임의 형식으로 가공한 다음, csv 파일을 생성해봤습니다. 이번에는 데이터 시각화 및 분석 이후 kNN 모델을 생성한 다음 예측 및 평가를 진행해보겠습니다. 실습 환경은 Google Colab에서 진행하였으며, 실습 코드 및 데이터는 위 링크의 Github에서 받아볼 수 있습니다. 그렇다면 이제 코드를 보겠습니다. 필요한 라이브러리들을 임포트 한 다음, 먼저 만들어 둔 csv 파일을 읽어 판다스 데이터 ..
2022.01.03