Menu
CoddyTech

복습: 대출 결정

Coddy Machine Learning 여정의 지도 학습 섹션에 포함된 레슨. 58개 중 31번째.

challenge icon

챌린지

중급

이 장에서 약속했던 농장 대출을 기억하나요? 소액 대출 기금은 농부들에게 설명할 수 있는 트리를 원합니다. 시작 코드는 과거 대출 데이터를 분할합니다.

  1. 깊이 1부터 트리를 키우며(random_state=0), 각 테스트 정확도를 출력하세요. 직전 깊이보다 성능이 나아지지 않는 첫 번째 깊이에서 멈추세요.
  2. 성능이 향상된 마지막 깊이를 유지하세요. 그 깊이와 해당 트리의 질문을 출력하세요.
  3. 아래와 같이 가장 중요한 특성 두 개를 출력하세요.

다른 기금의 경우:

Depth 1: test accuracy 0.650
Depth 2: test accuracy 0.850
Depth 3: test accuracy 0.833
Keep depth 2
|--- savings_usd <= 154.50
|   |--- earlier_loans <= 0.50
|   |   |--- class: 0
|   |--- earlier_loans >  0.50
|   |   |--- class: 1
|--- savings_usd >  154.50
|   |--- earlier_loans <= 0.50
|   |   |--- class: 1
|   |--- earlier_loans >  0.50
|   |   |--- class: 1

Most important: savings_usd (0.563)
Next: earlier_loans (0.437)

직접 해보기

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier, export_text

# 소규모 농가에 제공한 과거 소액 대출: repaid의 1은 대출금이 전액 상환되었음을 의미합니다
loans = pd.read_csv("loans.csv")
features = ["amount_usd", "income_usd", "years_farming", "earlier_loans", "savings_usd", "group_size"]
X_train, X_test, y_train, y_test = train_test_split(loans[features], loans["repaid"], test_size=0.25, random_state=0)

# 아래에 코드를 작성하세요

지도 학습의 모든 레슨

직접 연습해 보세요: 온라인 Python 컴파일러