@Task — мы предоставили образец набора данных о цветах Iris с 3 категорией для обучения нашего алгоритма/классификатора, и цель состоит в том, чтобы, если мы передадим какие-либо новые данные в этот классификатор, он сможет соответствующим образом предсказать правильный класс.

Теперь мы начнем с импорта нескольких библиотек Python для чтения файла данных или визуализации наших точек данных. Чтобы загрузить набор данных Iris Нажмите здесь и получить блокнот ipython, ссылка указана ниже.

После прочтения данных файла csv теперь мы изучаем набор данных и получаем некоторое базовое представление о наборе данных.

Некоторая основная информация о наборе данных

Iris_data содержит всего 6 функций, в которых 4 функции (SepalLengthCm, SepalWidthCm, PetalLengthCm, PetalwidthCm) являются независимыми функциями, а 1 функция (вид) является зависимой или целевой переменной. И столбец Id похож на серийный номер для каждой точки данных.

Все независимые функции имеют ненулевые значения с плавающей запятой, а целевая переменная имеет метки класса (Iris-setosa, Iris-versicolor, Iris-virginica).

С помощью функции «Iris_data.describe ()» мы получаем некоторую числовую информацию, такую ​​как общее количество точек данных, среднее значение, значение стандартного отклонения, значение 50-го процентиля и т. д. для каждой числовой функции в нашем наборе данных. Это поможет нам понять базовый статистический анализ данных.

Поскольку мы видели, что каждый класс (вид) имеет одинаковое количество точек данных, поэтому наши данные Iris называются сбалансированным набором данных. Ни один класс не является полностью доминирующим в нашем наборе данных.

Визуализация данных по радужной оболочке

Для визуализации набора данных мы использовали Matplotlib или seaborn в качестве библиотеки Python. Их множество графиков, таких как разброс, история, столбец, количество и т. д., для визуализации данных для лучшего понимания…

Глядя на график рассеяния, мы можем сказать, что все синие точки (Iris-setosa) идеально разделены по сравнению с оранжевыми (разноцветными) или зелеными (virginica) точками для функций (SepalLengthCm, SepalwidthCm).

Глядя на результат парного графика, мы уверены, что все синие точки хорошо разделены с двумя другими классами. Но Versicolor и virginica частично перекрывают друг друга.

На парном графике мы увидели, что это некоторая комбинация признаков, которая имеет очень меньшее перекрытие ч/б Versicolor и virginica, что означает, что эти признаки очень важны для целей нашей задачи классификации.

Изучение некоторых новых функций

Здесь я просто пытаюсь найти какую-то новую функцию с помощью существующих функций. Учет различий каждой функции друг с другом, чтобы получить дополнительную информацию, и визуализировать ее с помощью графиков.

Теперь поиск отношения ч / б новой функции на основе меток классов с использованием парного графика.

  • С помощью парного графика мы получаем некоторую новую информацию, но она, скорее всего, похожа на наши основные характеристики данных, как мы видели ранее.

Каждая комбинация хорошо разделяет Iris-setosa, но частично перекрывается ч/б Versicolor и virginica.

Модель классификации зданий

Сначала нам нужно удалить столбец Id, так как он бесполезен для классификации меток классов.

Визуализация дерева решений с помощью библиотеки graphviz

Поскольку наша модель была обучена….
Теперь мы можем проверить наше дерево решений, используя метод перекрестной проверки, чтобы получить оценку точности или производительности нашей модели.

  • Поскольку мы знаем, что выбранная нами функция работает хорошо, и модель дает очень хорошую оценку точности при проверке или фактических тестовых данных.
  • Итак, теперь мы можем обучить нашу модель на фактическом наборе данных поезда с выбранными функциями для оценки/развертывания нашей модели в реальных случаях.

'''Обучающая модель на фактических данных поезда... '''

Окончательное построение дерева решений для развертывания в реальных случаях….

Проверка производительности модели на реальных тестовых данных…

Вот как мы читаем, анализируем или визуализируем набор данных Iris с помощью Python и создаем простой классификатор дерева решений для прогнозирования классов Iris Species для новых точек данных, которые мы вводим в классификатор…

Если вы хотите получить весь код, ссылка на набор данных Iris и блокнот ipython (.ipynb) находится здесь.