빅데이터 분석기사/작업 유형 2 (ML)

충분한 데이터의 중요성

유방울 2023. 6. 6. 17:50

데이터 성능 비슷함

0.94 정도 

# 균형 데이터   # 1234, 1225, 1245
# 3개의 데이터가 비슷한 성능
for no in [1234, 1225, 1245] :
    model1 = LogisticRegression(max_iter=1000)
    data = make_sample(seedno=no, size=20000)
    ModelTrain(model1, data)
    
[(25961, 3), (6491, 3), (25961,), (6491,)]
train 성능: 0.9448403374292208
test 성능: 0.9440764134956093
[(26113, 3), (6529, 3), (26113,), (6529,)]
train 성능: 0.9466932179374258
test 성능: 0.9483841323326696
[(26238, 3), (6560, 3), (26238,), (6560,)]
train 성능: 0.9469090631907919
test 성능: 0.9461890243902439

데이터 성능 비슷함

0.91로 조금 성능 떨어짐

# 불균형 데이터
# 마찬가지로 성능이 비슷하지만 성능이 조금 떨어짐
for no in [1234, 1225, 1245] :
    model2 = LogisticRegression(max_iter=1000)
    data = make_sample(seedno=no, size=32000, step=1)
    ModelTrain(model2, data)
    
[(25600, 3), (6400, 3), (25600,), (6400,)]
train 성능: 0.919453125
test 성능: 0.9196875
[(25600, 3), (6400, 3), (25600,), (6400,)]
train 성능: 0.9196875
test 성능: 0.920625
[(25600, 3), (6400, 3), (25600,), (6400,)]
train 성능: 0.9180859375
test 성능: 0.91734375

성능이 각각 다름

# 부족한 데이터   # 1234, 1225, 1245
for no in [1234, 1225, 1245] :
    model3 = LogisticRegression(max_iter=1000)
    data = make_sample(seedno=no, size=40)
    ModelTrain(model3, data)
    
    
[(56, 3), (14, 3), (56,), (14,)]
train 성능: 0.9821428571428571
test 성능: 0.9285714285714286
[(54, 3), (14, 3), (54,), (14,)]
train 성능: 0.9444444444444444
test 성능: 0.9285714285714286
[(51, 3), (13, 3), (51,), (13,)]
train 성능: 0.9607843137254902
test 성능: 1.0

성능 각각 다르고 성능 떨어짐

# 부족한, 불균형 데이터 # 1234, 1225, 1245
for no in [1234, 1225, 1245] :
    model4 = LogisticRegression(max_iter=1000)
    data = make_sample(no, 60, step=1)
    ModelTrain(model4, data)
    
[(48, 3), (12, 3), (48,), (12,)]
train 성능: 0.9583333333333334
test 성능: 0.9166666666666666
[(48, 3), (12, 3), (48,), (12,)]
train 성능: 0.9375
test 성능: 1.0
[(48, 3), (12, 3), (48,), (12,)]
train 성능: 0.9166666666666666
test 성능: 1.0