Это мой личный проект, часть курса Data Science в Duke University, Fuqua School of Business, MQM Business Analytics Program.

Деловое понимание

Индустрия красного вина в последнее время демонстрирует экспоненциальный рост, поскольку растет количество алкогольных напитков в обществе. В настоящее время игроки отрасли используют сертификаты качества продукции для продвижения своей продукции. Это трудоемкий процесс и требует оценки со стороны экспертов, что делает этот процесс очень дорогостоящим. Кроме того, цена на красное вино зависит от довольно абстрактной концепции оценки вина дегустаторами, мнения которых могут иметь высокую степень вариативности. Еще одним жизненно важным фактором при сертификации и оценке качества красных вин являются физико-химические тесты, которые проводятся в лаборатории и учитывают такие факторы, как кислотность, уровень pH, сахар и другие химические свойства. Рынок красных вин был бы интересен, если бы человеческое качество дегустации могло быть связано с химическими свойствами вина, чтобы процессы сертификации и оценки качества были более контролируемыми. Цель этого проекта - определить, какие характеристики являются лучшими показателями качества красного вина, и получить представление о каждом из этих факторов, влияющих на качество красного вина нашей модели.

Понимание данных

В моем анализе будет использоваться набор данных качества Red Wine, доступный в репозитории машинного обучения UCI (https://archive.ics.uci.edu/ml/datasets/wine+quality). Я получил образцы красного вина с севера Португалии, чтобы смоделировать качество красного вина на основе физико-химических тестов. Набор данных содержит в общей сложности 12 переменных, которые были зарегистрированы для 1599 наблюдений. Эти данные позволят нам создать различные модели регрессии, чтобы определить, как разные независимые переменные помогают предсказать нашу зависимую переменную, качество. Знание того, как каждая переменная повлияет на качество красного вина, поможет производителям, дистрибьюторам и предприятиям отрасли красного вина лучше оценить свою стратегию производства, распределения и ценообразования.

Подготовка данных

Очистка данных

Моим первым шагом было очистить и подготовить данные для анализа. Я прошел несколько этапов очистки данных. Сначала я проверил типы данных, сосредоточившись на числовых и категориальных, чтобы упростить вычисление и визуализацию корреляции. Во-вторых, я попытался определить любые отсутствующие значения, существующие в нашем наборе данных. Наконец, я исследовал статистическую сводку каждого столбца / функции, чтобы обнаружить любые проблемы, такие как выбросы и аномальные распределения.

Исследование и преобразование данных

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

В порядке наибольшей корреляции эти переменные следующие:

1. Алкоголь: количество алкоголя в вине.

2. Летучие кислоты: содержат в вине высокое содержание уксусной кислоты, что приводит к неприятному привкусу уксуса.

3. Сульфаты: винная добавка, которая повышает уровень SO2 и действует как антимикробное и антиоксидантное средство.

4. Лимонная кислота: действует как консервант для повышения кислотности (небольшие количества добавляют винам свежесть и аромат).

5. Общий диоксид серы: количество свободных + связанных форм SO2.

6. Плотность: более сладкие вина имеют более высокую плотность.

7. Хлориды: количество соли в вине.

8. Фиксированная кислотность: нелетучие кислоты, которые не испаряются быстро.

9. pH: уровень кислотности.

10. Свободный диоксид серы: предотвращает рост микробов и окисление вина.

11. Остаточный сахар: количество сахара, оставшееся после остановки брожения. Ключ должен иметь идеальный баланс между - сладостью и кислинкой (вина ›45 г / л сладкие)

Начиная с нашей зависимой переменной, качества, я обнаружил, что популярны средние / средние значения качества: 5 и 6. Рассматривая преобразование зависимой переменной, я обнаружил, что наши данные распределены нормально. Этот вывод можно проверить, запустив график QQ, который показывает, что нет необходимости преобразовывать наши данные.

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

Видно, что в большинстве красных вин уровень pH всегда находится в диапазоне 3–4, а уровень хлоридов - больше всего на уровне 0,1. Проанализировав графики плотности, я построил график взаимодействия между интересующими нас числовыми переменными и зависимой переменной качества.

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

Чтобы глубже погрузиться в взаимосвязи между независимыми переменными и с качеством, я построил различные трехмерные графики. Изучая две переменные, алкоголь и летучие. Кислотность с качеством, мы можем увидеть, что при уровне алкоголя красных вин от 9% до 12% уровень летучей кислотности снижается по мере увеличения уровня алкоголя в винах. При более высоком содержании алкоголя (›12%) картина меняется на противоположную, что говорит о популярности высококачественных вин.

Продолжая исследовать переменную алкоголя, я выбрал лимонную кислоту и визуализировал их взаимодействие с качеством. Интересно, что для вин с процентным содержанием алкоголя ниже 14 по мере увеличения уровня лимонной кислоты качество красных вин повышается. Единственное исключение - 14% алкоголь, где уровень лимонной кислоты падает по мере повышения качества вина.

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

Наконец, мы рассмотрели, существует ли проблема коллинеарности в наших данных. В результате корреляционного анализа и проверки VIF мы обнаружили некоторые переменные со слегка высокой корреляцией. Чтобы справиться с такой потенциальной проблемой, мы воспользуемся техникой регуляризации LASSO в следующей части моделирования.

Моделирование

На основе EDA и корреляционного анализа в части моделирования были использованы три потенциальных модели.

Модель 1: поскольку корреляционный анализ показывает, что качество сильно коррелирует с подмножеством переменных (наша «пятерка лучших»), я использовал полилинейную регрессию для построения оптимального модель прогноза качества красного вина. Удалив незначительную независимую переменную из исходной модели, мы получили «Модель 1», которая включала наши «4 лучших» независимых переменных. Используя перекрестную проверку K-Fold, у нас есть сводка по модели 1, как показано ниже:

В Модели 1 все идентифицированные переменные сильно коррелируют с нашей целевой переменной (качество) и показывают статистическую значимость. Алкоголь и сульфаты имеют положительную связь с качеством, подразумевая, что более высокий уровень алкоголя и сульфатов приведет к более высокому качеству красного вина. Напротив, существует отрицательная взаимосвязь между летучими кислотами и общим содержанием диоксида серы и качеством, что свидетельствует о том, что люди ожидают низкого уровня уксусной кислоты и SO2 в высококачественном вине. Например, большое количество уксусной кислоты может вызвать неприятный вкус уксуса.

Модель 2. Затем, используя метод LASSO, я придумал вторую модель («Модель 2»), которая выполняет как выбор переменных, так и регуляризацию. Это привело к подмножеству предикторов (наша «6 лучших»), которые минимизируют ошибку предсказания для переменной количественного отклика - качества. Это подмножество включает шесть переменных: фиксированная кислотность, летучая кислотность, хлориды, общий диоксид серы, сульфаты и спирт. Снова применив перекрестную проверку K-Fold, мы получили сводку Модели 2, как показано ниже:

Все эти шесть переменных сильно коррелируют с нашей целевой переменной (качество) и демонстрируют высокую статистическую значимость. По сравнению с моделью 1 в новой модели есть две дополнительные переменные: фиксированная кислотность и хлориды, предельное влияние которых на качество разнонаправлено. Отрицательный коэффициент оценки хлоридов означает, что вино более высокого качества должно иметь меньшее количество соли. Между тем, существует небольшая положительная связь между фиксированной кислотностью и качеством, подразумевая, что нелетучие кислоты, которые не испаряются быстро, должны быть индикатором высокого качества вина.

Модель 3. Наконец, я запустил случайный лес в качестве алгоритма дерева регрессии машинного обучения, используемого в процессе моделирования. Это помогает создать случайную выборку из нескольких деревьев решений регрессии и объединить их для получения более стабильного и точного прогноза посредством перекрестной проверки. Мы называем эту модель «Модель 3», и ее краткое содержание приведено ниже:

Глубоко погрузившись в отбор переменных, у нас есть 10 основных предикторов, наиболее важных для модели. Это делается с помощью MDI (важность Джини или среднее уменьшение примесей), который вычисляет важность каждой функции как сумму количества разбиений (по всем деревьям), которые включают эту функцию, пропорционально количеству разбиенных ею выборок. По сравнению с Model 1 и Model 2 у нас есть дополнительные сведения о таких переменных, как плотность и pH.

Оценка

После запуска наших трех моделей я использовал три показателя: R-квадрат, RMSE и MAE, чтобы оценить эффективность прогнозирования нашей модели. Как мы и ожидали, Модель 3 является лучшей по всем трем показателям: R-Squared: 48,50%, RMSE: 0,5843 и MAE: 0,4222. Между тем, модели 1 и 2, предикторы которых были выбраны из наших методов корреляционного анализа и регуляризации, не демонстрируют большой разницы в показателях эффективности.

Разумно, что случайный лес в модели 3 дает нам превосходные «прогнозы». Однако с точки зрения интерпретации «предельного воздействия» Модель 1 и Модель 2 могут оказаться в выигрыше, даже если их показатели эффективности отстают. В контексте нашего бизнес-вопроса, направленного на прогнозирование качества красного вина, Модель 3 будет лучшим выбором.

Развертывание

Проанализировав данные физико-химических испытаний образцов красных вин с севера Португалии, я смог создать модель, которая может помочь отраслевым производителям, дистрибьюторам и продавцам прогнозировать качество красных винных продуктов и лучше понимать каждую критическую и более важную проблему. -современные особенности. Я обнаружил, что наборы функций на основе Model 3 - Random Forest работают лучше, чем другие. В целом, используя Модель 3 в качестве нашей лучшей модели для прогнозирования, я определил четыре характеристики как наиболее важные: летучая кислотность, лимонная кислота, сульфаты и алкоголь. Чтобы быть более конкретным, высококачественные вина, похоже, имеют более низкую летучую кислотность, более высокое содержание алкоголя и средне-высокие значения сульфата. Между тем, вина более низкого качества, как правило, имеют низкие значения содержания лимонной кислоты.

Однако у этого анализа есть некоторые ограничения. Во-первых, основная проблема заключалась в том, что наш набор данных был несбалансированным. Большинство значений качества были «обычными» (5 и 6), которые не внесли существенного вклада в поиск оптимальной модели. Эти значения затрудняли определение различного влияния каждого фактора на «высокое» или «низкое» качество вина, что и было основным предметом данного анализа. Чтобы улучшить нашу прогнозную модель, нам нужны более сбалансированные данные. Еще одно ограничение, которое стоит упомянуть в наборе данных, заключалось в том, что у него было всего 12 атрибутов, которые могут сузить точность нашего прогнозирования качества красного вина. Решением для этого является включение более релевантных данных, таких как год сбора урожая, время варки, местоположение или тип вина. В будущем мы также можем попробовать другие меры производительности и другие методы машинного обучения для повышения производительности и сравнения результатов. Этот анализ поможет винным предприятиям прогнозировать качество красных вин на основе определенных характеристик, а также производить и продавать хорошие сопутствующие товары.

Вы можете получить доступ к более подробной информации о моем анализе через мой Github.