Перевод руководства по рекуррентным нейросетям с сайта Tensorflow.org. В материале рассматриваются как встроенные возможности Keras/Tensorflow 2.0 по быстрому построению сеток, так и возможности кастомизации слоев и ячеек. Также рассматриваются случаи и ограничения использования ядра CuDNN позволяющего ускорить процесс обучения нейросети.
Рубрика «TensorFlow» - 4
Рекуррентные нейронные сети (RNN) с Keras
2020-02-11 в 17:07, admin, рубрики: big data, keras, LSTM, python, TensorFlow, искусственный интеллект, машинное обучение, рекуррентная нейронная сетьКак энергетик изучал нейросети и обзор бесплатного курса «Udacity: Intro to TensorFlow for Deep Learning»
2020-02-11 в 14:15, admin, рубрики: TensorFlow, машинное обучение, нейронные сети, Учебный процесс в ITВсю свою сознательную жизнь, я был энергетиком (нет, сейчас речь не идет о напитке с сомнительными свойствами).
Я никогда особо не интересовался миром информационных технологий, да и даже матрицы я вряд ли на листочке смогу перемножить. Да и не нужно мне это было никогда, чтобы вы понимали немного о специфике моей работы, могу поделиться замечательной историей. Попросил я как-то моих коллег сделать работу в Excel – таблице, прошла половина рабочего дня, подхожу к ним, а они сидят и суммируют данные на калькуляторе, да- да, на обычном таком черном калькуляторе с кнопками. Ну и о каких нейронных сетях может идти речь после этого?.. Поэтому никаких особых предпосылок к погружению в мир IT у меня никогда не было. Но, как говорится «хорошо там, где нас нет», мои друзья прожужжали мне все уши о дополненной реальности, о нейронных сетях, о языках программирования (в основном про Python).
На словах оно выглядело весьма просто, и я решил почему бы не освоить это магическое искусство, чтобы применить в своей сфере деятельности.
В этой статье я опущу мои попытки освоить азы Python и поделюсь с вами своим впечатлением от бесплатного курса по TensorFlow от Udacity.
Подборка статей о машинном обучении: кейсы, гайды и исследования за январь 2020
2020-02-10 в 8:22, admin, рубрики: python, pytorch, TensorFlow, искусственный интеллект, Компьютерное зрение, машинное обучениеИсследовательская работа в области машинного обучения постепенно покидает пределы университетских лабораторий и из научной дисциплины становится прикладной. Тем не менее, все еще сложно находить актуальные статьи, которые написаны на понятном языке и без миллиарда сносок.
Этот пост содержит список англоязычных материалов за январь, которые написаны без лишнего академизма. В них вы найдете примеры кода и ссылки на непустые репозитории. Упомянутые технологии лежат в открытом доступе и не требуют сверхмощного железа для тестирования.
Читать полностью »
Обучение и оценка модели с Keras
2020-02-04 в 11:42, admin, рубрики: big data, python, TensorFlow, искусственный интеллект, машинное обучение, обучение модели
Это руководство охватывает обучение, оценку и прогнозирование (выводы) моделей в TensorFlow 2.0 в двух общих ситуациях:
- При использовании встроенных API для обучения и валидации (таких как
model.fit()
,model.evaluate()
,model.predict()
). Этому посвящен раздел «Использование встроенных циклов обучения и оценки» - При написании кастомных циклов с нуля с использованием eager execution и объекта
GradientTape
. Эти вопросы рассматриваются в разделе «Написание собственных циклов обучения и оценки с нуля».
В целом, независимо от того, используете ли вы встроенные циклы или пишете свои собственные, обучение и оценка моделей работает строго одинаково для всех видов моделей Keras: Sequential моделей, созданных с помощью Functional API, и написанных с нуля с использованием субклассирования.
Читать полностью »
Тензоры в TensorFlow
2020-01-16 в 13:14, admin, рубрики: tensor, TensorFlow, искусственный интеллект, математика, машинное обучение, нейросети, тензор
Основным объектом которым манипулируют в Tensorflow, является тензор. О том, что такое тензор, какие бывают тензоры, какие у них есть свойства и как ими манипулировать читайте в переводном руководстве с сайта tensorflow.org.
Основы deep learning на примере дебага автоэнкодера, часть №1
2020-01-15 в 8:18, admin, рубрики: autoencoder, beginners, keras, machine learning, ml, TensorFlow, машинное обучениеЕсли почитать обучение по автоэнкодерам на сайте keras.io, то один из первых посылов там звучит примерно так: на практике автоэнкодеры почти никогда не используются, но про них часто рассказывают в обучалках и народу заходит, поэтому мы решили написать свою обучалку про них:
Their main claim to fame comes from being featured in many introductory machine learning classes available online. As a result, a lot of newcomers to the field absolutely love autoencoders and can't get enough of them. This is the reason why this tutorial exists!
Тем не менее, одна из практических задач, для которых их вполне себе можно применять — поиск аномалий, и лично мне в рамках вечернего проекта потребовался именно он.
На просторах интернетов есть очень много туториалов по автоэнкодерам, нафига писать еще один? Ну, если честно, тому было несколько причин:
- Сложилось ощущение, что на самом деле туториалов примерно 3 или 4, все остальные их переписывали своими словами;
- Практически все — на многострадальном MNIST'е с картинками 28х28;
- На мой скромный взгляд — они не вырабатывают интуицию о том, как это все должно работать, а просто предлагают повторить;
- И самый главный фактор — лично у меня при замене MNIST'а на свой датасет — оно все тупо переставало работать.
Дальше описан мой путь, на котором набиваются шишки. Если взять любую из предложенных плоских (не сверточных) моделей из массы туториалов и втупую ее скопипастить — то ничего, как это ни удивительно, не работает. Цель статьи — разобраться почему и, как мне кажется, получить какое-то интуитивное понимание о том, как это все работает.
Я не специалист по машинному обучению и использую подходы, к которым привык в повседневной работе. Для опытных data scientists наверное вся эта статья будет дикой, а для начинающих, как мне кажется, может что-то новое и встретится.
Keras Functional API в TensorFlow
2020-01-13 в 12:37, admin, рубрики: big data, functional api, keras, python, TensorFlow, искусственный интеллект, машинное обучение, нейронные сети
В Keras есть два API для быстрого построения архитектур нейронных сетей Sequential и Functional. Если первый позволяет строить только последовательные архитектуры нейронных сетей, то с помощью Functional API можно задать нейронную сеть в виде произвольного направленного ациклического графа, что дает намного больше возможностей для построения сложных моделей. В материале перевод руководства, посвященного особенностям Functional API, с сайта TensorFlow.
Читать полностью »
Автоматическое обновление кода до TensorFlow 2
2020-01-08 в 13:14, admin, рубрики: big data, Migration, open source, python, TensorFlow, upgrade, искусственный интеллект, машинное обучение
В материале предоставлен перевод руководства по автоматическом обновлению кода с TensorFlow 1.x до Tensorflow 2 с помощью скрипта обновления tf_upgrade_v2
.
Читать полностью »
Джедайская техника уменьшения сверточных сетей — pruning
2019-12-27 в 7:10, admin, рубрики: cnn, convolutional neural network, CUDA, deep learning, eco, gpu, keras, machine learning, neural networks, Nvidia, optimization, pruning, python, speedup, TensorFlow, tensorrt, yolo, высокая производительность, искусственный интеллект, Исследования и прогнозы в IT, машинное обучение
Перед тобой снова задача детектирования объектов. Приоритет — скорость работы при приемлемой точности. Берешь архитектуру YOLOv3 и дообучаешь. Точность(mAp75) больше 0.95. Но скорость прогона всё еще низкая. Черт.
Сегодня обойдём стороной квантизацию. А под катом рассмотрим Model Pruning — обрезание избыточных частей сети для ускорения Inference без потери точности. Наглядно — откуда, сколько и как можно вырезать. Разберем, как сделать это вручную и где можно автоматизировать. В конце — репозиторий на keras.