Pull to refresh

Comments 16

Не могли бы Вы поделиться ссылкой на сайт с КДПВ?
TensorFlow
На КДПВ я задал слишком большую скорость обучения — Learning Rate, поэтому на графике потерь так скачут значения.
К слову, TensorFlow — фреймворк для создания НС. Его разрабатывает Google. И даже круче — его разрабатывает легенда — Jeff Dean.
Спасибо! Отлично написано. Хотелось бы увидеть в таком изложении статью об обучении без учителя. =)
Интересно, а «мало», это сколько? Каков минимальный размер сети позволяющий распознать спираль?

Это мало, или нет?
Минимальный размер сети зависит от первоначально выбранных признаков. Самая маленькая возможная сеть — однослойный персептрон, который по сути состоит из всего одного нейрона и может разделять классы точек только с помощью прямой линий. Но при этом если Вы выберете признаки так, что изначально нелинейное распределение точек превратится в линейное, то даже персептрон сможет правильно выполнить его разделение. Это называется «спрямление пространства».
Например, на картинке Вы в качестве признаков выбрали квадраты x1 и x2, а также их произведение. Вы преобразовали пространство признаков из x1 и x2 в другое пространство, где признаков у Вас пять. И поэтому даже «маленькие» сети могут разделять его достаточно быстро.
Отвечая на Ваш вопрос: минимальный размер сети, позволяющий распознать спираль или что угодно — один нейрон, но только если Вы предварительно «спрямите» (преобразуете) пространство признаков в линейно разделимое.
Если Вы дадите только исходные признаки, то многослойная НС может сама с помощью скрытых слоёв это сделать, но для этого ей нужно время.

Вообще, известный ученый Джеффри Хинтон советовал выбирать НС с количеством скрытых слоёв в районе 3-5 штук. Но сейчас для распознавания объектов на картинках и в текстовых задачах, насколько мне известно, используются очень глубокие (глубина — количество слоёв) сети, с десятками скрытых слоёв. Каждый последующий слой как бы обобщает результаты предыдущего: первый слой распознаёт черточки, второй из черточек — скругления, третий — нос и глаза, четвертый — лицо. Извините, за набивший оскомину пример.
Тут важно понимать контекст «глубины НС». 3-5 скрытых слоя относится скорее к обычным (generic) сетям. В них количество скрытых слоев особо не влияет на качество результата, а вот на скорость обучения очень даже. Плюс с глубокой сетью еще есть такая проблема как исчезающий градиент.

А десятки и даже сотни слоев используются в сверточных. Там другая методология, оптимизаторы и вот это всё.
Простите, но как заголовок «Что с помощью нейронных сетей можете сделать Вы?» соответствует содержанию статьи?
Сразу во втором абзаце вопрос подменён на «И спросил себя: что мне нужно для этого?»

Зашёл за списком новых интересных задач, а наткнулся на одну из «На Хабре есть большое количество статей о нейронных сетях, в которых присутствует картинка нейрона в виде кружочка с входящими стрелочками».

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

А зайдя внутрь статьи, я не нашёл ответа «что можно решить?». Есть только описание, «КАК нужно обучать сеть», и снова абстрактно и безотносительно к какой-то конкретно задачи.

Содержимое статьи не соответствует тому, чем вы завлекли читателей в свою статью, я именно на это обратил внимание.

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

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

// и тут я вспомнил анекдот «как заинтриговать идиота»
Понял Вас. Во искупление я напишу сегодня статью об областях применения НС.
Без всякой связи с анекдотом, если что :)
Заголовок изменил тоже
На ноутбуке с 4-мя ядрами и 6Гб оперативки у меня получалось натренировать сеть для распознования фотографий с дорожными знаками с точностью 93% на тесте. Процесс обучения занимал около 40 минут. Использовал TensorFlow. Но конечно вместо не очень мощного ноутбука предпочел бы использовать машины с AWS с графическим процессором, но тогда не было к ним доступа.
Спасибо, когда я писал статью, я хотел, чтобы были именно такие комментарии. А сколько у Вас было всего фотографий?
Sign up to leave a comment.

Articles

Change theme settings