일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- featureimportances
- JetBrains
- 코틀린
- ml
- 속성중요도
- 운영체제
- 멀티 프로그래밍
- featurescaling
- 디자인 패턴 #싱글톤
- Java
- bootstrapping
- 에다 부스트
- 다항회귀
- 상호 배제
- 머신러닝 #ml #선형대수학 #기본기
- min-max
- 11049
- gridsearch
- 경쟁 조건
- jdk #javac #jre #java standard library #javadoc #jar #java
- 머신러닝 #ml #미분 #기본기
- 머신러닝 #ml #기본기
- Kotlin
- db
- 지니불순도
- cross_val_score
- Mutual exclusion
- ML
- Mutex lock
- 결정트리
- Today
- Total
코딩하는 오리
[ML] 머신 러닝, 더 빠르고 정확하게 - 1. 데이터 전처리 본문
01. 머신 러닝 더 빠르고 정확하게 토픽
머신 러닝 알고리즘의 속도와 정확도를 높이는 방법(아무렇게 쓰면 성능 떨어짐)
이 이론들을 scikit-larn과 pandas 라이브러리에서 적용하는 과정 ~
03. Feature Scaling : Normalization
입려 변수/속성을 조정하는 것
정의 : 머신 러닝 모델에 사용할 입력 변수들의 크기를 조정해서 일정 범위 내에 떨어지도록 바꾸는 것
연봉과 나이 차이가 크니까 1 이내로 들어오도록 조정
Feature Scaling
- 경사 하강법을 좀 더 빨리 할 수 있게 도와준다 !
min-max normalization
normalizatoin = 숫자의 크기를 0과 1 사이로 만든다
최솟값, 최댓값을 이용해서 데이터의 크기를 0과 1 사이 값으로 만든다
05. scikit-learn으로 Normalization 해보기
from sklearn import preprocessing
NBA_FILE_PATH = '../datasets/NBA_player_of_the_week.csv'
nba_player_of_the_week_df = pd.read_csv( NBA_FILE_PATH )
.head()
.describe() : 통계
height_weight_age_df = nba_player_of_the_week_df[['Height CM', 'Weight KG'. 'Age']]
scaler = preprocessing.MinMaxScaler()
normalized_data = scaler.fit_transform(height_weight_age_df)
normalized_df = pd.DataFrame(normalized_data, columns=['Height', 'Weight', 'Age'])
normalized_df.describe()
06. Feature Scaling과 경사 하강법
Feature Scaling이 경사 하강법을 줄여주는 이유 ~
그래프를 2차원으로 그리면 좋은 점은, 특정 지점에서 가장 가파른 방향은 등고선과 수직이 되는 방향이다 !
선형 회귀를 예시로 들었지만
경사 하강법을 사용하는 모든 알고리즘의 속도를 빠르게 해준다.(다항 회귀, 로지스틱 회귀)
08. Feature Scaling : 표준화(Standardization)
표준화 하면 항상 새로운 데이터 평균은 0, 표준편차는 1이 된다
통계학에서는 z-score라고도 한다.
scaler = preprocessing.StandardScaler()
11. One-hot Encoding
머신 러닝에서 사용하는 데이터
-수치형(numerical) 데이터 : 나이, 몸무게, 키
-범주형(categorical) 데이터 : 혈액형, 성별
범주형 데이터는 수치형 데이터로 바꿔야한다 !
범주형 데이터를 수치형 데이터로 바꿀 때 'One-hot Encoding' 사용한다.
14. pandas로 One-hot Encoding 해보기
import pandas as pd
TITANIC_FILE_PATH = '../datasets/titanic.csv'
titanic_df = pd.read_csv(TITANIC_FILE_PATH)
titanic_sex_embarked = titanic_df[['Sex','Embarked']]
one_hot_encoded_df = pd.get_dummies(titanic_sex_embarked)
one_hot_encoded_df.head()
pd.get_dummies(data=titanic_df, columns=['Sex','Embarked']) -> columns 목록 값들만 one-hot encoding 된다
'AI > ML' 카테고리의 다른 글
[ML] 머신 러닝, 더 빠르고 정확하게 - 3. 모델 평가와 하이퍼파라미터 고르기 (0) | 2024.07.31 |
---|---|
[ML] 머신 러닝, 더 빠르고 정확하게 - 2.정규화(Regularization) (0) | 2024.07.31 |
[ML] 결정 트리와 앙상블 기법 - 03. 에다 부스트(Adaboost) (0) | 2024.07.31 |
[ML] 결정 트리와 앙상블 기법 - 2. 랜덤 포레스트 (Random Forest) (0) | 2024.07.31 |
[ML] 결정 트리와 앙상블 기법 - 1. 결정 트리(Decision Tree) (0) | 2024.07.30 |