Является продолжением закрытого проекта DistBelief➤. Изначально TensorFlow была разработана командой Google Brain для внутреннего использования в Google, в 2015 году система была переведена в свободный доступ с открытой лицензией Apache 2.0[6][7].
Закрытая система машинного обучения DistBelief разрабатывалась Google Brain для внутренних проектов с 2011 года для работы с нейронными сетямиглубокого обучения. Она стала использоваться во многих исследовательских и коммерческих проектах группы фирм холдинга Alphabet[8][9]. После успеха DistBelief, фирма Google решила вывести проект на новый уровень, и для рефакторинга выделила группу из нескольких разработчиков, в которую вошёл Джефф Дин; целью группы было упрощение и оптимизация кодов библиотеки, увеличение надёжности и удобства пользования. Новая библиотека получила название TensorFlow[10]. В 2013 году к проекту присоединился Джеффри Хинтон — учёный, под руководством которого в 2009 году был создан метод обобщённого обратного распространения ошибки и ряд других улучшений, позволившие существенно улучшить точность нейронных сетей (что привело, в частности, к снижению погрешности в распознавании речи на 25 %)[11].
Вычисления TensorFlow выражаются в виде потоков данных через графсостояний. Название TensorFlow происходит от операций с многомерными массивами данных, которые также называются «тензорами». В июне 2016 года Джефф Дин из Google отметил, что к TensorFlow обращались 1500 репозиториев на GitHub, и только 5 из них были от Google.[13]
В мае 2016 года Google сообщила о применении для задач глубинного обучения аппаратного ускорителя собственной разработки — тензорного процессора (TPU) — специализированной интегральной схемы, адаптированной под задачи для TensorFlow, и обеспечивающей высокую производительность в арифметике пониженной точности (например, для 8-битных процессоров) и направленной скорее на применение моделей, чем на их обучение[источник не указан 807 дней].
Сообщалось, что после использования TPU в собственных задачах Google по обработке данных удалось добиться на порядок лучших показателей продуктивности на ватт затраченной энергии[14].
TensorFlow 2.0
Поскольку доля рынка TensorFlow среди исследовательских работ сокращалась в пользу PyTorch, команда TensorFlow объявила о выпуске новой основной версии библиотеки в сентябре 2019 года. Изменил схему автоматического дифференцирования со статического вычислительного графа на схему «Определить-запуском», первоначально ставшую популярной благодаря Chainer, а затем PyTorch.[15]
Применение
TensorFlow хорошо подходит для автоматизированной аннотации изображений в таких системах как DeepDream[англ.][16]. Также с 26 октября 2015 года Google использует систему RankBrain для увеличения релевантности ранжировки поисковой выдачи Google. RankBrain основан на TensorFlow[17].
Орельен Жерон. Прикладное машинное обучение с помощью Scikit-Learn и TensorFlow. Концепции, инструменты и техники для создания интеллектуальных систем = Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques for Building Intelligent Systems. — Вильямс, 2018. — 688 с. — ISBN 978-5-9500296-2-2, 978-1-491-96229-9.
Джулли А., Пал С. Библиотека Keras — инструмент глубокого обучения. Реализация нейронных сетей с помощью библиотек Theano и TensorFlow = Deep learning with Keras. — ДМК-Пресс, 2017. — 294 с. — ISBN 978-5-97060-573-8.