f1_score값 관련
0
lgb를 썼을 때 f1_score가 1.0이 나오는데 뭐가 문제일까요?
from sklearn.model_selection import train_test_split
X_tr, X_val, y_tr, y_val = train_test_split(train.drop('target', axis=1), train['target'], test_size=0.15, random_state=2023)
X_tr.shape, X_val.shape, y_tr.shape, y_val.shape
from sklearn.ensemble import RandomForestClassifier
import lightgbm as lgb
from sklearn.metrics import f1_score
model = lgb.LGBMClassifier(random_state=2023, max_depth=11)
model.fit(X_tr, y_tr)
pred = model.predict(X_val)
print(f1_score(y_val, pred))
답변 1
0
보통 1이 나오면 train.drop('target', axis=1)을 안한 케이스 인데
이번 건은 그것은 아니네요!
혹시 새로고침해서 해도 동일할까요? 그렇다면 풀 코드를 올려주시겠어요?
저도 한번 돌려보고 확인하겠습니다.
0
다시 해봐도 똑같네요. 랜덤포레스트로는 f1스코어가 잘 나오는 것 같은데, lgb로 해보면 f1스코어가 1.0으로 나와요 ㅠㅠ
# 시험환경 세팅
import pandas as pd
from sklearn import datasets
dataset = datasets.load_breast_cancer()
df = pd.DataFrame(dataset['data'], columns=dataset['feature_names'])
df['target'] = dataset['target']
df.to_csv("data2.csv", index=False)
from sklearn.model_selection import train_test_split
train, test = train_test_split(df, test_size=0.2, random_state=2022)
y_test = test.pop('target')
train.to_csv('train.csv', index=False)
test.to_csv('test.csv', index=False)
#####################################################################
# 출력을 원하실 경우 print() 함수 활용
# 예시) print(df.head())
# getcwd(), chdir() 등 작업 폴더 설정 불필요
# 파일 경로 상 내부 드라이브 경로(C: 등) 접근 불가
# 데이터 파일 읽기 예제
import pandas as pd
train = pd.read_csv("train.csv")
test = pd.read_csv("test.csv")
# 사용자 코딩
# 수치형 이상치 스케일링
# print(train.head())
train.select_dtypes(exclude=object).columns
cols = ['mean radius', 'mean texture', 'mean perimeter', 'mean area',
'mean smoothness', 'mean compactness', 'mean concavity',
'mean concave points', 'mean symmetry', 'mean fractal dimension',
'radius error', 'texture error', 'perimeter error', 'area error',
'smoothness error', 'compactness error', 'concavity error',
'concave points error', 'symmetry error', 'fractal dimension error',
'worst radius', 'worst texture', 'worst perimeter', 'worst area',
'worst smoothness', 'worst compactness', 'worst concavity',
'worst concave points', 'worst symmetry', 'worst fractal dimension']
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
train[cols] = scaler.fit_transform(train[cols])
test[cols] = scaler.transform(test[cols])
# print(train.head())
# 검증 데이터 분리
from sklearn.model_selection import train_test_split
X_tr, X_val, y_tr, y_val = train_test_split(train.drop('target', axis=1), train['target'], test_size=0.15, random_state=2023)
X_tr.shape, X_val.shape, y_tr.shape, y_val.shape
from sklearn.ensemble import RandomForestClassifier
import lightgbm as lgb
from sklearn.metrics import f1_score
# model = RandomForestClassifier(random_state=2023)
# model.fit(X_tr, y_tr)
# pred = model.predict(X_val)
# print(f1_score(y_val, pred))
# 0.9876543209876543
model = lgb.LGBMClassifier()
model.fit(X_tr, y_tr)
pred = model.predict(X_val)
print(f1_score(y_val, pred))
작업형 1 -연습문제 4-6
0
7
1
작업형 1 유형 부분
0
24
2
작업형 1 (삭제예정, 구 버전)
0
38
2
수강기간 연장 문의드립니다.
0
27
1
2유형 레이블 인코딩 VS 원핫 인코딩
0
27
3
수강기간 연장 문의드립니다.
0
29
1
인덱스 슬라이싱
0
30
2
질문 드립니다.
0
46
2
강의 내용 관련 질문드립니다~
0
43
2
수강 연장 문의
0
58
2
강의자료 일괄 다운로드
0
52
2
수강기간 연장 문의드립니다
0
42
2
list 문제 질문드립니다~
0
36
2
빅분기 실기 12회 재도전
0
55
2
강의 기간 연장 가능여부 검토 요청건
0
41
2
수강기간 연장 문의 드립니다
0
43
2
수강기간 연장 문의드립니다
0
50
2
질문이요
0
56
2
수강기간 연장 문의드립니다.
0
58
2
문제 3-2 질문드립니다
0
47
2
수강기간 연장 문의 드립니다.
0
61
2
변수, 칼럼 , df 구분
0
51
2
수강기간 연장 문의드립니다.
0
50
2
수강기간 연장 문의
0
49
2





