머신러닝 4

[머신러닝] 순서없는 범주형 인코딩

머신러닝에서 레이블에 인코딩 해주는 방법에는 크게 두 가지가 있다. 1. 레이블 인코딩 - LabelEncoder API 이용 fit(), transform() 예> ['고양이','강아지','새']-->[0,1,2] 단점: 몇몇 ML 알고리즘은 변경된 숫자 [0,1,2]값을 분류라 인식하지 않고 내부적으로 0이 1보다 작기 때문에 가중치 값을 더 부여 할 수 있다. 따라서 예측성능이 떨어진다. 2. 원-핫 인코딩 - OneHotEnoder API 이용 fit(), transform() 예> ['고양이','강아지','새'] --> 고양이는 1로 나머지 모두 0 --> 강아지는 1로 나머지 모두 0 --> 새는 1로 나머지 모두 0

머신러닝 2022.11.01

[머신러닝] 과적합과 규제(regularization)

과적합 과적합에는 과대적합과 과소적합이 있다. 먼저 과대적합에 대해 알아보자 과대 적합 과대적합 : 모델이 훈련데이터로만 훈련을 너무 많이해서 훈련 데이터에는 너무 잘 맞지만 일반성이 떨어지는 현상 Q 어떨 때 발생할까? - 과대적합은 훈련데이터에 있는 잡음의 양에 비해 모델이 너무 복잡할 때 일어난다. Q 해결 방안은? -1. 파라미터 수가 적은 모델을 선택하거나 (고차원 다항 모델 보다 선형 모델) , 훈련데이터에 있는 feature 수를 줄이거나 , 모델에 제약을 가하여 단순화 시킨다. - 2. 훈련 데이터를 더 많이 모은다. - 3. 훈련 데이터의 잡음을 줄인다.(오류 데이터 수정과 이상치 제거) 과소적합 과소적합: 과대적합의 반대이다. 이는 모델이 너무 단순해서 데이터의 내재된 구조를 학습하지 ..

머신러닝 2022.10.28

[머신러닝] scaling

https://vinyee.tistory.com/81 [머신러닝] 사이킷런(sklearn) 내장데이터 샘플 가져오기 붓꽃데이터 df_setosa=df[df['species_name']=='setosa'] df_versicolor=df[df['species_name']=='versicolor'] df_virginica=df[df['species_name']=='virginica'] df_setosa df_virginica df_versicolor​ iris.feature_nam.. vinyee.tistory.com 지난 글에서 머신러닝 sklearn 패키지에 내장된 붓꽃 데이터를 데이터 프레임으로 가져오는 실습을 했었다. (위 링크 참고) 이번 글에서는 scaling 이라는 개념에 대해서 알아보자 Scal..

머신러닝 2022.10.22

[머신러닝] 사이킷런(sklearn) 내장데이터 샘플 가져오기 붓꽃데이터

df_setosa=df[df['species_name']=='setosa'] df_versicolor=df[df['species_name']=='versicolor'] df_virginica=df[df['species_name']=='virginica'] df_setosa df_virginica df_versicolor​ iris.feature_names iris.feature_names ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']​ from sklearn.datasets import load_iris iris=load_iris() iris - sklearn 에서 iris 데이터 가져오기 {'data'..

머신러닝 2022.10.22