본문 바로가기

python 및 머신러닝/파이썬 라이브러리를 활용한 머신러닝7

scikit-learn vs tensorflow scikit-learn에 비해 tensorflow는 변수설정이 비교적 복잡하다.scikit-learn에는 없는 [수식]이 tensorflow에 들어가기 때문에.... close test라는 전제. scikit-learn tensorflow y = w1x + w2x^2 + w3x^3 + w4x^4 + w5x^5 iris_dataset = load_iris() X = iris_dataset.data y = iris_dataset.target model = LogisticRegression(C=100, penalty="l1") model.fit(X, y) print('predict: {}'.format(model.predict(X))) print('train score: {}'.format(model.scor.. 2017. 9. 25.
scikit-learn 책 정리 Data load --> 데이터 특성 변환 (fit_transform) --> data를 train/test로 나누기 --> train data로 특성 선택 및 test data에 적용 (fit -> transform) --> train data로 scaling 및 test data에 적용 (fit -> transform) --> 알고리즘 학습 (fit -> predict / score) --------------------------------------------------------------------------------- 1. Data 2. 데이터 변환 (4장)¶ 2-1 범주형데이터변환(원 핫 인코딩) 2-2 구간분할 2-3 상호작용 2-4 다항식 2-5 수학함수(일변량 비선형 변환), log.. 2017. 9. 18.
파이썬 라이브러리를 활용한 머신러닝 2장~6장 정리 2장의 데이터셋 종류가 많다. 각 데이터에 따른 각 알고리즘은 어떻게 작동할 것인가? 공부 방향일단 알고리즘 종류의 차이를 정확히 비교하고,나중에 데이터 자체를 분석하는 방법(pandas...) 공부 2017. 8. 30.
파이썬 라이브러리를 활용한 머신러닝 5장 모델 평가와 성능 향상 5.1 교차 검증(306p)k겹 교차 검증 폴드1 폴드2 폴드3 폴드4 폴드5 분할1 테스트 훈련 분할2 분할3 분할4 분할5 scores = sklearn.model_selection.cross_val_score(LogisticRegression(), iris.data, iris.target cv=5) 5.1.3 계층별 k-겹 교차 검증(그룹간의 비율을 일정하게 유지)기본값회귀-> k-겹 교차 검증분류-> 계층별 k-겹 교차 검증 *분류에 기본 k-겹 교차 검증 이용하기kfold = sklearn.model_selection.KFold(n_split=5, shuffle=True, random_state=0) // shuffle : 샘플의 순서를 섞기scores = cross_va.. 2017. 8. 28.
파이썬 라이브러리를 활용한 머신러닝 4장 데이터 표현과 특성 공학 4.1 범주형 변수4.1.1 원-핫-인코딩(가변수) 특성 변환 a b c d a ==> 1 0 0 0 b 0 1 0 0 c 0 0 1 0 b 0 1 0 0 d 0 0 0 1 data_dummies = pd.get_dummies(data) # 문자로된 범주형 변수에만 적용 가능 4.1.2 숫자로 표현된 범주형 특성특성 변환 특성1 특성2 특성3 특성4 0 ==> 1 0 0 0 1 0 1 0 0 2 0 0 1 0 1 0 1 0 0 3 0 0 0 1숫자특성도 인코딩하기 위해방법1demo_df['숫자특성'] = demo_df['숫자특성'].astype(str)방법2pd.get_dummies(demo_df, columns=['숫자 특성', '숫자 특성2']) 4.2 구간 분할, 이산화 그.. 2017. 8. 25.
파이썬 라이브러리를 활용한 머신러닝 3장 3.3.1 여러 가지 전처리 방법(169p)StandardScaler : 각 특성의 평균을 0, 분산을 1로 변경하여 모든 특성이 같은 크기를 가진다. 최대값, 최소값을 제한하지는 않는다.RobustScaler : 평균과 분산 대신 중간값과 사분위값을 사용한다. 모든 특성이 같은 크기를 가진다. 최대값, 최소값을 제한하지는 않는다.(이상치(에러) 데이터의 영향을 덜 받음)MinMaxScaler : 모든 특성이 정확하게 0과 1사이에 위치Normalizer : 특성 벡터의 유클리디안 길이가 1이 되도록 데이터 포인터 조정. (데이터의 방향만이 중요할때 많이 사용) 3.4 차원 축소, 특성 추출, 매니폴드 학습(178p)3.4.1 주성분 분석(PCA) -178p: 특성들이 통계적으로 상관관계가 없도록 데이터.. 2017. 8. 18.
파이썬 라이브러리를 활용한 머신러닝 2장 다양한 데이터와 다양한 알고리즘들이 비교, 분석되어서 책의 내용은 참 좋지만정리가 안되는게 흠이다.나중에 찾아보기 쉽게 내 것으로 만들자. 2장 정리 코드확인 : https://nbviewer.jupyter.org/github/rickiepark/introduction_to_ml_with_python/blob/master/02-supervised-learning.ipynb 샘플 데이터(데이터 개수, 특징 개수, 클래스 개수) page 설명 변수명 X 데이터 개수 X 특징 개수 y 클래스 종류 source code 58 분류에 사용할 인위 데이터 forge 26 2 2 (0, 1) X, y = mglearn.datasets.make_forge() 59 회귀에 사용할 인위 데이터 wave 40 (데이터 개수.. 2017. 8. 9.