[2023.12.19] What is Machine Learning(2)

하은·2023년 12월 19일
0

- scikit learn

= 2007년 구글 썸머코드에서 처음 구현
= 현재 파이썬에서 가장 유명한 기계학습 오픈소스 라이브러리

- scikit learn을 이용한 결정나무의 구현

from sklearn.tree import DecisionTreeClassifier

iris_tree = DecisionTreeClassifier()

iris.data
iris.data.shape
iris_tree.fit(=학습해라) (iris.data[:, 2:], iris.target())
= petal length와 width를 구하는 것
= 사람도 이건 강아지야, 고양이야라고 배워서 아는 것 
= 데이터 알려주고, 정답을 주는 것
= 학습 끝

- accuracy 확인

값만 던져주고 예측하라고 시킨 것
= 데이터에서 학습한게 iris_tree
= 학습이 완료된 애한테 데이터를 주고

from sklearn.metrics import accuracy_score

y_pred-tr = iris_tree.predict(iris.data[:, 2:])
accuracy_score(iris.target, y_pred_tr)

decisionTree를 이용한 iris 분류

- 과적합

- 지도학습

  • 학습 대상이 되는 데이터에 정답(label)을 붙여서 학습시키고
  • 모델을 얻어서 완전히 새로운 데이터에 모델을 사용해서 '답'을 얻고자 하는 것

머신러닝안에 딥러닝이 포함된다고 하지만, 딥러닝의 규모가 꽤 커졌다.

- mlxtend 설치

sklearn에 없는 몇몇 유용한 기능을 가지고 있다

pip install mlxtend

...

결과를 보여주는 잔기술들(zip과 언패킹)

- 리스트를 튜플로 zip

list = ['a', 'b', 'c']
list2 = [1, 2, 3]

pairs = [pair for pair in zip(list1, list2)]
pairs

==> [('a', 1), ('b', 2), ('c', 3)]

만약 리스트를 다시 a,1 b,2 c,3과같은 튜플로 만들고 싶을 때
= 같은 위치끼리 묶어서 만들어줌

- 튜플을 dict으로

dict(pairs)

- 한번에

dict(zip(list1, list2))

- 풀고싶다면(unpacking 인자를 이용한 역변환)

a, b = zip(*paris)

print(list(a))
print(list(b))

0개의 댓글