image

Меня зовут Олег Андреев, мне 32 года, занимаюсь ремонтом и разработкой электроники, а также программированием (уже более 10 лет). Всегда увлекался искусственным интеллектом и робототехникой.

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

Когда в 2012 году появилось свободное распознавание русской речи от Google, я загорелся идеей создать систему, которая сможет разговаривать как человек. Тогда я занимался PHP программированием, но для написания программы, надо было изучать что-то другое, я нашёл среду написания программ под PHP, это было интересно, но не долго, так как для создания программы нужен был C#, C++.

После изучения C#, написал простой клиент, а всю логику сделал в облаке на PHP. Но вскоре Google сделал ограничение на запросы по распознаванию и тогда свой проект отложил надолго в ящик. Когда появилось свободное время и финансы, решил доработать систему, создал группу в ВК, которая росла.

Но в один момент были уничтожены все исходники начальной системы и тут всё началось…

image

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

Элис умеет, например, сама начинать диалог и обучаться, задавая вопросы и различные фразы.

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

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



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



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



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



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



Всем кто хочет опробовать такую систему: скачать

Спасибо за внимание!
Поделиться с друзьями
-->

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


  1. cry_san
    28.01.2017 05:33

    Сайт www.d-serviss.lv из ридми файла уже заброшен?


    1. andrejevs
      28.01.2017 10:44

      В смысле заброшен, нет конечно. Скоро для проекта будет отдельный управляемый сайт.


      1. Deerenaros
        28.01.2017 19:45

        Ну пожалуйста, ну товарищи. Ну UTF-8 же.


  1. foxmen
    28.01.2017 10:44

    Проект очень интересный и я бы порекомендовал объявить крафтфандинг. То что многие только хотели сделать, вы сделали. Было бы еще лучше, если бы он был написан на каком-нибудь интерпретируемом языке (python, например)


    1. andrejevs
      28.01.2017 10:46
      +2

      Я попробовал запустить: https://planeta.ru/campaigns/elis


  1. lair
    28.01.2017 11:42
    +2

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


    1. andrejevs
      28.01.2017 14:02
      -4

      Из старых видео по обучению можно посмотреть это: https://www.youtube.com/watch?v=uYvfgyV1Tvw
      Но сейчас уже функция обучения более доработана и думаю напишу это в новой статье, если конечно будет интересно кому то, про развитие данной системы.


      1. lair
        28.01.2017 14:16

        Эм, диаграмма из "brain" и "brain user"? Серьезно?


        1. andrejevs
          28.01.2017 14:17
          -1

          Это лишь образно показано.


          1. lair
            28.01.2017 14:22
            +1

            Так где с деталями-то познакомиться?


            1. andrejevs
              28.01.2017 14:30
              -4

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


  1. mephistopheies
    28.01.2017 16:09
    +5

    а вы используете глубокие нейронные сети?


    1. andrejevs
      28.01.2017 19:19
      -1

      В системе пока используются местами только простые персептроны, для анализа фраз.


      1. mephistopheies
        29.01.2017 20:51
        +5

        а как вы используете простые персептроны для анализа фраз?


  1. past
    28.01.2017 18:44
    +1

    Может быть стоит разместить код на гитхабе?


  1. farrk
    28.01.2017 19:09

    Было бы интересно прочитать про архитектурные решения и технические подробности.


    1. andrejevs
      28.01.2017 19:52

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


      1. rg_software
        28.01.2017 22:19
        +3

        Поймите правильно, здесь людей интересует прежде всего технарство, а не платность или доступность для инвалидов. Технарства мало, вот и критика. Зато картинки, да.


        1. andrejevs
          28.01.2017 22:33

          По какому критерию Вы это поняли? Посмотрите группу в ВК по проекту и все видео о системе на Yotube. Здесь лишь небольшая часть была выложена.


          1. lair
            28.01.2017 22:54
            +1

            Вот прочитав то, что здесь написано, и поняли.


          1. rg_software
            29.01.2017 07:53
            +3

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

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


        1. mephistopheies
          28.01.2017 23:03
          +1

          технарстов? чувак ты о чем? технарство это для пхпшников

          здесь, в блоге ии и мл, людей интересует математика и наука, а не это… пффф… технарство


          1. rg_software
            29.01.2017 07:50
            +1

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


  1. kreolzmax
    28.01.2017 19:10
    +1

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

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

    А так, это всего лишь поделка любого школьника, начинающего программировать.

    Критика вам, может быть, покажется жесткой, но реальность такова.


    1. andrejevs
      28.01.2017 19:28

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

      Поделка любого школьника, Cortana, Siri тоже? Чтобы создать такое, тут надо быть не только программистом.

      Критику я любую выслушаю, но если человек для начала подробно поймёт, как работает система.


      1. rg_software
        28.01.2017 22:17
        +3

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


        1. andrejevs
          28.01.2017 22:35
          -3

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


          1. lair
            28.01.2017 22:55
            +2

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


            1. andrejevs
              28.01.2017 23:04
              -3

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


              1. foxmen
                28.01.2017 23:28
                -2

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


              1. rg_software
                29.01.2017 07:56
                +3

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


                1. andrejevs
                  29.01.2017 20:32
                  -2

                  Была задача поделиться системой, бесплатно пользоваться, а не отдавать труды годов, чтобы сделать плагиат или как некоторые украсть код. Вообще о чём Вы говорите, мне не понятно, здесь тысячи статей без кода, а как информационные.


                  1. rg_software
                    29.01.2017 23:36
                    +1

                    Это дурные статьи, не стоит на них равняться. Ну или рекламные, которые всегда будут, ибо деньги.

                    Между «проинформировать о системе» и «отдавать труды годов» лежит пропасть оттенков. Скажем, исходный алгоритм Google PageRank в открытом виде опубликовали в 1998 году, но вот как-то никто не украл, хотя как оказалось, золотое дно. Не всё так просто.


              1. samodum
                30.01.2017 16:50
                +2

                Судя по всему, «система ерунда и так все могут сделать».
                Доказательство — набор шаблонов. Все в юности такими вещами игрались.



                1. mephistopheies
                  30.01.2017 16:52
                  +1

                  а что кто то сомневался? =) автор кстати уже 1300 руб собрал на свое поделие на планета.ру


                  1. samodum
                    30.01.2017 17:30

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


                    1. mephistopheies
                      30.01.2017 17:31
                      +1

                      ну в 1970ых это тоже называлось ИИ


                      1. samodum
                        30.01.2017 17:35

                        Сейчас не 70-е и термин ИИ несколько изменился. Я живу в 2017-м и понимаю этот термин в рамках настоящего времени, а не прошлого.


                        1. mephistopheies
                          30.01.2017 17:36
                          +2

                          автор не для тебя делал свою систему, сперва добейся вопщем!


                          1. samodum
                            30.01.2017 17:41

                            Послушай, такие «системы» делал каждый второй программист начиная с 1950-х годов, когда появился первый чат-бот A.L.I.C.E.
                            Я тоже такие чат-боты делал для себя лет 10-15 назад и точно так же, на регэкспах. Шаблонов было побольше и бот даже запоминал список дел, умел запоминать введённую информацию и выдавать её по запросу. Но я как-то не рискнул назвать этот примитив «искусственным интеллектом» и не было претензии на такое громкое слово.
                            Потому что изначально ясно, что этот путь (шаблоны) тупиковый и его используют только чтобы поиграться, но никак не для серьёзного дела.


                    1. andrejevs
                      30.01.2017 19:12
                      -2

                      Интеллектуальная система и искусственный интеллект, это разные вещи, так-же как и искусственный интеллект и искусственный разум.


                      1. alex4321
                        31.01.2017 17:52

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

                        p.s. если таки будет интересно — я бы ударился в тему классификации запросов на естественном языке. Тем более — есть как готовые API (хотя, возможно — не подойдут для нужного языка), так и слегка рабочие локальные библиотеки. Но вообще — api.ai же :-)


                    1. andrejevs
                      30.01.2017 19:20
                      -1

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


                      1. alex0nik
                        30.01.2017 19:51
                        +1

                        Например, ваши слова «человекоподобной системы, которая сможет обучаться как ребёнок и вести осознанный диалог».
                        Текущее положение дел у вас можно назвать обучением только с натяжкой, очень примитивным.
                        В моем понимании обучение, это когда система знает что A=B и B=C, и сама делает вывод что A=C. Или на примере нейронных сетей, с тем же распознаванием картинок, голоса. И это еще не искусственный интеллект.
                        У вас же просто «вопрос — ответ». Вы еще упоминали, что может быть несколько ответов на вопрос, полагаю, что выбирается любой из них по принципу псевдо рандома.

                        А еще слова «такого никто не сделал». Вам это уже писали, работа не соответствует заголовку и её описанию.
                        Распознование и синтез речи не ваши, остальное в таком виде не представляет ценности. Чтобы обучить такую систему понадобятся тысячи человеко-часов. У вас столько есть?


                        1. andrejevs
                          30.01.2017 20:03
                          -1

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


                          1. lair
                            30.01.2017 21:25
                            +2

                            Контексты, скажем, и bot framework с его диалогами поддерживает.


                          1. alex4321
                            31.01.2017 17:56

                            «контекст»
                            Дай-ка вангану — имеется в виду нечто вроде «в состояние C мы можем перейти из состояния A, но не из B»? Так конечный автомат ведь же (фича, конечно, не лишняя, но вроде поддерживается уже чуть ли не везде).


                        1. alex0nik
                          31.01.2017 05:36
                          +1

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

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

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

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


                          1. andrejevs
                            31.01.2017 09:44
                            -1

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


                            Ох, как вы заблуждаетесь про синтез речи, он уже давно на уровне человеческого, вы даже не отличите его, просто не знаете наверно ЦРТ.


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


                            1. alex0nik
                              31.01.2017 11:05
                              +1

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

                              Что касается синтеза речи. Вы считаете что эту запись, скаченную с voicefabric.ru можно назвать на уровне человеческого?
                              Если это так просто, почему нет хорошего оффлайн решения? Попутно, посмотрите тарифы на ЦРТ.
                              Ну нет такого решения, которое бы не проглатывало звуки, правильно расставляло интонации и акценты. Задача далеко не тривиальная, чего бы там вам не казалось.
                              А в свободном доступе даже уровня ЦРТ нет.
                              С распознованием речи тоже все просто, по всей видимости?


                              1. bask
                                31.01.2017 19:16

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

                                Уже есть
                                https://deepmind.com/blog/wavenet-generative-model-raw-audio/

                                https://storage.googleapis.com/deepmind-media/pixie/knowing-what-to-say/second-list/speaker-4.wav


                                1. alex0nik
                                  31.01.2017 19:30

                                  Спасибо за ссылку.
                                  Да, упустил в своем категоричном утверждении, что речь про синтез на русском языке. Тот же google translate говорит «чище» на английском.
                                  Синтезом на английском занимаются гораздо дольше. Могу ошибаться, на мой взгляд английская речь проще, более строгие правила построения предложений и т.п.?


                                  1. bask
                                    31.01.2017 22:39

                                    Для WaveNet различий какой язык. Там же машинное обучение работает.
                                    Там же есть примеры речи на китайском языке, а он сложнее русского


                                    1. alex0nik
                                      01.02.2017 05:08

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

                                      Тем не менее, чтобы развеять мифы про простоту задачи для andrejevs, там же написано:

                                      метод требует большого количества машинного времени и ресурсов. Система, которая может генерировать внятную человеческую речь, должна быть очень мощной. Дело в том, что WaveNet для синтезирования человеческой речи обрабатывает каждую секунду 16000 образцов аудио.

                                      Исследователи из DeepMind уже загрузили в систему более 44 часов речи. Загружаемые в систему слова, звуки и фразы принадлежат 109 участникам эксперимента, разговаривающих на английском языке.


                  1. andrejevs
                    30.01.2017 19:11
                    -1

                    Вы это Cubic так-же скажите, который кстати не сделал лучше, при это называется персональный искусственный интеллект.


                    1. mephistopheies
                      30.01.2017 19:19
                      +1

                      маркетологи хорошие, не более


                      1. andrejevs
                        30.01.2017 19:22
                        -1

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


                        1. mephistopheies
                          30.01.2017 19:37
                          +3

                          это было в 2014, тогда революция нейросетей только начиналась, только появилась VGG, которая сегодня уже устарела, два года прошло тогда только с момента как AlexNet порвала ImageNet, ни о каких успехах рекуррентных сетей и речи еще не было; да и материал подавался как маркетинговое говно, но я проверил, тогда минусанул и автора и его статьи

                          но чувак, в 2к17 делать то что делашь ты — это уровень курсовика второго курса универа, если бы ты статью оформил как «введение в экспертные системы» то собрал бы 100500 плюсов, но ты же одной фразой ставишь себя на уровень выше кортаны и сири

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


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

                          image

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

                          осознанно вести диалог? по базе правил? рили? вот зацени https://gigaom.com/2017/01/16/four-questions-for-geoff-hinton/ даже дед нейросетей говорит что следующий барьер который должен преодолеть ИИ это семантическое понимание текстов, но нет, ты же его преодолел еще в 2012 на шарпе и пхп

                          откуда же столько негатива и минусов? чувак удосужься почитать классическую литературу по ИИ, начни например с «Искусственный интеллект: современный подход» Питера Порвига, затем почитай что нибуль про машинное обучение, например Кевин Мерфи «Machine Learning: A Probabilistic Perspective», затем зацени новую книжку по нейросетям «Deep Learning» Гудфелоу и Бенджио; почитай свежие статьи, и тогда приступай к работе


                1. lair
                  30.01.2017 17:32
                  +1

                  … даже LUIS не прикрутили, не смотря на "облачность" системы?


                1. andrejevs
                  30.01.2017 19:10
                  -1

                  Сделайте, я посмотрю. Вы даже не знаете алгоритмы ядра.


                  1. samodum
                    30.01.2017 21:57
                    +2

                    Конечно не знаем. Просим показать — не показываете.
                    Зато по косвенным признакам видно, как всё это сделано.
                    Шаблоны — есть. Шаблонные ответы — есть. Этого достаточно, чтобы понять как это работает.


      1. zirix
        29.01.2017 01:53
        +1

        По Вашему распознавание речи и анализ информации является обычным?

        Распознавания речи у вас нет. Вы api яндекса используете для преобразования речи в текст.


        Расскажите каким образом "анализируется информация"?
        У вас используется синтаксический или семантический анализ? Если да, то каким образом работаете с полученными данными?


        Что такое коррекция фраз и что значит "расставляет все по полочкам"?
        Можете описать на примере какой либо фразы?


        Поделка любого школьника, Cortana, Siri тоже?

        У Кортаны и Сири есть своя система распознавания речи. Если не считать распознавание речи, то да системы довольно примитивны и подобный функционал осилит даже школьник.


        1. andrejevs
          29.01.2017 02:16
          -1

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


          Про коррекцию. Система использует коллективное обучение, где каждая фраза имеет процент успешности, задавая различные вопросы, система так корректирует свои знания.
          Пример: Вы задали вопрос, как зовут мою маму, она ответила не так, вы сказали не правильно и она тут же сделала коррекцию на ответ, если же несколько раз ответ был не правильным на один вопрос, она его удаляет. Так же она может сама задавать вопросы, для коррекции фраз.


          Я тоже занялся своим распознаванием речи. То что примитивны, не спорю, потому что работают по структуре вопрос-ответ, я же делаю другое. Да и моя система уже умеет управлять физическими устройствами, светом и т.д. Да и планирую подключить OpenCV.


          1. devpony
            29.01.2017 02:28

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


          1. zirix
            29.01.2017 03:13

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


            По обучению/коррекции:
            Если вы делаете искусственный интеллект, то такой схемы работы недостаточно для поддержания естественного диалога с пользователем.
            Для пользователя это будет все та же глупая Сири, но с возможностью программировать ответы.


            Если вы делаете что то типа амазон эхо:


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

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


            Распознавание речи это сложная вещь. В яндексе над распознаванием работало 20 человек 3 года(надеюсь цифры не путаю). Сделать такую систему одному шансов не много.


  1. Sleuthhound
    28.01.2017 20:42

    Через что распознаете голос? Вопрос снят, Yandex.

    Планируете ли открывать исходный код?

    Зачем программа ломится к вам на сервер, зачем нужна какая-то регистрация? Собственно без регистрации ничего и не работает — не люблю я такие программы, чтобы просто попробовать нужно еще слить свой email куда-то — бред.


    1. andrejevs
      28.01.2017 20:50

      Распознавание речи пока от Яндекс, но в дальнейшем будет своё, в этом направлении уже есть сдвиги.

      Код самого клиента не особо интересен, а вот «Мозга» системы, уже интересен, но пока не планирую, потому что всё сыро.

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


      1. alex0nik
        29.01.2017 22:18

        Синтез речи тоже яндекс или что-то другое?
        Что меня удивило — правильные ударения. Для своих целей использую festival, работает оффлайн под линукс. Но качество не совсем устраивает, нужно для каждого специфичного слова расставлять ударения знаком "+". Например слово «Ш+о+у», иначе съедает звуки…


  1. eXoToL
    28.01.2017 20:54
    +2

    Попробуйте для обучения использовать информацию из википедии. Смотрел одну конфу, там описывали, что Уотсон использовал википедию для обучения, когда его готовили к Джепарди. типа там 90% всей инфы на большинство бытовых вопросов.

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

    Хотелось бы деталей по архитектуре, если можно. Пока соглашусь с остальными — разработка примитивна и кроме архитектурного решения в ней пока нет ничего интересного. У Вас, к сожалению, нет кучи ресурсов чтобы наделить кучей простых функций вашу систему, как, например, Алекс от Амазона, или Сири.
    Мне кажется, Вам нужно идти немного в другую сторону, иначе, конкурентов просто не переиграть (

    Желаю удачи в проекте


    1. andrejevs
      28.01.2017 21:03

      Из Вики берётся информация как описание чего то, насчёт быстрого обучения есть идея прогонять через систему книги, диалоги из книг и т.д.

      Время ожидания 1-3 секунды, зависит от интернета, настроек и доступностью серверов.

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


      1. Sleuthhound
        28.01.2017 21:58

        >>Сразу скажу, конкурентов у меня и нету, так как я иду другим путём,

        Это не у Вас нет конкурентов, это Вы не конкурент этим самым конкурентам.

        А так у Вас такой же корявый путь как и у всех (ИМХО) — все в облаке, нет инета — нет облака и вся ваша система накрывается медным тазом, все ваши управляемые ардуинки сдуваются и ничего не работает.
        Про гигантов вроде Google и Amazon все понятно, почему они идут таким путем, но зачем Вам идти по облачному пути мне не понятно, только не говорите эту заезженую фразу… пардон, вы её уже сказали

        >>создания уникального профиля, где хранится информация имени, интересов и т.д. пользователя, так как вся логика работает в облаке.

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


        1. andrejevs
          28.01.2017 22:12

          Пускай будет по Вашему.

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


        1. eXoToL
          29.01.2017 00:06

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


          1. andrejevs
            29.01.2017 00:17

            Облачная структура имеет большие плюсы при разработке.

            Пароль имеет чувствительность к регистру, password и PassWOrD, это разные пароли.


            1. eXoToL
              29.01.2017 00:34

              Да вроде все в одном регистре. Странно, что приложение в облаке, а мне зачем-то нужно регистрироваться, я например, юзаю опеншифт для java, я делаю приложение, и оно доступно всем в нете, разве вы так не можете сделать? соглашусь с коллегами, для пробы приложения слишком много действий, которые в моей случае, что-то не пришли к успеху…


              1. andrejevs
                29.01.2017 00:41

                Регистрация нужна для создания профиля с данными пользователя, где хранятся имя, дата рождения, интересы и т.д., это делалось для создания кроссплатформенности.


                1. eXoToL
                  29.01.2017 00:54

                  для создания профиля с данными пользователя, где хранятся имя, дата рождения, интересы


                  Это я читал уже в ответе выше. Но регистрация только чтобы попробовать, слегка работающее приложение-прототип — по-моему, перебор. Т.е. получается только ваша прихоть что-то хранить о пользователе… а не требование облака.

                  это делалось для создания кроссплатформенности.

                  А вот этот тут причем? Как я понимаю, в облаке просто сервисы, а приложение их дергает, причем здесь кроссплатформенность?


                  1. andrejevs
                    29.01.2017 00:58

                    В облаке находится весь "Мозг" системы и функционал. Клиент можно сделать и запустить на Ардуино платформе например в будущем, с функционалом что и на ПК.


        1. eXoToL
          29.01.2017 00:09

          Из Вики берётся информация как описание чего то


          Ну естественно, речь и шла о базе знаний. По сути и Уотсона пропогандировали изначально как удобную экспертную систему с языковым интерфейсом. Ну это к тому, что бы ЭЛИС могла знать, что такое бумага и из чего ее делают =)


        1. samodum
          30.01.2017 22:04

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


          1. rg_software
            04.02.2017 14:20
            +1

            «Нет инета» тривиально бывает, когда инета нет не у меня, а у поставщика решения (упало что-то, авария на проводе и т.п.) Вон недавно на одном известном ресурсе админ rm -rf сделал, как мы помним.

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


          1. alex0nik
            04.02.2017 23:38
            +1

            Тоже вставлю свои 5 копеек.
            Работаю над электронной очередью на выставке кошек. Это такое мероприятие, когда снимается в аренду помещение на сутки, ставится свое оборудование и из коммуникаций есть только электричество. Да, сейчас, есть мобильные модемы, но это очень ненадежно.
            Итого имеем, каждые мин 7 нужно синтезировать речь для приглашения следующего участника выставки. И риск, что соединения оборвется или скорость будет ниже плинтуса.
            В торговый центрах как правило провайдер-монополист и больше ничего. Да, интернет есть, но проблемы с каналом тоже бывают. Арендаторы изобретают велосипеды с подключение резервного провайдера и автоматическим переключением в случае падения.
            Вчера хотел оплатить коммуналку, у управляющей компании даже сайта нет для автоматизации. На двери радостная надпись «Касса не работает. Нет связи.»
            Вы, наверное, живете в другой реальности. В моей же, интернета может не быть.


  1. andrejevs
    29.01.2017 01:27

    Демонстрационное видео.
    https://www.youtube.com/watch?v=mRflfrGhFE8


  1. raidhon
    29.01.2017 13:59
    -5

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


    1. raidhon
      29.01.2017 19:33
      -4

      Рука лицо =_=
      Мало минусов давайте ещё!!!
      Помоему пора удалятся отсюда к чертям!!!


      1. andrejevs
        29.01.2017 20:28
        -4

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


        1. mephistopheies
          29.01.2017 20:50
          +3

          нет, не за любой ответ


          1. andrejevs
            29.01.2017 20:54
            -3

            Посмотрите все комментарии, даже за информационно полезный, ставят минус, адекватные люди такое не делают. Я уверен что и на это комментарий поставят минус, смешно, детский сад.


          1. raidhon
            29.01.2017 22:10
            -2

            Ухаха просто, видимо вы не читали <<Почему мы злые — https://habrahabr.ru/post/317880/>>
            Ну так прочтите, вместе с комментариями!

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


            1. andrejevs
              29.01.2017 22:15
              -2

              Я не читаю глупости, у меня просто даже нет времени на это.


  1. NoRegrets
    29.01.2017 20:35
    +3

    Здесь несколько задач. Конвертация речи в текст и обратно и собственно интеллект. Для начала можно было просто начать работать над интеллектом. Но то что я пока вижу — никакого интеллекта нет. Это обычный чат-бот с примитивной обучалкой, коих очень много. Где новизна-то?
    Хорошо, черт с ним, вы прикрутили к чат-боту с обучалкой конвертацию речи, пусть даже сторонние решения. Замечательно. Программа работает, с паузами и т.д., но работает. Но зачем, зачем вы называете эту систему «Интеллектуальная система» и пишете об этом в заголовке статьи? Что бы весь хабр зашел сюда и пнул вас что никакой «интеллектуальной системой» здесь и не пахнет?


    1. andrejevs
      29.01.2017 20:37
      -4

      Здесь полно статей про "Умный дом", где управление через телефон, где тут Умный дом??? Кто Вам сказал, что интеллектуальная система, значит это разум? Для тех кто в танке!!!


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


      1. lair
        29.01.2017 21:01

        А какие из решаемых вами задач "традиционно считаются творческими"?


        1. andrejevs
          29.01.2017 21:17
          -3

          Мне не о чем говорить с хейтерами. Ставьте дальше минуса.


          1. mephistopheies
            29.01.2017 21:19

            а я вас за романтику изобретательскую плюсанул, ответьте мне тогда на вопрос https://habrahabr.ru/post/320672/#comment_10042010


            1. andrejevs
              29.01.2017 21:34
              -2

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


              1. mephistopheies
                29.01.2017 21:40
                +1

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

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

                а как вы подаете в персептрон слова? вы из как то кодируете в действительные числа? а поиск по базе вероятностей это часть персептрона?


                1. andrejevs
                  29.01.2017 21:52
                  -1

                  А почему слова нельзя сравнивать, чем они отличаются например от пикселей двумерного массива?


                  1. mephistopheies
                    29.01.2017 21:58
                    +1

                    т.е. вы не слова подаете в персептрон, а изображения, верно? а что дальше происходит, что выдает персептрон?


                    1. andrejevs
                      29.01.2017 22:40
                      -1

                      Нет, слово это пиксель в массиве, далее сравниваются в базе массивов слов ( фраз. )


                      1. mephistopheies
                        29.01.2017 23:34
                        +1

                        что то не очень понятно, напишите псевдокод что ли

                        какой тип данных на входе? какой тип данных на выходе?


          1. lair
            29.01.2017 21:20
            -1

            Как мило: приписать оппоненту выгодное вам поведение, записать его в хейтеры — и на этом основании отказаться отвечать на вопрос по теме поста. Ну-ну.


            1. andrejevs
              29.01.2017 21:49
              -1

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


              1. mephistopheies
                29.01.2017 21:49
                -1

                вот я вам плюс поставил


      1. NoRegrets
        30.01.2017 11:35
        +2

        Интеллектуальная система, это система, по определению, обладающая интеллектом. Не набором скриптов, которые имитируют только некоторые моменты, создают видимость интеллекта. Не большой хеш-базой «вопрос — наиболее успешный ответ для данного индивида». Нет, это система способная делать логические умозаключения. Например простейшее A=B, B=C, тогда A=C. Если быть ближе к теме, включающая свет в комнате, потому что я туда зашел, а не потому что я задал такой ивент — пользователь в комнате. Знающая новости какой тематики меня интересуют. Предупреждающая перед выходом, что на улице минус 25, а не минус 15 как было вчера. И так и далее.
        Знание 1. Сегодня на улице холоднее чем обычно.
        Знание 2. Данному индивиду не нравится низкая уличная температура.
        Знание 3. Индивид собирается выйти на улицу.
        Вывод. Необходимо предупредить индивида о погоде.
        Мы оперируем понятиями и используем мышление (интеллект), для того что бы делать такие выводы. В этом и заключается интеллект, а не в подборе наиболее успешного ответа у данного индивида на данный вопрос.

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


  1. cry_san
    30.01.2017 04:08
    +2

    Прочитал все комментарии на текущий момент.
    Общее впечатление — статья на хабре для сбора денег на https://planeta.ru/campaigns/elis
    Вы уж меня простите ))


  1. samodum
    30.01.2017 14:11
    +1

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

    ИИ на регулярках? Серьёзно?
    Тогда добро пожаловать обратно в 2000-й к асечному боту «Болтун». Он тоже на регулярках был написан.


  1. Bluefox
    30.01.2017 14:26

    Вы получаете минусы за то, что кода нигде нет. И чем ваш код отличается от того же api.ai тоже не понятно.
    Выложите код на github, наконец, (под CC NC BY или GPL например ) и минусовщики будут довольны.


    1. mephistopheies
      30.01.2017 14:27

      не слушайте таких комментаторов, они просто хотят присвоить себе ваши труды


      1. Bluefox
        30.01.2017 14:31

        У меня более 6700 коммитов на github в публичные репозитории и ничего — жив и не обеднел.


        1. mephistopheies
          30.01.2017 16:53
          +1

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


  1. lair
    30.01.2017 22:54
    +1

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


    Или вот тоже. Предположим, я, идя на кухню, говорю: "я иду на кухню, выключи свет". Где система выключит свет? "Я иду на кухню, включи свет" — где система включит свет? Наконец, если я каждый вечер говорю то одно, то другое, то "научится" ли система, рано или поздно, когда я ухожу из комнаты, гасить в ней свет, и включать его на кухне, пока я туда иду? И если да, то какие действия с моей стороны для этого нужны?