파이썬/머신러닝 및 딥러닝(28)
-
Python(Colab) lightGBM
✔️ lightGBM - LGBM(Leaf)이라고도 부른다. - 트리기반 학습 알고리즘 - gradient boosting 방식 프레임 워크 ✔️GBM이란? ✔️하이퍼 파라미터 1) n_estimators 반복 수행할 트리의 개수를 설정하는 파라미터 (Default 100) 값을 크게 지정하면, 학습시간도 오래걸리며, 과적합 가능성↑ 2) max_depth 트리의 최대 깊이 (Default -1) 3)num_leaves 전체 트리의 잎 개수 (Default 31) 4) learning_rate 학습율 (그래프의 이동 간격 Default 0.1) ✔️특징 장점 학습하는데 걸리는 시간이 적다 메모리 사용량이 상대적으로 적은 편이다. 단점 적은 데이터셋을 사용할 경우 과적합 가능성이 매우 높다. (최소 만 개..
2023.06.17 -
Python(Colab) 랜덤 포레스트 (Random Forest)
✔ 랜덤 포레스트 - 의사결정나무는 매우 훌륭한 모델이지만, 학습데이터에 오버피팅하는 경향이 있다. - 가지치기 같은 방법을 통해 부작용을 최소화 할 수 있지만, 한계가 있다. - 학습을 통해 구성해 놓은 다수의 나무들로부터 분류 결과를 취합해서 결론을 얻는 방식의 모델 랜덤포레스트는 ! cf) 앙상블 모델 여러개의 머신러닝 모델을 이용해서 최적의 답을 찾아내는 기법 데이터로 실습 목표: 어떤 컬럼이 예약 취소율과 관련이 있을 지 1.기초설정 import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt hotel_df = pd.read_csv('/content/drive/MyDrive/KDT-1/머..
2023.06.16 -
Python(Colab) 서포트 백터 머신 (Support Vector Machine)
✔ 서포트 백터 머신 (Support Vector Machine) - 두 클래스로부터 최대한 멀리 떨어져 있는 결정 경계를 찾는 분류기 - 특정 조건에 만족하는 동시에 클래스를 분류하는 것을 목표 데이터로 실습 1. 기초설정 from sklearn.datasets import load_digits #샘플 데이터 import numpy as np digits = load_digits() digits.keys() 2. 데이터만 분리하기( 샘플데이터에서) 독립변수로 사용예정 data = digits['data'] data.shape 3. target 데이터 변수의 저장하기 종속변수로 사용예정 target = digits['target'] target.shape 4. 시각화 해서 데이터 확인 하기 import ..
2023.06.15 -
Python(Colab) 로지스틱 회귀(Logistic Regression)
✔ 로지스틱 회귀 - 둘 중 하나를 결정하는 문제 (이진 분류)를 풀기 위한 대표적인 알고리즘 - 3개 이상 클래스에 대한 판별을 하는 경우 OvR 를 사용 데이터로 실습 1. 기초 설정 import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt hr_df = pd.read_csv('/content/drive/MyDrive/KDT-1/머신러닝과 딥러닝/hr (1).csv') ✔ 설명 * employee_id: 직원 고유번호 * department : 부서 * region : 지사 * education : 학위 * gender : 성별 * recruitment_channel : ..
2023.06.14 -
Python(Colab) 의사 결정 나무(Decision Tree)
✔ 의사 결정 나무 - 데이터를 분석하여 그 사이에 존재하는 패턴을 예측 가능한 규칙들의 조합으로 나타내며 그 모양이 나무와 유사하다하여 의사 결정 나무라고 부른다. 특징) 1. 분류와 회귀 모두 가능하다. 2. 지니계수(Gennie Index) : 0에 가까울수록 클래스에 속한 불순도가 낮다 3. 엔트로피(Entropy): 결정을 내릴만한 충분한 정보의 데이터가 없다고 보는 것 4. 과대적합(overfitting): 훈련데이터에서는 정확하나, 테스트 데이터에서는 성과가 나쁜 현상 훈련 데이터가 적거나, 노이즈가 있을 때 또는 알고리즘 자체가 나쁠때 발생 의사 결정 나무에서는 나무 가지가 많거나, 크기가 클 때 발생 cf) 과대 적합을 회피하기 위한 대책 1) 사전 가지치기: 나무가 다 자라기전에 알고리..
2023.06.13 -
Python(Colab) 선형 회귀(Linear Regression)
1. 기초 설정 import numpy as np import pandas as pd import seaborn as sns rent_df = pd.read_csv('/content/drive/MyDrive/KDT-1/머신러닝과 딥러닝/rent.csv') rent_df.info() ✔ 컬럼 설명 * Posted On : 매물 등록 날짜 * 'BHK' : 베드 홀 키친 의 개수 * 'Rent' : 렌트비 * 'Size' : 집 크기 * 'Floor' : 총 층수 중 몇 층 * 'Area Type' : 공용공간을 포함하는지, 집의 면적만 포함하는지 * 'Area Locality' : 지역 * 'City' : 도시 * 'Furnishing Status' : 풀 옵션 여부 * 'Tenant..
2023.06.12