Как использовать внешние регрессоры для обучения модели Arima_PLUS в BigQuery?

# #machine-learning #google-bigquery #arima

Вопрос:

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

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

 create or replace model bqml_tutorial.create_model
options
(model_type= 'ARIMA_PLUS',
time_series_timestamp_col='Date',
time_series_data_col='Users',
auto_arima=True,
data_frequency = 'AUTO_FREQUENCY',
decompose_time_series= True)
as
select Date, cv as Users from `bqml_tutorial.cvrate` ORDER BY Date 
 

Ответ №1:

Если посмотреть документацию, то в настоящее время она недоступна. Модель ARIMA_PLUS, которую вы можете обучить в BigQuery, уже выполняет множество функций (изучение сезонности, удаление выбросов, интерполяция отсутствующих данных и т. Д.). Но с точки зрения внешних регрессоров вы не можете добавлять определенные столбцы для обучения своей модели.

Единственные дополнительные данные, которые вы можете ввести в свою модель, — это информация о праздниках (с опцией HOLIDAY_REGION). Что уже потрясающе !

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

Комментарии:

1. Это полезно. Есть ли какие-либо предложения по модели для обучения зависимостей других столбцов и прогнозирования 1 целевого значения col?

2. Для временных рядов единственным специализированным типом модели, доступным в BQ, является модель ARIMA, которая в вашем случае может служить базовой моделью. Что касается изучения влияния других столбцов, может быть, вы можете взглянуть на модели XGBOOST и AUTOML ? Но будьте осторожны со своей методологией !