Антинейроны и обучение на ошибках

    image

    Вместо предисловия


    В недавнем прошлом судьба привела меня в область Нейронных Сетей (НС). Вопрос этот показался мне крайне интересным и, чего уж скрывать, не на шутку перспективным. Ах, какой простор открывается лишь при одной мысли что бы можно было сделать на основе НС, если бы только развить еще буквально чуть-чуть! И вот совсем недавно ко мне в голову забрела интересная (на мой взгляд, конечно) концепция. О да, я ни коем образом не претендую на истинность и правомерность своих суждений в вопросе НС, ибо, признаться честно, в этой области я дилетант (хочется верить, что только пока). Тем не менее, любопытствующих приглашаю под хабракат. Жду (конструктивных мнений), надеюсь (на снисхождение) и верю (в понимание).

    Откуда растут ноги?


    Услышав недавно старинную фразу: «Человек учится на ошибках», — и размышляя о НС, я пришла к неожиданному гибриду этих структур. Собственно, каков же он был? Искусственный нейрон — это «аналог» живого человеческого нейрона. Конечно, аналог грубый, но не зря же они называются одним словом. Как правило, вне зависимости от структуры НС, обучаются они все на правильных примерах: на вход подается эталонный вектор X, на выход — соответствующий ему вектор Y. Процедура повторяется, пока НС не усвоит информацию. Я бы сравнила подобный способ обучения со следующей ситуацией. Положим перед человеком лист бумаги, на котором начерчена прямая линия. Затем покажем как рисуется прямая линия (ставим карандаш в одну точку листа, не отрывая от листа ведем, потом отпускаем). Повторим процедуру несколько раз, пока человек не запомнит как все-таки рисуется прямая линия. И, наконец, предложим испытуемому нарисовать такую же линию самому. Стоит ли говорить, что у человека ничего не получится. Точнее получится, но линия будет не прямой. Не эталонно прямой. В этом месте повествования настало время вскричать: «Ага!», — и перейти к следующей части моей мысли.

    Антинейроны


    Как уже было указано выше, НС учатся на правильных примерах. Искусственный нейрон — «аналог» человеческого, а, как было видно из примера, сколько человеку прямую линию не показывай, сходу он её не нарисует. Так как же быть? Попробуем пойти от обратного. Если эталонная выборка не дает нужного эффекта, попробуем прямо противоположное — будем обучать НС на ошибках! Таким образом, на вход гипотетической сети будем подавать неверное значение X, а на выход — соответствующее ему значение Y. И что же в таком случае получится? А получится то, что мы самым грубым образом ограничим пространство вариантов. Иллюстрируя мое рассуждение на уже знакомо примере, предложим испытуемому линейку, то бишь ограничим пространство вариантов начертания линии (читай — листа). Уж с такой пустяковой проблемой наш незадачливый испытуемый должен справиться. Вот мы и получили чего хотели — прямую линию.
    Собственно, спросите вы, а при чем тут антинейроны? Так при всем, отвечу я вам! Если обычные искусственные нейроны обучаются на правильной выборке, то пускай нейроны, обучающиеся на неправильных данных, будут зваться антинейронами. С терминологией разобрались, идем дальше.

    Форматы данных


    По хорошему говоря, НС должна работать с тремя видами данных:
    • правила (они же — верные данные, они же — факты);
    • ограничения (они же — неверные данные);
    • исключения (ведь из каждого правила есть исключения, да?).

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

    image

    Итак, на арене — пространство вариантов! В левом углу — входные значения, в правом — выходные. Собственно, всё, что между ними — оно самое пространство. Вспоминая пример с линией, рисунок будет примерно таким (серым отмечено ограниченное пространство):

    image

    Ну а само «правило» из списка выше — так же линия, только ограниченная и сверху, и снизу. К слову, тут стоит упомянуть такой момент, что факт может быть однозначным и неоднозначным. Под однозначным фактом я понимаю однозначное соответствие X и Y. А вот неоднозначный факт — это гораздо интереснее. Например, такой факт: «Я вижу небо, значит я смотрю вверх», — не будет однозначно соответствовать обратному. То есть если я смотрю вверх, совсем не обязательно, что я вижу небо. На графике такой неоднозначный факт будет представлен наклонной. Вход X будет падать на выход Y, а, как мы знаем из физики, угол падения равен углу отражения, так что соответствие ответит в какой-то другой X. Но ведь это в неограниченном пространстве вариантов! Ограничим пространство условием «если надо мной нет потолка». Тогда факт «Я вижу небо, значит я смотрю вверх» будет соответствовать обратному «Я смотрю вверх, и если надо мной нет потолка, я вижу небо». Смотреться это будет примерно так (отражала я на глаз, так что точность картинки сомнительная, но суть рассуждений должна быть ясна):

    image

    Собственно, правил и ограничений мы уже коснулись. А что же с исключениями? Так вот эти самые «дополнительные условия» и формируют исключения. Ну и под занавес вечера…

    К чему все это?


    На мой взгляд, подобная система (при нужной разработке и не полной бредовости всего вышесказанного) позволит решать задачи, например, в том же прогнозировании и принятии решений. Ведь при достаточном багаже форматов данных, можно задавать Y (то бишь цель), а НС будет говорить, что же нужно для реализации, то есть ставить в соответствие X.

    Послесловие


    Большое спасибо всем тем, кто осилил этот поток мысли! Благодарю за внимание.

    UPD: Да, и еще маленькое пожелание. Уважаемые граждане минусующие, хотелось бы побольше конкретики, дабы можно было продолжать развиваться в умственном плане.
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 178

      0
      Как то под вечер туго пошло, кроме класного названия антинейрона не понял как он должен работать. А можно на пальцах объяснить функцию активации искусственного антинейрона, метод обучения? Или этого нет, а есть только идея, а вот бы оно так сработало?
        +2
        Поддержу, сыровато.
          0
          Увы, с математикой у меня всегда было туго, так что точно сказать, что, мол, «функция активации должна быть такая-то» и далее формула, я, к сожалению, не скажу. А вот методика обучения, как было сказано выше, такая же, как и у обычного нейрона — на примерах. Но, в отличие от этих самых обычных нейронов, примеры не «правильные», а «ошибочные». То бишь мы говорим НС не как надо делать, а, напротив, как делать не надо. Тем самым обозначая коридор возможных значений. Далее дело упирается в тот факт, каким образом НС должна дойти от X до Y (или, наоборот, от Y до X, так как соответствие при нужных ограничениях должно поддерживаться в обе стороны): либо определенной функцией активации (но в таком случае для каждого случая она должна быть своя), либо (что мне больше нравится) с помощью универсального алгоритма обработки сигналов. Про последнее я вычитала в одной интересной книжке, где проводилась параллель между строением коры головного мозга, где область мозга, отвечающая за, например, слух, могла быть «переучена» под зрение, и алгоритмом работы искусственных нейронов. Хотя, возможно, вместо функции активации можно использовать эдакий вариант аппроксимации функции по среднему значению в заданном коридоре… Тут вопрос остается открытым.
            +2
            Случаем не «Об интеллекте» книга называется? Если нет, то очень советую почитать.
              0
              Да, именно она самая. :)
                0
                Тоже почитываю(6 глава)… Есть несколько интересных моментов(тот же неокортекс, однотипный принцип работы всего мозга, поведение, как признак интеллекта и т.д.), но пока, в целом, она кажется мне, несмотря на обилие понятных примеров(крыса в лабиринте, например), малоинформативной с точки зрения описания именно интеллекта, учитывая что автор делает на этом акцент. Все там как-то вокруг да около. Имхо. Плюс читаю и в голове буквально мелькает: «Ну не тот это путь!», хоть и назвать себя экспертом в этой области я не могу. Вот такое мое мнение.
                  0
                  А что вы понимаете под «описанием именно интеллекта»? Как мне показалось, это довольно интересная попытка оценить функционирование мозга с точки зрения инженера. Ну а в связи с тем, что до конца люди еще не вполне понимают как же работает мозг, сдается, ждать точных выводов от автора не стоит. :)
                    0
                    Я не о том, что мало написано именно про устройство работы интеллекта, я про то, что мало информации о самом интеллекте в книге. Проще говоря на 1 предложение по теме 10 примеров. Я не испытываю неприязни к автору, но у меня иллюзия, что он выдает конфету в 20 обертках. Честно, возникает чувство, что он не описывает свое наблюдение, а хвалит, мол, вот посмотрите вот эта функция мозга прекрасно коррелирует с десятком моих наблюдений из жизни и поэтому я считаю, что это ОНО. Хотя может другим будет интересно, не спорю, книга, как я уже сказал, интересная.
                +3
                Сразу извиняюсь за резкость, но… Зачем же Вы, уважаемая, не зная математики лезете в область нейронных сетей, которые являются (если заниматься ими серьезно, а не кидать случайный взгляд) крайне сложной математической моделью?
                А теперь конструктивно. Во-первых, пространство вариантов, как Вы его называете, в общем случае бесконечно велико и ограничить его таким примитивным способом Вы просто не сможете. Во-вторых, любая нейронная сеть должна обучаться на выборке, в которой присутствуют и положительные образцы, причем с инвариантами, и отрицательные. Только так можно ограничить ошибки ложного срабатывания. В-третьих, Ваши рассуждения о методах обучения людей крайне наивны. Недостаточно дать несколько прямых линий обучаемому и сказать «повтори». Он должен видеть весь процесс, обязательно включая установку точек начала, конца и способ движения карандаша. А вы строите теорию исходя из подачи целостных примеров, завершенных образцов. Ознакомьтесь с соответствующей литературой по психологии. А про нейронные сети лучше просто забудьте.
                  –1
                  Не всё настолько плохо у меня с математикой. Тут несколько уважаемых человек обращали мое внимание на некоторые моменты моего повествования и я постаралась точнее выразить то, что хотела сказать данной статьей. Не сочтите за труд ознакомиться и с ними для более полной картины повествования.
                    +5
                    Не счел и ознакомился. Моих аргументов это не отменило. А у Вас что-то не так с логикой. Я даю Вам задачу: «Решите уравнение 80=5*x. Даю подсказку. Это не 2». Каким образом это Вам поможет? А если я Вам дам серию таких примеров, даже с общей сигнатурой a=b*x и к каждому приложу кучу неверных ответов (а их, если у Вас не все плохо с математикой, бесконечное множество), это как-то поможет Вам уловить закономерность? Бред. Вы не научите таким образом сеть определять доверительный интервал истинного ответа. Вы научите ее только генерировать шум.
                      +2
                      Вообще, даже интересно. Как Вы собираетесь обучать сеть? Обратным распространением ошибки? Так ведь ошибка — цель обучения. То есть, в сущности, Ваше предложение сводится к образованию полного множества неверных значений и «запихивания» его каким-то образом в нейронку. Даже для единичного примера это невозможно.
                        0
                        Нет, обратное распространение ошибки тут совершенно ни при чем.
                        По поводу примеров, в данном случае, ежели пытаться решить пример с помощью предложенной концепции, получится что-то вроде попытки есть суп вилкой. Для решения подобных уравнений есть прекрасные пакеты программ с обычной логикой. Мое же предложение скорее ориентировано на задачи, в которых нет 1 правильного ответа и множества неправильных.
                        Тем более, кстати сказать, математическая корректность — это далеко не самый ключевой момент. Взять, например, эвристический алгоритм. :)
                          0
                          > предложение скорее ориентировано на задачи, в которых нет 1 правильного ответа и множества неправильных
                          например?
                          > Взять, например, эвристический алгоритм
                          Какой? и в чем его математическая некорректность?
                            0
                            Ну, вообще эвристический алгоритм может генерировать такое решение, правильность которого для всех возможных случаев не доказана. Более того, алгоритм может быть формально неверен. В общем, для более полной информации рекомендую поискать в сети.
                              0
                              Приведите мне пример такого алгоритма. Формально неверного алгоритма, которым кто-то пользуется. Смешно, в самом деле. Есть вероятностные алгоритмы, но для них известен доверительный интервал. Чтобы формально неверный алгоритм…
                                0
                                Это не моя область специализации, так что рекомендую ознакомиться с соответствующей литературой по этому поводу. В предыдущем комментарии я не изобретала ничего нового, просто процитировала то, что говорят об этом источники.
                                  +3
                                  Это моя область специализации. И я говорю Вам — математически некорректные алгоритмы никем и никогда не используются. Есть эвристические (мат. корректные) алгоритмы, неверные в силу необоснованности используемых предположений, но дающие удовлетворительное решение узкого класса задач. Если даете подобные заявления — приводите ссылки на источники.
                            0
                            Тогда как Вы собираетесь обучать сеть?
                              0
                              Примерно так. Для сети задается коридор значений, ограниченный неверными решениями, который может быть самой изощренной формы. В зависимости от этого коридора (или, ежели так можно выразиться, он начальных условий) НС будет в соответствии с определенным алгоритмом генерировать решение. В связи с тем, что для разных задач коридор будет разным, решения НС (отмечу, что алгоритм будет тот же) будут отличаться.
                                +1
                                Чушь какая-то. Как Вы себе представляете «коридор изощренной формы». Вы обучаете сеть на конечном множестве примеров, там никакими формами даже не пахнет. Дальше. «НС в соответствии с определенным алгоритмом будет генерировать решение». НС — сеть распространяющегося воздействия, она реализует один алгоритм. Вы его не задаете. Вы задаете свободные параметры сети, все остальное определяется только ее структурой.
                                Я все еще жду примера задачи «в которых нет 1 правильного ответа и множества неправильных». Потому что совсем не понимаю направление Ваших мыслей.
                                  0
                                  Скажем так, под таким коридором я подразумеваю то, что области подобных неверных решений могут пересекаться, образовывая, грубо говоря, не прямой коридор, а угловатый. Кстати о «формах», я просто представляю эти самые значения в визуальной форме, ну как на картинках выше.
                                  Я и не говорю, что я задаю алгоритм. Именно что сеть реализует алгоритм. Они его и будет реализовать. Непосредственно учитель будет обучать, к алгоритму он никакого отношения иметь не будет. Алгоритм (который я вам на данном этапе пока точно предоставить не могу) реализуется какой-то структурой сети. Вот именно он и будет работать над генерированием решения. Повторюсь, что учитель ничего с алгоритмом делать не будет.
                                  На счет задач. Для себя я представляю задачи в совокупности значений «если… то ...», но вам, как я вижу, удобней в четких математических аналогиях. Постараюсь ответить в подобной форме. О, кстати, в качестве просто примера с не одним решением можно даже упомянуть выражения, которые решаются интервальной арифметикой. В подобных случаях решение не одно, а целый интервал.
                                    0
                                    На картинках выше представлена классическая задача линейного программирования.
                                    Представьте задачу хотя бы в форме «если… то...», меня это, поверьте, не смутит.
                                    Давайте еще вспомним вариационное исчисление, где ответов множество. Или уравнения с несколькими решениями. Пусть решений интервал. Неверных решений бесконечно много. Задайте сколько угодно неверных интервалов — это ни на йоту не приблизит Вас к верному решению.
                0
                Я правильно понял, что вы хотите тренировать нейронку чем-то типа «на вход дать мусор (неправильное значение) и на выход тоже мусор(неправильное значение)»? Или на выход как-раз таки правильное значение, а на вход — что-то что этому значению НЕ соответствует?
                  0
                  Как-то грубо вы выразились, «мусор». Я все-таки считаю, что правильней будет сказать именно «не правильное значение», то есть такое значение, которое не интересует нас в данный момент, скажем так. Так вот, на вход подаем неверное значение для данного случая, а на выход — соответствующее ему (но опять не неверное в данный момент) выходное. То есть эти две структуры не просто так не верны, а с каким-то определенным смыслом.
                    0
                    знаете, в чем-то это напоминает semisupervised и transductive методы
                  +4
                  У меня такая аналогия возникает: вы говорите человеку, чтобы он нарисовал прямую, при этом не объяснив, что такое эта самая прямая. Рисуй что угодно, а я буду говорить, прямая это или нет. По моему ничего не получится.
                    0
                    Ну как что угодно, что угодно было бы, если бы мы вообще ничего не сказали, а просто выдали бы лист бумаги. А тут задумывается нечто такое: пространство вариантов ограничивается, так что у НС меньше пространства для маневра и она заведомо не может выбрать те значения, которые находятся вне коридора «разрешенных» значений. Отмечу, что коридор этот может быть довольно сложной формы. Так вот, применяя определенную функцию активации (пока затрудняюсь сказать какую) или универсальный алгоритм (об этом в комментариях чуть выше), НС сама должна прийти к верному значению.
                    +5
                    Есть одна маленькая, но большая проблема. Обучаясь с учителем, ИНС обязана сойтись к правильному результату. Для каждого входа есть всего лишь один правильный результат, к которому мы последовательно приближаемся, например, распространяя ошибку назад. В то же время у ИНС, в общем случае, есть бесконечное множество неправильных результатов. Это множество может быть ограничено до определенного числа, если сеть работает с дискретными значениями, однако, число будет по-прежнему велико, поскольку маленькие нейросети почти никогда не нужны. Для нахождения хоть какого-то результата вам придется перебрать, в пределе, все пары (вход, выход), среди которых правильные и неправильные. Но откуда вам знать, какая пара правильная, а какая — нет? Вот пусть у нас будет бинарная нейросеть с двумя входами и двумя выходами. Я подаю (1, 0) и получаю (0, 1). Что это — правильный результат или нет?
                      0
                      Понятное дело, что в общем случае число вариантов бесконечно. Для того и вводятся ограничения по выбору, но эти самые ограничения не обязательно только пара X-Y, можно же оптом ограничить всё пространство ниже (и/или выше) представленной пары ограничений.
                      На примере бинарной матрицы. Допустим, у нас есть бинарная сеть с 2 входами и 2 выходами, значения соответствующие могут приниматься в соответствии с таблицей истинности. Мы говорим, что всё, что выше (1, 0) — неверно. Остается буквально один вариант (1, 1), который, теоретически, нам и нужен. Тут не затрагивается вопрос об алгоритме выбора или функции активации, конечно, но основную идею понять можно.
                        0
                        У вас, мягко говоря, странные рассуждения. Что значит «не просто так не верны, а с каким-то определенным смыслом», сказанное вами выше? Зачем нам искать пару (X, Y), где X — неправильный вход, а Y — неправильный выход? Ваша цель — обучить нейросеть, чтобы она решала конкретную задачу правильно, то есть, подстроить веса так, чтобы определенный вход обрабатывался с определенным алгоритмом и давал определенный выход. Вы этого не добьетесь, если не будете знать, что хотите получить. Вам в любом случае либо нужна пара-учитель, либо функция оценки «правильный ли результат». Вы поймите, что сравнивая неправильный результат с неправильным, вы никогда не узнаете, какой должен быть правильный. Вам нужно на что-то опираться.

                        Нейросеть может прийти от X к Y потенциально бесконечным числом способов, поскольку подстраивать веса можно многими комбинациями. Вот представьте себе число 4: его можно получить через входы и выходы (2, 2), а можно (1, 3), а также (0.5, 3.5) и так далее до бесконечности. Но зачем мы будем его искать, если нам нужно число 12?

                        Я интуитивно понимаю, что вы хотели сказать, но также интуитивно понимаю, что без математики все эти ваши рассуждения не имеют смысла и ошибочны.
                          0
                          Когда мы обучаем НС, мы именно что подстраиваем веса таким образом, чтобы определенный вход обрабатывался так, чтобы на выходе получать выходное значение, соответствующее системе, которую эта НС уловила из примеров. Я же говорю о том, чтобы НС сама принимала решение, основываясь на том, чего она сделать не может (то бишь основываясь на ограничениях, которые мы ей зададим). То бишь в таком случае НС не имитировала бы готовое решение, а генерировала свое.
                            +1
                            > То бишь в таком случае НС не имитировала бы готовое решение, а генерировала свое.

                            Позвольте, я расскажу, как работают ИНС.

                            Ставится задача, которую нужно решить с помощью ИНС. Исходя из задачи придумывается конфигурация сети: количество нейронов в слое, количество слоев, как слои между собой связаны. Все эти параметры придумываются интуитивно, исходя из положений задачи. Например, пусть мы неким образом хотим преобразовывать русские тексты одной и той же длины. Мы должны подумать, что, может быть, стоит сделать n нейронов в слое и (33 + 1 + количество пунктуационных знаков) слоя, где n — количество букв тексте. Мы придумываем, как закодировать буквы; положим, это числа ASCII-таблицы. Затем мы пытаемся понять, что у нас получится на выходах. Если это те же буквы, то мы должны задать активационную функцию, которая по сигналу NET из сумматора возвращает сигнал OUT, где OUT — ASCII-коды букв.

                            Далее мы пытаемся понять, как можно обучить нейросеть, чтобы она делала для нас необходимое преобразование. То есть, нам нужно получить определенные весовые коэффициенты, которые на данной конфигурации ИНС будут приводить к нужному результату. На первых порах мы решили присвоить весовым коэффициентам случайные величины, — именно так делается во многих случаях, когда разрабатывается новая ИНС. (Случаи с ИНС Хопфилда и Хэмминга — исключение. Там первоначальные весовые коэффициенты задаются исходя из начальных данных.) Теперь нам необходимо обучать нейросеть. На пустом месте обучать ее нельзя, — надо обязательно что-то подавать на вход. Пусть мы подаем некий текст X и видим результат первой итерации — текст Y, а именно, бессмысленное сочетание букв.

                            Внимание, два вопроса.
                            1. Решила ли нейросеть на случайных весовых коэффициентах нашу задачу?
                            2. И если не решила, как нужно изменить весовые коэффициенты, чтобы она все-таки решила?

                            Вы не сможете ответить на эти два вопроса, поскольку вы не знаете, как должен выглядеть Y-результат обработки X-текста. У вас нет пары-учителя (X, Y'). Вы не можете получить Delta — ошибку от разницы между Y' и Y, потому что Y' у вас нет. Соответственно, метод обратного распространения ошибки для обучения нейросети уже не подходит. Хорошо, пусть так. Вы все еще можете подстроить веса другими способами, — например, случайным перебором. Однако, вы не можете сделать вывод, что необходимо продолжить итерации, потому что у вас нет оценочной функции. Откуда вы знаете, что полученный вами Y — верный или неверный? Откуда вы знаете, что подав следующий текст U, при тех же весах вы получите нужный результат V? Ведь вам неизвестно, как должен выглядеть этот V.

                            > Когда мы обучаем НС, мы именно что подстраиваем веса таким образом, чтобы определенный вход обрабатывался так, чтобы на выходе получать выходное значение, соответствующее системе, которую эта НС уловила из примеров

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

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

                            Какие ограничения вы хотите задать? Такие: «Для некоторого текста X нельзя получать следующие выходы: Y1, Y2, Y3,...,Yn»? Во-первых, откуда вы знаете, что Y3 — это неверный результат, если у вас нет ни учителя с Y3, ни оценочной функции? Во-вторых, каким, по-вашему, будет n? Да даже для текста «Мама мыла раму» сколько вам придется задать неверных значений?
                            1 — «Мыла мама раму»
                            2 — «Раму мыла мама»
                            3 — «Лоончод шго щ „
                            4 — “с ЛДОА АОЖ ашп»

                            Легко увидеть, что для такого маленького задания этих результатов будет огромное количество, посчитайте сами с помощью комбинаторики. И кто поручится, что 2 — это неверный результат? Я повторяю еще раз: не зная, что правильно (не имея учителя или, на худой конец, оценочной функции), вы никогда не узнаете, что неправильно.

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

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

                              Конечно, мне не хватает точных математических выкладок, но ведь вначале нужна идея. Как говорится, для того, что сделать стол, его нужно сначала придумать.
                                0
                                Именно это я вам и советую — доказать свою идею математически, а не выносить ее на Хабр.

                                По поводу коридора… Задам вам простую задачку. Я загадал некоторое вещественное число. Ограничу вам поиск: оно больше нуля, но меньше 10. Даже пусть так, сузим «коридор»: больше нуля, но меньше пяти. Вы должны каким-то образом отгадать это число.

                                Могу заранее сказать, у вас ничего не получится. Потому что неважно какой у вас «коридор». Пространство вещественных чисел непрерывно, и их бесконечное множество на любом отрезке, даже на интервале (0, 5). То, что вы знаете граничные условия, никак вам не поможет найти верный результат, никак! Потому что вы не знаете, где находится верный результат. Вы не можете сузить коридор, не зная это число. Потому что любое число на интервале (0, 5) может оказаться тем, что я загадал. Я-то могу сузить коридор, потому что знаю верный результат, а вы — нет. Вам необходимо знать что-то еще: например, целое ли это число (и тогда вы можете перебрать все целые варианты 1, 2, 3, 4), делится ли оно без остатка на какое-то другое число, и так далее. Для каждого конкретного вещественного числа этих «наводок» может быть бесконечное множество, и вы не в состоянии ими воспользоваться, чтобы сузить ваш «коридор».

                                Ситуация с нейросетями, в общем случае, в точности та же самая.

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

                                P.S. Я загадал 0.007.
                                  –1
                                  Да, я абсолютно согласна, что на данном этапе рассуждений подобную задачу я решить не смогу. Потому что я просто не знаю каким образом нужно преобразовать сигнал, проще говоря, по какому именно алгоритму должен работать антинейрон.
                                  Более того, я не утверждаю, что во всем права. Ибо в моих размышлениях присутствовал и такой вариант: связка нейрон-антинейрон. Ну или наоборот антинейрон-нейрон. В таком тандеме нейрон будет работать по всеми любимому, математически корректному, программно зафиксированному алгоритму. Но тут область в которой сможет аппроксимировать значение нейрон будет ограничиваться со стороны антинейрона.
                                  Может быть я и не права, но, возможно, что-то в этой идее есть. Вы хотите от меня уже готовой теории, увы.
                                  Как сказал один мой хороший друг: «С одной стороны они конечно правы, „нечего писать о чем досконально не знаешь“, а с другой получается, что любой пост будет либо перепечаткой учебника, либо с „реально новой темой“ как бы не на хабр пойдет человек, а в патентный отдел. А уж потом это появится в учебниках и перепечатают на хабре».
                                  Раньше люди считали, что Земля плоская, и всякий, кто не поддерживал эту идею, отправлялся на казнь.
                                  Нет, я не утверждаю, что я права. Просто мне бы хотелось, чтоб люди задумались и над подобной возможностью.
                      –2
                      у меня такое ощущение, что вы «переизобрели» генетические алгоритмы.
                        0
                        Ну, я, конечно, не исключаю такой возможности, но все-таки генетический алгоритм — это, по большей части, метод эволюции, а тут как-то не особо…
                        +5
                        Вы хотите конкретики, а сами написали что-то совсем не конкретное.
                        При этом создается впечатление, что вы не особо знаете, как работают нейронные сети ибо:
                        Увы, с математикой у меня всегда было туго,

                        А ИИ Алгоритмы без математики не понять, к сожалению.

                        Замечу что нейронные сети в ИИ сейчас не особо актуальны, их изучили еще лет 20 назад, свою нишу они заняли, и теперь надо сказать их забросили, тк существуют более мощьные алгоритмы ИИ: SVM, Genetics ну и конечно Decision_tree . Последние кстати делают то что вы и предложили:

                        По хорошему говоря, НС должна работать с тремя видами данных:
                        правила (они же — верные данные, они же — факты);
                        ограничения (они же — неверные данные);
                        исключения (ведь из каждого правила есть исключения, да?)

                        тут на русском:
                        Дерево_принятия_решений

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

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

                          Дерево принятия решений для большого количества признаков становится громоздким и неуправляемым. Не говоря уже о том, что неизвестные комбинации признаков классифицироваться не будут.
                            0
                            А как же мысленный эксперимент?) Это очень распространенный способ экспериментирования среди теоретиков. Тем более, что логические структуры можно моделировать прямо в голове. На данном этапе рассчитывать на что большее, увы, я не могу, в связи с определенными пробелами в картине.
                              +2
                              Я считаю, что Хабр — не черновик, чтобы расписывать здесь ваши домыслы о том, как это работает. За октябрь-месяц это уже второй топик, не несущий в себе правды (первый был «про компиляторы»). Вам стоит сначала доказать правильность идеи самой себе, и если это вдруг удастся, можете поделиться с сообществом. В противном случае вы только внесете еще больше путаницы в головы тех, кто и так ничего не знает, а я полагаю, цели у вас вовсе — не навредить.
                                –2
                                Самой себе я уже, как вы выразились, доказала. Другой вопрос, что, возможно, мне не удается в полной мере выразить свою мысль. Тем более предложенная концепция, опять же возможно, натолкнет кого-то на соответствующее математическое решение. Так что черновиком я вышеизложенное никак не считаю. И даже вон, вы сетуете на отсутствие доказательства, но даже в той же математике много недоказанных теорем, которые лишь ждут, чтобы их кто-то доказал.
                                  0
                                  > Самой себе я уже, как вы выразились, доказала
                                  Это из разряда «Этого не может быть потому, что этого не может быть никогда». Если Вы убедили себя в истинности вашей идеи, это не делает ее автоматически действительно истинной.
                                  > даже в той же математике много недоказанных теорем, которые лишь ждут, чтобы их кто-то доказал
                                  В математике не строят рассуждения на недоказанных теоремах. Мне как математику такие высказывания слух режут.
                                    0
                                    > В математике не строят рассуждения на недоказанных теоремах.
                                    А как же теорема Ферма? Она вон сколько времени никак не доказывалась.
                                      0
                                      Вы о математике что-нибудь кроме названий знаете? Есть недоказанные теоремы в рамках любой теории. Но никто не строит рассуждений, не делает выводов и не утверждает об истинности идеи на основании того, что какая-то теорема может быть верна. Это в редких случаях, с ограничениями и оговорками, допустимо, если теория проверена на огромном количестве частных примеров. А Вы рассуждаете так: «Я думаю, что положение A верно. Исходя их этого сделаем выводы B1, B2 и B3, которые, очевидно, тоже верны. Давайте пока придумаем как сделать B1, B2 и B3 — а A как-нибудь само решится». И если уж мы заговорили о теореме Ферма, Ваши рассуждения как раз напомнили мне рассуждения толпы ферминистов, не имевших элементарного представления о базовых положениях теории чисел и заваливавщих ученых «доказательствами» теоремы. Ну не знаете Вы математики, это очевидно из Ваших комментариев. Так не лезьте в математические модели типа нейронных сетей.
                                        0
                                        Знаете, у вас очень грубая форма ведения диалога. Основываясь на вашем же высказывании, могу рекомендовать вам не делать подобных вещей впредь.
                                        То, что вы чего-то (по вашем же собственным соображениям) не видите, еще не значит, что этого нет. Я уже не говорю о правомерности того высказыванию, что только досконально разбирающиеся в предметной области могут что-то в ней делать. Даже просто из истории пример: Сэмюэль Морзе. Он вообще был художником. А у меня все-таки техническое образование.
                                        Из ваших же комментариев очевидно, что для вас есть лишь два мнения: ваше и неверное.
                                        Я не буду углубляться в психологический анализ вашего же поведения, скажу лишь вот что. Мы с вами вряд ли придем к консенсусу.
                                          0
                                          Морзе, если Вы знаете историю, годы провел в изучении математики и физики прежде чем построить телеграф. Он точно знал, что собирается делать, знал как и знал зачем. Он ставил задачи, а не выдвигал безосновательных утверждений. Поэтому его можно считать ученым. Вы взялись за узкую область, не поняв основ стали выдвигать дикие гипотезы, поэтому не льстите себе сравнением с этим человеком.
                              +2
                              Спорить не буду, а спрошу что есть лучше SVM?
                              А насчет деревьев — ну да большие, ну так и мощьности уже есть, зато всегда можно понять как ИИ пришел к конкретному решению (в отличие от SVM)
                              Для обработки комбинаций сущетвуют разные решения.

                              Впрочем был бы рад узнать про более мощные алгоритмы.

                              0
                              Ну с математикой у меня все-таки не настолько туго. Но готовое новое решение я сгенерировать не смогу, во всяком случае не сейчас.

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

                              А на счет дерева — не вполне согласна. Оно все-таки также работает со статистическими данными. Я же предлагаю обозначить коридор и по универсальному алгоритму (или определенной функцией активации) сгенерировать новое решение.
                                +1
                                "(или определенной функцией активации)"

                                Загляните в учебники по ИНС. Функция активации нужна для двух вещей:
                                1. Выходной сигнал с сумматора преобразует к нужному диапазону. Например, после сумматора у нас любые положительные числа, но они нам не нужны, — нам нужен 0 или 1.
                                2. Позволяет создавать многослойные нейросети, внося нелинейность. Если бы функции активации не было, слои не были бы нужны: они все «сливались» бы в один путем перемножения матриц коэффициентов (W1, W2...).

                                Функция активации ничего не генерирует, тем более решений.
                                  0
                                  Собственно, в этом вопросе вы правы, но данная фраза не просто так заключена в скобки. Вы посмотрите на то, что находится за этими самыми скобками — из коридора возможных значений по определенному алгоритму генерируется новое.
                                    0
                                    Откуда у вас возьмется этот коридор? Очевидно, что он должен быть построен вокруг правильного значения. Но вы не знаете, что является правильным или неправильным. У вас нет информации, чтобы строить ограничения. У вас есть только гадание на кофейной гуще.
                                      0
                                      Ну это как сказать. Ежели рассматривать на эмпирическом примере, попробуем проследить ход решения проблемы. Допустим, мне нужно добраться из пункта А в пункт Б. Как это сделать? Во-первых, я не могу летать (ограничение раз). Во-вторых, пешком я не могу идти более 6км/ч (ограничение два)… Ну и так далее. В данном случае ограничения берутся из так называемого «здравого смысла». Откуда подобные данные возьмутся у НС? Из обучения с учителем. Откуда у учителя? Из здравого смысла/физики/математики. Примером применения подобной идеи я привела прогнозирование из желаемого Y необходимый X. Во многих случаях человеку не под силу удержать в голове и точно сопоставить какие-то данные. Вот именно в таком случае такой подход будет подспорьем.
                                        0
                                        Вам понятие математического программирования знакомо? Как раз оптимизация в ограничениях. Для случаев, где присутствует определенного рода неопределенность, также есть соответствующий математический аппарат — теория вероятностей, теория возможностей, нечеткая логика и др. Вы предлагаете весь опыт эксперта выразить в конечном множестве примеров обучающей выборки НС? Причем так, что примеры будут давать информацию о том, чего делать нельзя? ИНС нельзя «скормить» условие «нельзя двигаться быстрее 6 км/ч». Можно дать пример (6 км/ч, нулевой отклик) и кучу аналогичных «ложных» примеров. Но это ничего не даст. Вы суп, например, готовить умеете? Представьте, Вас учат «нельзя класть одну ложку соли», «и две нельзя», «и пять», «и десять». Какой вывод можно сделать? Логически — никакой. Потому что если это котел супа для роты солдат, правильный ответ будет больше, чем максимальный из выборки. А если маленькую кастрюльку для себя — то правильный ответ меньше, чем в любом из этих ложных примеров. Или правильный ответ где-то посередине — шесть ложек. Никакой информации для аппроксимации. Ноль. Для бесконечного множества вариантов такой способ заведомо негоден — если, конечно, все варианты не являются верными. А для конечных множеств единственный выход — обучить (уж не знаю как) всем ложным примерам. Что эквивалентно обучению одному истинному. То есть снова ерунда — если известен верный ответ, не нужна сеть чтобы его искать.
                                          –1
                                          Вы упорно не хотите на минутку уйти от фиксированной, реализованной в том же матлабе, схемы работы, построения и использования НС. На вашем упоминании о супе, коридор: нельзя класть больше 3 ложек, нельзя класть меньше 1, даем условие целочисленного исчисления и что остается? Решение.
                                          Я не предлагаю открыть матлаб и начинать пичкать его единичными ограничениями, чтобы потом ждать у моря погоды. Я предлагаю используя принцип НС сделать нечто иное, с другим алгоритмом работы. Иными словами, для хода «от противного».
                                          Все эти примеры, да, простые, но лучше иллюстрируют принцип идеи.
                                            0
                                            > нельзя класть больше 3 ложек, нельзя класть меньше 1, даем условие целочисленного исчисления
                                            Девушка, это задача целочисленного программирования. Для ее решения нейронные сети нафиг не нужны.

                                            Вы упорно не хотите замечать очевидного. Если у Вас и так есть условия «больше 1» и «меньше 3» — Вам не нужна нейронная сеть для поиска решений. У меня складывается впечатление, что Вы элементарно не понимаете, что такое нейронная сеть и как она работает. Вы не сделаете НС с другим алгоритмом работы, НС — сама по себе в некотором смысле алгоритм. Можете предложить альтернативную архитектуру НС? Или неизвестный алгоритм ее обучения? Я весь внимание. Потому что пока я слышу только туманные высказывания, не имеющие никаких обоснований.

                                            То, что Вы называете коридором, а конкретно, интервал допустимых значений, определяется двумя параметрами — его левой и правой границей. Если размерность пространства больше — соответственно, границ больше. Но их должно быть фиксированное число. Тогда задача сводится к определению этих границ по заданному вектору воздействия. Задача, в лучшем случае, для обычной нейронной сети, обученной на выборке примеров (объект, левая граница, правая граница). А если у Вас заранее известны эти границы — тогда о чем вообще речь? Что определять сетью?

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

                                              У меня складывается впечатление, что за деревьями вы не видите леса.
                                              > Можете предложить альтернативную архитектуру НС? Или неизвестный алгоритм ее обучения?
                                              Именно это я и пытаюсь делать. Вы хотите от меня уже готовой теории, но увы, на данном этапе рассуждений привести вам выкладку математических формул я не могу. И Москва не сразу строилась.

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

                                              > Вы не формализовали задачу, не дали четких определений и претендуете на новизну и жизнеспособность идеи.
                                              Я не утверждаю, что Земля круглая, зачем вы так усиленно хотите сжечь за это на костре? Я выдвигаю идею. Возможно, она будет кому-то полезна и кто-то разработает то, чего вам так хочется увидеть. Возможно, это буду даже я. Вы хотите получить все и сразу. Рекомендую развивать терпеливость.
                                                +1
                                                Ваши рассуждения — откровенный бред. В нем нет ни грамма математики, логики или хотя бы элементарного здравого смысла.
                                                Вы думаете, что выдвинули идею?
                                                > Я снова повторяю, что все предложенные примеры очень простые эмпирические наблюдения
                                                Я не услышал ни одного примера задачи, где Ваша «идея» поможет ее решить.
                                                >… И Москва не сразу строилась
                                                Вы даже не удосужились дать постановку задачи.
                                                > Рекомендую развивать терпеливость
                                                Вам я рекомендую развивать логику и критичное отношение к себе. Если Вы публикуете что-то, то должны четко представлять себе то, что хотите сказать. У Вас должна быть хотя бы постановка задачи и хоть какое-то обоснование. Ничего этого в статье нет. И, как следует из обсуждения, в голове у Вас тоже ничего кроме бардака нет.
                                                Не хотел «трясти медалями», но нейронные сети — это одна из вещей, которыми вплотную я занимаюсь. Прикладная математика — моя профессия. И могу Вам совершенно точно сказать, то, что Вы говорите в статье и под ней — полная чушь с математической точки зрения. Если Вы этого не понимаете — Вам не место в технической профессии.
                                +2
                                Не подскажете, почему «экспансия» нейросетей остановилась? всегда интересовал этот вопрос, но ответ толком не нашел (да и, откровенно говоря, особо и не искал).
                                  +2
                                  Я не эксперт, но погуглив и включив здравый смысл, пришел к выводу, что по той же причине остановилась экспансия газовых фонарей — электрические удобней и практичнее.

                                  Ну а в гугле нашел такое:
                                  What is a disadvantage of an Artificial Neural Network?
                                  local minima
                                  generalization/overfitting
                                  hard to interpret

                                  и такое:
                                  Neural nets perform very well on difficult, non-linear domains, where it becomes more and more difficult to use Decision trees, or Rule induction systems, which cut the space of examples parallel to attribute axes. They also perform slightly better on noisy domains.

                                  One of disadvantages in using Neural nets for data mining, is a slow learning process, compared top for example Decision trees. This difference can very easily be several orders of magnitude (100-10000).

                                  Another disadvantage is that neural networks do not give explicit knowledge

                                  representation in the form of rules, or some other easily interpretable form. The model is implicit, hidden in the network structure and optimized weights, between the nodes.


                                  Вобщем стали заниматься более обещающими интсрументами.
                                    +1
                                    Спасибо за ответ.
                                      0
                                      Как это все уже изучено? Читая новости в этой области за последние несколько лет видно, что математики теперь следят за открытиями нейрофизиолгов и других групп ученых, занимающихся изучением поведения, мышления, сознания живых существ и пытаются строить новые матмодели.
                                      Пару ссылок по теме:
                                      habrahabr.ru/blogs/artificial_intelligence/101926/
                                      theoryandpractice.ru/videos/80-konstantin-anokhin-kody-mozga
                                      0
                                      А она не остановилась. Исследования ведутся. Сами сети успешно применяются в задачах управления, оптимизации, классификации, распознавания образов и других областях. Если вопрос, почему о них не так часто говорят как раньше, ответ прост — они сложны. Что можно было сказать о них на бытовом уровне уже сказали. Остальное — вотчина ученых и широкой общественности не интересно.
                                        0
                                        Я не утверждаю, что они совсем забыты. Безусловно, работы ведуться. Но за 5-6 лет я как-то не помню, что бы нейросети были успешно применены при решении новых(!) задач. В быту, как вы выразились, они все так же решают крайне узкий круг задач. Именно это я спрашивал выше.)
                                          0
                                          А какие новые задачи Вы припоминаете за последние 5-6 лет?
                                            0
                                            Новых задач, увы, я назвать не смогу, сказал для красного словца. Но, например, насколько мне известно, в распознавании образов сейчас приоритеты отнюдь не у нейросетей. Упомянутые выше деревья принятия решений пользуются ощутимо большей популярностью.
                                              0
                                              Распознавание образов — это очень широкий класс задач, там нет однозначно приоритетных методов и нейронные сети также применяются. Деревья решений предпочтительны ввиду того, что нейросети не универсальны, каждой задаче — своя нейронная сеть, построить которую задача нетривиальная. Это не значит, что они там вообще не применяются. В сущности, основная проблема в сложности адаптации аппарата НС к конкретной прикладной задаче.
                                                0
                                                А я и не говорю, что их не применяют. Я утверждаю, что они не столь популярны, как деревья или тот же SVM. Как раз по обозначенным вами причинам.)
                                                  +1
                                                  Популярность по отношению к технологии, по-моему, неудачный критерий. Нельзя же сказать, что линейные уравнения популярнее дифференциальных. Просто количество инженерных задач, решаемых ими с достаточной точностью больше. Также и с сетями.
                                        0
                                        Некоторые уже ответили на этот вопрос. Но позволю себе добавить уточнение. Да экспансия нейросетей существенно замедлилась в 2000х, но есть более свежие данные о том что нейросети возвращаются. Вот данные о количестве публикаций на тему нейросетей в 90-е:

                                        А вот более свежая статистика:

                                        Информация взята из поста Ярослава Булатова: yaroslavvb.blogspot.com/2011/04/neural-networks-making-come-back.html
                                        Кроме того, те кто записался на курсы Andrew Ng по Machine learning, на одной из последних лекций должны были слышать объяснение этого возродившегося интереса тем фактом, что нынешние вычислительные ресурсы (не в последнюю очередь CUDA) позволили применять нейросети на практике.
                                        Еще одна причина спада интереса, это отсутствие эффективных алгоритмов для обучения «глубоких» нейронных сетей (3 и больше слоев). Алгоритм обратного распространения сам по себе не годится для этой задачи. Это мнение ряда авторитетных исследователей в этой области (Geofrey Hinton, Yann LeCun, Yoshua Bengio)
                                      +2
                                      Ах, да удачи.
                                        0
                                        Большое спасибо!
                                        0
                                        Идея хорошая. Фактически, то, что вы называете «антинейроном», можно получить, тренируя нейрон на области (a+delta1,a+delta2) около исходного факта a, где delta1 задаёт радиус истинности факта, а delta2 — радиус… ну, допустим, важности, то есть пределы, в которых мы должны отличать этот факт от всяких других. Сгенерировав случайным образом достаточно много точек в указанной области, можно достичь нужного результата. Собственно, вопрос размеров delta1, delta2 и «достаточно много» как раз и стоит исследовать =)
                                          0
                                          Спасибо за комментарий! Он дал новую почву для размышлений.)
                                            0
                                            А в чем смысл, если известно a? Если фиксировать delta1 и delta2 при обучении на разных примерах — так они вообще не нужны. А если не фиксировать — то получится обычная нейронная сеть с тремя входами — a, delta1 и delta2. Но даже в этом, исходя из «Сгенерировав случайным образом достаточно много точек в указанной области» не имеет смысла. Если delta1 и delta2 не зависят от a — задача изначально бессмысленна. А если есть функциональная зависимость — тогда сеть работает как аппроксимация этой зависимости, выдавая delta1 и delta2 для каждого a на входе. То есть опять, обычная нейронная сеть.
                                            +3
                                            Минус за пост, плюс в карму за попытку. Статья и правда ни о чем, займитесь поплотнее теорией, мне кажется, вы не вполне прониклись самой сутью обучения нейронных сетей. Сети обучают на правильной выборке, чтобы она научилась по аналогии определять правильные варианты, не входящие в эту выборку. Ваш пример с линией тоже не вполне корректен — мы можем научить сеть определять, прямая на входе линия или нет, а предложить сгенерировать ее самой — неудачная задача для НС.
                                            Сам нейронные сети изучал уже давненько, в магистратуре, но это из того, что помню.
                                              0
                                              Просто мне не дает покоя тот факт, что, по сути, основная задача НС — аппроксимация решений. Все вышесказанное лишь попытка научить НС генерировать решения самостоятельно.

                                              И еще вопрос. Вы вот сказали, что это неудачная задача для НС, можно поподробней?
                                                0
                                                Да вы же сами ответили на свой вопрос) Нейронная сеть в основном используется для кластеризации значений, аппроксимаций, либо принятия решений. В любом случае, типичная задача для нейронной сети в том, чтобы выбрать правильное решение из множества доступных, а не сгенерировать его самой. Ну если вам так хочется заставить систему придумывать решения, прилепите к ней генератор случайных решений) В контекстве вашей задачки с линией — берем обученную сеть, умеющую с заданной точностью решать, прямая линия или нет и прикрепляем к ней генератор кривых. Пусть генератор выплевывает решения, а сеть выбирает из них прямые)
                                                  0
                                                  Конечно, как говорится, старого пса новым трюкам не обучишь, но мне представляется, что ежели несколько модифицировать подход, то можно решать и задачи, которые я приводила в пример. Скажем так, взять принцип нейронов и сделать с ними что-то другое, заточить под другие задачи. Собственно, об этом я и размышляю в статье.
                                                    0
                                                    Ну так вы бы сначала проработали имеющуюся теорию НС и смежные с ними науки до очень хорошего, глубокого понимания, а потом уже искали им новые применения. А то сейчас вы в лучшем случае изобретете велосипед, в худшем — дирижабль для плавания по воде.
                                              +2
                                              сори, но надо читать хоть немного теории, а потом писать!!!

                                              читайте Back Propagation системы обучения.
                                              Как говорил мой проф, на спец курсе но НС:
                                              — Есть мальчик Вася, которого вы хотите чему-то обучить. Если дал правильный ответ, выдайте ему конфету. Если ошибся, выдайте подзатыльник.

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

                                              Как уже правильно заметили, выше.
                                              Как только у вас будет нейронов больше одного, и сеть станет многослойной, все ваши выкладки рухнут.
                                                –2
                                                Зачем же сразу настолько негодовать? С теорией я, как вы выразились, хоть немного ознакомилась и у меня появились подобные размышления.
                                                Упоминание обратного распространения ошибки не совсем понятно. Ибо, грубо говоря, НС корректирует вес при неправильном решении. Это все хорошо, но здесь ключевым фактором является именно отклонение от эталона. Я тут говорю несколько о другом.
                                                Про сходимость обучения. Я и не утверждаю, что это будет линия. Просто на простом примере легче все представить. Объективно говоря, и изображенное мною пространство вариантов далеко не двумерное…
                                                  0
                                                  У вас в голове все смешано в одну кучу — сходимость обучения, распространение ошибки, отклонение от эталона… Нельзя с такими путанными знаниями что-либо рассказывать другим. Вы только навредите им.
                                                    +2
                                                    ну давайте разбирать по цитатам

                                                    • правила (они же — верные данные, они же — факты);
                                                    • ограничения (они же — неверные данные);
                                                    • исключения (ведь из каждого правила есть исключения, да?).


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

                                                    Что собственно должна делать нейросеть?
                                                    Должна вывести ту «функцию» которую мы не видим (не можем формализировать, описать).
                                                    То есть при подаче некоторого набора данных должен получаться набор определенных результатов. а что предлагаете вы?

                                                    Если эталонная выборка не дает нужного эффекта, попробуем прямо противоположное — будем обучать НС на ошибках! Таким образом, на вход гипотетической сети будем подавать неверное значение X, а на выход — соответствующее ему значение Y. И что же в таком случае получится? А получится то, что мы самым грубым образом ограничим пространство вариантов.

                                                    позвольте спросить а откуда известно что вот этот «неправильный» набор Х` приведет к этому неправильному набору Y`? Где зависимость которую вы хотите построить? к набору Y` может привести наборы Х`1, Х`2, Х`3,...., Х`n

                                                    Вы меняете местами множества входных данных, причем идете вместо уменьшения к увеличению пространства возможных вариантов. Ваша гипотеза не может вести к сходимости обучения. Ибо мощность множества «неправильных» примеров, больше мощности множества «правильных» (топология).
                                                  +3
                                                  Я бы Вам рекомендовал ознакомиться с лекциями Стэнфордского университета:
                                                  ИИ — www.ai-class.com/home/
                                                  Машинное обучение — www.ml-class.org/course/class/index
                                                  Получите отличную базу и подтянете необходимую математику (благо, рассказывают ОЧЕНЬ доступно, особенно машинное обучение). Согласен с оратором выше — начинание хорошее, но пост сырой.
                                                    0
                                                    Большое спасибо за рекомендацию! Обязательно изучу.
                                                    0
                                                    Очень надеюсь, что автор знает что такое backpropagation.
                                                      0
                                                      Смею успокоить, автор знает. К слову, несколько выше это уже упоминалось.
                                                        0
                                                        Ок, не заметил.
                                                        Мне кажется, что нейронная сеть по определению обучается и на отрицательных данных тоже, по крайней мере я в своей работе употреблял ее для классификации, где положительный пример 1, отрицательный 0, и т.п.
                                                          0
                                                          Нет таких понятий — «положительные» и «отрицательные» данные. Данные — это данные. Результат — это результат. Результатом может быть 1 или 0, но никакой дополнительной окраски (отрицание-неотрицание) он не несет. Это исключительно вопрос интерпретации.
                                                            0
                                                            Согласен!
                                                              +1
                                                              Есть такие понятия, есть ;)
                                                              особенно, если от 0/1 отказаться.

                                                              смотрим MLMVN
                                                                0
                                                                Хмм, интересно, спасибо. Однако, в работе это несколько иное, что-то специфичное. А мы, вроде, говорим про общий случай.
                                                                  0
                                                                  Это именно самый общий случай, какой только может быть ;)
                                                                  0
                                                                  ООО! а не знаете есть ли доступная реализация алгоритма в коде?
                                                                    0
                                                                      0
                                                                      Поздравляю ;)
                                                                      Реализация не настолько сложная насколько кажется.
                                                                      Теория стройная.
                                                                      MLMVN это обобщение многозначной логики.
                                                                        0
                                                                        хм, а вы случаем к самому Айзенбергу не имеет отношение?
                                                                          0
                                                                          ну судя по сайту img-service.com, имею ;)
                                                                          Многие вещи реализовывал в коде, для потверждения и развития теоретических выкладок.
                                                          0
                                                          Вообще, в идеи есть здравое зерно. Успешно нами применялась для обучения нейронных сетей в распознавании букв при сегментации, которая могла быть выполнена неточно. Так вот на вход подавались «не-буквы», которые представляли из себя неверно сегментированные изображения. На выходе требовалось определить, что это «не-буква». Также такое обучение очень важно в системах, где лучше сказать, что мы не знаем что это за символ, чем сказать что это символ А с хоть и маленькой вероятностью. Как правильно замечено выше, определяется возможный разброс входных параметров, которые фактически могут быть поданы на вход нейронной сети. Из них определяются невалидные примеры, которым сеть обучается отдельно.
                                                            0
                                                            Ваша нейросеть решала другую задачу — найти такую функцию, которая бы определяла, что есть «буква», а что — «не-буква». Пара («не-буква», true) является самым обычным учителем, поскольку нейросети неважно, что стоит за входом X — буква там или «не-буква». Это вопрос интерпретации и условности.
                                                              0
                                                              Собственно это сужает пространство верных решений. Таким образом, сеть все-таки учится на ошибках. Как я понял — это основная идея этой статьи.
                                                                0
                                                                Это не «сужает пространство верных решений», — пара («не-буква», true), равно как и пара («буква», false) — это и есть верное решение для вашего случая.

                                                                Когда говорят, что «нейросеть учится на ошибках», подразумевают механизм, при котором нам достоверно известно, что выход Y является неверным, и исходя из этого знания мы можем перестроить веса, скорректировав их на величину g(Y' — Y), где Y' — верное решение для данного X; Y — полученное неверное решение, а g — некая функция подстройки весов. Функцией может быть как распространение ошибки назад, так и иной способ подстройки. Например, усиление связей к нейронам, которые выдали меньше, чем ожидалось, и ослабление связей к нейронам, которые выдали больше.

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

                                                                    Ну как вам объяснить, что «некорректным» образец является лично для вас, а не для нейросети? Для нее образец («не-буква», true) корректен, поскольку она не работает с интерпретациями, она работает с чистыми данными. Если бы я подставил вместо знака препинания, который тоже «не-буква», какой-нибудь иероглив, — что изменилось бы? Ровным счетом ничего. Нейросеть учится классифицировать входной образ, и ей неважно, что вы его воспринимаете негативно по отношению к задаче.

                                                                    И хотя в данном случае это все — мелочи, и они никак не повлияют на верность работы вашей ИНС, я призываю не путать технические понятия и интерпретацию.
                                                                      0
                                                                      Если все сводить к концепции данных, которые не несут ровно никакой информации без семантического определения, не возможно решать практические задачи. Хотелось бы ссылку первоисточника увидеть. Вот в Хайкине такого определения не встречал.
                                                                        0
                                                                        Первоисточники ищите сами. На Рутрекере есть, по крайней мере, 2 Гб документов по ИИ.

                                                                        Я вам рекомендую как раз таки разделять понятия, и это касается всего: данные и интерпретация данных; алгоритм и данные; обучение ИНС и ошибка (как понятие неверности выходного значения ИНС). Поскольку это поможет вам абстрагироваться и рассуждать на ином уровне абстракции.
                                                                          0
                                                                          Я больше чем уверен, что внеконтекстного определения неверного входа не существует. Все определения справедливы только, если мы о них договорились. Вообще, считаю спор о понятиях крайне неблагодарной вещью. Как скажете, так и будет.
                                                              +1
                                                              То, о чем Вы говорите, суть единственный верный способ обучения НС с учителем. Обучающая выборка ДОЛЖНА содержать как «положительные», так и «отрицательные» примеры. Это описано в теории обучения нейронных сетей. Иначе нельзя избежать ошибок ложного срабатывания. Как правильно Вам сказали ниже, это не «ложные» примеры, это обычные примеры, где Вы даете объект и желаемый отклик, просто отклик нулевой. Вы здесь ничего не изобрели. А автор вообще вывернул все наизнанку, утверждая о возможности обучения только на «ложных» примерах.
                                                              +1
                                                              Между нейронами в мозгу есть тормозящие связи. Они как раз нужны для того, чтобы четче отделять неправильные ответы от правильных. Может быть, это и есть «правильная» парадигма для ваших антинейронов? В искусственной нейронной сети это могут быть связи с отрицательными весами между выходами выходного слоя и входами соседних нейронов выходного слоя.
                                                                0
                                                                Ну собственно, веса — они и в Африке веса, что положительные, что отрицательные. Положительные усиливают эффект, отрицательные снижают. В конечном итоге, функция активации разберется кто прав, кто виноват) Не вижу смысла как-то разделять виды весов по значениям в них.
                                                                  +1
                                                                  Тормозящие связи отличаются от обычных тем, что они ослабляют активацию соседних нейронов при активации своего нейрона. Например, в выходном слое два нейрона — «спам» и «не спам». Один активировался на 0.45, второй на 0.55. При повторных обучениях за счет торможения соотношение активации нейронов может стать 0.05 / 0.95
                                                                    0
                                                                    Это безусловно, совершенно согласен.
                                                                  0
                                                                  > Они как раз нужны для того, чтобы четче отделять неправильные ответы от правильных
                                                                  С чего Вы взяли?
                                                                  0
                                                                  Автор — девушка, браво! Статья понравилась благодаря оригинальной идеи, будет над чем подумать.
                                                                    +1
                                                                    Мудрость «человек учится на ошибках» означает, что единожды ошибившись, человек понимает, что нужно было сделать по-правильному, т.е. осознает правильный вариант относительно входных данных. В этом смысле и классически алгоритмы обучения нейросетей, можно сказать, «учатся на ошибках», т.к. на входные данные сеть отвечает иногда неверно (это и есть ее ошибки), и в этом случае проводят процедуру обучения — корректировки коэффициентов.

                                                                    Соответственно остальная концепция, которая основывалась на этом понятии, сомнительна… посмотрите повнимательнее теорию нейросетей: вкратце — это математический аппарат, решающий задачу локальной оптимизации в гипрпространстве (его размерность соответствует кол-ву входных параметров). Допустим, представим себе 1-мерное пространство (1 входной параметр), это значит что работа нейросети описывается y=f'(x) сводится к приближению к некоторой y=f(x), из которых у нас есть искомая функция, например y = 1 + 8x + 4x^2. При этом для каждого x есть 1 правильный вариант, и бесчисленное множество ошибочных. Какие именно «ошибочные варианты» предлагаете скармливать антинейрону, чтобы решить задачу локальной оптимизации |f'(x)-f(x)| -> min? :)
                                                                      +1
                                                                      Не очень понятна фраза: «единожды ошибившись, человек понимает, что нужно было сделать по-правильному, т.е. осознает правильный вариант относительно входных данных». Если человек ошибается, он скорее «отмечает» что этот вариант ошибочен. Такой процесс не обязательно ведет к нахождению правильного варианта.
                                                                      «На входные данные сеть отвечает иногда неверно (это и есть ее ошибки), и в этом случае проводят процедуру обучения — корректировки коэффициентов», — все-таки тут сеть основывается именно на отклонениях от эталона. А я предлагаю с этим самым эталоном дело не иметь.
                                                                      А по поводу примеров в вашем комментарии. Признаюсь честно, на подобный вопрос я не могу ответить. Да и все-таки в моем понимании, с точными задачами, где правильное решение только одно, уже успешно справляются традиционные средства вычислений. Все-таки я предполагала, что подобная антинейронная организация будет полезна там, где нельзя что-то сказать однозначно. Собственно, для тех идей и жизненных (даже бытовых) проблем, которые мы ежедневно решаем.
                                                                        0
                                                                        > С математической точки зрения, обучение нейронных сетей — это многопараметрическая задача нелинейной оптимизации.

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

                                                                        Думаю, вам стоит брать для этого другой аппарат, отличный от нейросетей. Например посмотрите на генетические алгоритмы. Там как раз можно «ошибки» отсеивать — плохих особей «прибивать». :)
                                                                      0
                                                                      На мой сугубо непрофессиональный взгляд:
                                                                      Если мы обучаем нейросеть (или её часть) ошибочным вариантам (методику и процесс опустим), то тут крайне важно какое соотношение правильных вариантов и неправильных.
                                                                      В принципе моя идея сводится к тому что нейросеть в себе тем или иным способом несёт данные, причём ограниченное количество. Это означает что на задачах, где область неправильных вариантов стремится к бесконечности, мы пытаемся запихнуть бесконечное количество данных в ограниченную память. В общем виде это невозможно. Однако это может иметь смысл для задач классификации, где сеть из антинейронов можно приделать как подавляющий выход для результата, тогда в ней можно накапливать информацию о геометрии незанятого пространства, что позволит снизить количество нейронов кодирующих области.
                                                                        0
                                                                        Чушь. Для задач классификации если вектор воздействия не относится ни к одному из распознаваемых классов, сигнал в сети просто затухает и вектор выхода нулевой. Ничего подавлять не надо, сеть должна быть устойчива к шуму входного сигнала.
                                                                          0
                                                                          хм, видимо не донёс мысль
                                                                          Я имел ввиду следующее: если у вас есть несколько областей, и незанятая область вокруг них.
                                                                          Классификатор разделит область так что любая точка будет принадлежать одной из областей. Если мы этого не хотим, то прийдётся обучать сеть что есть такая область, которая не область А,B,C итд.
                                                                          А предложенный подход позволяет просто построить маску для незанятой области, которую уже можно наложить на более широкий классификатор.
                                                                          Разница в том что мы не заносим данные о детальной геометрии в каждую из классифицируемых областей, это может упростить сеть.
                                                                            0
                                                                            Вашу мысль я понял. Видите ли, решить задачу «объект x не принадлежит областям A, B и C», формально записывается так:
                                                                            ∀ x: x ∉ A and x ∉ B and x ∉ C
                                                                            что эквивалентно следующему:
                                                                            ∀ x: not ( x ∈ A or x ∈ B or x ∈ C)
                                                                            Это — обычная логика, закон де Моргана. То есть задача эквивалентна классификации по классам A, B и C и отрицанию результата. Так что все вами написанное — чушь.
                                                                        0
                                                                        Почитайте про обучение с подкреплением (reinforcement learning).
                                                                          0
                                                                          Не, я про него знаю. Но в этом случае НС взаимодействует со средой.
                                                                          +1
                                                                          Я вроде понял, что вы хотели сказать этой статьей. Но как вам уже заметили, подача очень хромает. Прежде всего, если вы пишете о нейросетях на хабре (а хабр читают тысячи), вам стоит хорошо разбираться в предмете. Иначе, хомячки могут подумать, что это серьезная статья, а вы только запутаете их такими выкладками.

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

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

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

                                                                          Хотя! Мне самому нравится идея нейросетей, которые подобны человеческим. Другое дело, что масштабы будут другие, а формализация задачи всё равно необходима. Пример такой задачи: управление каким-то транспортом. Рецепторами могут быть все возможные данные об окружающей среде: от погоды и температуры воздуха до обозримой карты местности и других участниках движения. Выходы — системы управления транспортом, такие как: газ, тормоз, поворот. При этом, вспомогательные экспертные системы могут организовывать для нас информацию в нужном виде на входе и обрабатывать полученную информацию с выходов. Таким образом, у нас будет нейросеть с M входами, N выходами, и неким кол-вом нейронов между ними. Останется придумать только алгоритм обучения, при котором транспорт не захочет стоять на месте во избежание неправильных решений, что-то вроде инстинкта движения =)
                                                                          И, в любом случае, эта идея не нова, и нейросети в ней используются по прямому назначению, никаких откровений.
                                                                            0
                                                                            Большое спасибо за комментарий, вы поняли о чем я хотела сказать! :)
                                                                            Хотелось бы только добавить про то, что «вам придётся воспроизвести человека (андроида с идентичными человеческим органами)». Честно говоря, я полагаю, что для начала такие меры не потребуются. Характерным примером я бы привела известный мысленный эксперимент «мозг в колбе».
                                                                              0
                                                                              Речь не связана с инстинктами. И само понятие инстинкта Вы несколько неверно интерпретируете. Советую ознакомиться с трудами П.Я.Гальперина на эту тему.
                                                                                +1
                                                                                С удовольствием ознакомлюсь.

                                                                                Речь конечно же не связана с инстинктами напрямую. И возможно, я неверно интерпретирую понятие инстинкта.
                                                                                Но у человека есть инстинкт выживания, который развивает в мозге контур, отвечающий за выживание, который отвечает за то, чтобы человек стремился продлить свою жизнь — добывать еду, защищаться от хищников, и т.д. Аналогично, у человека есть «инстинкт социальной адаптации», назовём его так, т.е. желание общаться с ему подобными. Впервые оно проявляется при обучении ходьбе, преодолении физических препятствий. В то же время развивается и речь, как попытка сымитировать речь родителей. Ребёнок «ощупывает» инструмент — голосовые связки, и начинает им пользоваться.
                                                                                  0
                                                                                  То, что Вы называете инстинктами у человека, на самом деле инстинктами в животном смысле не являются. Инстинктом выживания Вы называете стремление продлить свою жизнь, но это не инстинкт, инстинкт абсолютен, через него преступить нельзя. Для людей это не так — возьмите любой пример героического самопожертвования. Также и с другими «инстинктами». Цитируя профессора Гальперина, человека как вид отличает именно отсутствия абсолютных инстинктов. Поэтому не смешивайте понятия. Социального инстинкта не существует. И речь не развивается как попытка сымитировать кого-либо, так развиваются голосовые сигналы в животном мире. Вы слишком упрощаете действительность.
                                                                                    0
                                                                                    Человек — в первую очередь животное. А я упрощаю не действительность, а свои объяснения. Потому что я дилетант в этом вопросе, и привожу своё «мнение пользователя», прочитав несколько доступных для дилетантов книг. Естесственно, если бы я занимался этим серьезно, я бы, наверное, использовал термины более аккуратно. Но, тем не менее, я считаю, у нас тут не высшее общество, чтобы разговаривать на языке, который будет непонятен остальным 99%, которые «не в теме», а просто зашли почитать и расширить свой кругозор. Всё же, у нас тут ИТ-ресурс, а не биологический =)

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

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

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

                                                                                        Неважно, где располагается инстинкт. Скажите мне, исследования и эксперименты отрицают его существование или он находится не там, где вы думаете я его «поместил»?

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

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

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

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

                                                                                                Ладно, раз вы не можете отвлечься от терминов и исследований Гальперина, я больше не смею вас задерживать. У меня, к сожалению, в данный момент нет времени его читать, чтобы поддержать эту дискуссию, которую и дискуссией-то сложно назвать.
                                                                                                  0
                                                                                                  Заведомо ложная теория приведет к заведомо ложному решению. Теорию, что Земля плоская, тоже можно применять в пределах собственной квартиры, но этого почему-то не делают. Кроме Гальперина я могу Вам привести работы Павлова, Кёлера и других исследователей. Не считаю допустимых игнорировать их выводы только потому, что они не очевидны.
                                                                                                    0
                                                                                                    Я ваши высказывания не игнорирую, просто они несут единственный посыл: «заткнитесь, так как вы неправы». Про инстинкт вы писали:
                                                                                                    >Именно так. Отрицают. В описанном Вами виде — начисто.
                                                                                                    Это проблема объяснения на пальцах.
                                                                                                    >Существование или отсутствие инстинктов у человека — один из старейших вопросов психологии. Исследования, проведенные в том числе профессором П.Я.Гальпериным, на труды которого я ссылаюсь, дают основания считать, что инстинкты у человека исчезли в следствие его эволюции как биологического вида.
                                                                                                    То есть, 100% уверенности нет?

                                                                                                    И ещё, отсюда же, получается, что существование инстинктов у животных не отрицается? Только у человека? В чём тогда вообще проблема? Мы же изначально говорили о нейронной сети, а не о том, чтобы полностью скопировать структуру человеческой нервной системы. Мы можем за основу взять других живых существ, необязательно даже с головным мозгом. Понимаете, о чём я?
                                                                                                      0
                                                                                                      100% уверенности нет никогда и ни в чем за пределами чистой математики. Я говорю о достаточных основаниях считать теорию истинной (принцип достаточного основания — один из основных критериев научного знания).
                                                                                                      Вы спрашиваете, отрицают ли исследования существование инстинктов у человека. Я отвечаю — да, отрицают. Экспериментальные данные отрицают именно те явления, о которых Вы говорите. За более подробным объяснением обратитесь к литературе. У животных инстинкты не отрицаются, ни в коем случае.
                                                                                                      > Человек до того, как начинает оперировать понятиями, проходит длительное обучение речи. Которая, в свою очередь, развивается благодаря инстинктам (опустим тут пока все другие сложности). Таким образом, вам нужно заложить в машину ещё инстинкт. Но это не главное, это (пусть) возможно. Понятийная структура — это сложившаяся нейросеть
                                                                                                      Ваши слова. То есть Вы как раз говорите о нейросети, построенной на основании подобия человеческой психики. Вы рассуждаете о том, как функционирует «человеческая нейросеть». Я указываю Вам на ошибки в Ваших рассуждениях и не более. А нервную деятельность низших животных вполне себе моделируют «обычные» ИНС, но там психическими явлениями даже не пахнет.
                                                                                                        0
                                                                                                        Мои слова, да. Всегда был уверен в том, что у человека тоже есть инстинкт. Сейчас я не уверен, и поэтому не писал бы про инстинкт. Это не было главным в моей мысли.
                                                                                                        Тем не менее, инстинкт у животных по вашим словам существует. Что мешает нам в нейросеть заложить аналог инстинкта у животных?
                                                                                                          0
                                                                                                          Ничего. Это, в сущности, существенная часть моей текущей работы :). Но тут есть принципиальные сложности, потому что инстинкт — не такое простое понятие, как о нем привыкли думать. Даже инстинкт низших животных сложно смоделировать. О высших животных и о человеке речи пока вообще не идет.
                                                                                                            0
                                                                                                            Что вам мешало вместо того, чтобы отрицать предложенную мной идею целиком, внести в неё правку, что нейросеть в таком случае будет похожа скорее на нервную систему животного, а не человека? Это риторический вопрос =) В общем, мы развели демагогию, а пришли практически к тому же, с чего начинали. За два часа я выяснил, что у человека в результате эволюции атрофировался инстинкт =) Что это понятие не такое простое, я и так понимаю. Вопрос в том, насколько детализировать это понятие. Примером, опять же, будет физика.

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

                                                                                                                На самом деле, мне и самому бы хотелось работать над нейросетями, но, к сожалению, это не согласуется с финансовыми и карьерными интересами =(
                                                                                                                  0
                                                                                                                  Я бы не назвал это имитацией. Это упрощенная, линейная модель явления. Имитацией гравитации можно считать искусственную придачу телу соответствующего ускорения, например. Хотя да, это вопрос терминологии.
                                                                                                                  А финансовые и карьерные интересы тут вещь условная. В областях, где реально возникает потребность в нейросетевых технологиях, крутятся немалые финансовые потоки :)
                                                                                                0
                                                                                                Сложность применительно к данному топику одна — полное несоответствие описанного базовым принципам рассматриваемой теории и научная безграмотность автора. И это серьезная сложность :). На любом более-менее серьезном научном обсуждении подобного первым вопросом был бы «Что за хрень?». Второго бы не было. Как говорилось выше в комментариях, хабр не черновик, его читают люди, в том числе и не специалисты, желающие овладеть каким-то предметом. Поэтому я и пытаюсь донести простую мысль — аргументируйте свои высказывания чтоб они не выглядели как досужие домыслы.
                                                                                                  0
                                                                                                  Именно поэтому я не пишу сюда статьи на эту тему.
                                                                                                    0
                                                                                                    И за это Вам спасибо. Но Вы пишете комментарии, а их тоже читают, и на их основе делают оценку статьи.
                                                                                            0
                                                                                            >Если нет — считайтесь с их мнением, прежде чем высказывать свое дилетантское.

                                                                                            Тогда, я бы сказал, тут никто не должен был высказываться, в этой статье. Даже насчёт вас я очень сомневаюсь.
                                                                                              0
                                                                                              Я могу аргументировать свою точку зрения и в случае необходимости сослаться на авторитетные источники (что, собственно, и делаю). Как и многие отмечавшиеся в комментариях по данной статье, замечания которых автор проигнорировала.
                                                                                                0
                                                                                                Окей, я тоже могу сослаться. Про непонятные для вас контуры пишет Роберт Антон Уилсон в книге Психология Эволюции
                                                                                                  0
                                                                                                  Ссылаться на по большей части обзорный и философско-размышленческий труд футуриста, который часто относят к научно-фантастическим произведениям, в противовес фундаментальным исследованиям в области психологической науки, мягко говоря, смешно.
                                                                                                    0
                                                                                                    Вот такой уж я, философско-размышленческий.
                                                                                  +1
                                                                                  Позволю себе немного конструктивной критики.
                                                                                  То, о чём вы написали, скорре соотносится с пролог-правилами, нежели с НС. Почитайте о логическом выводе :)
                                                                                  Вы написали, что «Увы, с математикой у меня всегда было туго, так что точно сказать...». Вся соль НС — это математика. Вы можете сколько угодно биться над тем, чтобы построить какую-нибудь структуру. Но если вы не придумаете математики, которая за ней стоит, эта структура будет обречена — это лишь вопрос времени. Т.к. необходимо будет доказать сначала практически(хотя бы), а потом аналитически, что НС может решать подобные задачи.
                                                                                  Современное применение НС очень скудно. Нет НС, скажем, полицейского, НС врача. Есть лишь экспертные системы — по большому счёту классификаторы. Ничего более сложного не могут создать, т.к. не могут доказать, какую структуру должна иметь НС, какой внутренней математикой обладать, чтобы решать эту сложную задачу на 95(хотя бы) %.
                                                                                  Ваша идея, к сожалению, не новость. В своей статье вы по большому счёту бились над тем, как закодировать примеры и антипримеры.
                                                                                  Вот вам решение. На вход подаётся вектор, первая часть которого является собственно (анти)примером. А вторая — говорит о том, пример или антипример это. Получаем выход, анализируем. Всё тривиально и просто :)
                                                                                    0
                                                                                    Про математику я имела в виду не вполне то, что я не могу сложить 2+2. Просто над реализацией математической структуры требуется поработать. В том плане, что с ходу представить аналитическую реализацию я не могу. То, что вся соль в НС в математике это да, я в курсе.

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

                                                                                    >Вот вам решение…
                                                                                    По сути, в данном случае вы предлагаете (ежели взять за пример обычное число) работать с точки зрения… я бы сказала, представления чисел в том же МК. Со старшим знаковым разрядом и всем таким прочим. Но, на мой взгляд, подобная структура слишком дискретна, то есть требует четкого разделения примеров от антипримеров. Мне бы все-таки хотелось, чтоб система работала с более, скажем так, аналоговыми данными.
                                                                                      0
                                                                                      95% это очень круто. Даже для лучших классификаторов такая вероятность сказочна. НС полицейского и НС врача действительно нет. Знаете почему? Это одна НС. Нет существенных неврологических отличий в работе мозга врача и полицейского, и физика-ядерщика, и рок-гитариста (существенных, т.е. присущих людям именно этой профессии или области деятельности). Мозг — это система возможностей, он не содержит готовых способов осуществлять какую-либо деятельность. И для математики тут пока работы нет — нет формальной постановки задачи. Никто не знает на каком уровне и каким образом низшие когнитивные функции превращаются в высшие.
                                                                                      > Вот вам решение…
                                                                                      Это и есть классическая модель обучения с учителем, о чем уже несколько раз упоминалось в комментариях :)
                                                                                        0
                                                                                        95% — Это не круто. Согласно статистике это та цифра, начиная с которой событие практически достоверно.

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

                                                                                        Это не одна и та же система — НС врача и НС полицейского. Т.к. я говорю не о мозге(который один, да), а о подмножестве мозга.

                                                                                        И то, о чём я писал(создание одного входного вектора), а затем наблюдение реакции на него, это далеко не обучение с учителем. Обучение с учителем, это когда высчитывается отклонение ВЫХОДНОГО вектора от заданного(по каждому из примеров и т.п.). Я написал об обучении без учителя. А если быть ещё более точным, про наложение данных. Когда вы видите картинку, где нарисовано дерево. А внизу надпись «дерево». Т.е. совмещение информации, которая имеет разную морфологию.
                                                                                          0
                                                                                          > Согласно статистике это та цифра, начиная с которой событие практически достоверно
                                                                                          Это где Вы такое прочли? Статистика ничего не может сказать о достоверности. Она может только дать приближенную оценку вероятности.

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

                                                                                          >… Т.е. совмещение информации, которая имеет разную морфологию
                                                                                          Это не имеет отношения к модели обучения. Это область применения.

                                                                                          Вообще, то о чем Вы говорите, а именно «На вход подаётся вектор, первая часть которого является собственно (анти)примером. А вторая — говорит о том, пример или антипример это. Получаем выход, анализируем» бессмысленно, это не обучение без учителя. Если входной вектор разделить на две части, причем одна содержит искомый отклик — зачем вообще нужна нейросеть? Достаточно просто выделить заданную часть вектора воздействия. Какой тогда выход Вы собираетесь анализировать? Обучение без учителем тоже подразумевает сравнение желаемого с полученным.
                                                                                            0
                                                                                            >Это где Вы такое прочли? Статистика ничего не может сказать о достоверности. Она может только дать приближенную оценку вероятности.

                                                                                            Вот здесь Это курс теории вероятностей и мат статистики. Не спорьте с человеком, робототехником по образованию :D

                                                                                            >Подмножество мозга — это нонсенс.
                                                                                            Извольте. Если воспринять могз, как одно множество, то ЛЮБОЕ множество связанных нейронов, МЕНЬШЕЕ или РАВНОЕ ( в том числе пустое) будет являться его подмножеством. Дискретная математика

                                                                                            >Это не имеет отношения к модели обучения. Это область применения.
                                                                                            Я лишь не говорил, что это МОДЕЛЬ ОБУЧЕНИЯ. :) Я лишь говорил, что всё, сказанное автором, можно зарефакторить до такого вектора.

                                                                                            И таки обучение с учителем отличается от обучения БЕЗ учителя только тем, что в первом есть целевой вектор(ы) выходов, разницу с которыми стремятся минимизировать.

                                                                                            Если к тому, что я описал, добавить целевые векторы выходов системы, получим обучение С учителем. А пока то, что я описал — обучение БЕЗ учителя. Матчасть.

                                                                                            ПЫ.СЫ.
                                                                                            Немножко покопайтесь в матчасти. Тогда мы будем говорить с вами на одном языке.
                                                                                              0
                                                                                              > Это курс теории вероятностей и мат статистики. Не спорьте с человеком, робототехником по образованию :D
                                                                                              И Вас совсем не смущают приписки приписки типа «Интерпретация доверительного интервала, основанная на интуиции». Это отнюдь не точная интерпретация. Достоверность ≠ вероятность.
                                                                                              > Если воспринять могз, как одно множество, то ЛЮБОЕ множество связанных нейронов, МЕНЬШЕЕ или РАВНОЕ ( в том числе пустое) будет являться его подмножеством
                                                                                              Мозг нельзя воспринимать как множество. Множество чего? Нейронов? И связей между ними? Тогда потрудитесь сформулировать универсум «множества мозга», иначе подобные заявления ложны. И даже сформулировав в подобной форме, Вы имеете право тогда говорить только о некотором абстрактном «мозге», потому что двух одинаковых нейросетей в природе нет. Следовательно, «Это не одна и та же система — НС врача и НС полицейского» не более правомерно, чем «Это не одна и та же система — НС врача 1 и НС врача 2». И даже не более правомерно, чем «то не одна и та же система — НС конкретного врача и НС его же через минуту». Так что это — одна нейросеть, организованная по одному принципу в соответствии с характеристиками человека как биологического вида.

                                                                                              Вы написали: «На вход подаётся вектор, первая часть которого является собственно (анти)примером. А вторая — говорит о том, пример или антипример это». Вы использовали слово «пример». Т.е. поданное на вход искусственно. Пример или антипример это — как раз и есть выделяемое свойство, т.е. обладает входной сигнал искомым свойством или не обладает. Т.е. часть вектора воздействия, сообщающая, пример это или антипример — это и есть образец, с которым сравнивается выходной сигнал. Это — обучение С УЧИТЕЛЕМ, НА ПРИМЕРАХ. Обучение без учителя предполагает самоизменение синаптических весов в ответ на возбуждаемые сигналы, производимое в соответствие с ЗАРАНЕЕ ОПРЕДЕЛЕННЫМИ ПРАВИЛАМИ. Это не то, о чем Вы писали: «Получаем выход, анализируем». Если Вы что-то анализируете и вносите корректировки, значит Вы — учитель.

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

                                                                                              P.S. Ссылаться на статьи в Википедии в подобных вопросах, особенно на статью с таким ужасным списком использованной литературы. За подобный ответ на вопрос по доверительным интервалам надо ставить два на третьей пересдаче.
                                                                                                0
                                                                                                Я спорить устал. Возьмите, да прочитайте книжку по НС. Хотя бы одну. Да от корки до корки. Тогда вы наконец поймёте, чем отличается обучение с учителем от обучения без учителя.
                                                                                                Это вопрос «на одном ли языке мы с вами говорим». Т.е. используем одну и ту же ли аксиоматику.

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

                                                                                                То, что вы являетесь математиком, ещё ничего не значит. Из меня тоже неплохой математик. Одно дело изучать чужие теоремы и выводы, другое дело — писать свои.

                                                                                                Прочитав книгу(аксиомы, теоремы) и зная\понимая как они выводятся, вы ещё не станете математиком. Не станете математиком даже после того, как получите кандидатскую\докторскую. Точно так же, как не стану и я.

                                                                                                Пример истинных математиков — Эйлер, Лаплас, Фурье, Гаусс. Ибо они что-то сделали, придумали.

                                                                                                А так — в вопросах математики мы с вами не сильно-то и отличаемся :)
                                                                                                Единственный вопрос — используем ли мы одну и ту же аксиоматику и одно и то же мы подразумеваем, скажем, под «обучением без\с учителем». Я исповедую общепринятую точку зрения на этот счёт(расхождение с выходом — обучение с учителем) Вы, просто другую. Отсюда и этот спор. Пока мы говорим на разных языках, он не имеет смысла.

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

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

                                                                                                  Это хорошо, что Вы знаете Эйлера, Лапласа, Фурье и Гаусса. А множество блестящих математиков — в том числе кандидатов и докторов — сделавших значительный вклад в развитие науки и техники, но не получивших столь широкую известность, Вы не знаете. Это не умаляет их достижений. И не дает никому, в том числе и Вам, права говорить, что они не математики. Делать выводы о том, что я делал, а чего не делал не имея никаких сведений говорит отнюдь не в пользу ваших умственных способностей и Вашего профессионализма.

                                                                                                  P.S.: «универсум человеческого мозга будет максимально возможный(существующий) мозг с нейронами, каждый из которых связан со всеми»
                                                                                                  Определять универсум множества с использованием терминов «максимально возможный» (+ «существующий»!), «каждый из которых связан со всеми» (вы определяете множество нейронов или связей? может, надо определиться?) — это просто отвратительное и совершенно нематематичное определение. Плюс к этому, перечитайте часть «даже сформулировав в подобной форме». Ввиду этого весьма спорно заявление «Из меня тоже неплохой математик».
                                                                                      +2
                                                                                      То, о чем вы написали, не лишено смысла. Это называется Energy based learning. Вы задаете некоторую функцию энергии и в процессе обучения формируете ее характер с помощью как позитивных так и негативных примеров.
                                                                                      Погуглив можно найти много статей и туториал на эту тему.
                                                                                        0
                                                                                        О, благодарю! Обязательно изучу материалы на эту тему.
                                                                                          0
                                                                                          Не путайте автора еще больше. Energy based learning применительно к нейронным сетям использует термин энергии ошибки, функции отклонения полученного отклика от желаемого. Автор предлагает вообще отказаться от эталона. Цитирую. «на вход гипотетической сети будем подавать неверное значение X, а на выход — соответствующее ему значение Y». То есть дать пример и сказать: «Фу-фу-фу так делать». Тут не может быть функции энергии, так как нет меры похожести сигналов «на правду».
                                                                                            +1
                                                                                            Александр, я думаю в комментариях к этой статье было уже достаточно критики и автор поняла, что напрямую применить предложенный подход ей не удастся и нужно более глубоко изучать эту область. Я предложил почитать статьи на тему EBL. Каким образом чтение статей может запутать автора?
                                                                                            P.S. Советую любую критику заканчивать конструктивными предложениями.
                                                                                              0
                                                                                              Объясню. Вы предлагаете автору, у которого не просто нет представления о предметной области, а оно почти полностью ложное, изучать один из применяемых в этой области методов, причем имеющий скорее прикладное, нежели фундаментальное значение. Более того, Вы тешите самолюбие автора, указывая на отдаленное сходство (причем ошибочное, о чем, собственно, комментарий выше) ее идеи с существующим методом. Это как предложить ребенку, научившемуся что-то бессмысленное малевать на листке, изучать методики абстракционизма потому что они отдаленно похожи на то, что он делает, вместо того чтобы учить вниманию и композиции. Автор последует Вашему совету, будет вырывать фразы из контекста лишь бы «подтвердить» свою идею, с которой так не хочет расставаться. Я это утверждаю потому что наблюдал подобное неоднократно. Это вредно.
                                                                                              Конструктивные предложения уже звучали выше. Нужно изучать фундамент теории если уж хочется ей заниматься, а не лазить по темным углам без фонарика.
                                                                                                +1
                                                                                                В ответ могу только сказать, что мой опыт несколько иной. Я имею в виду чтение лекций в университете. Есть много толковых студентов, которые горят желанием что-то делать, создавать, у них рождаются идеи. И пусть эти идеи и не выдерживают критики профессионала, и если поддержать эту энергию, позже они могут вылиться во что-то более реальное.
                                                                                                Я много видел примеров, когда преподаватели использовали студентов для доказательства собственной состоятельности. Тешили свое эго, путем жесткой критики непрофессионалов. Это начисто обрубает всякий интерес и мотивацию у людей.
                                                                                                Вас так пугает что автор будет доказывать свою идею? Пусть доказывает, для этого ему придется ее реализовать. А для этого в свою очередь изучить фундамент. Мы же не на защите диссертации.
                                                                                                Поймите — изучать фундамент ради изучения фундамента есть наискучнейшее занятие.
                                                                                                  0
                                                                                                  Меня пугает не одержимость автора своей идеей, а то, что он публикует ее на открытом и главное популярном ресурсе, куда заходят с целью чему-то научиться. Уже была недавно статья о компиляторах с такой же «идеей» как они работают. Но там у автора хватило мужества признать свою неправоту и закрыть статью.

                                                                                                  Есть идеи здравые, которые нужно развивать. Они могут родиться и у непрофессионалов и обычно не выдерживают критики в плане предлагаемой практической реализации и некоторых, скажем так, отклонений от принятого подхода — «слабости» основных предположений. В этом случае задача окружающих профессионалов — направить идею в нужное русло, дать толчок к развитию. Есть другие — абсолютно бредовые, сформированные на почве неверного представления о предмете. Такие «идеи» нужно душить на корню. Вы ведь не станете поощрять идею закручивания болтов с левой резьбой в гайки с правой? Не будите говорить «в этом есть рациональное зерно, потому что на острове N все гайки с правой»? А убивает это мотивацию или нет — смотря как подать. И иногда лучше действительно убить подобную мотивацию если человек просто не готов к изучению данного предмета.
                                                                                                  Скажите, какой прок в изучении EBL тому, кто не понимает основ машинного обучения? По-моему никакого — только вред. Зачем предлагать изучить метод Эйлера решения диф.ур-ов тому, кто дифференцировать не умеет? И я отнюдь не согласен с Вами, что изучение фундамента скучное занятие. Именно в фундаменте любой теории скрыты основные мысли и идеи, собственно приведшие к становлению этой теории как научного направления. Если нет фундаментальных знаний — нет цельной картины явления, непонятно откуда у чего ноги растут, остается только догадываться, предполагать, гадать на кофейной гуще. Это то, что смазывают картину и убивает интерес к предмету.

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

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