TensorFlow и открытый исходный код: что изменилось для компаний
Почему открытие кода Google по машинному обучению меняет разговор с 'нам не по карману' на 'нам нужны данные и инженер'.
Когда Google в ноябре 2015 года выложил TensorFlow в открытый доступ, первая реакция у большинства руководителей была предсказуемой: это для исследователей, нам не нужно. Прошло несколько месяцев, и я вижу, что разговор начал меняться - но не всегда в нужном направлении.
Часть компаний восприняла открытый исходный код как сигнал: раз инструмент бесплатный, значит машинное обучение теперь дёшево. Это неверное прочтение.
Что на самом деле стало бесплатным
TensorFlow и похожие фреймворки убрали один барьер - платные проприетарные инструменты. Раньше компания, которая хотела строить модели, платила за дорогие лицензии или была привязана к одному поставщику. Сейчас этого барьера нет.
Но всё остальное осталось на месте. Данные по-прежнему нужно собирать, очищать и хранить. Инженеры по-прежнему стоят дорого. Инфраструктура для обучения моделей требует либо мощных серверов, либо облачных расходов. И самое главное - задача, для которой строится модель, должна быть чётко сформулирована.
Инструмент стал бесплатным. Работа осталась дорогой.
Почему это всё равно важно для несследовательских компаний
Открытый исходный код создал кое-что менее очевидное, но более ценное: экосистему. Вокруг TensorFlow быстро формируется сообщество, появляются учебные материалы, готовые компоненты, примеры применения в конкретных отраслях.
Это значит, что порог входа снизился не по стоимости лицензий, а по доступности знаний. Инженер, который год назад не знал, с чего начать, сейчас может найти работающий пример задачи, похожей на его.
Для компании это означает, что найти человека с практическим опытом стало реальнее - не просто теоретика из академической среды.
Где возникает ловушка
Я часто вижу такую последовательность: руководитель слышит про открытые инструменты, нанимает data scientist-а или ML-инженера, и ожидает результатов за несколько месяцев. Инженер садится за задачу и обнаруживает, что данных нет, они разбросаны по трём системам, половина не размечена, а бизнес-задача сформулирована как "ну, чтобы было умнее".
Инструмент есть. Всего остального нет.
Открытый исходный код не меняет порядок работы. Он делает технический слой дешевле, но не убирает необходимость сначала определить задачу, потом собрать данные, потом построить пайплайн, и только потом думать о модели.
Как правильно читать этот сигнал
TensorFlow и открытые ML-фреймворки - это хороший сигнал того, что технология взрослеет. Она выходит из режима "только для Google" и становится доступной для организаций без исследовательских бюджетов.
Но взрослость инструментов не означает готовности задачи. Несколько вопросов, которые стоит задать до найма первого ML-инженера:
- Есть ли у нас конкретная задача, которую мы хотим решить с помощью ML - не общая идея, а конкретный вход и желаемый выход?
- Есть ли данные для этой задачи в структурированном виде, или их сначала нужно собрать?
- Кто в компании будет пользоваться результатом и как это встроится в существующий процесс?
- Есть ли у нас инженерная инфраструктура - данные, пайплайны, хранилище - или ML-инженер будет строить это с нуля?
Если на первые три вопроса есть ответы - открытые инструменты действительно открывают возможности. Если нет - сначала имеет смысл заниматься данными, а не моделями.