В мае 2017 года исследователи из Google Brain представили проект AutoML, который автоматизирует проектирование моделей машинного обучения. Эксперименты с AutoML показали, что эта система может генерировать маленькие нейросети с очень хорошими показателями — вполне сравнимые с нейросетями, которые спроектированы и обучены экспертами-людьми. Однако поначалу возможности AutoML были ограничены маленькими научными наборами данных вроде CIFAR-10 и Penn Treebank.

Инженеры Google задумались — а что если поставить перед генератором ИИ более серьёзные задачи? Способна ли эта система ИИ сгенерировать другую ИИ, которая будет лучше созданного человеком ИИ в какой-нибудь важной задаче вроде классификации объектов из базы ImageNet — самого известного из крупномасштабных наборов данных в машинном зрении. Так появилась нейросеть NASNet, созданная практически без участия человека.

Как выяснилось, ИИ справляется с проектированием и обучением нейросетей не хуже человека. Задача классификации объектов из набора данных ImageNet и определения объектов из набора данных COCO осуществлялась в раках проекта Learning Transferable Architectures for Scalable Image Recognition.

Разработчики проекта AutoML говорят, что задача оказалась нетривиальной, потому что новые наборы данных на несколько порядков больше, чем прежние, с которыми привыкла работать система. Пришлось изменить некоторые алгоритмы работы AutoML, в том числе перепроектировать пространство поиска, чтобы AutoML мог найти наилучший слой и многократно продублировать его перед созданием окончательного варианта нейросети. Кроме того, разработчики исследовали варианты архитектуры нейросетей для CIFAR-10 — и вручную перенесли самую успешную архитектуру на задачи ImageNet и COCO.

Благодаря этим манипуляциям система AutoML сумела обнаружить самые эффективные слои нейросети, которые хорошо работали для CIFAR-10 и в то же время хорошо проявили себя в задачах ImageNet и COCO. Эти два обнаруженных слоя были объединены для формирования инновационной архитектуры, которую назвали NASNet.


Архитектура NASNet состоит из слоёв двух типов: нормальный слой (слева) и слой сокращения (справа). Эти два слоя спроектированы генератором AutoML

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



Так, в задаче классификации на базе ImageNet нейросеть NASNet продемонстрировала точность предсказания 82,7% на проверочном наборе. Этот результат выше, чем все ранее спроектированные модели машинного зрения семейства Inception. Система NASNet показала результат как минимум на 1,2 процентных пункта выше, чем все известные нейросети машинного зрения, включая самые последние результаты из работ, ещё не опубликованных в научной прессе, но уже выложенных на сайте препринтов arXiv.org.

Исследователи подчёркивают, что NASNet можно масштабировать и, следовательно, приспособить для работы на системах со слабыми вычислительными ресурсами без особой потери точности. Нейросеть способна работать даже на мобильном телефоне со слабым CPU с ограниченным ресурсом памяти. Авторы говорят, что миниатюрная версия NASNet демонстрирует точность 74%, что на 3,1 процентных пункта лучше, чем самые качественные известные нейросети для мобильных платформ.

Когда усвоенные признаки из классификатора ImageNet перенесли на распознавание объектов и совместили с фреймворком Faster-RCNN, то в задаче распознавания объектов COCO система показала наилучшие результаты как в большой модели, так и в уменьшенном варианте для мобильных платформ. Большая модель показала результат 43,1% mAP, что на 4 процентных пункта лучше, чем у ближайшего конкурента.

Авторы открыли исходный код NASNet в репозиториях Slim и Object Detection для TensorFlow, так что каждый может сам испытать новую нейросеть в работе.

Научная статья опубликована 1 декабря 2017 года на сайте препринтов arXiv.org (arXiv:1707.07012v3, третья версия).

Комментарии (207)


  1. FreeManOfPeace
    04.12.2017 17:01
    +1

    Ну всё, осталось сделать генератор ИИ который будет делать генератор ИИ который будет делать генератор ИИ и так далее, пока не обретёт сознание.


    1. NeoCode
      04.12.2017 19:09

      Городить такие цепочки из ИИ не нужно. Достаточно сделать постоянно действующую обучающую обратную связь от ИИ к нему же самому. Хочу заметить, что это и будет сознание.


      1. Nekto_Habr
        04.12.2017 22:32

        это и будет сознание

        Ну-ка ну-ка, почему же?


        1. NeoCode
          04.12.2017 23:56

          Потому что возникнет обратная связь внутри ИИ, направленная на саму структуру ИИ.
          Тут конечно нельзя говорить с абсолютной уверенностью, но похоже что именно это происходит в человеческом мозге. Да, возможно вопрос будет в количестве таких обратных связей и их «степени вложенности». То есть потребуется еще контур, подключенный к первому и способный его анализировать и корректировать параметры… и так далее. Дело за малым — провести эксперимент. Вот гугл сделал полшага в нужном направлении, осталось еще полшага:)


          1. dipspb
            05.12.2017 01:47

            Потом дать ему возможность самому выращивать/настраивать обратные связи и привет… )


            1. JDTamerlan
              07.12.2017 00:32

              Привет :)


              1. QDeathNick
                07.12.2017 22:06

                Хорошо, если не сразу — Пока!


          1. Smeilz1
            05.12.2017 08:51

            Это неверно, у сознания еще есть чувства, которые корректируют логику, а у ИИ пока такого нет.


            1. Sadler
              05.12.2017 08:55

              С чего Вы взяли, что «чувства», например, не являются производными сознания?


              1. tretyakovpe
                05.12.2017 09:46

                Может из-за химии? Гормоны и т.п.


              1. Smeilz1
                07.12.2017 04:09

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


                1. Sadler
                  07.12.2017 10:41

                  В Ваших представлениях слишком много поэзии. Эмоции вполне рациональны с т.з. популяции, на уровне которой и работает генетический алгоритм, создавший их. У style transfer нет задачи заменить художников, хотя и в живописи эмоций и чувств с гулькин нос. Большинство холстомарателей тупо зарабатывает этим деньги, и это пользуется спросом. Стиль в данном случае является лишь отражением моды.


            1. Artystarty
              05.12.2017 10:07

              «Чувства» — или «эмоции» — это и есть обратная связь, с помощью которой мозг сообщает нам о «правильном» или «неправильном» результате.


              1. LunaticRL
                05.12.2017 12:08

                Товарищи, хватит огород городить, почитайте Элиезера Юдковского лучше.
                Блог о рациональном мышлении и проектировании дружественного ИИ


                1. Artystarty
                  05.12.2017 14:06

                  А это корректно, когда вместо своего суждения ссылаются на «блок знаний» неопределённого размера, да ещё и принадлежащий другому лицу? ;)


                  1. fireSparrow
                    06.12.2017 16:06

                    Видимо, LunaticRL имел в виду в первую очередь вот эту статью.

                    Но вообще у lesswrong кроме этого много и другой годноты.


              1. barbanel
                05.12.2017 14:58

                И у некоторых эти чувства отбиты напрочь…


              1. iShrimp
                05.12.2017 17:18

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


                1. Artystarty
                  05.12.2017 18:51

                  Спасибо за уточнение )


              1. inscriptios
                06.12.2017 22:22

                А как же бесчувственные злодеи?


                1. Artystarty
                  06.12.2017 22:56

                  «Бесчувственные злодеи», как правило, по своей природе социопатичны, у них свои собственные представления о нормах социального поведения.


            1. Hardcoin
              05.12.2017 13:06

              Глючные, жёстко прошитые целевые функции? Ну да, у ИИ такого нет, но сделать не сложно, если понадобится.


          1. sim2q
            05.12.2017 17:12

            Похоже на сверхгенератор в радиоприёме (которому лет 100 скоро наверное), там если правильно помню он сам генерит и в отсутствие сигнала — живёт своей жизнью:)
            Так и у ИИ без явных задач будет самоподдерживающися внутренний диалог и всё такое:)


            1. dragonnur
              06.12.2017 11:30

              Для того, чтоб он не слишком генерил, он генерит с определённой частотой («гашения»). Иначе он бы ничего не поймал.


      1. Kovarnoe
        05.12.2017 08:50

        Это будет самосовершенствование. Но сознанием вряд-ли станет ибо упрётся всё в быстродействие. Вот если автоматизировать процесс и чтоб ИИ пытался сделать свою аппаратную платформу быстрее, а параллельно самообучался из разных источников — вполне возможно, что через пару десятков или сотен лет что-то подобное и выйдет


        1. green_worm
          05.12.2017 12:33

          А вот тут Вы уже описали любопытнейшую книжку писателя А. Лазаревича «Червь». Там тоже описывается самообучение и самоизменение и что из этого вышло. И должен заметить, книга была написана еще когда ни о каком машинном обучении даже речи не шло. =)


          1. Frankenstine
            06.12.2017 13:11

            Какого года книга? Лучше почитайте «Открытие себя» Владимира Савченко, книга 1967 года. Ещё компьютеров не было, а в книге уже саморазвившийся ИИ который создавал клонов людей со своим интеллектом :)


            1. napa3um
              06.12.2017 14:06

              Всё это уже было в Симпсонах у Лема!


              1. irium
                07.12.2017 01:36

                У Лема в «Сумме Технологии» было описано чуть более, чем 90% того, о чем мы читаем новости в последние годы. И даже больше))) Гениальная книга, что уж говорить)


        1. Closius
          07.12.2017 00:16

          Гораздо меньше… Это возможный конец человечеству…
          Но далеко не факт что если ИИ поумнеет то будет все убивать. Возможно он захочет развивать и сохранять жизнь также как люди не убивают всех злых животных а сохранят их виды.


          1. alexeykuzmin0
            07.12.2017 14:09

            Совершенно не обязательно ИИ вообще будет мыслить такими категориями. См здесь (искать по слову robotica) историю о том, как ИИ, заточенный на рисование красивых текстов от руки и самосовершенствование, уничтожил человечество.


      1. geekmetwice
        07.12.2017 12:53

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


    1. WD40
      04.12.2017 22:53

      Да вот так хоп и через пару часов технологическая сингулярность наступит.


      1. darthmaul
        05.12.2017 22:01

        Новые процессоры так быстро не наштампуешь.


  1. 381222
    04.12.2017 17:11

    Научная статья опубликована 1 декабря 2018 года

    Новость из будущего?


    1. Ugrum
      04.12.2017 17:13

      Прогноз новости из будущего.


    1. vconst
      04.12.2017 17:21

      (Submitted on 21 Jul 2017 (v1), last revised 1 Dec 2017 (this version, v3))

      Получается — «новости» уже год?


      1. neochapay
        04.12.2017 17:43

        Сегодня 4 Dec 2017


        1. vconst
          04.12.2017 17:49

          //просыпается
          Опять все проспал! (С)


          1. UJIb9I4AnJIbIrUH
            05.12.2017 07:37

            Признайтесь, просто вы встретили прилетевшего из прошлого Марти, отняли у него машину времени и теперь путаетесь.


            1. vconst
              05.12.2017 10:08

              «Наверное, не тот год...» ©


    1. Tramantor
      04.12.2017 17:40
      +1

      Не понимаю что вас удивляет? Терминатора тоже отправили в прошлое, чтобы кое-что подкорректировать…


      1. apiksDen
        04.12.2017 17:53

        Нейронная сеть научилась писать о будущем


  1. artskep
    04.12.2017 17:14

    ИИ от Google обучил дочерний ИИ, который превосходит все ИИ, созданные человеком

    … по мнению ИИ… :-)

    Не, кроме шуток — при такой сложности задачи начинаются подозрения насчет методики подсчета. А, не понимая до конца как происходит выборка/обучение/и, самое главное, механизм работы обученной сети… Тут уже надо бы из медицины методологию брать — «двойное слепое плацебо-контролируемое исследование».
    Причем именно с разными людьми для определения алгоритмов выборки и методов сравнения.


    1. Hardcoin
      04.12.2017 22:02

      А зачем подозрения? Берете эту сгенерированную нейросеть на гитхабе и проверяете на тестовом наборе ImageNet по любой методике.


      А их методика описана в статье — валидация на тестовом наборе.


      1. artskep
        04.12.2017 22:31

        проверяете на тестовом наборе ImageNet

        Вам не кажется, что тестовый набор это часть методологии проверки, вообще-то? :-)

        Я про то и говорю, что надо аккуратнее проверять с разными параметрами. А то можно получить совсем не то, что ожидаем.


        1. Hardcoin
          04.12.2017 22:51

          Нет, не кажется. Это часть задачи. Они же не универсальный ИИ пилили, а сеть для решения ImageNet.


          1. artskep
            04.12.2017 23:11

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


            1. Sadler
              05.12.2017 08:24

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


      1. Frankenstine
        06.12.2017 13:41

        Хорошо бы проверять изображениях типа этого :)
        image


  1. vbifkol
    04.12.2017 17:25
    +1

    Там русские что ли названия пишут? «Нас нет» — довольно точное определение для ИИ, разработанного без участия человека.


    1. zloddey
      04.12.2017 17:42

      Нет, это случайно пролез спойлер недалёкого будущего


  1. Nikita_64
    04.12.2017 17:39

    Спасибо. КПДВ не очень убедительна: слишком просто: все, что выше горизонта — кайты, ниже — люди. Не надо быть семи пядей в нейросети.


    1. artskep
      04.12.2017 17:58

      Ну, зато людей ниже горизонта находит (88% подписанный), а кайт выше горизонта приблизительно такого же размера — нет (наверху, слегка слева). Так что явно все как-то сложнее. Но вот полезнее ли…


    1. devlind
      04.12.2017 19:38

      Ну это вам имеющему сознание это понятно. А там определяла машина. И как вы её научите это делать интересно? Вон парни из статьи смогли. И это просто пример, они же набивали статистику.


      1. artskep
        04.12.2017 22:37

        Вопрос что именно они определили.
        С нейросетями вроде была статья про то, что нейросеть замечательно определяла занавески. Правда потом оказалось, что она определяла не занавески, а батарею отопления (потому что она везде присутствовала на обучающей и тестовой выборке с занавесками).
        Поэтому не так очевидно доказать, что сеть действительно отличает «людей» от «кайтов» по каким-то признакам серьезнее, чем «выше половины снимка».


        1. Daddy_Cool
          05.12.2017 01:47

          Тоже есть такие подозрения. Точность распознавания падает с уменьшением высоты полета кайта и уменьшением его размера. Я задумался — а как я распознаю?
          1) Мысленно строится 3D модель, вижу берег и воду — пляж детектед.
          2) То что я знаю о пляжах сравнивается с картинкой.
          3) Фигуры похожие на людей с голыми ногами — ага, подтверждена близость воды.
          4) Какие-то хрени в небе (небо — структура похожая на то что видел много раз). Скорее всего парапланы. Но где люди со стропами?
          4) А! Где-то читал про кайты, ну и вообще там написано.
          5) А если там все таки затеряется парапланерист? Воздушный змей? Самолет? НЛО? Пятно на пленке? Фотошоп?
          Итого алгоритм такой.
          I) Картинка разбивается на фрагменты
          II) Строится модель
          II) Подтягивается инфа по каждому элементу модели
          IV) Сравнивается с тем что вижу, модель уточняется — т.е. переход к п.II. Каждый элемент модели может быть еще разбит на элементы — т.е. обратно к п. I.
          Интересно, а что происходит в «голове» у нейронки?


          1. Sadler
            05.12.2017 08:35

            Пока нейросети классификации изображений ещё не в состоянии «строить 3D-модель» и с трудом учитывают смысловое содержание, вроде Вашего «пляж-люди с голыми ногами», для них это плоский набор штрихов. В идеале нужно 1) преобразовывать 2D -> 3D 2) сегментировать изображение на объекты 3) уточнять характеристики объектов 4) уточнять общую смысловую нагрузку сцены. По каждому из направлений в отдельности идёт работа, когда-нибудь мы придём к одной нейросети, которая сможет всё это переварить.


            1. devlind
              05.12.2017 15:51

              Нейросеть не обязательно должна в точности повторять наш алгоритм распознавания если он не идеален. Если она может распознать его лучшим и более лёгким алгоритмом — то почему-бы и нет?


              1. Sadler
                06.12.2017 10:38

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


          1. Ugrum
            05.12.2017 11:11

            Интересно, а что происходит в «голове» у нейронки?

            У нея внутре неонка!


          1. Bronx
            06.12.2017 03:17

            Я задумался — а как я распознаю?
            1) Мысленно строится 3D модель

            Это описание «как я думаю о том, как я мог бы распознать», а не «как я распознаю». Реально ваши нейроны могли и не строить никакой 3d-модели, просто сигналы интерферировали так, что ответы начали возникать почти мгновенно, а лишь потом сознание начало прикручивать к ним тэги «пляж», «голые ноги», «кайты» и т.п.


          1. Tramantor
            06.12.2017 11:21

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


  1. RedSnowman
    04.12.2017 19:16

    *вспомнился Lexx
    Мы не можем сделать нанороботов, но мы можем сделать машину, которая сделает машину, которая сделает нанороботов.


    1. Zet_Roy
      04.12.2017 22:37

      — Но как нам сделать такой звездолёт? — Никак. Но вы можете сделать механизмы, которые сделают механизмы ещё меньше, те сделают механизмы ещё меньше, а самые маленькие смогут построить ваш звездолёт
      790-й о космолёте


  1. k0ldbl00d
    04.12.2017 19:42

    Название сети немного зловещее. Нас нет.


  1. old_bear
    04.12.2017 19:57
    +2

    Может быть нынешнее поколение людей ещё пригодится ИИ.
    Для составления обучающих выборок.


    1. Hardcoin
      04.12.2017 22:04

      AlphaGo Zero намекает, что нет, не пригодимся.


  1. sstas
    04.12.2017 22:54

    Когда ИИ начнут обучать людей?


    1. futureader
      04.12.2017 23:09

      Зачем? ИИ просто будет приезжать покормить нас в какой-нибудь резервации.


    1. pda0
      05.12.2017 00:05

      Лучше не надо. :)


    1. sumanai
      05.12.2017 16:13

      В Го уже есть чему поучится людям у машин, так что ответ на ваш вопрос «Вчера».


      1. napa3um
        05.12.2017 16:45

        Люди учатся сами, глядя на игру роботов. Или на спаривание насекомых, или на столкновение частиц. А чтобы говорить о том, что ИИ обучил человека, нужно, чтобы ИИ создал некую методологию внедрения знаний в учеников и контроля их усвоенности.


  1. norlin
    04.12.2017 23:17

    Да сколько, блин, можно уже. Хватит называть грёбаные классификаторы и нейросети "ИИ". Это чистая математика, никакого "интеллекта" там нет.


    1. Randl
      05.12.2017 01:08

      Да сколько, блин, можно уже. Хватит называть грёбаные клетки и и жир "интеллект". Это чистая биология, никакого "интеллекта" там нет


      1. norlin
        05.12.2017 10:56

        Попытка хорошая, но вот мозг никто интеллектом не называет и статьи про это на хабре не пишет, поэтому мимо.


        1. Hardcoin
          05.12.2017 13:11

          Почему мы не можем назвать способность приспосабливаться к новым ситуациям, способность к обучению и построению абстракций — интеллектом? Откуда такой запрет? Почему вы его вводите?


          1. norlin
            05.12.2017 13:13
            -1

            Я никаких запретов не ввожу. Но нейросети – это не "способность", это запрограммированый конкретный алгоритм. Он не сможет приспособиться к новым ситуациям, только к тем, которые заложены. И тем более, в нём нет никакого "построения абстракций". Программист может вложить какие-то абстракции, но не сама нейросеть. Она может лишь отнести объекты к тем или иным заданным абстракциям.


            А вот человеческий интеллект (чем бы он ни был) — сможет, так или иначе, приспособиться к новым ситуациям и выработать новые абстракции.


            1. trapwalker
              05.12.2017 15:30

              Почему это не может строить абстракции? Именно этим нейросеть и занимается. Она делает внутри себя абстракции. Да это алгоритм, да он очень сложный. Нет, нет никаких предпосылок полагать, что в голове у нас сосзнание осуществляет не алгоритм. Да очень сложный алгоритм на электрохимических связях.

              Он не сможет приспособиться к новым ситуациям, только к тем, которые заложены.

              Давайте мысленный эксперимент проведём.
              Создаём виртуальное окружение — лабиринт с точками «питания» и «наказания». Пусть эти точки как-то двигаются.
              Достаточно сложную нейросеть снабдим выходами, управляющими перемещением её аватара, и завёрнутыми ей же на вход (проприоцепция). Снабдим набором атрибутов состояния «голод», «здоровье», Рецепторы для простоты можно и не делать — есть же возможность двигаться и возможность ощущать голод и боль. Если нейронная сеть научится дифференцировать эти параметры, мы получим рецептор «еды» и рецептор «боли». Эти рецепторы можно и отдельно реализовать, тогда нейронке будет проще учиться.
              Если долго мутировать и скрещивать веса достаточно сложной многослойной нейронной сети, то наверняка она сможет развиться в организм. способный приспосабливаться и обучаться. Мы сформируем все факторы для естественного отбора, ведь более «умная» и «способная к обучению» нейронная сеть в этих условиях будет иметь больше шансов для выживания.
              При этом мы можем достичь формирования зачатков интеллектуального поведения.
              Но в случае с этими классификаторами изображений, конечно, понятие ИИ применимо весьма условно и в очень узком специфическом смысле. Мне тоже не нравится такое расширение понятия ИИ. Я бы называл это ИР — искусственный рефлекс. Мы фактически делаем насекомых, которые умеют отличать «цветок» от «листка», но, в сущности не понимают что это такое и нормально с этим живут.


              1. napa3um
                05.12.2017 15:38

                В вашей схеме нейросеть — вообще непринципиальный элемент, вместо него мог бы быть набор шестерней с подбираемыми эволюцией зубьями, или набор уравнений с подбираемыми эволюцией коэффициентами. Да, это, скорее, «искусственный рефлекс», до разумности в такой модели ещё очень и очень далеко (до абстрагирования и символьного кодирования ситуаций и обмена знаниями с себе подобными). Популяция каких-нибудь бактерий за миллиарды лет не научилась строить космические корабли, хотя, вроде бы, развивалась как раз по вашей схеме.


              1. norlin
                05.12.2017 15:41

                Она делает внутри себя абстракции

                Нет, не делает. Абстракции делают люди, которые программируют нейросеть. И набор этих абстракций конечен, нейросеть не сможет добавить новые абстракции, которые не были заложены изначально.


                Дальше не читал, много текста, основанного (как я предположил) на неверных предпосылках.


                1. Ndochp
                  06.12.2017 14:37

                  Делает же.
                  Вот нейросетка умеющая превратить фотку в картину в узнаваемом стиле как-то обучается именно стилю, а что это такое как не абстракция над изображением?
                  Люди там АФАИР управляют физической структурой ансамбля, а не абстракциями уровня живописи.


                  1. napa3um
                    06.12.2017 14:51

                    Абстрагирование — несколько более сложная операция, чем заполнение по паттерну. Это именно извлечение независимой от деталей модели, с которой абстрагирующий субъект может производить полезные модификации (причём, в символьном виде). В случае нейросетки, размазывающей стиль картины по фотке, абстрагирующим элементом был разработчик сети, задавший критерии извлечения признаков геометрии, являющихся «стилем». И ничего другого эта нейросетка с такой моделью сделать не сможет, т.е., это не абстрактная модель, а функциональная статистическая модель преобразования изображения из одного в другое.


                    1. Hardcoin
                      07.12.2017 19:12

                      задавший критерии извлечения признаков геометрии,

                      Прикол только в том, что разработчик не задаёт критерии извлечения признаков геометрии.


                      1. napa3um
                        08.12.2017 00:08

                        Прикол в том, что разработчик нейросети задаёт «рамочную» модель, свободные параметры которой подбираются статистически прогонкой кучи образцов (имеется ввиду именно разработчик нейросети, конечно, а не скрипткидди, следующий туториалу на Хабре). Это и правда прикольно, и может выглядеть магией для любого, кто не способен связать больше двух шагов причинно-следственных связей.


                        1. Hardcoin
                          08.12.2017 02:02

                          Рамочная модель? Это количество и размер слоев, что ли? То есть я, когда выбираю функцию активации или добавляю дропаут, таким образом задаю критерии извлечения признаков геометрии? Вы серьезно так считаете? Выбор архитектуры задаёт критерии? Ваше дело, конечно, можете и так считать.


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


                          1. napa3um
                            08.12.2017 02:04

                            Модель решаемой задачи, а не модель нейросети (которая уже следует из модели задачи и является продуктом творчества разработчика, решающего задачу).

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


                  1. norlin
                    06.12.2017 16:46

                    "Абстрактная живопись" не имеет никакого отношения к термину "абстракция" в контексте данного тредика.


                    1. Ndochp
                      06.12.2017 17:20

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


                      1. norlin
                        06.12.2017 17:46

                        Эта абстракция не создана сетью, она создана программистами, которые запрограммировали сеть "обучиться" на картинках художников по определённому алгоритму и потом преобразовывать входящие картинки по другому определённому алгоритму, используя данные из "обучения".


                        Попробуйте найти в интернете статью или курс по основам нейросетей – поймёте, что там нет никакой магии. Это чистая "глупая" математика, причём не сильно сложная (в основе своей).


                        1. Ndochp
                          06.12.2017 18:29
                          +1

                          А кто говорит о магии? Просто из входящих данных удалось выделить «стиль» и зашифровать его в коэффициенты. Или думаете у Вас в голове магия выделением абстракций занимается.
                          У Вас даже не математика. Химии хватило ;)


                          1. norlin
                            07.12.2017 10:29

                            Просто из входящих данных удалось выделить «стиль» и зашифровать его в коэффициенты

                            Всё верно, только "стиль" выделяется не нейросетью, а программистом, который написал код для выделения "стиля".


                            1. Sadler
                              07.12.2017 10:53

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

                              пример
                              image


                              1. norlin
                                07.12.2017 11:41

                                То есть стилем считаем любые локальные небольшие повторяющиеся элементы, а крупные сохраняем неизменными

                                Вы же понимаете, что вот эту логику должен запрограммировать человек, который делает соответствующую нейросеть?


                                1. Ndochp
                                  07.12.2017 14:45
                                  +1

                                  Вообще-то эту логику афаир не программируют. Там учителя же вроде ставят, и в паре эти ребята работают.
                                  То есть по размеченному набору учим сетку 1, которая отличает есть этот стиль, или нету. Например загоняем вперемешку картины нужного автора и просто фотки с отпуска (которые явно в стиле голимого реализма).
                                  Потом делаем вторую сетку — которая преобразовывает входные фотки, а получилось или нет определяет первая обученная.
                                  Когда вторая начинает попадать со своим преобразованием куда надо — задача решена.
                                  Сам стиль никто не программировал.


                                  1. norlin
                                    07.12.2017 14:58

                                    CC: Sadler


                                    То есть по размеченному набору учим сетку 1

                                    Вы же понимаете, что "учим" — это лишь условное название? Алгоритм "обучения" написан человеком и именно там определяется список критериев, которые нейросеть должна учитывать.


                                    1. Ndochp
                                      07.12.2017 15:18

                                      Алгоритм обучения не написан для выделения стиля. Это универсальный алгоритм обучения нейросети, и не имеет отношения к живописи.


                                      1. norlin
                                        07.12.2017 15:48

                                        Я неправильно сформулировал. Алгоритм может быть "универсальный" (хотя такого нет, конечно же), но вот критерии для алгоритма подбираются вручную, так или иначе.


                                        Sadler: вы правда не видите разницу между человеческим интеллектом и нейросетью, обученой распознавать котеек?


                                        1. Sadler
                                          07.12.2017 15:59

                                          вы правда не видите разницу между человеческим интеллектом и нейросетью, обученой распознавать котеек?
                                          Естественно, вижу. Что не запрещает мне использовать абстракцию «интеллект» применительно к обеим системам. Я не превращаю интеллект в религию, когда каждая новая область деятельности ИИ перестаёт восприниматься как интеллектуальная.


                                        1. Ndochp
                                          07.12.2017 16:02

                                          Критерий для «контролирующего» алгоритма простой — «Это картина художника, которому учим?». Угадал — положительная обратная связь. Не угадал — отрицательная.
                                          Для «художника» тоже простой критерий «Контролёр поверил, что это картина художника?» Поверил — положительная связь, не поверил — отрицательная.


                                          1. norlin
                                            07.12.2017 16:05

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


                                            При "обучении" же нейросеть вырабатывает определённые коэффициенты (тоже просто числа) для каждого отдельного "нейрона".


                                            Sadler:


                                            абстракцию «интеллект» применительно к обеим системам

                                            Ну вот применительно к нейросетям это ошибка, потому что там интеллекта не больше, чем у калькулятора.


                                            1. Ndochp
                                              07.12.2017 16:16

                                              В смысле «критерий обработки данных»?
                                              Вы про представление картины в цифре, или ещё о чем-то?

                                              ну да, картина имеет цифровое представление. БМП например, фактически я не знаю какое. сетка контролёр кучей нейронов первого слоя это пережёвывает, отдаёт результат дальше по ансамблю, последний слой один нейрон — 0 или 1. (ну может не дискретно, а вероятность).
                                              Соответсвенно, «художник» на входе имеет тот же цифровой вектор — исходное фото. На выходе вектор — обработанное фото, его выход идёт на вход контролёра.
                                              Или вы считаете, что в цифровом представлении картины для нейросетки зашиты не пиксели изображения, а некие предобработанные абстрактные сущности, одна из которых «стиль»?


                                              1. norlin
                                                07.12.2017 16:25

                                                В смысле «критерий обработки данных»?

                                                вот, не благодарите:


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


                                                1. alexeykuzmin0
                                                  07.12.2017 16:28

                                                  вектор значений признаков
                                                  Как правило, для изображений используются просто цвета всех пикселей. Не rocket science, прямо скажем.


                                                1. Ndochp
                                                  07.12.2017 17:42

                                                  Для изображений логично, что вектор признаков это пиксели.


                                            1. Sadler
                                              07.12.2017 16:50

                                              Ну вот применительно к нейросетям это ошибка, потому что там интеллекта не больше, чем у калькулятора.
                                              Это Ваше мнение.


                                        1. Hardcoin
                                          07.12.2017 19:21

                                          хотя такого нет, конечно же

                                          Градиентного спуска не существует? Это не серьезно.


                                    1. Sadler
                                      07.12.2017 15:44
                                      +1

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


                                    1. Hardcoin
                                      07.12.2017 19:20

                                      Не надо искать в алгоритмах обучения все знания мира. Программист может не знать, как вообще играть в го (и не разбираться в живописи), и список критериев может быть простой — выиграть (разве что программу подсчёта очков придется "подарить" нейросети). И больше никаких абстракций и критериев ему прописывать не нужно.


                                1. Sadler
                                  07.12.2017 14:56
                                  +1

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


                            1. Hardcoin
                              07.12.2017 19:17

                              Да нет, конечно. Не задаёт он стиль и не выделяет, во всяком случае сам.


                1. Hardcoin
                  07.12.2017 19:03

                  Зачем так настаивать на чем-то ошибочном? Вы пройдите любой курс по программированию нейросетей ради интереса. Что бы не из пересказов третьих лиц узнавать.


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


                  1. norlin
                    07.12.2017 19:09

                    Зачем так настаивать на чем-то ошибочном? Вы пройдите любой курс по программированию нейросетей ради интереса

                    Именно это я и птаюсь сказать практически в каждом моём сообщении в данром треде, спасибо. После прохождения курса по нейросетям отсутствие у них интеллекта абсолютно очевидно для меня.


                    1. Hardcoin
                      07.12.2017 19:15

                      Если очевидно — то окей, вопросов нет. Только не стоит утверждать, что я, разрабатывая нейросеть, задаю ей правила извлечения геометрии или абстракции, позволяющие отличать лапу от хвоста. Очень уж странно звучит. Честно-честно, не задаю. Целевую функцию — задаю. А абстракции — нет, не прописываю.


                    1. alexeykuzmin0
                      07.12.2017 19:22

                      Это смотря что интеллектом считать. Если это просто некая абстрактная «магия, очень черная», то в нейросетях ее действительно нет — там (в самом простом варианте) просто композиция логистических регрессий, оптимизируемая каким-нибудь градиентным методом. Но ведь и принципы работы человеческого мозга рано или поздно будут поняты, и магии и в нем не останется.


                      1. norlin
                        07.12.2017 19:28
                        +1

                        Ну тут весь тред, по-сути, из-за разницы в понимании термина "интеллект".


                        Моё понимание вполне укладывается в цитату из Вики:


                        качество психики, состоящее из способности приспосабливаться к новым ситуациям, способности к обучению и запоминанию на основе опыта, пониманию и применению абстрактных концепций и использованию своих знаний для управления окружающей средой

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


                        Далее:


                        Общая способность к познанию и решению трудностей, которая объединяет все познавательные способности человека: ощущение, восприятие, память, представление, мышление, воображение.

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


                        1. alexeykuzmin0
                          07.12.2017 19:49

                          Нейросети не умеют самостоятельно приспосабливаться к новым ситуациям
                          Есть классы алгоритмов машинного обучения, которые умеют самостоятельно приспосабливаться к новым ситуациям, как я уже писал ниже про reinforcement learning и transfer learning.
                          применять абстрактные концепции
                          Когда word2vec, немного помедитировав над неразмеченным набором текстов, делает вывод, что «king относится к man так же, как queen относится к woman» — это применение абстрактной концепции? На мой взгляд, да.

                          Может, я как-то не так понял определение интеллекта, которое вы используете? Или вы не согласны с тем, что существующие алгоритмы машинного обучения умеют (пусть и не идеально) делать обе эти вещи?


                          1. norlin
                            07.12.2017 19:51

                            reinforcement learning и transfer learning.

                            Как я уже писал выше, это вообще не имеет никакого отношения к "умеет самостоятельно приспосабливаться к новым ситуациям".


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


                            1. alexeykuzmin0
                              07.12.2017 19:58

                              Кхм, так я этим на жизнь зарабатываю как бы.

                              Что ж, если захотите продолжить дискуссию — я к вашим услугам.


            1. napa3um
              05.12.2017 15:31

              Согласен с тем, что обыватели видят в нейросетях сильно больше, чем они на самом деле представляют из себя. Мне кажется, слово «нейросеть» сильно сбивает с толку, правильнее бы было этот метод называть как–нибудь типа «метод статистических матриц», «аккумулятор статистики», «метод массового взаимодействия агентов» (для карт Кохонена, например) и т.п., чтобы не возникало лишних ложных проекций биологии на математику. Особенно это выпирает в названиях архитектур нейросетей типа «нейронный газ». Математические нейроны моделируют биологические нейроны примерно в той же мере, в которой решёточные уравнений Больцмана моделируют молекулы жидкости (т.е., в обоих случаях речь идёт о системе уравнений, кодирующей «чёрный ящик», а не точной поэлементной модели физического/биологического явления). Но, конечно, терминология уже такая, какая есть.

              Магия видится тем, кто использует стандартные архитектуры нейросетей для типовых задач, не особо вникая в математику того, почему это работает. Но на самом–самом деле никакой магии нет, нейросети представляют собой заранее проектируемые людьми модели решения задачи с алгоритмом подбора параметров этой модели через прогон по набору эталонных данных. Магичность, возможно, уместна в интерпретации конкретного решения нейросетью конкретного набора входных данных, но принцип обучения и формирования этой магичности таки заранее спроектирован, а не на божьей благодати работает («вот ещё больше транзисторов затолкаем в чип, и возникнет сознание!»).


              1. Hardcoin
                07.12.2017 19:28

                самом деле никакой магии нет

                Конечно нет. Это так же верно и для естественного интеллекта — в нем тоже никакой магии нет, к сожалению.


            1. alexeykuzmin0
              05.12.2017 17:15

              Он не сможет приспособиться к новым ситуациям, только к тем, которые заложены
              Нет. Более того, ситуация, когда какой-то алгоритм обучается с нуля на конкретной задаче и дальше именно на ней и работает — редкость в современном машинном обучении. Гуглите «reinforcement learning» и «transfer learning».


              1. norlin
                05.12.2017 17:28

                А можно без "гуглите"? Просто киньте ссылку на какой-нибудь один конкретный пример. Я-то нагуглю что-нибудь, а вы потом скажете, что вы не то имели в виду.


                1. alexeykuzmin0
                  05.12.2017 18:56

                  ОК.
                  1. Transfer learning — это когда берется алгоритм машинного обучения, уже обученный на какой-то задаче, и дообучается для решения другой задачи. По сравнению с методом «обучить с нуля», у transfer learning есть два больших преимущества: во-первых, обучение большой нейросети — занятие вычислительно дорогое (вон в примере из статьи было использовано 500 GPU NVidia P100 в течение 4 дней — по грубой оценке, обучение этого на 1 типичном CPU заняло бы порядка 100'000 дней), а transfer learning позволяет на порядок-два сократить количество требуемых вычислений. Во-вторых, бывает такое, что размеченных данных в целевой задаче недостаточно для качественного обучения, а transfer learning позволяет перенести часть закономерностей из задачи-донора. Например, это бывает очень полезно в задачах, связанных с распознаванием изображений: если у вас есть всего несколько тысяч картинок, будет довольно сложно построить качественную глубокую модель, но если взять нейросеть, обученную на каком-нибудь ImageNet, то ее первые слои, скорее всего, уже научились детектировать какие-нибудь полезные паттерны (углы там всякие, кривые и тд), поэтому использование результата обучения на ImageNet в качестве инициализации весов позволит перенести эти паттерны из одной задачи в другую, повышая качество.
                  Transfer learning, например, применялся в приложении hotdog-not hotdog. Для классификации изображений на два класса «хот дог»/«не хот дог» (в этой задаче было всего несколько тысяч размеченных изображений) была взята модель, обученная на базе ImageNet (14'197'122 изображений, 21'841 классов, класса «хот дог» нет), и дообучена на имеющейся выборке.
                  По сути, получается, что мы переносим знания из решения одной задачи в решение другой, в чем-то похожей, задачи, благодаря чему можем выучить вторую задачу быстрее и лучше. Точно так же и рабочий, изучая второй станок, тратит меньше времени, чем на изучение первого.

                  2. Reinforcement learning — это когда у алгоритма машинного обучения не выделяется две отдельных фазы «обучение» и «работа», а, вместо этого, в ответ на принятые решения алгоритм получает оценку по шкале «хорошо-плохо». Таким образом, процесс обучения становится непрерывным, и, если задача была несколько изменена в процессе построения решения, будущие итерации алгоритма смогут это учесть и адаптироваться, точно так же, как, например, трейдер на фондовой бирже учится предсказывать цены в процессе торгов, не останавливаясь на пару часов на «систематизировать все знания». Например, такой подход использовался Google в системе Alpha Go, которая решала задачу «играть в Go лучше, чем любой человек».

                  Когда человек видит какую-то новую для него задачу, он, во-первых, использует знания, накопленные в течение всей прошлой жизни («наверное, нажать на большую красную кнопку на неизвестном станке — не лучшая идея») (очень похоже на transfer learning), а во-вторых, как правило, в процессе работы оценивает промежуточные результаты («заготовка какая-то кривая выходит») (очень похоже на reinforcement learning) и пытается улучшить конечный результат. И даже несмотря на все это, ему, как правило, все же требуется несколько попыток для достижения приемлемого уровня качества («первый блин комом») (ну так и алгоритмам машинного обучения требуются итерации для сходимости). Так что я не вижу принципиальной разницы между человеком и существующими на сегодняшний день методами машинного обучения в плане адаптируемости к изменяющимся внешним условиям. По количеству итераций — да, по сложности решаемых задач — безусловно. Но не по адаптируемости.


                  1. napa3um
                    05.12.2017 21:56

                    Так что я не вижу принципиальной разницы

                    Разница в степени абстрагирования задачи. В нейросетях пока, по сути, «статистическое» обобщение, тогда как у человека это обобщение примерно соответствуют уровню интуиции, а сознательное («лингвистическое»/логическое) обобщение, на уровне которого происходит дедукция, индукция, анализ, синтез, объективизация и передача знаний, пока системам ИИ недоступно. По сути, когда ИИ научится говорить с людьми о том, как он решает задачи, тогда и начнётся эра strong AI.

                    И «топология» речевой сигнальной системы, похоже, невыводима из корпуса текстов известными на текущий момент методами машинного обучения, т.к. требует для её усвоения уже существующую в архитектуре нейросети модель универсальной грамматики (которая человеку в виде самонастраивающегося в культурной среде за 5-10 лет механизма дана с рождения, обусловлена генетически). Пока существуют только теоретические наработки о том, как эта грамматика выводима (в основном, всё сводится к эволюционному моделированию), но практических решений всё ещё нет (и даже нет обоснованных количественных оценок необходимых и достаточных вычислительных ресурсов для такого моделирования).


                    1. alexeykuzmin0
                      06.12.2017 13:29

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


                      1. napa3um
                        06.12.2017 23:20

                        Боюсь, что алгоритмы машинного обучения ещё даже и близко не встали на этап количественного (постепенного) приближения к искусственному разуму, тема strong AI или AGI пока ещё находится на уровне качественных философских обобщений и очень локальных (и пока совершенно бесполезных в прикладном значении) моделей отдельных аспектов психики, эволюции речи, социальных коммуникаций и всех остальных аспектов становления человеческого сознания. Плавно прийти из нейросетей (или из теории фреймов, или функционального исчисления, или из ещё какой абстрактной теории «предельной» функции мышления), наращивая количественные показатели, увы, не получится, Скайнет родится скорее всего как результат мощного теоретического обобщения, схожего по «крышесносности» и несовместимости со старыми представлениями физических законов с ТО или квантмехом.


                        1. alexeykuzmin0
                          07.12.2017 14:13

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


                  1. norlin
                    05.12.2017 22:23

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


                    1. alexeykuzmin0
                      06.12.2017 13:33

                      нейросеть не сможет сама переключиться с детектирования котеек на детектирование собак, если программист такое не заложит.
                      А человек, который никогда в жизни не видел собак, сможет на картинке найти собаку без объяснения и примеров? Человеку в этой задаче нужно немного переобучиться, равно как и нейросети.
                      алгоритм всё равно будет учиться делать ту задачу, на которую его запрограммировали
                      При использовании reinforcement learning алгоритм может обучаться в процессе работы, видя обратную связь. Например, при торговле на бирже стараться максимизировать прибыль. Торговать в плюс в 2008 году и в 2017 — две совершенно разные задачи.


                      1. black_semargl
                        06.12.2017 14:36

                        У человека как понимаю несколько другой подход — он строит «дерево» распознавания на котором все кончики веток (и часть точек ветвления) имеют отличный от других результат. Т.е. распознавание многоуровневое
                        Например «животное-четвероногое-гавкает-собака»
                        Т.е. он может не знать что это собака — но знать набор обобщающих признаков. И потом просто «приклеить» им конкретное название.
                        А нейросеть затачивают на опознавание конкретного образа, всё что не попало одинаково фон.


                        1. alexeykuzmin0
                          06.12.2017 15:31

                          А нейросеть затачивают на опознавание конкретного образа, всё что не попало одинаково фон
                          Обычно — да, но не всегда. Есть, например, word2vec, который читает множество текстов (вспомним, что слова естественного языка для необученного алгоритма ничего не значат), и, исходя из паттернов встречаемости отдельных слов ставит каждому слову в соответствие вектор чисел таким образом, что синонимы получают близкие друг к другу вектора, а антонимы — далекие. И у такой модели слово «собака» вполне может получить высокое значение признака «животное» (ну или какого-нибудь другого признака, который ей покажется релевантным).

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


                          1. black_semargl
                            06.12.2017 19:56

                            ну да — собственно нынешние разработки ИИ это во многом (если не вообще все) перенос наработанного биологической эволюцией на другое «железо».
                            И кстати, векторизация мозгом активно используется.


                      1. norlin
                        06.12.2017 16:39

                        А человек, который никогда в жизни не видел собак...

                        Послушайте, человек когда-то действительно увидел собаку впервые в жизни (и в истории). Десятки тысяч (сотни тысяч? миллионы?) лет назад. И никаких проблем с определением того, собака ли это или нет, у него не возникло.


                        А вот нейросеть с задачей "искать котеек" хоть миллиард лет гоняй – она не начнёт собак детектить (ну разве что критерии "котейки" расширятся из-за ошибок в алгоритме).


                        1. alexeykuzmin0
                          06.12.2017 17:16

                          человек когда-то действительно увидел собаку впервые в жизни (и в истории)
                          Уверен, в тот момент собака была классифицирована как нечто вроде «хищник средних размеров». Причем других представителей этого класса человек уже видел ранее.
                          Точно так же и с нейросетью — если обучить ее классифицировать сотню тысяч классов, среди которых «собак» нет, но есть «хищники», различающиеся размерами, то собаку она замечательно найдет.


                          1. norlin
                            06.12.2017 17:40

                            в тот момент собака была классифицирована

                            а какая разница? позже-то выработался новый класс "собака", без каких-либо вмешательств "со стороны".


                            Впрочем, вас я могу отправить только к этому комментарию.


                            1. alexeykuzmin0
                              06.12.2017 17:45

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


                  1. Frankenstine
                    06.12.2017 15:32

                    я не вижу принципиальной разницы между человеком и существующими на сегодняшний день методами машинного обучения в плане адаптируемости к изменяющимся внешним условиям

                    Человек скажет что это смешная картинка, а нейросеть сможет это определить?
                    image


                    1. alexeykuzmin0
                      06.12.2017 15:35

                      Если будет обучена на выявление смешных картинок — конечно, сможет. Человек этому всю жизнь учится.


                      1. Frankenstine
                        06.12.2017 21:13

                        Нейронную сеть на это обучить невозможно.


                        1. alexeykuzmin0
                          07.12.2017 14:14

                          Почему вы так думаете?


                          1. Frankenstine
                            07.12.2017 16:09

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


                            1. alexeykuzmin0
                              07.12.2017 16:30

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


                              1. Sadler
                                07.12.2017 16:57

                                Юмор рождается из нелогичных и нелепых ситуаций, ошибок и неловкого поведения других людей или животных. Чтобы получить подобное поведение, придётся сначала научить сеть понимать такого рода ситуации. Я не разделяю взглядов Вашего оппонента выше по ветке, но задача действительно сложная.


                                1. Frankenstine
                                  08.12.2017 09:48

                                  В том-то и фишка, что анализ «нелогично», «нелепо», «ошибка», «неловко» — невозможен без действительно интеллекта. Никакая нейросеть эмулируемая на компьютере на это не способна. Ведь нейросеть сможет лишь сделать статанализ пикселей изображений.


                                  1. Sadler
                                    08.12.2017 10:50
                                    +1

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


                                    1. Frankenstine
                                      08.12.2017 11:09

                                      Брюзжания?! Это всего лишь констатация принципа работы компьютерных моделей нейронных сетей.
                                      Сходите, что ли, в википедию, почитайте про нейросети, как они работают.

                                      С математической точки зрения, обучение нейронных сетей — это многопараметрическая задача нелинейной оптимизации.

                                      Интеллектом тут и не пахнет.


                                      1. Sadler
                                        08.12.2017 11:30

                                        Сходите, что ли, в википедию, почитайте про нейросети
                                        Сразу видно эксперта, знания которого заканчиваются на википедии.


                                      1. alexeykuzmin0
                                        08.12.2017 12:57

                                        С математической точки зрения, обучение нейронных сетей — это многопараметрическая задача нелинейной оптимизации.
                                        Интеллектом тут и не пахнет.
                                        А как второе следует из первого?


                                        1. Frankenstine
                                          08.12.2017 13:57

                                          Нейросетям доступен лишь уровень обобщения. А для интеллекта нужен уровень абстракции. Вы никогда не сможете обобщить юмор, расставить весовые коэффициенты пикселям на картинке, «отвечающим» за юмористичность. Потому что юмор не в цвете кодируется, или позиции пикселей — то, что может анализировать нейросеть — а в абстрактных понятиях, которые математически невыразимы. Именно в этом и заключается проблема искусственных нейронных сетей: они лишь способны отличить объект А от Б, В от Г. Когда вы попытаетесь построить нейронную сеть, распознающую одновременно А, Б, В, Г, Д и Е — вы обнаружите, что сложность сети возрастает до чудовищных значений, а точность падает. Посмотрите например на картинку в самом начале статьи: результат распознавания содержит всего два конечных результата: либо человек, либо кайт. Ничего другого эта сеть распознать не может.


                                1. alexeykuzmin0
                                  08.12.2017 12:56

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


                              1. Frankenstine
                                08.12.2017 09:45

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

                                Дадите такое изображение
                                image


                                1. napa3um
                                  08.12.2017 11:18

                                  Не отнимайте у детей веру в рождение Скайнета, они всё равно не воспримут вашу аргументацию всерьёз :).


                                1. alexeykuzmin0
                                  08.12.2017 12:59

                                  Не вижу тут какой-то проблемы. Человек умеет классифицировать изображения на больше классов, чем «кот» и «собака», что и дает ему возможность сказать «это не кот и не собака, а слон» в ответ на вопрос «кот это или собака?». Точно так же и нейросеть, обученная на ImageNet с их 22к классов, сможет сказать, что это не кот и не собака. Именно потому, что это статанализ.


                                  1. Frankenstine
                                    08.12.2017 13:59

                                    Человек способен к абстракции: «это какашка в форме собаки». Нейросеть способна определить либо какашку, либо собаку, но не «какашка в форме собаки» — потому что иначе будут частые ложные срабатывания вида «какашка в форме собаки» в ответ на фото мужчины в меховой шапке.


                    1. black_semargl
                      06.12.2017 19:58

                      А кто-то в ней увидит страшного монстра…


            1. Closius
              07.12.2017 00:31

              В этой статье какраз и рассуждается как это может быть. Хотя я сам не очень представляю как обна обратная связь может выступать в этом качестве. Но тот же самый IBM Watson, который знает всю википедию уже может считаться интеллектом. Если ему добавить возможность контролировать управление предприятием с доступом к документам этого предприятия — он бы смог эффктивно это сделать.


              1. napa3um
                07.12.2017 01:36

                Если ему добавить возможность контролировать управление предприятием с доступом к документам этого предприятия — он бы смог эффктивно это сделать.

                Не смог бы. Ватсон — экспертная система с кодируемыми вручную (!) микроформатами хранимых объектов (личности, места, события и т.п.) и связей между ними, алгоритмом полуавтоматического наполнения этой БД и речевым интерфейсом ввода-вывода уровня Siri. В большей степени это просто торговая марка команды аналитиков и программистов IBM, разрабатывающих специализированные экспертные системы для различных прикладных областей (медицина, финансовый рынок, история и т.п.) Искусственным интеллектом (и вообще технически единой программно-аппаратной платформой) это называется исключительно в маркетинговых целях, и победа на Jeopardy — не более чем фокус (прогон тестовых вопросов по тематикам, хранимым в экспертной системе на тот момент времени).


              1. Frankenstine
                07.12.2017 16:12

                Но тот же самый IBM Watson, который знает всю википедию уже может считаться интеллектом.

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


            1. Hardcoin
              07.12.2017 18:56

              Алгоритмы дообучения используются редко, но ничего сверхъестественного в них нет. Ваше утверждение "не сможет приспособиться к новым ситуациям" к сожалению или к счастью, не верно.


              Да и вносить абстракции программисту не обязательно. AlphaGo Zero тому пример.


              1. napa3um
                08.12.2017 00:13

                Вы просто не понимаете модель, спроектированную программистами АльфаГо, потому она и кажется вам «самозародившейся». Примерно как этот мир создан богом для тех, кому сложно разобраться в физике. «Абстракции», которым учится АльфаГо, спроектированы и тщательно отлажены программистами и аналитиками (с привлечением профессиональных игроков в го). Да, это не программирование в прямом смысле этого слова, это, скорее, метапрограммирование, на порядок более мозголомная деятельность, но которой пока ещё занимается человек, а не машина.


                1. Hardcoin
                  08.12.2017 02:04

                  AlphaGo Zero


                  1. napa3um
                    08.12.2017 02:10

                    Хорошо, соберите нейросеть, играющую в шахматы. Подумайте, что у вас не получается и какие знания о шахматах вам придётся таки иметь ввиду для разработки. Теперь изучите AlphaGo Zero и разберитесь, почему она таки может обучиться игре в го и кто в этом виноват. Думаю, разговор исчерпан, ваше резонёрство далеко от практики, у вас просто нет практических критериев «правильной» и «неправильной» точки зрения, а потому спор не имеет смысла. Дрочите на «самостоятельные нейросети» дальше, обсуждайте их дальше в клубе любителей фантастики, если вам важно убедить кого-то, а не получить новое мнение, пусть даже не соответствующее вашему. Спасибо за беседу.


                    1. Hardcoin
                      08.12.2017 02:35

                      Обсуждение личности собеседника и попытки намекнуть на его умственные способности не являются доводом в диалоге.


                      К тому же вы никак не обосновали свой высокий уровень знания нейросетей (в профиле тоже не увидел), что могло бы хоть как-то обосновать подобное высокомерие.


                      В архитектуре AlphaGo Zero нет знаний о том, как правильно развивать партию в Го. Все знания нейросеть получает из обратной связи — проигрывая. А не от разработчика сети.


                      1. napa3um
                        08.12.2017 02:39

                        Просто постройте такую нейросеть, но для шахмат. Как пример. Не применяя никаких знаний о шахматах. Попробуйте сформулировать обратную связь «просто проигрывания» без знаний о шахматах. И пусть теперь эта же нейросеть сыграет в нарды, а потом в покер. Да, пусть поучится предварительно, конечно, но знаний же об игре там нет, так что какая разница, во что играть, верно? Мне вас убеждать ни в чём не хочется (уже давно), я на публику кривляюсь, не для вас.


                        1. alexeykuzmin0
                          08.12.2017 13:02

                          Все уже сделано до нас.

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


                          1. napa3um
                            08.12.2017 13:11

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


                            1. alexeykuzmin0
                              08.12.2017 13:37

                              А в чем проблема-то? Пусть сыграет. Что-то мне подсказывает, что она будет играть гораздо лучше, чем программа, делающая ходы случайно. Догонит ли человека? Наверное, гроссмейстеров не догонит, а среднестатистического — может быть, а может, и нет.

                              Я ни в коем случае не утверждаю, что существующие сегодня алгоритмы «умнее», «более адаптируемые» и вообще «интеллектуальнее» человека, это очевидно не так. Но мы постепенно движемся в этом направлении. И уже на сегодняшний день довольно сложно найти конкретную черту человеческого разума, которой бы не обладал тот или иной алгоритм машинного обучения. Да, пока что нет единого алгоритма, который собирал бы все эти черты в себе. Да, пока что человек гораздо более энергоэффективен, требует меньшей обучающей выборки, умеет решать более сложные задачи и тд. Но разница здесь уже скорее количественная, чем качественная.

                              PS: Пожалуйста, не делайте предположений о своем собеседнике, у вас плохо получается.


                              1. napa3um
                                08.12.2017 13:42

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


      1. inscriptios
        06.12.2017 22:31

        Так у вас случайно две И И подряд?


    1. mx2
      05.12.2017 10:10

      Это уже неизлечимо. Камеры, которые штрафы шлют, по ходу тоже ИИ — номера же считывают…


  1. erwins22
    05.12.2017 00:10

    sep это что за слой?


    1. BelBES
      05.12.2017 08:34

      Скорей всего что-то типа separable convolution (она же depthwise convolution)


  1. HEKOT
    05.12.2017 03:47

    Интересно, что бы подумал ИИ, если бы увидел фотографию, как я с помощью кайта снимаю со школьной крыши сынкин квадрокоптер?


    1. tot418
      06.12.2017 18:37

      Например, что человечество для него не представляет смертельной опасности, и его не стоит уничтожать)


      1. HEKOT
        07.12.2017 02:15

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


  1. qwert_ukg
    05.12.2017 07:44

    Skynet. Начало


    1. rionekb
      06.12.2017 12:02

      Специально ctrl+f жамкнул, чтоб глянуть где начинаются комменты про SkyNET. =)


      1. qwert_ukg
        06.12.2017 12:22

        Я перед тем как запостить тоже так сделал :)


  1. stanislavskijvlad
    05.12.2017 08:45

    Пусть попробует нормально картинки в quick draw отгадывать )))


  1. servdo
    05.12.2017 08:50

    Стану переживать, когда ИИ начнут создавать JS фреймворки. А пока не страшно.


    1. xerxes
      05.12.2017 09:15

      Думаешь, их люди создают?


  1. Artgor
    05.12.2017 08:50

    Очень важный момент — в статьте сказано, что они использовали 500 GPU (NVidia P100) 4 дня, то есть 2000 GPU-часов. Я бы сказал, что это пока слишком дорого для нормального использования, если не считать Google и других огромных компаний.


    1. barabanus
      05.12.2017 10:37

      Это для обучения. Для использования может хватить и мобилки.


      1. Artgor
        05.12.2017 10:39

        Конечно. Я имею ввиду, что использовать AutoML для подбора моделей — как в статье — пока неоправданно для большинства компаний.


        1. Hardcoin
          05.12.2017 13:13

          Дополнительное преимущество :). Пока остальные делают модели с помощью людей, Гугл просто закупает оборудование и выходит вперёд.


    1. JDTamerlan
      07.12.2017 17:35
      +1

      Это Вы еще упустили, что в одном дне несколько больше, чем один час :)


      1. alexeykuzmin0
        07.12.2017 18:17

        Дни бывают разные. Помнится, я в хедж-фонде работал, бывало, размышлял: «ну, в году примерно 250 дней по 14 часов...».


      1. Artgor
        07.12.2017 18:46

        Эти числа я взял из оригинальной статьи ;) " The method in this paper uses 500 GPUs across 4 days resulting in 2,000 GPU-hours."


    1. alex4321
      07.12.2017 21:45

      И выиграли только 3% в сравнении с решениями, не требующими сотен GPU :-)


      1. alexeykuzmin0
        08.12.2017 13:04

        Зато выиграли в том, что теперь не нужен мега-эксперт для построения архитектуры.


  1. anizotrop
    05.12.2017 09:37

    Нейросеть подбирает гиперпараметры другой нейросети с помощью обучения с подкреплением (reinforcement learning). Авторы AutoML пишут что использование эволюционных алгоритмов тоже неплохие результаты показало.
    Идея такого подхода, как мне кажется, очевидна любому кто знаком с тематикой машинного обучения. Не менее очевидны и недостатки: необходимость использовать вычислительные мощности, которые доступны только с хорошим финансированием.
    В общем это отличная новость для команд, которые могут паралельно тренировать сотни архитектур. Теперь они могут частично автоматизировать подбор гиперпараметров, который занимает несколько процентов времени затраченного на проект.


    1. Sadler
      05.12.2017 09:56

      Пока люди с хорошим финансированием выкладывают обученные сети или хотя бы набор параметров в свободный доступ, это отличная новость для всех.


      1. napa3um
        05.12.2017 15:43

        Вопрос в том, называть ли это «искусственный интеллект создал искусственный интеллект», или таки «люди автоматизировали подбор гиперпараметров нейросетевых решений». Это масштабирование производства, а не принципиально новое слово в ИИ, вот о чём речь.


        1. Sadler
          05.12.2017 15:54

          Это в любом случае не новое слово, т.к. оптимизацией гиперпараметров занимались ещё минимум лет 20 назад, остальное — лишь вопрос определений.


          1. napa3um
            05.12.2017 16:01

            Именно так я и сказал.


    1. Randl
      05.12.2017 11:13

      Ну так после выхода первой статьи на тему Neural Architecture Search чуть больше года назад, работают и над ускорением поиска. Например вот или вот.


  1. fivehouse
    05.12.2017 14:48

    ИИ от Google обучил дочерний ИИ, который превосходит все ИИ, созданные человеком
    Уже давно пора ализару перевести статью с заголовком:«Очередной сверх ИИ от Google по своей инициативе обучил очередной более сверх ИИ, который снова превосходит все. Люди на клавах просто кнопки нажимали.»


  1. achekalin
    06.12.2017 17:28

    Ждем ИИ для написания постов на Хабре. Даже без смайлика пишу — однажды ИИ отлично сможет справиться с компиляцией текста из чужих текстов с популярных сайтов + фактов из Википедии.


    1. Frankenstine
      06.12.2017 21:16

      Читая некоторые новости, я подозреваю что их писал такой ИИ, иначе сложно объяснить их низкое качество :)


      1. FlameStorm
        07.12.2017 02:56

        За «низкое качество» за ИИ обидно.

        играя только сама с собой, зная только правила шахмат но не имея исторической базы ходов, Alpha Zero за 24 часа научилась играть лучше чем человек arxiv.org/abs/1712.01815

        Имхо — и 2030-й то ещё не придёт, как в комментариях боты будут гораздо выгодней людей смотреться и работать.

        Вопрос только в том у меня, которая из стран первая выступит с Биллем о Правах и Свободах Роботов.


        1. Frankenstine
          07.12.2017 11:12

          Да это всё фигня. Как работает мозг животных и человека в частности: нейроны регистрируют простейшие геометрические формы: точки и линии с разным наклоном. Многочисленные вышестоящие слои по этой информации сопоставляют расположение сигналов сравнивая с известными на соответствие шаблонам, постепенно укрупняя классификацию. При несоответствии шаблонам создаётся и запоминается новый. В конечном итоге объект классифицируется с 100%, меньшей 100% или 0% уверенностью.
          Как работают распознающие нейросети: входящие данные (пиксели изображений или форма аудиосигнала) сравниваются по всей площади с известными элементами в соответствии с весами, построенными по частоте встречаемости. Результатом является цифра процента совпадений. Когда процент выше захардкоженного порога, считается что объект распознан. Процент практически всегда ниже 100% и выше 0%.
          Согласитесь, что это простая арифметика (статистический анализ), а не какой-то там интеллект.


          1. Sadler
            07.12.2017 11:20

            нейроны регистрируют простейшие геометрические формы: точки и линии с разным наклоном. Многочисленные вышестоящие слои по этой информации сопоставляют расположение сигналов сравнивая с известными на соответствие шаблонам, постепенно укрупняя классификацию. При несоответствии шаблонам создаётся и запоминается новый. В конечном итоге объект классифицируется с 100%, меньшей 100% или 0% уверенностью.
            Это называется Unsupervised Feature Learning: youtu.be/n1ViNeWhC24?t=31m29s


    1. QDeathNick
      07.12.2017 22:52

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


      1. alex4321
        08.12.2017 00:51

        Ну как сказать — на ряде задач, ЕМНИП, уже достигали точности выше человеческой :-)


  1. FlameStorm
    07.12.2017 02:52
    +1

    То чувство, когда стоишь на краю пропасти.

    Решил вот сделать ёмкую подборочку в картинках хроники разворачивавшихся по теме событий.
    Делюсь под спойлером.

    AI

    “На краю пропасти Хайтек”, в газетных вырезках
    image

    Продолжение, часть 2
    image


  1. il--ya
    07.12.2017 03:36

    ИИ обучил дочерний ИИ

    Блин, они уже размножаются!