Шаг 37.
Глубокое обучение на Python. Математические основы ... . Представление данных для нейронных сетей. Временные ряды или последовательности
На этом шаге мы рассмотрим, в каком случае удобно использовать это представление .
Всякий раз, когда время (или понятие последовательной упорядоченности) играет важную роль в ваших данных, такие данные предпочтительнее сохранить в
трехмерном тензоре с явной осью времени. Каждый образец может быть представлен как последовательность векторов (двумерных тензоров), а сам пакет
данных - как трехмерный тензор (рисунок 1).
Рис.1. Трехмерный тензор с временным рядом
В соответствии с соглашениями ось времени всегда является второй осью (осью с индексом 1) . Рассмотрим несколько примеров.
- Набор данных с ценами акций . Каждую минуту мы сохраняем текущую цену акций, а также наибольшую и наименьшую цены за минувшую минуту . То есть каждая минута представлена трехмерным вектором, весь торговый день - матрицей с формой (390, 3) (где 390 - длительность торгового дня в минутах), а данные за 250 дней - трехмерным тензором формы (250, 390, 3). В таком случае каждый образец представляет данные за один торговый день.
- Набор данных с твитами, где каждый твит кодируется последовательностью из 280 символов из алфавита со 128 уникальными символами. В данном случае каждый символ можно закодировать как двоичный вектор со 128 элементами (содержит нули во всех элементах, кроме элемента с индексом, соответствующим номеру символа в алфавите, в который записывается 1) . При такой организации каждый твит можно представить как двумерный тензор с формой (280, 128), а набор с миллионом твитов - как тензор с формой (1000000, 280, 128).
На следующем шаге мы рассмотрим изображения.
Предыдущий шаг
Содержание
Следующий шаг