Авторы: Радика Кумар и Норо Чализе
Отказ от ответственности. Высказанные мнения принадлежат авторам, а не каким-либо лицам или организациям.
1.0 Введение
Последние несколько лет были непростыми для экономик всего мира. Пандемия усугубила экономический рост во всем мире в результате потрясений со стороны спроса и предложения. Закрытие границ, ограничение передвижения людей привели к нехватке рабочей силы, а также к перебоям в снабжении. Кроме того, высокий уровень безработицы в результате закрытия фирм привел к дальнейшему сокращению спроса.
В условиях глобального экономического спада пандемия также привела к более глубокой цифровизации. Фирмы, которые смогли внедрить и изменить свои бизнес-процессы, смогли извлечь выгоду из экономических потрясений, вызванных пандемией. Во всех секторах внедрение новых технологий принесло свои плоды. Это было очевидно в таких секторах, как здравоохранение, образование, сельское хозяйство и туризм.
В цифровой экономике, основанной на технологиях и данных, такие технологии, как машинное обучение и искусственный интеллект, по-видимому, изменили правила игры на уровне микрофирм и секторов. Тем не менее, изучение применения машинного обучения и искусственного интеллекта для макроэкономической политики также заслуживает обсуждения. Остальная часть статьи выглядит следующим образом: в разделе 2 будет представлен краткий обзор синергии между машинным обучением и искусственным интеллектом. В разделе 3 обсуждается, как искусственный интеллект может помочь в принятии решений в области макроэкономической политики, а в разделе 4 представлено краткое моделирование, демонстрирующее рост ВВП Австралии и прогнозы на основе данных за 1970–2020 годы с использованием контролируемого машинного обучения и алгоритма линейной регрессии, а также тестирование алгоритма настройки модели для случайного состояния.
2.0 Машинное обучение и искусственный интеллект.
Машинное обучение — это раздел искусственного интеллекта (ИИ) и информатики. Основное внимание уделяется использованию данных и алгоритмов для имитации того, как люди учатся, и с течением времени повышения уровня точности. Существует четыре типа моделей машинного обучения, которые включают в себя контролируемое обучение, неконтролируемое обучение, частично контролируемое обучение и обучение с подкреплением. В рамках машинного обучения также существуют различные типы алгоритмов. Это:
- Линейная регрессия: алгоритм, который используется для анализа взаимосвязи между независимыми входными переменными и хотя бы одной целевой переменной.
- Логистическая регрессия: это контролируемый алгоритм обучения, который используется для задач классификации и предсказывает вероятность возникновения бинарного события.
- Деревья решений: это структуры данных с узлами, которые затем используются для проверки некоторых входных данных. Это метод машинного обучения (под наблюдением) для прогностической модели, посредством которого она дополнительно обучается для изучения алгоритма.
- Случайный лес: как и его название, используется для одновременной классификации данных с использованием различных моделей дерева решений. Его можно использовать для определения классификации категориальных, регрессионных или непрерывных переменных.
- Нейронные сети: это алгоритмы искусственного интеллекта, которые пытаются воспроизвести то, как человеческий мозг обрабатывает информацию, чтобы понимать и разумно классифицировать данные. Он в основном используется для распознавания закономерностей в данных и речи.
4.0 Искусственный интеллект и решение о макроэкономической политике
В области экономики экономисты обычно используют данные для анализа политики на макро- и микроуровне. Обычно, чтобы показать влияние переменной и ее связи, экономисты используют данные и применяют различные методы эконометрики. Эконометрическая модель используется для прогнозирования будущих изменений в экономике. Он используется для измерения прошлых взаимосвязей между определенными переменными, например, валовым внутренним продуктом, потреблением, инвестициями, импортом и экспортом, а затем пытается спрогнозировать будущие последствия. В зависимости от результатов и воздействия можно, например, использовать линейную регрессию, полилинейную регрессию или моделирование панельных данных. Для такого уровня экономического моделирования используются различные программные инструменты, такие как, например, электронные представления и STATA.
Область искусственного интеллекта с помощью контролируемых методов машинного обучения обеспечивает дополнительную ценность уже существующей области эконометрического анализа для принятия политических решений, учитывая ее способность использовать еще более крупные наборы данных и алгоритмы настройки для прогнозирования более точных результатов. Таким образом, это позволит лицам, определяющим экономическую политику, особенно на макроэкономическом уровне, проводить более качественную и целенаправленную политику в отношении своей экономики. Это также обеспечит прочную фактическую основу для внесения поправок в политику с изменением времени, поскольку в модель добавляется больше данных для принятия более эффективных решений. В результате применение искусственного интеллекта позволит странам максимизировать распределение ресурсов и добиться эффекта масштаба. Для небольших развивающихся стран с ограниченными возможностями данных и статистического анализа применение искусственного интеллекта в макроэкономической политике позволит им сэкономить время и деньги.
5.0 Использование искусственного интеллекта для демонстрации экономического роста Австралии.
В этом разделе мы продемонстрируем простой анализ экономического роста Австралии с помощью алгоритма линейной регрессии и контролируемого машинного обучения. Для проведения этого анализа мы использовали структуру данных об экономическом росте (модель данных) для Австралии, где мы стремимся показать взаимосвязь между зависимой переменной ВВП (Y) и независимыми (X) переменными потребления, инвестиций, государственных расходов, экспорта и импорта. . Данные для этой модели получены из базы данных Всемирного банка за период 1970–2020 гг. Приведенный ниже анализ показывает шаги, которые мы предприняли:
1. Импорт библиотек и загрузка набора данных
# Import libraries import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error, r2_score
# Loading data df = pd.read_excel('Final data for Australia GDP analysis %.xlsx', sheet_name='Final Data for Aus GDP analysis', skiprows=1)
2. Исследуйте и очищайте данные
# Display first five rows
df.head()
# display info of the datasets df.info()
<class 'pandas.core.frame.DataFrame'> RangeIndex: 50 entries, 0 to 49 Data columns (total 7 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Unnamed: 0 50 non-null object 1 GDP growth (annual %) 50 non-null float64 2 Households and NPISHs Final consumption expenditure (annual % growth) 50 non-null float64 3 Foreign direct investment, net inflows (% of GDP) 50 non-null float64 4 General government final consumption expenditure (% of GDP) 50 non-null float64 5 Exports of goods and services (annual % growth) 50 non-null float64 6 Imports of goods and services (% of GDP) 50 non-null float64 dtypes: float64(6), object(1) memory usage: 2.9+ KB
# shape of our datasets df.shape
(50, 7)
# Display columns name df.columns
Index(['Unnamed: 0', 'GDP growth (annual %) ', 'Households and NPISHs Final consumption expenditure (annual % growth)', 'Foreign direct investment, net inflows (% of GDP)', 'General government final consumption expenditure (% of GDP)', 'Exports of goods and services (annual % growth)', 'Imports of goods and services (% of GDP)'], dtype='object')
# rename columns name df.rename(columns={"GDP growth (annual %) ": "GDP_growth", "Households and NPISHs Final consumption expenditure (annual % growth)": "Consumption (C)", "Foreign direct investment, net inflows (% of GDP)" : "Investment (I)", "General government final consumption expenditure (% of GDP)": "Goverenment_consumption (G)", "Exports of goods and services (annual % growth)": "Exports (X)", "Imports of goods and services (% of GDP)": "Imports (I)"}, inplace=True)
df.head()
# Net import calculation df['X-I'] = df['Exports (X)'] - df['Imports (I)']
df.head()
# Delete unwanted columns df.drop(['Unnamed: 0', 'Exports (X)', 'Imports (I)'], axis=1, inplace=True)
# seprate dependent(X) varialbe and target variable(y) X = df[['Consumption (C)', 'Investment (I)', 'Goverenment_consumption (G)', 'X-I']] y = df['GDP_growth']
X.info()
<class 'pandas.core.frame.DataFrame'> RangeIndex: 50 entries, 0 to 49 Data columns (total 4 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Consumption (C) 50 non-null float64 1 Investment (I) 50 non-null float64 2 Goverenment_consumption (G) 50 non-null float64 3 X-I 50 non-null float64 dtypes: float64(4) memory usage: 1.7 KB
3. EDA (исследовательский анализ данных)
# For scatter plot we seprate numerical features which all our x columns will be. num_col = X.columns
def scater_plot(data, numeric_columns, target_col): """Scatter plot for numerical fetures of columns for target columns""" for col in numeric_columns: fig = plt.figure(figsize=(10, 6)) ax = fig.gca() feature = df[col] label = data[f'{target_col}'] correlation = feature.corr(label) plt.scatter(x=feature, y=label) plt.xlabel(col) plt.ylabel('GDP Growth') ax.set_title('GDP Growth vs ' + col + '- correlation: ' + str(correlation)) return plt.show()
# Scatter plot for GDP Growth vs numerical columns scater_plot(df, num_col, 'GDP_growth')
# Correlation plot
corr = df.corr().round(2)
plt.figure(figsize=(8,8))
sns.heatmap(corr, annot=True, cmap="YlGnBu");
4. Разделение данных обучения и тестирования
# Train test split data ( 80 percent for train and 20 percent for testing) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=277) print ('Training Set: %d rows\nTest Set: %d rows' % (X_train.shape[0], X_test.shape[0]))
Training Set: 40 rows Test Set: 10 rows
5. Модель поезда
# Fit a linear regression model on the training set
model = LinearRegression().fit(X_train, y_train)
6. Оценка модели
# For evaluations # make prediction predictions = model.predict(X_test) # calculate mean squared error mse = mean_squared_error(y_test, predictions) print("MSE:", mse) # calculate root mean squared error rmse = np.sqrt(mse) print("RMSE:", rmse) # calculate R^2 r2 = r2_score(y_test, predictions) print("R^2", r2)
MSE: 0.39169598647268017 RMSE: 0.6258562027116773 R^2 0.7619897985671008
6.0 Заключительные мысли
Согласно анализу искусственного интеллекта с использованием контролируемого машинного обучения, потребление домашних хозяйств, инвестиции и чистый экспорт положительно коррелируют с ростом ВВП экономики Австралии за 50-летний период (1970–2020 гг.). Есть несколько факторов, объясняющих этот результат, например, открытие Австралии для остального мира за счет более широкого участия в многосторонней торговой системе. Кроме того, Австралия также перешла к мерам региональной интеграции, а также со временем разработала политику, которая была более благоприятной для инвесторов. Либерализация торговли товарами и торговлей услугами и их интеграция в глобальную цепочку поставок также может стать фактором увеличения потребления, инвестиций и торговли.
7.0 Ссылка
- Радика Кумар — экономист по профессии и советник по инфраструктурной политике (Digital)
- Норо Чализ — внештатный специалист по данным
- Что такое машинное обучение? | IBM
- Что такое машинное обучение (ML)? — Я школа Онлайн
- Прогнозирование и эконометрические модели
- Полное руководство Pandas по науке о данных в 2022 году