Machine Learning/ML with Python Library
-
ML Intro | Iris Analysis - PredictionMachine Learning/ML with Python Library 2024. 1. 27. 21:25
이제 만든 모델을 이용해서 새 데이터에 대해 예측을 해보자. 아래와 같은 모양의 꽃의 종류는 무엇일까? 꽃잎(petal): - 길이: 5cm - 폭: 2.9cm 꽃받침(sepal): - 길이: 1cm - 폭: 0.2cm 이 측정값을 NumPy 배열로 만들어보자. 샘플의 수는 1개이고, 특성의 수는 모델에 훈련된 Feature 갯수와 같이 4개이기 떄문에, 1 * 4 크기의 NumPy 배열로 만들어보자. import numpy as np x_new = np.array([[5, 2.9, 1, 0.2]]) print("x_new.shape", x_new.shape) x_new.shape (1, 4) iris 측정값이 NumPy 배열에 행으로 들어갔다. scikit-learn은 항상 대이터가 2차원 배열일 것으..
-
ML Intro | Iris Analysis - K-Nearest Neighbors(KNN) ModelMachine Learning/ML with Python Library 2024. 1. 27. 19:09
이제 실제 머신러닝 모델을 만들어보자. scikit-learn은 다양한 분류 알고리즘을 제공하는데, 비교적 이해가 쉬운 KNN, 최근접 이웃 분류기를 사용했다. 훈련 데이터를 저장해서 만들어지면, 새로운 데이터 포인트가 주어졌을 때, 가장 가까운 훈련 데이터 포인터를 찾아서 지정한다. k-최근접 이기 때문에, 가장 가까운 이웃 하나가 아니라, k개의 이웃을 찾는다는 뜻이다. scikit-learn의 모든 ML 모델은 Estimator라는 파이썬 클래스로 각각 구현되어 있는데, KNN은 neighbors 모듈 아래 KNeighborsClassifier 클래스에 구현되어 있다. 여기서 가장 중요한 파라미터는 이웃의 개수, n_neighbors 인데, 우리는 1로 지정했다. from sklearn.neighb..
-
ML Intro | Iris Analysis - Look at your DataMachine Learning/ML with Python Library 2024. 1. 27. 18:34
먼저, 데이터가 어떤 패턴을 보여주고 있는지 살펴보았다. 데이터를 보고 SQL 쿼리를 돌리기 전에, 데이터를 시각화해서 보는 방법은 아주 효과적이다. 하지만 모든 데이터를 시각화만 가지고 판단할수는 없으니, 시각화만으로 섣불리 판단을 내리는것은 위험성이 있다. Scatter Plot을 이용하면, 각 데이터가 어떤 형태로 뭉쳐있는지, 펼쳐져 있는지, 그룹화가 되어있는지 쉽게 볼 수 있다. 4개의 특성에 대한 산점도 행렬을 시각화 해보도록 하자. 테이터의 색깔은 iris의 품종에 따라 구분한다. 이 그래프를 그리려면, 먼저 NumPy 배열을 pandas의 DataFrame으로 변경해야 한다. pandas에서는 산점도 행렬을 그려주는 scatter_matrix함수를 제공한다. 아래 코드를 이용하면 시각화를 할..
-
ML Intro | Iris Analysis - Training Data & Testing DataMachine Learning/ML with Python Library 2024. 1. 24. 22:05
지난번, 데이터 적재 과정을 마지고 나서, 이제 본격적으로 데이터를 전처리하는 과정으로 넘어가보자. 어떤 전처리가 필요할까? 지도학습을 완성시키기 위해서는 모델을 트레이닝하는것도 중요하지만, 테스팅 데이터를 따로 준비해두고, 트레이닝한 모델의 성능이 얼마나 좋은지를 판단할 수 있도록 하는 과정도 꼭 필요하다. 여기서 중요한점이 있다. 바로 모델을 만들 때 쓴 데이터는 평가 목적으로 사용하지 말아야한다는 것이다. 만약 트레이닝 데이터와 테스팅 데이터가 일치한다면, 새로운 사항들이 주어졌을 때, 이 모델은 어떠한 새로운것에 대해서는 잘 작동하지 않을수도 있다. 그렇기 때문에 우리가 가진 150개의 데이터를 두 그룹으로 나눈다. 하나는 모델을 만들 때 사용하며, 이것을 훈련 데이터(Training Data) ..
-
ML Intro | Iris Analysis - Import Data and CheckMachine Learning/ML with Python Library 2024. 1. 23. 19:02
Scikit Learn을 사용해서 첫번째 ML 어플리케이션을 만들어보자. 바로 Iris의 품종을 예측하는 모델인데, 꽃잎(petal)과 꽃받침(sepal)의 폭과 길이를 cm 단위로 측정한 값과 전문가들이 setosa, versicolor, virginica종으로 분류한 iris의 데이터도 가지고 이 값들을 이용해 어떤 품종인지 구분, 즉 Classification하는 어플을 만들것이다. 그래서 iris(붓꽃)의 종류는 클래스(class)라고 한다. 그리고 iris의 하나하나 특징은 레이블(label)이라고 한다. 먼저 코랩에서 sklearn에서 제공해주는 iris데이터를 import해서 살펴보았다. from sklearn.datasets import load_iris iris_dataset = load..
-
Introduction to Machine Learning with PythonMachine Learning/ML with Python Library 2024. 1. 22. 19:58
새해를 맞아 다시한번 머신러닝 프로젝트를 구상한다. 매년 배우려고 해도, 쌓여가는 업무에 제대로 된 모델을 만들어본 적 없었다. 2024년에는 반드시 해내고 내겠다는 다짐으로 커뮤니티에서 추천을 많이 하는 책을 샀다. 표지만 봐도 믿고 산다는 파충류 책이었다. 이 책을 정독하고 follow 하면서 ML의 엔트로피를 줄이고자 한다. https://www.yes24.com/Product/Goods/42806875 파이썬 라이브러리를 활용한 머신러닝 - 예스24 사이킷런 핵심 개발자에게 배우는 머신러닝 이론과 구현 현업에서 머신러닝을 연구하고 인공지능 서비스를 개발하기 위해 꼭 학위를 받을 필요는 없다. 사이킷런(scikit-learn)과 같은 훌륭한 머신 www.yes24.com 그렇다면, 머신러닝으로 어떤..