Компьютерам нужна помощь людей для обучения. Это называется "Машинное обучение". Машинное обучение — это термин, обозначающий процесс обучения компьютеров на данных, что представляет собой упражнение в рассуждении через модели без явного программирования. Это похоже на то, как ребёнок учится — через наблюдение и практику, а не только через лекции. Точность — это один из аспектов, с которыми сталкивается машинное обучение. Она определяет, насколько точно компьютер предсказывает что-либо. Чем выше точность, тем надёжнее будут эти прогнозы.
Динамическое программирование во времени — это способ сопоставления временных рядов. Представьте, что у вас есть две волнистые линии, и вы хотите сравнить их между собой. Динамическое программирование во времени — это как изменение формы волнистой линии для того, чтобы сделать её проще сравнивать с другой волнистой линией. Сопоставление этих линий означает, что компьютеру будет легче учиться на наших данных, когда мы пытаемся предсказать эту линию.
Аналогия для понимания того, как работает динамическое искажение во времени — это как если бы вы пытались предсказать трафик в вашем магазине каждый день. Аудитория посетителей магазина за прошлый год. Но не каждый день такой же. Разные дни имеют разную толпу: некоторые бывают очень оживленными, когда весь город на улице, а другие приходятся на дождливые дни, когда лишь немногие случайные посетители заглядывают. Когда данные меняются, становится сложно прогнозировать будущие посещения.
Не исключительно для временных рядов, но всё равно. Он способен работать с различными типами данных, что делает его очень универсальным инструментом. Рассмотрим сравнение двух ДНК-последовательностей, которые являются своеобразным планом жизни. Динамическое искажение во времени выравнивает или немного сдвигает части последовательностей, чтобы можно было провести сравнение. Таким образом, учёные могут определить степень родства или различия между последовательностями и, возможно, открыть важные аспекты, связанные с биологией и медициной.
Распознавание речи — это еще один пример. Когда компьютер слышит, как кто-то говорит, ему нужно определить, что было сказано, как одно из слов или фраз, которые есть в его базе данных. Однако не все люди произносят одни и те же слова абсолютно одинаковым образом, или фоновый шум может затруднять восприятие. В этом подходе динамическое временное искажение позволяет синхронизировать данные речи так, что компьютер может легко находить минимальную степень ошибок между транскриптом и тем, что было сказано. Это может улучшить производительность голосовых помощников и других технологий распознавания речи.
Использование динамического временного искажения меняет то, как мы воспринимаем прогнозы. Прогнозирование — это всё о предположениях относительно того, что принесёт будущее; в этом случае вы используете данные для создания приблизительных оценок событий. Это может быть очень полезно для принятия мудрых решений. Например, если вы управляете больницей (что было бы довольно круто), возможно, вам нужно оценить, сколько пациентов придут следующим месяцем, чтобы нужное количество снабжений, размером с туалетную бумагу для влажных рук, прибыло точно вовремя. Если вы закажете слишком много, конечно же, это будет потрачено впустую. Руа объясняет, что это ещё опаснее: если вы пропустите момент, они могут закончиться. Динамическое временное искажение позволит вам прогнозировать будущие показатели на основе прошлых данных и обеспечит лучшее управление ресурсами.
DTW — это всего лишь один инструмент среди множества инструментов машинного обучения. Первый момент, возможно, очевиден, но всё же чрезвычайно важен в случае временных рядов. Динамическое растяжение во времени (Dynamic Time Warping) помогает компьютерам делать более точные прогнозы, организуя данные так, чтобы они согласованно выстраивались. Этот метод может применяться в различных областях, от здравоохранения до розничной торговли, улучшая качество принятия решений.