TensorFlow

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
TensorFlow
Логотип программы TensorFlow
Скриншот программы TensorFlow
Тип Библиотека для машинного обучения
Разработчик Google Brain[1]
Написана на Python, C++, CUDA
Операционная система Microsoft Windows, Linux, macOS, iOS и Android
Языки интерфейса en-US
Первый выпуск 9 ноября 2015
Аппаратная платформа Linux, macOS, Windows
Последняя версия
Состояние Активна
Лицензия Apache License 2.0[3]
Сайт tensorflow.org
Логотип Викисклада Медиафайлы на Викискладе

TensorFlow — открытая программная библиотека для машинного обучения, разработанная компанией Google для решения задач построения и тренировки нейронной сети с целью автоматического нахождения и классификации образов, достигая качества человеческого восприятия[4]. Применяется как для исследований, так и для разработки собственных продуктов Google. Основной API для работы с библиотекой реализован для Python, также существуют реализации для R, C Sharp, C++, Haskell, Java, Go и Swift.

Является продолжением закрытого проекта DistBelief[⇨]. Изначально TensorFlow была разработана командой Google Brain для внутреннего использования в Google, в 2015 году система была переведена в свободный доступ с открытой лицензией Apache 2.0[5][6].

История[править | править код]

DistBelief[править | править код]

Закрытая система машинного обучения DistBelief разрабатывалась Google Brain для внутренних проектов с 2011 года для работы с нейронными сетями глубокого обучения. Она стала использоваться во многих исследовательских и коммерческих проектах группы фирм холдинга Alphabet[7][8]. После успеха DistBelief, фирма Google решила вывести проект на новый уровень, и для рефакторинга выделила группу из нескольких разработчиков, в которую вошёл Джефф Дин; целью группы было упрощение и оптимизация кодов библиотеки, увеличение надёжности и удобства пользования. Новая библиотека получила название TensorFlow[9]. В 2013 году к проекту присоединился Джеффри Хинтон — учёный, под руководством которого в 2009 году был создан метод обобщённого обратного распространения ошибки и ряд других улучшений, позволившие существенно улучшить точность нейронных сетей (что привело, в частности, к снижению погрешности в распознавании речи на 25 %)[10].

TensorFlow[править | править код]

TensorFlow 9 ноября 2015 года был открыт для свободного доступа. TensorFlow является системой машинного обучения Google Brain второго поколения. В то время как эталонная реализация работает на единичных устройствах, TensorFlow может работать на многих параллельных процессорах, как CPU, так и GPU, опираясь на архитектуру CUDA для поддержки вычислений общего назначения на графических процессорах.[11] TensorFlow доступна для 64-разрядных Linux, macOS, Windows, и для мобильных вычислительных платформ, включая Android и iOS.

Вычисления TensorFlow выражаются в виде потоков данных через граф состояний. Название TensorFlow происходит от операций с многомерными массивами данных, которые также называются «тензорами». В июне 2016 года Джефф Дин из Google отметил, что к TensorFlow обращались 1500 репозиториев на GitHub, и только 5 из них были от Google.[12]

Тензорный процессор[править | править код]

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

Сообщалось, что после использования TPU в собственных задачах Google по обработке данных удалось добиться на порядок лучших показателей продуктивности на ватт затраченной энергии[13].

Применение[править | править код]

TensorFlow хорошо подходит для автоматизированной аннотации изображений в таких системах как DeepDream[en][14]. Также с 26 октября 2015 года Google использует систему RankBrain для увеличения релевантности ранжировки поисковой выдачи Google. RankBrain основан на TensorFlow[15].

TensorFlow позволяет проводить обучение генеративно-состязательных сетей (GAN)[16].

Интеграция TensorFlow с Python обеспечивается дистрибутивом Anaconda.

См. также[править | править код]

Примечания[править | править код]

  1. http://bits.blogs.nytimes.com/2015/11/09/google-offers-free-software-in-bid-to-gain-an-edge-in-machine-learning/
  2. Release TensorFlow 2.6.1 · tensorflow/tensorflow · GitHub — 2021.
  3. The tensorflow Open Source Project on Open Hub: Licenses Page — 2006.
  4. «TensorFlow: Open source machine learning» «It is machine learning software being used for various kinds of perceptual and language understanding tasks» — Jeffrey Dean, отрезок 0:47—2:17 (англ.)
  5. Credits. TensorFlow.org. Дата обращения: 10 ноября 2015.
  6. Cade Metz. Google Just Open Sourced TensorFlow, Its Artificial Intelligence Engine. Wired (9 ноября 2015). Дата обращения: 10 ноября 2015.
  7. Dean, Jeff; Monga, Rajat; Ghemawat, Sanjay TensorFlow: Large-scale machine learning on heterogeneous systems. TensorFlow.org. Google Research (November 9, 2015). Дата обращения: 10 ноября 2015.
  8. Perez, Sarah Google Open-Sources The Machine Learning Tech Behind Google Photos Search, Smart Reply And More. TechCrunch (November 9, 2015). Дата обращения: 11 ноября 2015.
  9. Oremus, Will What Is TensorFlow, and Why Is Google So Excited About It? (англ.). Slate (November 11, 2015). Дата обращения: 11 ноября 2015.
  10. Ward-Bailey, Jeff Google chairman: We’re making 'real progress' on artificial intelligence. CSMonitor (November 25, 2015). Дата обращения: 25 ноября 2015.
  11. TensorFlow, Google's Open Source AI , Points to a Fast-Changing Hardware World, Wired (November 10, 2015). Дата обращения 11 ноября 2015.
  12. Machine Learning: Google I/O 2016 Minute 07:30/44:44 accessdate=2016-06-05 (англ.
  13. Jouppi, Norm Google supercharges machine learning tasks with TPU custom chip. Google Cloud Platform Blog. Дата обращения: 19 мая 2016.
  14. Byrne, Michael Google Offers Up Its Entire Machine Learning Library as Open-Source Software. Vice (November 11, 2015). Дата обращения: 11 ноября 2015.
  15. Woollaston, Victoria Google releases TensorFlow – Search giant makes its artificial intelligence software available to the public. DailyMail (November 25, 2015). Дата обращения: 25 ноября 2015.
  16. Generative Adversarial Networks Explained with a Classic Spongebob Squarepants Episode Plus a Tensorflow tutorial for implementing your own GAN

Литература[править | править код]

  • Орельен Жерон. Прикладное машинное обучение с помощью 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.

Ссылка[править | править код]