Форум сайта python.su
Классическая учебная задача с Ирисами. Делал по книге “Введение в машинное обучение с помощью Python” Мюллера 2016-2017г.
Не только тут, но практически везде начинают с того, что загружают датасет из библиотеки:
from sklearn.datasets import load_iris
iris_dataset = load_iris()
Я хотел попробовать работать с файлом CSV, но как-то не задалось и притянул к работающему примеру, но с Warningom. Как-то подготовить CSV файл Ирисов или что правильно нужно делать? Вот переделанный пример из Мюллера:
import matplotlib.pyplot as plt import numpy as np import pandas as pd from pandas import read_csv, DataFrame, Series from pandas.plotting import scatter_matrix from sklearn.model_selection import train_test_split import mglearn from sklearn.neighbors import KNeighborsClassifier iris_dataset = pd.read_csv('datairis.csv') iris_targetset = pd.read_csv('targetiris.csv') X_train, X_test, y_train, y_test = train_test_split( iris_dataset, iris_targetset, random_state=0) knn = KNeighborsClassifier(n_neighbors=1) knn.fit(X_train, y_train) y_pred = knn.predict(X_test) print("Прогнозы для тестового набора:\n {}".format(y_pred)) print("Правильность на тестовом наборе: {:.2f}".format(knn.score(X_test, y_test)))
Офлайн
knn.fit(X_train, np.ravel(y_train))
Офлайн
noob_saibot, Спасибо огромное! Все заработало. Я этот ravel() как только ни присобачивал… Безграмотность, что поделать.
Офлайн
Если не трудно - скажите, где можно почитать и понять в чем была проблема с размерностью массива? Моим “пониманием” получалось, что размерность должна быть не в 1 столбец, а в … НОЛЬ. Или в два, что тоже непонятно.
Офлайн
ewroНужно было передать одномерный массив чтобы не выскочил warning, вы же передали n-мерный (n - длинна y).
Если не трудно - скажите, где можно почитать и понять в чем была проблема с размерностью массива? Моим “пониманием” получалось, что размерность должна быть не в 1 столбец, а в … НОЛЬ. Или в два, что тоже непонятно.
ewroНе пишите на русском: ни код, ни пути, ни комментарии к коду. Чтобы не ловить проблемы.
Машинное обучение\Ирисы
Отредактировано noob_saibot (Ноя. 29, 2017 11:12:56)
Офлайн
Спасибо за совет и ссылку. Буду прорубать.
Офлайн