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

Подсказка ChatGPT: «Какие отрасли внедряют ИИ и машинное обучение при разработке продуктов и услуг и с какой скоростью? Укажите исходные ссылки»

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

Вот несколько источников, которые дают представление о внедрении ИИ и машинного обучения в различных отраслях:

  1. Здравоохранение. Согласно отчету Accenture, к 2022 году мировая индустрия здравоохранения потратит 8 миллиардов долларов на ИИ. ИИ и машинное обучение используются для разработки персонализированных методов лечения, диагностики заболеваний и улучшения результатов лечения пациентов. (Источник: https://www.accenture.com/us-en/insights/health/artificial-intelligence-healthcare)
  2. Финансы. Финансовая отрасль одной из первых внедрила искусственный интеллект и машинное обучение. Эти технологии используются для обнаружения мошенничества, управления рисками и принятия инвестиционных решений. Согласно отчету PwC, к 2030 году ИИ может внести в мировую экономику 15,7 трлн долларов, причем финансовый сектор станет одним из ключевых бенефициаров. (Источник: https://www.pwc.com/gx/en/issues/analytics/assets/pwc-ai-analysis-sizing-the-prize-report.pdf)
  3. Розничная торговля. Розничная торговля использует искусственный интеллект и машинное обучение для улучшения качества обслуживания клиентов, оптимизации управления запасами и разработки персонализированных маркетинговых кампаний. Согласно отчету Juniper Research, к 2022 году ритейлеры потратят на ИИ 7,3 миллиарда долларов. анализ-возможности»)
  4. Производство: искусственный интеллект и машинное обучение используются для оптимизации производственных процессов, улучшения контроля качества и сокращения времени простоя. Согласно отчету Tractica, ожидается, что к 2025 году мировой рынок ИИ в производстве достигнет 17,2 млрд долларов. (Источник: https://www.tractica.com/research/artificial-intelligence-for-manufacturing-applications/) )

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

Подсказка ChatGPT: «Какие типы продуктов и услуг разрабатываются с помощью ИИ и машинного обучения и чем они отличаются от традиционных предложений? Укажите исходные ссылки»

  1. Персональные рекомендации. Платформы электронной коммерции используют искусственный интеллект и машинное обучение для предоставления пользователям персонализированных рекомендаций по продуктам. Эти рекомендации основаны на истории покупок пользователя, поведении в Интернете и предпочтениях. По сравнению с традиционными рекомендациями, основанными на общих тенденциях или отзывах пользователей, персонализированные рекомендации являются более точными и актуальными. (Источник: https://emerj.com/ai-sector-overviews/machine-learning-ecommerce/)
  2. Чат-боты и виртуальные помощники. ИИ и машинное обучение используются для разработки чат-ботов и виртуальных помощников, которые могут взаимодействовать с пользователями на естественном языке. Эти инструменты можно использовать для поддержки клиентов, привлечения потенциальных клиентов и поиска информации. По сравнению с традиционными методами поддержки клиентов, которые могут быть медленными и громоздкими, чат-боты и виртуальные помощники обеспечивают быстрый и эффективный способ удовлетворения потребностей клиентов. (Источник: https://www.ibm.com/cloud/learn/chatbots)
  3. Прогностическое обслуживание: производители используют искусственный интеллект и машинное обучение, чтобы прогнозировать, когда оборудование выйдет из строя, и соответствующим образом планировать техническое обслуживание. Анализируя данные от датчиков и других источников, алгоритмы ИИ могут обнаруживать закономерности, указывающие на вероятность отказа машины. По сравнению с традиционными методами обслуживания, которые основаны на фиксированных графиках или ручных проверках, профилактическое обслуживание может сократить время простоя и снизить затраты. (Источник: https://www.cognizant.com/whitepapers/the-future-of-manufacturing-predictive-maintenance)
  4. Медицинская диагностика: искусственный интеллект и машинное обучение используются для диагностики заболеваний на основе медицинских изображений и других данных. Эти инструменты могут быстро и точно анализировать большие объемы данных, предоставляя врачам информацию, которая помогает им принимать более обоснованные решения. По сравнению с традиционными методами диагностики, которые могут занимать много времени и подвержены ошибкам, ИИ и машинное обучение могут улучшить результаты лечения пациентов и снизить затраты. (Источник: https://emerj.com/ai-sector-overviews/machine-learning-healthcare/)

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

Подсказка ChatGPT: «Каковы преимущества и проблемы, связанные с использованием этих технологий при разработке продуктов и услуг? Укажите исходные ссылки»

Преимущества:

  1. Эффективность: искусственный интеллект и машинное обучение могут автоматизировать повторяющиеся задачи, сокращая время и усилия, необходимые для разработки продуктов и услуг. (Источник: https://www.bcg.com/publications/2018/artificial-intelligence-in-business-gets-real.aspx)
  2. Персонализация: ИИ и машинное обучение могут позволить компаниям разрабатывать продукты и услуги, адаптированные к индивидуальным потребностям и предпочтениям клиентов. (Источник: https://emerj.com/ai-sector-overviews/machine-learning-ecommerce/)
  3. Точность: искусственный интеллект и машинное обучение могут повысить точность прогнозов и рекомендаций, что приведет к лучшим результатам для клиентов и бизнеса. (Источник: https://www.accenture.com/us-en/insights/technology/artificial-intelligence-in-business)
  4. Инновации: ИИ и машинное обучение могут позволить компаниям разрабатывать новые продукты и услуги, которые раньше были невозможны, что ведет к новым потокам доходов и возможностям роста. (Источник: https://www.mckinsey.com/business-functions/mckinsey-analytics/our-insights/artificial-intelligence-in-business-separating-the-hype-from-reality)

Проблемы:

  1. Качество данных. Алгоритмы искусственного интеллекта и машинного обучения требуют для эффективной работы больших объемов высококачественных данных. Низкое качество данных может привести к неточным прогнозам и рекомендациям. (Источник: https://www.mckinsey.com/business-functions/mckinsey-analytics/our-insights/why-data-culture-matters)
  2. Предвзятость: алгоритмы искусственного интеллекта и машинного обучения могут отражать предвзятость данных, используемых для их обучения, что приводит к дискриминационным результатам. (Источник: https://hbr.org/2019/04/the-danger-of-biased-algorithms)
  3. Сложность: алгоритмы искусственного интеллекта и машинного обучения могут быть сложными и трудными для понимания, что затрудняет интерпретацию их результатов и обеспечение их точности. (Источник: https://hbr.org/2018/01/what-artificial-intelligence-can-and-cant-do-right-now)
  4. Стоимость: внедрение искусственного интеллекта и машинного обучения может быть дорогостоящим, требуя значительных инвестиций в оборудование, программное обеспечение и обучение. (Источник: https://www.forbes.com/sites/forbetechcouncil/2021/02/16/the-cost-of-artificial-intelligence-explained/?sh=2920d5d74372)

Подсказка ChatGPT: «Как компании успешно интегрировали искусственный интеллект и машинное обучение в свои процессы разработки продуктов и услуг и чему другие могут научиться на их опыте? Укажите исходные ссылки»

  1. Netflix: Netflix использует алгоритмы машинного обучения для персонализации рекомендаций для своих пользователей. Анализируя данные о пользовательских предпочтениях и поведении при просмотре, Netflix может предлагать контент, соответствующий интересам каждого пользователя. Извлеченные уроки: компании могут использовать искусственный интеллект и машинное обучение для улучшения качества обслуживания клиентов, предоставляя персонализированные рекомендации, которые более актуальны, чем традиционные рекомендации. (Источник: https://emerj.com/ai-sector-overviews/machine-learning-ecommerce/)
  2. Amazon: Amazon использует алгоритмы искусственного интеллекта и машинного обучения для оптимизации своей цепочки поставок и логистических операций. Прогнозируя спрос и более эффективно управляя запасами, Amazon может сократить расходы и сократить сроки доставки. Извлеченные уроки: ИИ и машинное обучение можно использовать для оптимизации цепочки поставок и логистических операций, что приведет к экономии средств и повышению удовлетворенности клиентов. (Источник: https://www.mckinsey.com/business-functions/mckinsey-analytics/our-insights/supply-chain-40-how-artificial-intelligence-will-transform-the-supply-chain)
  3. GE: GE использует алгоритмы искусственного интеллекта и машинного обучения, чтобы прогнозировать, когда ее промышленное оборудование выйдет из строя, что позволяет более эффективно планировать техническое обслуживание и сокращать время простоя. Извлеченные уроки: ИИ и машинное обучение можно использовать для оптимизации процессов технического обслуживания, что приведет к экономии средств и повышению производительности активов. (Источник: https://www.ge.com/digital/blog/industrial-ai-machine-learning)
  4. John Deere: John Deere использует искусственный интеллект и машинное обучение для анализа данных о своих тракторах и другом оборудовании, предоставляя фермерам информацию, которая может помочь им оптимизировать свои сельскохозяйственные операции. Анализируя такие факторы, как качество почвы, погодные условия и сорта семян, John Deere может дать рекомендации, которые могут повысить урожайность и снизить затраты. Извлеченные уроки: искусственный интеллект и машинное обучение можно использовать для получения информации, позволяющей клиентам оптимизировать свои операции, что приведет к улучшению результатов и повышению лояльности клиентов. (Источник: https://www.ibm.com/case-studies/john-deere)

Что все это значит? Можем ли мы углубиться в детали задачи машинного обучения и получить более глубокое понимание?

Ниже приведен пример алгоритма машинного обучения (Random Forest Regression) для построения прогностической модели для прогнозирования продаж. Модель обучается на историческом наборе данных о продажах и связанных функциях, таких как информация о магазине и отделе, и используется для прогнозирования будущих продаж на основе аналогичных функций в тестовом наборе данных. Модель учится на данных и корректирует свои внутренние параметры для оптимизации своих прогнозов, что является основной концепцией машинного обучения. Кроме того, производительность модели оценивается с использованием общей метрики машинного обучения, среднеквадратичной ошибки (RMSE), чтобы оценить, насколько хорошо она способна обобщать новые данные.

Подсказка ChatGPT: «найти обучающие наборы данных для задачи машинного обучения, чтобы оптимизировать цепочку поставок»

Вот некоторые наборы данных, которые можно использовать для машинного обучения в управлении цепочками поставок:

  1. Kaggle Walmart Sales Forecasting: этот набор данных включает исторические данные о продажах для 45 магазинов Walmart, расположенных в разных регионах. Он содержит данные за 2010–2012 годы и включает такие функции, как размер, тип и местоположение магазина. Этот набор данных можно использовать для прогнозирования продаж и оптимизации управления запасами. https://www.kaggle.com/c/walmart-recruiting-store-sales-forecasting/data
  2. Репозиторий машинного обучения UCI. Этот репозиторий содержит несколько наборов данных, связанных с управлением цепочками поставок, такими как управление запасами, прогнозирование спроса и оптимизация логистики. https://archive.ics.uci.edu/ml/datasets.php?format=&task=&att=&area=&numAtt=&numIns=&type=&sort=nameUp&view=table
  3. Комиссия по такси и лимузинам Нью-Йорка: этот набор данных включает подробную информацию о поездках на такси и лимузинах в Нью-Йорке, включая места посадки и высадки, суммы тарифов и типы оплаты. Этот набор данных можно использовать для оптимизации транспортной логистики и снижения затрат. https://www1.nyc.gov/site/tlc/about/tlc-trip-record-data.page

Подсказка ChatGPT: «объясните наборы данных прогнозирования продаж Walmart от Kaggle»

Набор данных содержит исторические данные о продажах для 45 магазинов Walmart с анонимной информацией о типе и размере магазина. Набор данных включает обучающие и тестовые данные с удержанными еженедельными продажами, а также дополнительные данные (функции), связанные с деятельностью магазина, отдела и региона, такие как температура, цена на топливо, индекс потребительских цен и уровень безработицы. Цель состоит в том, чтобы спрогнозировать продажи по всему отделу для каждого магазина, используя функции.

Подсказка ChatGPT: «предоставьте код Python в блокноте Jupyter для прогнозирования продаж с использованием наборов данных Walmart Sales Forecasting от Kaggle»

Примечание. В итоге я не использовал тестовые данные, а создал тестовый набор из данных поезда (путем разделения данных year_2012 на проверочный и тестовый наборы), потому что у данных поезда есть цель (т.е. еженедельные продажи), и я хотел проверить производительность модели. Кроме того, я сделал две модификации (см. код ниже) после получения ошибок. Я скопировал и вставил сообщение об ошибке «ValueError: не удалось преобразовать строку в число с плавающей запятой: ‘A’», и ChatGPT исправил первую ошибку. Однако вторую ошибку («IsHoliday») исправить не удалось, поэтому я исправил ее вручную.

# import necessary libraries
import pandas as pd
import numpy as np
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error
from math import sqrt
from sklearn.model_selection import train_test_split

# load the data
train = pd.read_csv('train.csv')
test = pd.read_csv('test.csv')
features = pd.read_csv('features.csv')
stores = pd.read_csv('stores.csv')

# then merged together based on common columns
train = pd.merge(train, features, on=['Store', 'Date'], how='left')
train = pd.merge(train, stores, on=['Store'], how='left')
test = pd.merge(test, features, on=['Store', 'Date'], how='left')
test = pd.merge(test, stores, on=['Store'], how='left')

# after merging, feature engineering is performed to extract the Year, Month, Week, and Day 
# from the 'Date' column in both train and test data.
train['Year'] = pd.to_datetime(train['Date']).dt.year
train['Month'] = pd.to_datetime(train['Date']).dt.month
train['Week'] = pd.to_datetime(train['Date']).dt.week
train['Day'] = pd.to_datetime(train['Date']).dt.day
test['Year'] = pd.to_datetime(test['Date']).dt.year
test['Month'] = pd.to_datetime(test['Date']).dt.month
test['Week'] = pd.to_datetime(test['Date']).dt.week
test['Day'] = pd.to_datetime(test['Date']).dt.day

# encoding categorical variables to fix the error
# MODIFICATION: below wasn't provided in the initial code
# resulting in error " ValueError: could not convert string to float: 'A'"
train = pd.get_dummies(train, columns=['Type'])
test = pd.get_dummies(test, columns=['Type'])

# define the features and target
# MODIFICATION: ChatGPT didn't recognize 'IsHoliday_x' but rather 'IsHoliday'
# which was throwing an error so I manually updated the feature value to 'IsHoliday_x'
features = ['Store', 'Dept', 'IsHoliday_x', 'Size', 'Year', 'Month', 'Week', 'Day', 'Type_A', 'Type_B']
target = 'Weekly_Sales'

# the train data is split into two parts - train_data and val_data based on the year column.
train_data = train[train['Year'] < 2012]
year_2012 = train[train['Year'] == 2012]

# split the year_2012 data into validation and test sets
val_data, test_data = train_test_split(year_2012, test_size=0.2, random_state=42)


# define the model
# A RandomForestRegressor model is defined with 100 estimators and -1 for n_jobs 
# to utilize all available processors.
model = RandomForestRegressor(n_estimators=100, n_jobs=-1, random_state=42)
# n_estimators represents the # of decision trees to be grown in the forest.
# the higher the n_estimators, the better the model performance, but it also increases the computational cost and training time.
# the n_jobs parameter specifies the number of CPU cores to use for parallelizing the training process. 
# setting it to -1 tells scikit-learn to use all available cores on the machine

# the model is trained on the train_data.
model.fit(train_data[features], train_data[target])

# predictions are made on the validation set (val_data) using the trained model
val_pred = model.predict(val_data[features])

# The RMSE (Root Mean Squared Error) is calculated using the actual target values (val_data[target]) 
# and predicted target values (val_pred).
rmse = sqrt(mean_squared_error(val_data[target], val_pred))
print('RMSE:', rmse)

# predictions are made on the test set (test_data) using the trained model.
test_pred = model.predict(test_data[features])

Подсказка ChatGPT: «объясните, как работает RandomForestRegressor»

RandomForestRegressor — это алгоритм машинного обучения, основанный на деревьях решений, которые можно использовать для задач регрессии. Он работает путем построения нескольких деревьев решений и объединения их прогнозов для создания более точной и надежной модели.

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

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

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

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

Подсказка ChatGPT: «Теперь я хочу оценить производительность модели. предложите несколько показателей и объясните, что они делают»

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

  • Средняя абсолютная ошибка (MAE): это среднее значение абсолютной разницы между прогнозируемыми значениями и фактическими значениями. MAE — это мера того, насколько прогнозируемые значения в среднем близки к фактическим значениям. MAE легко интерпретировать, так как он дает значение в тех же единицах, что и целевая переменная. Он подходит для наборов данных с выбросами, так как не чувствителен к ним.
  • Среднеквадратическая ошибка (RMSE): это квадратный корень из среднего значения квадратов разностей между прогнозируемыми и фактическими значениями. RMSE похож на MAE, но придает больший вес большим ошибкам. RMSE более чувствителен к выбросам, чем MAE.
  • R-квадрат (R2): измеряет долю дисперсии целевой переменной, которая объясняется независимыми переменными. R2 — это показатель того, насколько хорошо модель соответствует данным. Он принимает значения от 0 до 1, где 0 указывает, что модель не объясняет никаких отклонений в целевой переменной, а 1 указывает, что модель полностью объясняет отклонение в целевой переменной.

MAE, RMSE и R2 можно использовать для оценки эффективности модели машинного обучения при прогнозировании продаж. Однако выбор метрики зависит от конкретных целей бизнеса или проблемы. Например, если основное внимание уделяется минимизации ошибок в прогнозах, MAE или RMSE могут быть более подходящими. Если основное внимание уделяется пониманию того, насколько разница в продажах объясняется моделью, R2 может быть более подходящим.

Подсказка ChatGPT: «поместите это в код Python»

from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score

# Calculate mean absolute error
mae = mean_absolute_error(test_data[target], test_pred)
print('MAE:', mae)

# Calculate root mean squared error
rmse = np.sqrt(mean_squared_error(test_data[target], test_pred))
print('RMSE:', rmse)

# Calculate R2 score
r2 = r2_score(test_data[target], test_pred)
print('R2 score:', r2)

Обратите внимание, что test_data и test_pred должны быть определены заранее, а target должно быть именем целевой переменной (в данном случае «Weekly_Sales»).

# printing results
MAE: 1636.7725874568366
RMSE: 3477.1756260232673
R-squared: 0.9758261709766167

Подсказка ChatGPT: «визуализируйте результаты и распечатайте r2»

import matplotlib.pyplot as plt
from sklearn.metrics import r2_score

# create scatter plot
plt.scatter(test_data[target], test_pred)

# add regression line
z = np.polyfit(test_data[target], test_pred, 1)
p = np.poly1d(z)
plt.plot(test_data[target], p(test_data[target]), color='red', linestyle='--')

# add labels and title
plt.xlabel('Actual')
plt.ylabel('Predicted')
plt.title('Actual vs Predicted Values')

# calculate and print R-squared
r2 = r2_score(test_data[target], test_pred)
print('R-squared:', r2)


# show the plot
plt.show()

Подсказка ChatGPT: «значение r-квадрата, указанное выше, составляло ~0,98. нет ли здесь потенциальной утечки данных?

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

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