• И снова УрФУ...

    Пропуск в УрФУ

    Никогда такого не было и вот опять :-). Я снова работаю в Уральском федеральном университете! В этот раз не на матмехе, а в Институте радиоэлектроники и информационных технологий (бывший радиофак), директором школы магистратуры. Буду заниматься развитием магистерских программ, аспирантуры и науки.

    Безумно жаль было уходить из Точки, которая мне очень нравится. Это единственное место работы, откуда я уходил не из-за того, что там плохо, а потому что предложили более интересную позицию. В Точке я многому научился. Там прекрасные и профессиональные люди, с которыми приятно иметь дело. Точка – это действительно не работа, ролик правдиво передает атмосферу.

    Рационально объяснить, почему я перешел в университет, не могу. В голову приходят только две причины: слабоумие и отвага :-). Университеты – очень консервативные организации. Возможность их поменять выпадает редко. У меня появилась возможность принять участие в трансформации радиофака в крутой факультет по ИТ и радиотехнике. Неизвестно, будет ли подобный шанс еще раз в моей жизни. Поэтому я решил попробовать. У нас сильная команда и я надеюсь, что все получится. По крайне мере, будет очень интересно!

  • Функция SoftMax

    Функция SoftMax, по-русски функция мягкого максимума, часто используется в нейронных сетях в качестве функции активации при решении задачи классификации. SoftMax задается следующей формулой:

    где $z_i$ – значение на выходе из i-го нейрона до активации, а N – общее количество нейронов в слое.

    Почему именно эта функция используется для задач классификации?

    Читать дальше

  • Сохранение нейросети в процессе обучения

    Обучение нейронной сети, как правило, требует значительного времени, поэтому важно сохранять обученную сеть для дальнейшего использования. Но иногда бывает что веса, полученные на последней эпохе обучения сети, не являются лучшими. Например, у нас началось переобучение и обобщающая способность сети стала снижаться. Можно перезапустить процесс обучения с меньшим количеством эпох, но это не является хорошим решением если обучение идет долго. Альтернативный вариант – использовать ModelCheckpoint Callback, который позволяет сохранять веса нейронной сети на каждой эпохе обучения.

    Читать дальше

  • Остановка обучения нейросети при переобучении

    Переобучение - это одна из самых частых проблем при обучении глубоких нейронных сетей и в машинном обучении в целом. При переобучении нейронная сеть адаптируется к особенностям обучающего набора данных, а не находит общие закономерности. В результате сеть хорошо работает на обучающем наборе, но плохо на тех данных, которые она не видела в процессе обучения. Таким образом, у модели снижается обобщающая способность.

    Один из вариантов решения этой проблемы – остановить процесс обучения нейросети при появлении первых признаков переобучения. В Keras это можно сделать с помощью EarlyStopping Callback, в этой статье я расскажу, как его использовать.

    Читать дальше

  • Отзыв на курс по нейронным сетям на Python

    Максим Бушуев

    Получил сегодня очень приятное письмо с отзывом на курс по нейросетям:

    Здравствуйте, Андрей Владимирович! Меня зовут Максим Бушуев, я школьник из Нижнего Новгорода, учусь в 11 классе и увлекаюсь программированием, в особенности компьютерным зрением. Мы с моим товарищем из наукограда Сарова разрабатывали систему беспилотного автомобиля и решили добавить контроль усталости водителя на основе того, как долго у него открыты и закрыты глаза, после чего сделали это основной фишкой работы. Никак не могли реализовать классификацию открытых и закрытых глаз, только детектирование. Пришли к выводу, что нужно делать сверточную нейросеть, но я с нейросетями в принципе никогда не работал. Тут мне и пришел на помощь Ваш видеокурс “Программирование глубоких нейронных сетей на Python”, ведь с этим языком я знаком. Хочу выразить вам свою глубочайшую благодарность за данный видеокурс в открытом доступе. Благодаря Вам мы с товарищем создали и обучили собственную сверточную нейросеть, после чего получили золотую медаль на международной выставке юных изобретателей в Индонезии.

    С уважением, Максим Бушуев.

  • Перевод термина Accuracy

    Accuracy – это одна из популярных метрик качества моделей машинного обучения. Она часто используется для классификации и показывает долю данных, для которых класс был определен правильно. Хотя это не самая показательная метрика, но её проще всего считать и она интуитивно понятная, поэтому применяется часто.

    В своих лекциях и текстах я стараюсь переводить англоязычные термины на русский язык. Раньше я переводил Accuracy как точность. Но коллеги, в первую очередь Дмитрий Усталов, подсказали, что точность – это перевод другой метрики, Precision (которая часто используется вместе с Recall). Поэтому для перевода Accuracy лучше использовать другое слово.

    Читать дальше

  • Новый курс по Нейронным сетям

    Совместно с Университетом Искуственного Интеллекта мы запускаем новый курс “Основы нейронных сетей на Python”. Курс основан на материалах по нейросетям, которые уже есть на моем сайте, но ориентирован на получение практических навыков программирования нейросетей для разных задач: компьютерное зрение, обработка текстов и др.

    Чем отличается новый курс

    В видеолекциях на Youtube я очень кратко рассказываю основные идеи. В новом курсе вместо видеолекций будут вебинары продолжительностью 2 часа, на которых я буду подробно рассказывать обо всех этапах решения задачи машинного обучения, которую мы будем рассматривать: как загрузить данные, как провести их предварительную обработку, как привести данные к виду, с которым может работать нейронная сеть, как подобрать подходящую архитектуру нейросети, как ее обучить и использовать для распознавания.

    Читать дальше

  • Конференция BigDataConf 2018

    Конференция BigDataConf2018

    С опознадием рассказываю о конференции BigDataConf 2018, которая проходила в этом году в Москве 13 сентября. Я выступал с докладом о том, чем сейчас занимаюсь в Банке Точка: поиск компаний, которые занимаются отмыванием денег и другими сомнительными операциями.

    Читать дальше

  • Библиотека программиста ворует мой контент

    У меня начали воровать контент! Приятно, что это делает достаточно популярный сайт Библиотека программиста.

    1. Статья “Компьютерные сети от А до Я: классификация, стандарты и уровни”. Скриншоты и текст из видео о классификации сетей и стандартов компьютерных сетей.

    2. Статья “Компьютерные сети от А до Я: технология Ethernet и коммутаторы”. Текст и скриншоты из видео про классический Ethernet, коммутаторы Ethernet и CSMA/CD.

    3. Статья “Разбираем по косточкам компьютерные сети: HTTP, TCP, REST”. Опять текст и скриншоты из видео про TCP, установку соединения в TCP, HTTP. Про REST у меня ничего нет.

    Не знаю, расстраиваться ли мне из-за того, что берут мой контент без разрешения и ссылки. Или радоваться тому, что мой контент кому-то нужен.

  • Поиск объектов на изображениях

    Одна из востребованных задач компьютерного зрения, которая может быть решена с помощью глубоких нейронных сетей – это поиск на изображении объектов заданного типа. В этой статье я расскажу, как можно решить такую задачу с помощью предварительно обученных нейронных сетей из TensorFlow Object Detection API. Эта система является частью TensorFlow и распространяется бесплатно, также как и сама TensorFlow. Полный текст кода из статьи можно найти в репозитории курса на github, а также в ноутбуке на Colaboratory (это бесплатная облачная платформа от Google, где уже установлены библиотеки глубокого обучения и есть GPU, ноутбук можно выполнить прямо на этой платформе).

    Читать дальше


Подпишитесь на RSS