Рубрика «глубокое обучение» - 9

Google Colaboratory — это не так давно появившийся облачный сервис, направленный на упрощение исследований в области машинного и глубокого обучения. Используя Colaboratory, можно получить удаленный доступ к машине с подключенной видеокартой, причем совершенно бесплатно, что сильно упрощает жизнь, когда приходится обучать глубокие нейросети. Можно сказать, что она является некоторым аналогом гугл-документов для Jupyter Notebook.

В Colaboratory предустановлены Tensorflow и практически все необходимые для работы Python-библиотеки. Если какой-то пакет отсутствует, он с легкостью устанавливается на ходу через pip или apt-get. Но что если необходимо собрать проект из исходников и подключиться к GPU? Оказывается, это может быть не настолько просто, что я выяснил в ходе сборки SSD-Caffe. В этой публикации я дам краткое описание Colaboratory, опишу встреченные трудности и способы их решения, а также приведу несколько полезных приемов.

Весь код доступен в моем Colaboratory Notebook.

Сборка Caffe в Google Colaboratory: бесплатная видеокарта в облаке - 1

Читать полностью »

Глубокое обучение с использованием R и mxnet. Часть 1. Основы работы - 1

Привет!

Эта статья является первой частью руководства по приготовления нейронных сетей с использованием библиотеки mxnet на языке R. Источником вдохновения послужила онлайн-книга Deep Learning — The Straight Dope, объема которой достаточно для осознанного использования mxnet на Питоне. Примеры оттуда будут воспроизводиться с поправкой на отсутствие реализации интерфейса Gluon для R. В первой части рассмотрим установку библиотеки и общие принципы работы, а также реализуем простую линейную модель для решения задачи регрессии.Читать полностью »

Привет!

Еще до конца мая у нас выйдет перевод книги Франсуа Шолле "Глубокое обучение на Python" (примеры с использованием библиотек Keras и Tensorflow). Не пропустите!

Экскурсия по PyTorch - 1

Но мы, естественно, смотрим в надвигающееся будущее и начинаем присматриваться к еще более инновационной библиотеке PyTorch. Сегодня вашему вниманию предлагается перевод статьи Питера Голдсборо, готового устроить вам долгую прогулку ознакомительную экскурсию по этой библиотеке. Под катом много и интересно.
Читать полностью »

Сравнение Google TPUv2 и Nvidia V100 на ResNet-50 - 1

Недавно Google добавила к списку облачных услуг Tensor Processing Unit v2 (TPUv2) — процессор, специально разработанный для ускорения глубокого обучения. Это второе поколение первого в мире общедоступного ускорителя глубокого обучения, который претендует на альтернативу графическим процессорам Nvidia. Недавно мы рассказывали о первых впечатлениях. Многие просили провести более детальное сравнение с графическими процессорами Nvidia V100.

Объективно и осмысленно сравнить ускорители глубокого обучения — нетривиальная задача. Но из-за будущей важности этой категории продуктов и отсутствия подробных сравнений мы чувствовали необходимость провести самостоятельные тесты. Сюда входит и учёт мнений потенциально противоположных сторон. Вот почему мы связались с инженерами Google и Nvidia — и предложили им прокомментировать черновик этой статьи. Чтобы гарантировать отсутствие предвзятости, мы пригласили также независимых экспертов. Благодаря этому получилось, насколько нам известно, самое полное на сегодняшний день сравнение TPUv2 и V100.
Читать полностью »

imageВ последнее время машины одержали ряд убедительных побед над людьми: они уже лучше играют в го, шахматы и даже в Dota 2. Алгоритмы сочиняют музыку и пишут стихи. Учёные и предприниматели всего мира дают прогнозы по поводу будущего, в котором искусственный интеллект сильно превзойдёт человека. С большой вероятностью через несколько десятков лет мы будем жить в мире, в котором роботы не только водят автомобили и работают на заводах, но и развлекают нас. Одна из важных составляющих нашей жизни — юмор. Принято считать, что только человек может придумывать шутки. Несмотря на это, многие ученые, инженеры и даже простые обыватели задаются вопросом: можно ли научить компьютер шутить?

Компания Gentleminds, разработчик систем машинного обучения и компьютерного зрения, совместно с FunCorp попробовали создать генератор весёлых подписей к картинкам, используя базу мемов iFunny. Поскольку приложение англоязычное и используется преимущественно в США, подписи будут на английском. Подробности под катом.
Читать полностью »

Удаление фона с помощью глубокого обучения - 1

Перевод Background removal with deep learning.

На протяжении последних нескольких лет работы в сфере машинного обучения нам хотелось создавать настоящие продукты, основанные на машинном обучении.

Несколько месяцев назад, после прохождения отличного курса Fast.AI, звезды совпали, и у нас появилась такая возможность. Современные достижения в технологиях глубокого обучения позволили осуществить многое из того, что раньше казалось невозможным, появились новые инструменты, которые сделали процесс внедрения более доступным, чем когда-либо.

Мы поставили перед собой следующие цели:

  1. Улучшить наши навыки работы с глубоким обучением.
  2. Совершенствовать наши навыки внедрения продуктов, основанных на ИИ.
  3. Создать полезный продукт с перспективами на рынке.
  4. Весело провести время (и помочь весело провести время нашим пользователям).
  5. Обменяться опытом.

Читать полностью »

image Привет, Хаброжители! Недавно у нас вышла первая русская книга о глубоком обучении от Сергея Николенко, Артура Кадурина и Екатерины Архангельской. Максимум объяснений, минимум кода, серьезный материал о машинном обучении и увлекательное изложение. Сейчас мы рассмотрим раздел «Граф вычислений и дифференцирование на нем» в котором вводятся основополагающее понятие для реализации алгоритмов обучения нейронных сетей.

Если у нас получится представить сложную функцию как композицию более простых, то мы сможем и эффективно вычислить ее производную по любой переменной, что и требуется для градиентного спуска. Самое удобное представление в виде композиции — это представление в виде графа вычислений. Граф вычислений — это граф, узлами которого являются функции (обычно достаточно простые, взятые из заранее фиксированного набора), а ребра связывают функции со своими аргументами.
Читать полностью »

image

Искусственные нейронные сети сейчас находятся на пике популярности. Можно задаться вопросом, сыграло ли громкое название свою роль в маркетинге и применении этой модели. Я знаю некоторых бизнес-менеджеров, радостно упоминающих об использовании в их продуктах «искусственных нейронных сетей» и «глубокого обучения». Так ли рады были бы они, если бы их продукты использовали «модели с соединёнными кругами» или «машины „совершишь ошибку — будешь наказан“»? Но, вне всяких сомнений, искусственные нейросети — стоящая вещь, и это очевидно благодаря их успеху во множестве областей применения: распознавание изображений, обработка естественных языков, автоматизированный трейдинг и автономные автомобили. Я специалист по обработке и анализу данных, но раньше не понимал их, поэтому чувствовал себя мастером, не освоившим свой инструмент. Но наконец я выполнил своё «домашнее задание» и написал эту статью, чтобы помочь другим преодолеть те же самые препятствия, которые встретились мне в процессе моего (всё ещё продолжающегося) обучения.

Код на R для примеров, представленных в этой статье, можно найти здесь в Библии задач машинного обучения. Кроме того, после прочтения этой статьи стоит изучить часть 2, Neural Networks – A Worked Example, в которой приведены подробности создания и программирования нейросети с нуля.
Читать полностью »

Cоревнование по определению костного возраста. Заметки участника

6-го октября на радары Володи Игловикова попал очень интересный конкурс, организованный американскими рентгенологами из The Radiological Society of North America (RSNA) и Radiology Informatics Committee (RIC), и он бросил клич в сообществе ODS.ai

Pediatric Bone Age Challenge. Deep Learning и много, много костей - 1

Целью конкурса было создание автоматической системы для определения костного возраста по рентгеновским снимкам руки. Костный возраст используется в педиатрии для комплексной оценки физического развития детей, и его отклонение от хронологического помогает выявить нарушения в работе различных систем организма. Когда дело касается медицинских проектов, меня уговаривать не надо, но это соревнование стартовало в августе и вступать в него за 8 дней до окончания выглядело авантюрой. Чтобы хотя бы начать препроцессинг снимков, требовались маски рук, и Володя сделал их за несколько дней, отличного качества, и поделился с остальными. Как он так быстро справился с этой тяжёлой задачей, включавшей ручную разметку – загадка, и об этом он, возможно, напишет сам. С масками затея уже не выглядела безнадёжной, я решился участвовать и в конечном счёте успел реализовать почти все планы.

Задача

Pediatric Bone Age Challenge. Deep Learning и много, много костей - 2Костный возраст (bone age) — это условный возраст, которому соответствует уровень развития костей детей и подростков. Формирование скелета происходит в несколько стадий. Это используется в педиатрии для сравнения костного возраста с хронологическим, что позволяет вовремя заметить нарушения в работе эндокринной системы и системы обмена веществ.

Для определения костного возраста в основном используются две методики — GP Грейлиха и Пайла (Greulich and Pyle) и TW2 Таннера, Уайтхауза и Хили (Tanner, Whitehouse, Healy), разработанные во второй половине XX века. Обе методики основаны на рентгенограмме кисти и лучезапястного сустава. Благодаря большому количеству участков растущей ткани в костях и ядер окостенения, Читать полностью »

На этот вброс меня подталкивает доминирование статистических методов, особенно нейронных сетей — да, я именно так их буду классифицировать. С одной стороны я ничего не имею против них, но в то же время чувствуется явный перекос, иногда даже нейронные сети едва ли не отождествляют с неопределённым понятием искусственного интеллекта, хотя так ли хуже SVM, HMM и т.д. В вопросе обработки естественных языков я всегда был сторонником лингвистических методов в противовес статистическим, но чувствуется их существенный недостаток — трудоёмкость моделирования вручную по сравнению с машинным обучением. А может для лингвистических методов машинное обучение тоже применимо?

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js