Привет ребята. Мы рады представить вам наш проект. Его зовут Мой Вивино. Мы использовали данные для красных и белых вин. Будет уместно напомнить, что мы ничего не знаем о винах, потому что никогда не пробовали этот вид напитка. Поэтому мы использовали много ресурсов, чтобы найти информацию о винах. Поэтому проект был для нас очень интересным и познавательным. Начнем знакомиться ближе и глубже с нашим проектом.
Информация о наборе данных
Наш файл данных содержит записи, относящиеся к красным и белым винам. Он содержит информацию о 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. Модели помогают сделать аналитику более интеллектуальной и быстрой, с возможностью масштабирования с учетом постоянно растущего объема данных.
О моделях:
- DecisionTree: дерево решений — это непараметрический алгоритм обучения с учителем, который используется как для задач классификации, так и для задач регрессии. Он имеет иерархическую древовидную структуру, которая состоит из корневого узла, ветвей, внутренних узлов и конечных узлов.
- KNeighbors: Алгоритм k-ближайших соседей, также известный как KNN или k-NN, представляет собой непараметрический классификатор с контролируемым обучением, который использует близость для классификации или прогнозирования группировки отдельных точек данных.
- Случайный лес — это контролируемый алгоритм машинного обучения, который широко используется в задачах классификации и регрессии. Он строит деревья решений на разных выборках и принимает большинство голосов за классификацию и среднее значение в случае регрессии.
- Повышение градиента — это метод машинного обучения, используемый, в частности, в задачах регрессии и классификации. Он дает модель прогнозирования в виде ансамбля слабых моделей прогнозирования, которые обычно представляют собой деревья решений.
- SVC, или классификатор опорных векторов, представляет собой контролируемый алгоритм машинного обучения, обычно используемый для задач классификации. SVC работает, сопоставляя точки данных с многомерным пространством, а затем находя оптимальную гиперплоскость, которая делит данные на два класса.
Наши результаты с точностью предсказания на картинке ниже могут показать вам аналогичные результаты. Мы надеемся, что это означает хороший результат для нас.
Краткое содержание:
Как видите, результат зависит от многих факторов. Основная часть — качество данных. Немаловажную роль играет и размер данных. Мы старались брать максимум от наших операций. Конечно, наш результат не из лучших, но мы старались. В начале обучения нашей модели мы получили точность около 0,5 и продолжаем работать. Мы больше работали над теми частями наших данных, которые имеют более высокую корреляцию со столбцом «качество». Наконец, наши модели дают нам приемлемую оценку. Лучший результат был в RandomForest. Как видите, разница между нашими моделями небольшая и не критическая.
Проект помог нам понять работу и исследование данных. Думаю, в будущем мы постараемся улучшить наш показатель точности. Потому что мы можем манипулировать некоторыми частями по-разному, и это может дать более совершенный результат.
Спасибо за внимание к нашему посту. Это был удивительный опыт, чтобы поделиться с вами нашим результатом.