Введение в Tensorflow
Tensorflow - это программное обеспечение с открытым исходным кодом и библиотека. Он был разработан командой Google Brain, которая была создана командой глубокого изучения искусственного интеллекта в google 2010. После этого она использовалась для внутреннего использования в рамках Apache2.0 Open source - 2015. В этой теме мы собираемся узнать об основах Tensorflow.
Tensorflow - это система Google второго поколения. Версия 1 была выпущена 11 февраля 2017 года. В Tensorflow 1.0 теперь есть Python API и API для языка Java и GO, также добавлены в версию 1.0. Тензор потока операций нейронной сети выполняется на многомерном массиве данных, который называется тензором. Работает с тензорами. Это программная библиотека для глубокого обучения и в основном работает для численных расчетов с использованием графиков потока данных.
Что такое основы Tensorflow?
Тензорные объекты - это объекты, которые описывают линейную связь между векторами, скалярами и другими тензорами. Тензоры - это не что иное, как многомерные массивы.
Tensorflow предоставляет поддержку для написания кода в соответствии с вашими требованиями и доступа к различным инструментам. Мы можем написать код C ++ и вызвать код C ++ из Python. Или мы можем написать код на Python и вызвать его на C ++.
На рисунке выше показан самый нижний слой, который поддерживает два языка: первый - это язык Python, а второй - язык C ++. Вы можете написать это на любом языке в своей зоне комфорта. Он имеет коллекцию различных математических библиотек, которые помогают легко создавать математические функции.
Он также обеспечивает поддержку таких процессов, как CPU, GPU, TPU, а также работает на мобильных устройствах Android.
Tf.layers : - tf.layers используется для абстрактного метода, поэтому вы можете настроить слои нейронных сетей.
Tf.estimator : - наиболее часто используемым API в тензорном потоке является tf.estimator. Помогает в создании и обучении, тестировании вашей модели.
Установка Tensorflow
- Сначала проверьте свою версию pip, если не последняя, затем выполните следующую команду, чтобы обновить pip
pip install - обновить pip
- Запустите приведенный ниже код, чтобы установить более простую версию Tensorflow
pip install tenorflow / conda install tenorflow (Анаконда)
- Это установит Tensorflow с конфигурациями, поддерживаемыми GPU.
pip install Tensorflow-GPU
Пример использования tf.estimator классификатора по 3 строкам кода
Import tensorflow as tf
classifier = tf.estimator.LinearClassifier(feature_columns)
classifier.train(input_fn=train_input_function, steps=2000)
predictions = classifier.predict(input_fn=predict_input_function)
Основные типы данных Tensorflow
Основные типы данных в среде Tensorflow (Tensors)
Ниже показано каждое измерение тензоров.
- Скаляр - O Размерный Массив
- Фото со стока - 1-мерный массив
- Матрица - 2-мерный массив
- 3D Tensor - 3-мерный массив
- N - D Тензор - N-мерный массив
Постоянные тензоры
переменные
Класс tf.Variable, для создания переменной в tenorflow и вызова функции tf.get_variable
Инициализация переменных
Чтобы инициализировать переменные, вызывая tf.global_variables_initializer, мы можем инициализировать все переменные.
Простой пример переменной и математического выражения
Нормальный способ
а = 3, 0, б = 8 * а + 10
Тензорный путь
c = tf.Variable (tf.add (tf.multiply (X, a), b)
диаграммы
Каждая строка в нашем коде, написанная в тензорном потоке, преобразуется в базовую диаграмму
Пример:
- Узлы: представляет математические операции.
- Края: он представляет многомерный массив (тензоры) и показывает, как они взаимодействуют между собой.
Tensorflow 2.0
- Во второй версии Tensorflow они сосредоточились на том, чтобы сделать API более простым и удобным в использовании.
- Компоненты API лучше интегрируются с Keras, по умолчанию активирован активный режим выполнения.
- Стремительный режим: Стремительное выполнение - это интерфейс запуска, в котором операции выполняются сразу же после их вызова из Python.
- Мы можем использовать нетерпеливый режим вместо графического режима. Мы можем вычислить то, что нам нужно для вычисления, и мы можем сразу же получить результаты. Это сделает Tensorflow так же легко, как Pytorch
- Сосредоточение на удалении дублирования API.
Keras
- Tensorflow предоставляет высокоуровневый API для построения и обучения моделей глубокого обучения. Это не было включено в tenorflow, но в последнем выпуске Keras был включен в Tensorflow 2.0.
- Удобство для пользователя: Keras предоставляет простой, согласованный интерфейс для общих случаев использования.
- Модульный и составной: модели Keras изготавливаются путем соединения строительных блоков вместе.
- Простота расширения: создание или обновление новых слоев, метрик, функций потерь
- Используйте tf.keras для использования моделей Keras.
Tensorflow Lite
- В 2017 году Google анонсировал программное обеспечение, специально разработанное для мобильной разработки, Tensorflow Lite.
- Tensorflow Lite (TFLite) - это легкое решение для вывода на мобильное устройство.
- Мы также можем использовать его для IOS и Android, создав C ++ API, а также класс Java-оболочки для разработчиков Android.
Список алгоритмов, которые поддерживает Tensorflow
1. Для регрессии
- Линейная регрессия (tf.estimator. Линейная регрессия)
- Усилитель регрессии дерева (tf.estimator. Усиленный регрессор дерева)
2. Для классификации
- Классификация (tf.estimator. Линейный классификатор)
- Комбинированное глубокое обучение (tf.estimator. DNNLinearCombinedClassifier)
- Классификатор повышенного дерева (tf.estimator. Классификатор повышенного дерева)
Особенности Tensorflow
- Tensorflow эффективно работает с различными типами математических выражений, включая многомерные массивы (Tensors)
- Он также обеспечивает поддержку нейронных сетей глубокого обучения и других концепций машинного обучения.
- Tensorflow может работать на нескольких процессорах и графических процессорах.
- Он также обеспечивает свою собственную вычислительную мощность, то есть Tensor Processing Unit.
Тензорный блок обработки (ТПУ)
- Google объявил, что его процессор Tensor (TPU) представляет собой специализированную интегральную схему (Hardware Chip), созданную специально для машинного обучения и адаптированную для Tensorflow.
- В 2017 году Google анонсировала вторую версию Tensorflow, а также о доступности TPU в облаке Google.
- TPU - это программируемый ускоритель искусственного интеллекта, созданный для использования или работы моделей. Google работает с TPU внутри своих дата-центров более года.
Краевой ТПУ
- Edge TPU - это микросхема, созданная для работы с моделями машинного обучения (ML) Tensorflow Lite, предназначенная для работы на небольших вычислительных устройствах, таких как смартфоны.
- Высокая масштабируемость для вычисления огромных наборов данных
- Он также может обучать и обслуживать модели в живой модели. Переписывание кода мне не требуется
Заключение - Основы Tensorflow
Tensorflow - очень часто используемая библиотека глубокого обучения. Это в основном используется при создании нейронных сетей, также используется стартапами, крупными компаниями.
Как уже говорилось выше, Google также использует тензорный поток для своих внутренних целей, он по-прежнему используется в основном во всех видах продуктов, таких как Gmail и поисковая система Google.
Рекомендуемые статьи
Это руководство по основам Tensorflow. Здесь мы обсуждаем установку Tensorflow с функциями и списком алгоритмов, которые поддерживает Tensorflow. Вы также можете посмотреть следующую статью, чтобы узнать больше -
- Что такое TensorFlow?
- TensorFlow Альтернативы
- Введение в Tensorflow
- Как установить TensorFlow
- Типы данных C ++