Привет ребята. Мы рады представить вам наш проект. Его зовут Мой Вивино. Мы использовали данные для красных и белых вин. Будет уместно напомнить, что мы ничего не знаем о винах, потому что никогда не пробовали этот вид напитка. Поэтому мы использовали много ресурсов, чтобы найти информацию о винах. Поэтому проект был для нас очень интересным и познавательным. Начнем знакомиться ближе и глубже с нашим проектом.

Информация о наборе данных

Наш файл данных содержит записи, относящиеся к красным и белым винам. Он содержит информацию о 1599 образцах красного вина и 4898 образцах белого вина. Входные переменные в наборе данных состоят из типа вина (красное или белое вино) и показателей объективных тестов (например, уровней кислотности, значений рН, крепости и т. д.), в то время как целевая/выходная переменная представляет собой числовую оценку, основанную на органолептические данные — медиана не менее 3 оценок, сделанных винными экспертами. Каждый эксперт оценил качество вина от 0 (очень плохое) до 10 (очень отличное). Таким образом, у нас достаточно данных, чтобы, надеюсь, получить хорошие результаты после наших шагов.

Части очистки, исследования и визуализации.

Прежде всего, мы должны установить и импортировать некоторые библиотеки, которые помогут отображать и обрабатывать данные.

В этих данных у нас есть 13 столбцов:

1 — тип вина («красное» и «белое»)

2 — фиксированная кислотность: Кислоты, которые естественным образом содержатся в винограде, используются для брожения вина и переходят в вино.

3 — летучие кислоты: кислоты, испаряющиеся при низких температурах.

4 — лимонная кислота: Лимонная кислота используется в качестве кислотной добавки, повышающей кислотность вина.

5 — остаточный сахар: Количество сахара, оставшееся после прекращения брожения.

6 — хлориды: сумма солей хлора

7 — свободный диоксид серы: свободная форма SO2 существует в равновесии между молекулярным SO2 (в виде растворенного газа)

8 — общий диоксид серы: Сумма свободной и связанной форм S02

9 — плотность: Плотность винного сока в зависимости от процентного содержания спирта и сахара

10 — pH: показатель кислотности вина.

11 — сульфаты: Количество сульфата калия в качестве добавки к вину

12 — алкоголь: сколько алкоголя содержится в данном объеме вина (ABV). Вино обычно содержит от 5 до 15% спиртов. (% по объему)

13 — качество: от 0 (очень плохо) до 10 (отлично) от винных экспертов.

Вы можете более подробно рассмотреть наши данные на картинке ниже.

Прежде чем мы начнем анализировать данные, мы должны очистить данные от нулей и недостающих частей. После этого можно переходить к следующему шагу — корреляции методом «Пирсона». Это поможет увидеть связанные столбцы друг с другом. Изображение ниже поможет вам увидеть результат. В конце рисунка мы показали корреляцию со столбцом «качество».

Алкоголь положительно коррелирует с качеством вина.

Алкоголь имеет слабую положительную корреляцию со значением рН.

Лимонная кислота и плотность имеют сильную положительную корреляцию с фиксированной кислотностью.

pH имеет отрицательную корреляцию с плотностью, фиксированной кислотностью, лимонной кислотой и сульфатами.

Как мы видим, тепловая карта корреляции более уверенно понимает реальность между нашими столбцами.

Изучив корреляцию, мы построили гистограммы с нашими столбцами.

Здесь мы видимраспределениязначений всех переменных.

Давайте посмотрим на оценки качества вина в частях бара и пирога на картинке ниже.

Это его счет в процентах. Основная часть в круге 5 и 6 очков.

Просто обратите внимание на следующее изображение.

Обнаружена мультиколлинеарность!

Здесь мы видим, что между некоторыми частями есть корреляция. И это то, чего мы не хотим. Эта проблема называется «мультиколлинеарность».

Часть машинного обучения

Итак, мы подошли к части машинного обучения. Мы выбрали 5 моделей машинного обучения. К ним относятся DecisionTree, KNeighbors, RandomForest, GradientBoosting и SVC. Модели помогают сделать аналитику более интеллектуальной и быстрой, с возможностью масштабирования с учетом постоянно растущего объема данных.

О моделях:

  1. DecisionTree: дерево решений — это непараметрический алгоритм обучения с учителем, который используется как для задач классификации, так и для задач регрессии. Он имеет иерархическую древовидную структуру, которая состоит из корневого узла, ветвей, внутренних узлов и конечных узлов.
  2. KNeighbors: Алгоритм k-ближайших соседей, также известный как KNN или k-NN, представляет собой непараметрический классификатор с контролируемым обучением, который использует близость для классификации или прогнозирования группировки отдельных точек данных.
  3. Случайный лес — это контролируемый алгоритм машинного обучения, который широко используется в задачах классификации и регрессии. Он строит деревья решений на разных выборках и принимает большинство голосов за классификацию и среднее значение в случае регрессии.
  4. Повышение градиента — это метод машинного обучения, используемый, в частности, в задачах регрессии и классификации. Он дает модель прогнозирования в виде ансамбля слабых моделей прогнозирования, которые обычно представляют собой деревья решений.
  5. SVC, или классификатор опорных векторов, представляет собой контролируемый алгоритм машинного обучения, обычно используемый для задач классификации. SVC работает, сопоставляя точки данных с многомерным пространством, а затем находя оптимальную гиперплоскость, которая делит данные на два класса.

Наши результаты с точностью предсказания на картинке ниже могут показать вам аналогичные результаты. Мы надеемся, что это означает хороший результат для нас.

Краткое содержание:

Как видите, результат зависит от многих факторов. Основная часть — качество данных. Немаловажную роль играет и размер данных. Мы старались брать максимум от наших операций. Конечно, наш результат не из лучших, но мы старались. В начале обучения нашей модели мы получили точность около 0,5 и продолжаем работать. Мы больше работали над теми частями наших данных, которые имеют более высокую корреляцию со столбцом «качество». Наконец, наши модели дают нам приемлемую оценку. Лучший результат был в RandomForest. Как видите, разница между нашими моделями небольшая и не критическая.

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

Спасибо за внимание к нашему посту. Это был удивительный опыт, чтобы поделиться с вами нашим результатом.