inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

5회 기출유형 (작업형2)

5회 작업형2 질문있습니다.

해결된 질문

649

류한민

작성한 질문수 4

0

import pandas as pd
train = pd.read_csv("train.csv")
test = pd.read_csv("test.csv")
# print(train.shape,test.shape)
# print(train.head())
# print(test.head())
# print(train.isnull().sum())
# print(test.isnull().sum())
# print(train.describe(include='object'))
# print(test.describe(include='object'))
target = train.pop('price')
from sklearn.preprocessing import LabelEncoder
cols = ['model']
for col in cols:
  le = LabelEncoder()
  train[col] = le.fit_transform(train[col])
  test[col] = le.transform(test[col])
# print(train.head())
train = pd.get_dummies(train)
test = pd.get_dummies(test)
# from sklearn.preprocessing import MinMaxScaler
# cols = ['year','mileage','tax','mpg','engineSize']
# 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,target,test_size=0.2,random_state=2023)
# from sklearn.ensemble import RandomForestRegressor
# model = RandomForestRegressor(random_state=2023,max_depth=5,n_estimators=200)
# model.fit(X_tr,y_tr)
# pred = model.predict(X_val)
# print(pred)
import lightgbm as lgb
model = lgb.LGBMRegressor(random_state=2023,max_depth=5,n_estimators=200)
model.fit(X_tr,y_tr)
pred = model.predict(X_val)
from sklearn.metrics import mean_squared_error
print(mean_squared_error(y_val,pred)**0.5)
pred = model.predict(test)
pd.DataFrame({'pred':pred}).to_csv("result.csv",index=False)
pd.read_csv("result.csv")
  1. model의 unique개수가 19개로 많아서 model만 라벨인코딩한 후 나머지는 원핫인코딩으로 진행했는데 위의 코드처럼 하는게 맞을까요?

  2. 수치형에서 minmax사용했을 때, 별 차이가 없으면 범주형 인코딩만 진행해도 될까요? 아니면 범주형은 필수이고 수치형은 선택이니, 굳이 안해봐도 될까요?

  3. lightgbm을 사용했을때 값은 나오지만 아래와 같은 오류도 같이 출력됩니다. 무슨 문제인가요?

    [LightGBM] [Warning] No further splits with positive gain, best gain: -inf

  4. learning_rate는 lightgbm에만 쓸 수 있는건가요? 랜덤포레스트에서 사용시 오류가 뜹니다.

  5. max_depth는 3~7, n_estimators는 200~800사이로 하는게 맞나요?

  6. 실습환경을 보면 데이터가 자동으로 불러와져있는데, 실제 시험에서도 자동으로 불러와져있나요? 아니면, 데이터 저장 위치를 알려주나요?

  7. 작업형1,2,3 모두 제출은 여러번 가능하고 마지막으로 제출한 값이 저장되는게 맞나요?

python 머신러닝 빅데이터 pandas 빅데이터분석기사

답변 1

0

퇴근후딴짓

1 네 잘 풀이 한 것 같아요

2 네 스케일링은 선택이에요! 인코딩은 필수 입니다.

3 모델이 더 이상의 유의미한 분할을 찾지 못했다는 것을 의미합니다. 이는 일반적으로 모델이 충분히 학습되었거나, 데이터에 더 이상 학습할 정보가 없음을 나타냅니다. 이 경고는 성능에 크게 영향을 미치지 않으므로 걱정할 필요는 없습니다.

4 네 부스팅 계열에만 있습니다 랜덤포레스트에는 없는 파라미터입니다.

5 분류일 때 예를 들어서 설명했습니다. 회귀는 max_depth가 제 경험으로는 더 컷습니다.(7~15) 그런데 경험적인 수치일 뿐 데이터에 따라 달라지니 참고로 범위는 생각해주세요. 성능이 개선되지 않는데 무리하게 튜닝할 필요 없습니다.

6 지금까지는 불러오는 코드는 작성되어 있었어요

7 네 맞습니다 그래서 한 번 더 풀고 다시 제출하지 않는 경우도 간혹 있으니 주의해주세요!!

 

합격 응원합니다 🙂

강의 연장 문의

0

8

1

수강 신청 연장 문의드립니다.

0

19

1

작업형 1번문제... 환경관련

0

24

2

12회 기출은 언제 업데이트 될까요??

0

35

2

8/6 작성한 연장문의 질문글에 대한 재요청

0

37

2

수강기간 연장 문의

0

34

2

수강기간 연장문의

0

36

2

수강기간 연장 요청 문의드립니다

0

36

2

수강 기간 연장 문의

0

44

2

수강연장 가능 문의 (기간 약 한달반)

0

57

2

수강기간 연장 가능할까요 선생님

0

72

2

Section15. 수업에 사용하는 데이터 주소가 다 보이지 않아서 실습을 위한 데이터를 다운 받지 못하고 있습니다.

0

52

3

수강연장요청 문의

0

85

2

아무래도 다음 시험 연장은 어렵겠죠?

0

105

2

빅분기 12회 결과 관련 문의

0

111

1

책이랑 강의랑 순서나 예제가 다른것 같네요

0

80

2

수강연장 문의

0

103

2

재검토 요청 방법 좀 알려주셔요...-.-;;

0

103

2

12회 실기 질문(작업형 2)

0

90

2

뒤로가기 버튼 같은 것이 있나요?

0

64

1

강의 연장 문의

0

98

2

출력값 질문

0

70

2

수업노트가 어디에 있나요?

0

63

1

실기시험 제출관련

0

225

3