Статистика и машинное обучение до некоторой степени расходились друг с другом. Вот как TensorFlow ликвидирует этот пробел.

Статистики всегда относились к машинному обучению с долей скептицизма, мягко говоря.

Хотя статистика зависит от научного метода и является предметом тех же дебатов и исследований, что и любая академическая область, машинное обучение получило несколько сомнительную репутацию метода «черного ящика», когда данные просто вставляются в модель для получения результатов. - что не обязательно может быть надежным.

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

Вот несколько примеров из моего собственного опыта того, как TensorFlow развивается, чтобы стать более «дружественным к статистике», и почему статистическое сообщество должно уделять этой программной библиотеке больше внимания.

1. TensorFlow Probability - недооцененный, но очень мощный инструмент для вероятностного программирования.

Первоначально TensorFlow был выпущен в 2015 году, а первая версия TensorFlow Probability была выпущена в июне 2018 года.

Эта библиотека сочетает в себе вероятностное программирование с возможностями глубокого обучения для проведения статистического анализа больших наборов данных. В частности, TensorFlow Probability делает упор на байесовские методы, которые дополняют библиотеку PyMC3 в Python, которая также реализует байесовское моделирование и статистический анализ.

Я ожидаю, что в будущем эта библиотека будет приобретать все большее значение для статистиков. Поскольку наборы данных становятся все больше и растет понимание роли вероятности в анализе временных рядов, TensorFlow Probability довольно эффективно справляется с этими двумя аспектами.

До начала COVID-19 я вела дополнительный проект по отмене бронирования в отелях. Частично цель этого проекта состояла в том, чтобы запустить несколько моделей временных рядов для прогнозирования количества отмен бронирований в неделю для данного отеля.

Однако чистая модель временных рядов имеет ограничения в том, что она не может учесть время экстремальных сценариев, т. Е. Глобальной пандемии, которая закрывает отели и приводит к огромному всплеску отмен. С этой точки зрения такие модели, как ARIMA или LSTM, все равно оказались бы очень неточными, если бы они были смоделированы на сегодняшних данных.

Тем не менее, что, если одни и те же данные были смоделированы с использованием TensorFlow Probability?

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

Это позволяет отелю задаться вопросом - при каких обстоятельствах отель может видеть более 500 отмен в неделю - и что можно сделать, чтобы этого избежать?

TensorFlow Probability допускает неопределенность, когда дело доходит до составления прогнозов, и я ожидаю, что в будущем это будет иметь все большее значение.

2. Сильная совместимость между Keras и R

Начиная с версии 2.0 TensorFlow, Keras стал API по умолчанию для библиотеки.

Keras используется для быстрого и интуитивного создания глубоких нейронных сетей. Такие нейронные сети могут использоваться для проектирования задач классификации и прогнозирования, а также анализа временных рядов с помощью моделей LSTM.

Однако не всегда хорошо известно, что Keras также может работать в среде R.

Это обеспечивает мощную платформу для объединения фундаментального статистического анализа с моделями машинного обучения.

Одним из примеров (как указано в разделе «Ссылки» ниже) является использование последовательной модели для прогнозирования уровней глюкозы в крови.

В библиотеке есть инструменты для визуализации потерь при обучении и проверке, как в Python:

Однако пользователи R также могут воспользоваться преимуществами многих статистических функций в R для облегчения анализа. Хотя библиотеки, такие как pyplot или seaborn в Python, также могут, например, создавать графики корреляции, это можно легко сделать с помощью библиотеки corrplot в R.

Кроме того, R также поставляется с удобной библиотекой под названием MLMetrics, с помощью которой можно легко вычислить показатели потерь и точности.

С этой точки зрения статистик, желающий воспользоваться машинным обучением, может легко использовать Keras для выполнения работы в R, вместо того, чтобы изучать Python, чтобы пользоваться решениями машинного обучения.

3. Очень интуитивно понятный в сочетании с интерпретируемыми библиотеками, такими как InterpretML от Microsoft

В последнее время все большее внимание уделяется обеспечению интерпретируемости моделей машинного обучения. Иными словами, создание модели, доступной для понимания людьми.

Например, DiCE из библиотеки Microsoft InterpretML преуспевает в этом за счет создания различных контрфактических объяснений. Например, предположим, что мы строим модель классификации, чтобы предсказать, отменит ли клиент свое бронирование в отеле на основе различных атрибутов, например страна происхождения, время выполнения заказа, тип клиента и другие факторы.

В этом примере DiCE имеет возможность брать случаи, когда клиенты не отменили свое бронирование, и генерировать контрпримеры - то есть изменение параметров функции, которое повысит вероятность того, что клиент отменит свое бронирование.

При построении последовательной модели с использованием Keras DiCE дополняет это, сохраняя параметры обучения модели - даже если сами данные должны быть удалены через определенный период времени, например из-за правил конфиденциальности данных и т. д.

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

4. Возможность одновременного построения моделей в других доменах, если это необходимо.

Вы можете быть статистиком, но можете ли вы сказать наверняка, что вам никогда не понадобится строить алгоритм для другой дисциплины - например, Обработка естественного языка или классификация изображений?

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

Например, я впервые познакомился с сетью LSTM (долгосрочная память) на курсе НЛП. Однако из-за последовательного характера этой модели (или способности понимать зависимости между наблюдениями) я узнал, что модель LSTM на самом деле может быть довольно эффективной, когда дело доходит до моделирования изменчивых данных временных рядов. Эта модель не обязательно подходит для всех случаев - если временной ряд имеет сильную тенденцию, тогда более традиционные модели, такие как ARIMA, как правило, работают лучше.

Однако я обнаружил, что использую LSTM для определенных задач временных рядов, и поэтому машинное обучение в данном случае все еще актуально для дисциплины временных рядов.

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

Заключение

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

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

Для этих целей меня очень впечатлил TensorFlow, и он по-прежнему будет ключевым справочником в моем наборе инструментов для анализа данных.

Заявление об ограничении ответственности: эта статья написана на условиях «как есть» без каких-либо гарантий. Он был написан с целью предоставить обзор концепций науки о данных и никоим образом не должен интерпретироваться как профессиональный совет.

Ссылки