Введение в datafloat.ai

Прогнозирование — это путешествие. Мы многому научились на этом пути. Мы делали ошибки (мы все еще делаем). В нашем блоге мы пытаемся документировать эти знания по мере их появления.

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

Сегодня мы рассмотрим пример, который демонстрирует простоту datafloat.ai  — платформы для прогнозирования искусственного интеллекта без кода и то, насколько легко любой может создавать объяснимые модели прогнозирования на основе глубокого обучения с помощью несколько кликов —не требуется глубокого обучения. Datafloat — это платформа, на которой работают сотни моделей, используемых Predicto, и которая ежедневно генерирует сотни прогнозов.

Определение проблемы

Наша цель в этом посте — спрогнозировать ожидаемое освещение новостей компаний Nasdaq. В Predicto мы ежедневно собираем новости по всем компаниям Nasdaq-100 и проводим анализ новостей. Мы считаем, что было бы полезно спрогнозировать общее количество статей, выпущенных для компании в ближайшие 2 недели. Это может помочь нам понять, когда происходит что-то необычное. Мы также считаем, что для достижения этого мы можем использовать такие данные, как: последние ежедневные публикации статей, цена акций и объем торгов акциями. Все эти данные есть в нашей базе данных, и мы ежедневно ее обновляем. В нашем примере мы сосредоточимся на Tesla.

Решение Datafloat

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

Шаг 1. Мы выбираем тип модели, которую хотим обучить. В нашем случае мы хотим генерировать прогнозы.

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

Шаг 3. Теперь мы готовы создать наш шаблон модели. Шаблоны моделей можно использовать для создания одной или нескольких моделей с разными параметрами. Давайте посмотрим, как это делается.

В первом разделе (Шаг 3aниже) мы предоставляем некоторые общие параметры модели. Здесь вы можете оставить значения по умолчанию или изменить их. Самая важная часть — это параметры Lookback horizon и Lookahead horizon. Эти параметры указывают размер выборки и размер прогноза. Таким образом, горизонт ретроспективного анализа = 45 и горизонт прогнозирования = 15 означает, что мы хотим, чтобы наша модель глубокого обучения использовала последние 45 дней для прогнозирования следующих 15 дней (мы говорим о днях, потому что образцы в нашем случае представлены в днях — это могут быть часы/минуты/годы или что-то еще, в зависимости от частоты дискретизации наших данных).

Во втором разделе происходит волшебство (Шаг 3bниже). Datafloat загружает нашу схему базы данных, и мы можем выбирать таблицы, которые хотим использовать, и, конечно же, наши функции просто щелкают по ним.

Для каждой таблицы, которую мы решили использовать, нам нужно определить:

  • столбец TimeIndex, который будет использоваться для соединения наших таблиц и создания наборов данных (обязательно).
  • один или несколько Featureстолбцов или Prediction столбец (обязательно).
  • предложение фильтрации, чтобы сохранить только интересующие нас данные (необязательно).

Итак, в приведенном ниже примере мы инструктируем Datafloat:

  • Используйте данные из таблицы ArticleDailyStats, где Stock=TSLA и дата после 2020–01–01.
  • Используйте данные из таблицы StockHistoryData, где Stock=TSLA и дата после 2020–01–01.
  • Спрогнозируйте столбец TotalArticles, используя признаки TotalArticles, SClose, SVolume.

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

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

Шаг 4. Теперь мы готовы создать модель из нашего шаблона! Нажав Создать модель, Datafloat примет запрос и начнет обучение модели в облаке. Подробнее о том, как происходит обучение модели в облаке, можно прочитать в статье Непрерывная интеграция и экспериментирование.

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

Если все выглядит хорошо, то мы готовы использовать нашу модель глубокого обучения и делать прогнозы! Что приводит нас к…

Шаг 5. Расписание и проверить прогноз. Единственное, что нам нужно сделать здесь, это указать дату. Datafloat автоматически подключится к базе данных, извлечет необходимые входные данные, передаст их в нашу обученную модель, а затем создаст прогноз.

Datafloat также предоставляет API, который позволяет автоматизировать новые прогнозы для запуска в запланированное время.

Как только прогноз будет запланирован, Datafloat извлечет нашу модель, подключится к нашей базе данных и извлечет входные данные (45 дней освещения новостей, цена акций и объем), передаст их в нашу модель и создаст прогноз на следующие 15 дней. , как мы указали при разработке нашей модели на шаге 3. Каждый прогноз имеет доверительные интервалы, которые показывают, насколько наша модель уверена в этом прогнозе.

Datafloat также создает раздел объяснимости для каждого прогноза. Этот раздел позволяет нам получить представление об особенностях и временных периодах, повлиявших на прогноз модели. Подробное объяснение того, как это работает, см. в разделе «Объяснение финансовых прогнозов глубокого обучения | от Predicto | Стартап | Середина". В нашем прогнозе видно, что наибольшее влияние оказывает прошлый общий объем статей и, что интересно, некоторое влияние оказывает объем торгов акциями (см. шаг 5c).

Шаг 6. По мере развития ваших данных и сохранения новых измерений в нашей базе данных Datafloat будет автоматически обновлять оценку каждого прогноза с помощью метрик ошибок (см. Шаг 6a ниже). Таким образом, через несколько дней мы можем пересмотреть наш прогноз, чтобы увидеть, насколько он точен.

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

Что дальше?

Надеемся, вам понравилась эта статья. Это было краткое введение в Datafloat.ai, платформу прогнозирования искусственного интеллекта без кода. Datafloat — это платформа, созданная для удовлетворения растущих потребностей Predicto. Мы быстро поняли, что его можно использовать для прогнозирования чего угодно в масштабе, а также это идеальный инструмент для экспериментов с моделями. Мы планируем продолжать расширять его новыми функциями и новыми задачами глубокого обучения.

По любому вопросу, который у вас может возникнуть, оставьте комментарий или свяжитесь с нами!

Берегите себя и до скорой встречи!