처음부터 차근차근 파이썬 자세히보기

Python-머신 러닝 10

2. 지도 학습 알고리즘 (7) Kernelized Support Vector Machines

최종 수정 일자: 2020-06-14 16:21 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. Kernelized support vector machine (KSVM)은 입력 공간 내에서 초평면(hyperplane)으로 단순하게 정의되지 않는 더 복잡한 모델링을 가능하게 하는 SVM의 확장된 알고리즘입니다. 분류의 경우 SVC로, 회귀의 경우 SVR을 이용합니다. KSVM을 뒷받침하는 수학적 사실들은 이 학습의 범위를 벗어나는 것이므로 다루지 않습니다. Linear model과 비선형 특성 Linear model을 더 유연하게 만드는 방법은 특성을 추가하는 것입니다. 예를 들..

2. 지도 학습 알고리즘 (6) Ensembles of Decision Trees (Gradient Boosted Regression Trees)

최종 수정 일자: 2020-06-14 16:08 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. Gradient Boosted Regression Trees (Gradient Boosting Machines) Gradient boosted regression tree (GBRT)는 여러 결정 트리를 결합하여 더 강력한 모델을 만드는 또 다른 앙상블 방법입니다. 이름에 ‘regression’ 즉, 회귀가 있지만 회귀와 분류 문제 모두에 사용될 수 있습니다. Random forest의 접근 방법과는 다르게 GBRT는 트리를 연속적인 방식으로 만들며 각 트리는 이전 트리의 실수를 고..

2. 지도 학습 알고리즘 (5) Ensembles of Decision Trees (Random Forest)

최종 수정 일자: 2020-06-14 16:02 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. 앙상블(ensemble)은 여러 개의 머신 러닝 모델을 결합하여 더 강력한 모델을 만들어내는 방법입니다. 여러 개의 머신 러닝 모델을 결합하는 것이기 때문에 무수히 많은 앙상블 모델이 있습니다만, 분류나 회귀에 대해 넓은 범위의 데이터 셋에 대해서는 두 개의 효과적인 앙상블 모델을 사용합니다. 첫 번째는 Random Forest (RF) 알고리즘이며 두 번째는 Gradient Boosted Regression Tree (GBRT) 알고리즘입니다. Random Forest 결정 트리 ..

2. 지도 학습 알고리즘 (4) Decision Trees

최종 수정 일자: 2020-06-14 15:51 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. 결정 트리(decision tree)는 분류와 회귀에 널리 사용되는 모델로 마치 스무고개처럼 어떠한 결정에 이르는 if/else 제어문들의 계층구조를 학습합니다. 예를 들어 매, 펭귄, 돌고래, 곰을 구분하는 질문 트리를 구성해봅시다. 결정 트리 만들기 결정 트리의 학습은 정답에 가장 빨리 도달하는 일련의 if/else 질문을 학습하는 것입니다. 머신 러닝에서 이 질문들을 test라고 부릅니다. 일반적으로 위의 예시처럼 yes/no의 특성으로 데이터가 구성되어 있지는 않으며, 아래의..

2. 지도 학습 알고리즘 (3) Naive Bayes Classifiers

최종 수정 일자: 2020-06-14 15:35 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. 나이브 베이즈(Naïve Bayes) 분류는 linear model과 유사한 분류기의 모음이며, linear model에 비해 더 빠르다는 장점이 있지만 일반화 성능이 떨어진다는 단점이 있습니다. 나이브 베이즈 모델이 학습을 효율적으로 하는 이유는 개별 특성에 대해서 학습을 진행하며 각 특성에서 단순한 통계적 데이터를 수집하여 학습하기 때문입니다. scikit-learn 패키지에서 제공하는 나이브 베이즈 분류에는 GaussianNB, BernoulliNB, MultinomialNB ..

2. 지도 학습 알고리즘 (2) Linear Model

최종 수정 일자: 2020-06-14 15:33 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. Linear model, 다른 말로 선형 모델은 실제로 많이 사용되는 모델로 학습 데이터 셋의 입력 특성들의 선형 함수(linear function)을 이용하여 예측하는 모델입니다. Linear model 회귀(regression) 직관적으로 linear model은 회귀 문제를 통해 이해하는 것이 쉬우므로 회귀 문제에서의 linear model을 이용한 머신 러닝부터 살펴봅시다. Linear model에 대한 일반적인 예측 공식은 다음과 같습니다. x[0] ~ x[p]는 한 데이터..

2. 지도 학습 알고리즘 (1) k-Nearest Neighbors (k-NN)

최종 수정 일자: 2020-06-14 15:04 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. 앞으로 지도 학습 알고리즘에 사용되는 여러 가지 모델링 및 최적화 기법에 대해서 알아보겠습니다. 각 모델링은 기초적인 최적화 기법을 담고 있으며 각각의 모델링에 대해 공통적으로 알아야 할 것은 다음과 같습니다. - 각 알고리즘이 학습 데이터로부터 어떻게 학습하는지 - 학습 데이터에서 만들어진 모델을 기반으로 어떻게 예측을 하는지 - 각 알고리즘이 모델 복잡도를 어떻게 조절하는지 - 각 알고리즘의 장/단점 및 중요 매개변수와 설정에는 어떤 것들이 있는지 k-Nearest Neighbo..

2. 지도 학습 알고리즘-데이터 셋 다루기

최종 수정 일자: 2020-06-13 12:34 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. 데이터 셋 다루기 앞으로 다룰 알고리즘을 설명하기 위해서 다양한 테스트 셋을 사용할 것입니다. 일부 데이터 셋은 크기가 작으며 각 알고리즘의 특정 부분을 잘 강조할 수 있도록 디자인된, 만들어진 데이터 셋일 것이며, 실제로 사용되는 크기가 큰 데이터 셋들도 있습니다. 데이터 셋이 어떠한 구조로 되어 있으며 어떻게 읽고 학습을 시킬 것인지를 배워보도록 하겠습니다. 데이터 셋은 특성(feature)과 결과값(target, label)로 구성되어 있습니다. 단순하게 특성은 독립변수를, 결..

1. 지도 학습 모델링의 기본

최종 수정 일자: 2020-12-29 10:53 해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. 분류(classification)와 회귀(regression) 지도 학습 문제에는 두 가지 유형이 있습니다. 바로 분류(classification)와 회귀(regression)입니다. 분류 문제의 경우 이진 분류(binary classification)와 다중 분류(multiclass classification)로 구분되며 분류되는 클래스의 수에 따라서 결정됩니다. 즉, 이진 분류는 데이터들이 분류되는 클래스가 두 개이며 일반적으로 합/부합(Yes or No, positive or ..

Python-머신 러닝 시작하기

해당 카테고리에 작성되는 글은 Introduction to Machine Learning with Python(파이썬 라이브러리를 활용한 머신 러닝)을 기반으로 작성되었습니다. 머신 러닝은 자료(data)에서 지식(knowledge)을 추출하는 것을 다룹니다. 머신 러닝은 통계학, 인공지능, 컴퓨터 과학이 교차하는 연구 분야이며 예측 분석학(predictive analytics) 또는 통계적 학습(statistical learning)이라고도 불립니다. 어떤 영화를 볼지, 어떤 음식을 주문할지, 또 어떤 물건을 사야할 지 추천해주는 것 등 많은 현대의 웹사이트와 기기는 그 핵심에 머신 러닝 알고리즘을 가지고 있습니다. 이러한 상업적 적용 이외에, 머신 러닝은 데이터 중심(data-driven) 연구에도 ..