В этом исследовании, основанном на данных, мы углубляемся в сложные взаимосвязи между различными характеристиками автомобиля и одним из самых востребованных показателей в автомобильном мире — миль на галлон (миль на галлон). Посредством сочетания прогнозного моделирования и причинно-следственных связей мы стремимся выявить причинно-следственные эффекты и предоставить ценную информацию о повышении топливной эффективности.
Введение
Взаимосвязь между характеристиками автомобиля и расходом топлива на галлон уже давно является темой интереса и дискуссий. Можем ли мы повысить топливную экономичность автомобиля, изменив определенные характеристики? Существует ли причинно-следственная связь между этими атрибутами и MPG? Чтобы ответить на эти вопросы, мы будем следовать структурированному подходу:
- Предварительная обработка данных и прогнозное моделирование
- Причинно-следственный вывод для прогнозирования MPG
- Результаты и интерпретации
Давайте отправимся в это путешествие!
Часть 1. Предварительная обработка данных и прогнозное моделирование
Предварительная обработка данных
Мы начнем наш анализ с загрузки набора данных и выполнения основных шагов предварительной обработки данных:
# Load the dataset data = pd.read_csv("auto-mpg.data") # Handling missing values in 'Horsepower' median = data['Horsepower'].median() data['Horsepower'] = data['Horsepower'].fillna(median) # Exploring attribute distributions data.hist(bins=50, figsize=(20,15)) # Handling categorical attributes data = preprocess_origin_cols(data) # Creating new features data = create_new_features(data)
Прогнозное моделирование
Подготовив наш набор данных, мы построим прогнозные модели для оценки MPG. Мы начнем с модели линейной регрессии и оценим ее эффективность:
# Splitting data into training and testing sets X_train, X_test, y_train, y_test = train_test_split(data, labels, test_size=0.2, random_state=42) # Building and evaluating a Linear Regression model lin_reg = LinearRegression() lin_reg.fit(X_train_prepared, y_train) predictions = lin_reg.predict(X_test_prepared) rmse = np.sqrt(mean_squared_error(y_test, predictions))
Но можем ли мы сделать больше, чем просто предсказание? Можем ли мы понять причинно-следственные связи между атрибутами и MPG? Вот тут-то и приходит на помощь причинно-следственный вывод!
Часть 2: Причинно-следственный вывод для прогнозирования MPG
Определение причинно-следственного графика
Чтобы изучить причинно-следственные связи, мы определим причинно-следственный граф, который представляет потенциальные причинно-следственные связи между атрибутами и MPG. Вот наш причинно-следственный график:
causal_graph = """ digraph { Cylinders -> MPG; Displacement -> MPG; Weight -> MPG; Year -> MPG; Horsepower -> MPG; Acceleration -> MPG } """
Построение причинно-следственных моделей
Мы создадим отдельные причинно-следственные модели для каждого атрибута, чтобы оценить его причинное влияние на MPG, одновременно контролируя общие причины:
# Create causal models model1 = CausalModel(data=auto, treatment='Cylinders', outcome="MPG", graph=causal_graph, common_causes=common_causes) # Identify causal estimands identified_estimand1 = model1.identify_effect(proceed_when_unidentifiable=True) # Estimate causal effects causal_estimate1 = model1.estimate_effect(identified_estimand1, method_name="backdoor.linear_regression", test_significance=True)
Анализ причинно-следственных связей
Мы рассчитали причинное влияние каждого атрибута на MPG. Давайте углубимся в результаты:
# Store the causal effect results in a dictionary data = { 'Attribute': ['Cylinders', 'Displacement', 'Weight', 'Year', 'Horsepower', 'Acceleration'], 'Causal Effect (MPG Change)': [causal_estimate1, causal_estimate2, causal_estimate3, causal_estimate4, causal_estimate5, causal_estimate6], 'p-value': [p_value1, p_value2, p_value3, p_value4, p_value5, p_value6] }
Часть 3: Результаты и интерпретации
Теперь давайте проанализируем результаты причинно-следственной связи:
Цилиндры против MPG
Наш анализ показывает значительное негативное причинное влияние цилиндров на MPG с p-значением 2,0000e-15. Это говорит о том, что увеличение количества цилиндров приводит к снижению топливной эффективности.
Рабочий объем против MPG
Причинное влияние смещения на MPG отрицательно, хотя и с меньшей величиной. Его значение p равно 2,6785e-19, что указывает на то, что более высокий рабочий объем имеет тенденцию снижать топливную эффективность.
Вес по сравнению с MPG
Вес демонстрирует сильное отрицательное причинно-следственное влияние на MPG с удивительно низким значением p 3,3674e-40. Более тяжелые автомобили, как правило, имеют более низкий расход топлива.
Год по сравнению с MPG
Причинно-следственное влияние года на расход топлива на галлон положительное, что указывает на то, что новые автомобили, как правило, более экономичны. Значение p 2,0473e-52 подчеркивает сильную статистическую значимость этой взаимосвязи.
Лошадиная сила против миль на галлон
Мощность в лошадиных силах отрицательно влияет на расход топлива, что позволяет предположить, что более мощные двигатели могут снизить топливную экономичность. Значение p составляет 1,3190e-11, что указывает на статистическую значимость.
Ускорение против MPG
Ускорение также оказывает отрицательное причинное влияние на MPG со значением p 8,2971e-24. Более быстрое ускорение обычно связано с более низкой топливной экономичностью.
Из приведенных выше результатов можно сделать вывод, что из шести переменных лечения, которые продемонстрировали корреляцию с целевой переменной, MPG (миль на галлон), только три имеют значительную причинно-следственную связь.
Вес. Вполне понятно, что увеличение веса автомобиля окажет существенное негативное влияние на топливную экономичность автомобиля. То же самое подтверждается результатами причинно-следственной связи, показанными в Таблице 1.
Лошадиная сила и ускорение: Также весьма интуитивно понятно, что чем больше мощность (л.с.) и способность к ускорению у автомобиля, тем меньше будет его топливная экономичность или расход миль на галлон, т. е. существует существенно отрицательный причинный эффект на целевая переменная. То же самое подтверждается результатами причинно-следственной связи, представленными в таблице 1.
Что касается других переменных, то никакой значимой причинно-следственной связи установить невозможно. Мы не можем с уверенностью сказать, что более новый автомобиль будет иметь лучшую топливную экономичность (значение MPG) или что автомобиль с большим количеством цилиндров приведет к более низкому значению MPG. Это может быть связано с тем, что множество дополнительных внешних факторов проектирования, таких как выбор материала для цилиндров и качество изготовления бренда, могут сыграть роль и повлиять на результаты.
Заключение
Благодаря этому исследованию причинного влияния характеристик автомобиля на расход топлива на галлон мы получили ценную информацию о том, как различные факторы влияют на эффективность использования топлива. Вооружившись этими знаниями, автомобильные инженеры и энтузиасты могут принимать обоснованные решения по увеличению расхода топлива и расходу топлива.
Объединив прогнозное моделирование и причинно-следственную связь, мы обнаружили сложные взаимосвязи между атрибутами и расходом топлива на галлон, открывая путь к более эффективному и устойчивому транспорту.
Теперь ваша очередь применить эти методы к вашим собственным наборам данных и раскрыть причинно-следственные связи!
Для подробного кода и результатов нажмите здесь
Чтобы узнать больше интересного, нажмите здесь
Рекомендации
- Джудея Перл, Мэделин Глимур, Николас П. Джуэлл. (2016). Причинно-следственный вывод в статистике: учебник для начинающих.
- Документация Scikit-Learn: https://scikit-learn.org/stable/documentation.html
- Документация DoWhy: https://microsoft.github.io/dowhy/
На простом английском языке
Спасибо, что вы являетесь частью нашего сообщества! Прежде чем уйти:
- Обязательно аплодируйте и следуйте за автором! 👏
- Еще больше контента вы можете найти на PlainEnglish.io 🚀
- Подпишитесь на нашу бесплатную еженедельную рассылку. 🗞️
- Следуйте за нами в Twitter(X), LinkedIn, YouTube и Discord.