전체 글(472)
-
[핸즈온 머신러닝] 7강 앙상블 학습과 랜덤 포레스트(ensemble, RandomForest)
앙상블 학습과 랜덤 포레스트 앙상블 학습이란 하나로 이어진 여러개의 (SVM, 결정트리, 로지스틱 회귀, 경사하강법)예측기를 사용하여 분류, 회귀등을 하는 것을 앙상블학습이라고 부릅니다. 예를 들어 각기 다른 데이터 셋으로 여러개의 결정트리를 개별적으로 훈련시키고 예측을 구하면 됩니다. 이를 랜덤 포레스트라고 합니다. 7.1 투표 기반 분류기 만약에 80%의 분류기 여러 개를 훈련시켰다고하면 예측기들은 로지스틱회귀, SVM분류기, 경사하강법 등등으로 훈련시킬 수 있습니다. 투표 기반이라는 이름 그대로 각 분류기의 예측을 모아서 가장많이 예측된 클래스를 반환해주면 됩니다. 이렇게 다수결 투표로 이루어지는 것을 직접투표라고 합니다. 위의 사진과 같이 4개의 분류기중 3개가 1번 클래스를 예측하고 있습니다. ..
2018.07.27 -
[핸즈온 머신러닝] 6강 결정트리 ( Decision tree)
결정 트리 결정트리는 분류, 회귀, 다중 출력도 할 수 있는 만능 머신러닝 알고리즘이다. 그리고 결정트리는 자주 이용하는 RandomForest의 기본 구성요소 중 하나이다. 6.1 결정 트리 학습과 시각화 붓꽃 데이터 훈련하기 from sklearn.datasets import load_iris from sklearn.tree import DecisionTreeClassifier iris = load_iris() X = iris.data[:, 2:] #꽃의 길이와 넓이 Y = iris.target # 종류를 라벨로 tree_clf = DecisionTreeClassifier(max_depth=2) #트리의 깊이를 tree_clf.fit(X, Y) 처음으로 판단 해주는 것은 꽃잎 길이 두번째로 판단하는 ..
2018.07.25 -
[핸즈온 머신러닝] 5강 SVM
SVM(서포트 벡터 머신) 5.1 선형 SVM 분류 svm의 기본 아이디어는 그림을 통해 설명하겠습니다. 분꽃의 데이터를 활용해서 위와 같은데 그래프를 만들어 보았습니다. 왼쪽 사진의 점선은 두개의 데이터를 적절히 나누지 못했고 나머지 두 직선은 구분은 했지만 너무 가까워서 새로운 데이터가 들어갔을 때 알맞게 구분하기 힘들 것 입니다. 오른쪽 그래프를 봅시다. 큰직선은 일정한 거리를 두고 두개의 데이터를 잘 구분하고 있습니다. 여기서 일정한 거리를 마진 혹은 도로라고 하겠습니다. 오른쪽 그래프와 같이 마진에 데이터가 없고 실선으로 부터 최대한 멀리 떨어지게 만드는 것을 라지 마진 분류라고 합니다. 그리고 오른쪽 점선에 딱 걸치고 있는 데이터 두개를 기준으로 새로운 데이터가 들어왔을 때 구분시켜 줍니다. ..
2018.07.20 -
자주사용하는 모듈 pandas
pandas 이번에는 인공지능을 하면서 자주사용하는 모듈중 하나인 pandas를 사용해보도록 하겠습니다. 1. Series import pandas as pd 모든 데이터 유형(정수, 문자열, 부동소수점, 파이썬객체 등)을 보유할 수 있는 일차원 레이블 배열입니다. 축레이블을 인덱스(index)라고 합니다. s = pd.Series(data, index=index) index는 옵션 인덱스가 없으면 레이블을 0, 1, 2, 3으로 표현한다. 1. dictionary에서data = {'a':1, 'b':2, 'c':3, 'd':4} print(pd.Series(data)) output a 1 b 2 c 3 d 4 dtype: int64 2. array data = [0, 1, 2, 3, 4] print(p..
2018.07.16 -
[핸즈온 머신러닝] 4강 모델학습 2편
4.5 규제가 있는 선형 모델 우리는 과대적합을 하기 위해 좋은 방법은 좋은 모델을 규제하는 것 입니다. 자유도를 줄이면 과대적합되기 더 어려워집니다. 예를 들어 다항회귀에서는 차수를 줄임으로써 모델을 규제할 수 있습니다. 이제 부터 각기 다른 규제 방법에 대해 알아 봅시다. 4.5.1 릿지 회귀 릿지 회귀는 규제가 추가된 선형 회귀 버전입니다. 따라서 일반 비용함수 MSE에다가 규제항 을 더해주어야 합니다. 규제항은 훈련되는 동안에만 비용함수에 추가됩니다. 훈련이 끝나면 모델의 성능을 규제가 없는 성능 지표로 평가합니다. 파라미터 alpha는 얼마나 규제를 할지 조절합니다. alpha = 0이면 선형회귀와 같고 아주 크면 거의 0에 가까워 집니다. 릿지 회귀 비용함수 선형 회귀와 마찬가지로 릿지 회귀를..
2018.07.15 -
[핸즈온 머신러닝] 4강 모델학습 1편
모델학습 4.1. 선형회귀 선형회귀는 우리가 수학시간에 자주보는 y = w1*x1 + w2*x2 + w3*x3 +b 와 같은 형태로 나타낼 수 있는 함수이다. 글로 설명해보면 입력 특성의 가중치의 합과 편향(또는 절편)이라는 상수를 더해 예측을 만듭니다. 그럼 이제 훈련을 어떻게 시키는지 알아 봅시다. 보통 훈련 데이터들을 입력시켜 훈련시키고 검증데이터를 입력해서 검증을 했는데 얼마나 모델에 잘 적합했냐에 따라서 좋은 모델인지 판단하게 됩니다. 그리고 모든데이터가 모델에 맞을 수 는 없습니다. 이런 데이터들은 모델과 오차라는 것을 갖는데요. 이 오차를 통해서 모델의 성능을 판단할 수 있습니다. 가장 널리 사용되는 성능 측정 지표는 평균 제곱근 오차(MSE) 입니다. 그러므로 더 좋은 성능을 내기 위해서는..
2018.07.14