알파카징징이 알파카징징이 코딩하는 알파카

혼공머_1_3 마켓과 머신러닝

» writing

혼자공부하는머신러닝+딥러닝 수업을 참고하여 작성하였습니다

1_3_마켓과 머신러닝

정의


마켓과 머신러닝

1. 머신러닝
1) 이진분류
: 여러개의 종류를 클래스 라 부른다
: 여러개의 클래스를 구별해 내는 문제를 분류 (classification)
: 2개의 클래스 중 하나를 고르는 문제를 이진분류 (binary classification)

2) 마켓
: 도미의 특징(bream_length, bream_weight)
- 특성 : 데이터의 특징
- 산점도(scatter plot) : x, y축으로 이뤄진 좌표계에 두 변수(x, y) 의 관계를 표현하는 방법
  • 1.도미, 빙어 그래프
if fish_lengh >= 30 :
    print("도미")
bream_length = [23,34,23,11,22,33,42,12]
bream_weight = [242,323,222,333,245,266,234,254]

smelt_length = [11,12,9,13,14,15,16,17]
smelt_weight = [6,5,7,9,4,6,7,8]

import matplotlib.pyplot as plt

plt.scatter(bream_length, bream_weight)
plt.scatter(smelt_length, smelt_weight)

plt.xlabel('length')
plt.ylabel('weight')
plt.show()

도미, 빙어 그래프

  • 2.도미와 빙어 합치기
length = bream_length + smelt_length
weight = bream_weight + smelt_weight
fish_data = [[l, w] for l, w in zip(length, weight)]

# fish_data
# [[23, 242],
# [34, 323],
# [23, 222],
# [11, 333],
# [22, 245],
# [33, 266],
# [42, 234],
# [12, 254],
# [11, 6],
# [12, 5],
# [9, 7],
# [13, 9],
# [14, 4],
# [15, 6],
# [16, 7],
# [17, 8]]
  • 3.정답 준비
fish_target = [1] * 8 + [0] * 6
# [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0]
  • 4.k-최근접 이웃

k-최근접 이웃 알고리즘 (KNeighborsClassifier) : 주변에서 가장 가까운 K개의 데이터를 보고 다수결의 원칙에 따라 데이터를 예측

fit() : 훈련(training) 모델에 데이터를 전달하여 규칙을 학습하는 과정

from sklearn.neighbors import KNeighborsClassifier
kn = KNeighborsClassifier()
kn.fit(fish_data, fish_target)
kn.score(fish_data, fish_target)
kn16 = KNeighborsClassifier(n_neighbors=14)
kn16.fit(fish_data, fish_target)
kn16.score(fish_data, fish_target)
# 0.5714285714285714

print(8/14)
# 0.5714285714285714
  • 5.핵심포인트

특성 : 데이터를 표현하는 하나의 성질

훈련 : 머신러닝 알고리즘이 데이터에서 규칙을 찾는 과정

K-최근접 이웃 알고리즘 : n_neighbors 매개변수로 이웃의 개수를 지정 (기본값 5)

fit() : 사이킷런 모델을 훈련할 때 사용하는 메소드(훈련 특성, 정답 데이터 전달)

predict() : 사이킷런 모델을 훈련하고 예측할 때 사용하는 메소드 (특성 데이터 하나만 매개변수)

score() : 훈련된 사이킷런 모델의 선능을 측정 (특성과 정답 데이터 전달)

모델 : 알고리즘이 구현된 객체 (종종 알고리즘 자체를 모델)

정확도 : 정확한 답을 몇 개 맞혔는지를 백분율로 나타낸 값 (0~1 사이 값)

matplotlib 의 scatter : 산점도를 그리는 맷플롯립 함수