Сложно следить за околонаучными темами, и понимать, что ветка эволюции научного направления пошла не туда. Сейчас случился некий бум псевдонаучного взлета LLM, и я приведу в качестве современной статьи на хабре лишь одну, но это по прежнему массовое явление. Например, в статье компании Friflex за 2024 год История LLM-агентов: 10 ярких моментов по прежнему утверждается "На смену однослойному перцептрону Розэнблатта пришел многослойный. В статье Learning representations by back-propagating errors («Обучение представлений с помощью обратного распространения ошибки») Румельхарт и Хинтон показали, что многослойный перцептрон справляется с задачами, которые были не под силу его однослойному предшественнику. Например, с XOR. ". Совершенно излишне говорить, что это полное вранье, а авторы статьи даже не потрудились открыть эту статью, чтобы её прочитать. Это стало массовым явлением, и я его наблюдаю как минимум 20 лет, я когда то написал тут на хабре цикл статей объясняющих детали, лучше всего посмотреть эту Какова роль первого «случайного» слоя в перцептроне Розенблатта. Поэтому к этому возвращаться не будем. Я не знаю почему, может это массовая культура так влияет на людей, а порог вхождения в тематику ИИ слишком сложный? Не знаю, но не важно. Чтобы продемонстрировать скорость обучения перцептрона я написал несколько реализаций перцептрона Розенблатта и выложил их на гитхабе. А затем мы коснемся LLM.
Реализация перцептрона Розенблатта и почему я о нём вспомнил
Когда то давно я уже писал статью, поэтому ограничусь ссылкой на гитхаб реализации перцептрона Розенблатта, там код на C# и он прокомментирован. Было бы желательно, чтобы вы с ним ознакомились.
Там вы найдете:
1. Классическую версию перцептрона Розенблатта (NeironNetR)
2. Оптимизированную, сохраняющую активность среднего слоя для каждого примера, она быстрее обучается но требует больше памяти (NeironNetA)
3. Блочную версию, которая пытается обучить перцептрон показывая примеры блоками (NeironNetB)
А так же там есть реализация перцептрона на Cuda. Её я выполнял ориентируясь на советы DeepSeek, поэтому если кто-то поможет оптимизировать буду благодарен.
Тестовая задача классическая - это четность (обобщение XOR), сама по себе она не интересна и нам интересно лишь производительность, которое заставляет желать лучшего. Собственно, почему я стал скептиком нейросетей вообще.
И первое, что я пошел проверять, может действительно CUDA делает чудеса производительности. Но увы, нет. Я допускаю, как я уже написал, что мой код для CUDA плохой - тогда помогите сделать его лучше. Пока же я уверен, что он в лучшем случае раза ну в 2-3 может быть быстрее, это с запасом, потому сейчас с моим кодом CUDA медленнее CPU.
Причем тут LLM?
Хорошо, скажите вы, а причем тут вообще перцептрон Розенблатта, если LLM основаны на другом алгоритме backpropagation?
Важно подчеркнуть, что в этой статье мы не будем касаться задачи обобщения, когда то я об этом уже писал Понятие о структурной адаптации и введение в «чистое обобщение». А просто вернемся к вопросу, которым я задавался с начала статьи: почему ветка эволюции научного направления пошла не туда, а именно почему LLM основываются на backpropagation, а не на перцептроне Розенблатта. Я часто задаю этот провокационный вопрос, и почти никто не отвечает правильно.
А ответ простой: перцептрон Розенблатта не позволяет обучать больше одного слоя. Но тогда я спрашиваю: а что дает два, три и больше скрытых слоев? Опять же единственно правильный ответ был бы: каждый следующий слой дает иерархическое выделение признаков. Но это общие слова, а кто-то когда то показал это в научной статье? Подскажите если знаете, я лично таких статей не знаю. Вот и DeepSeek отмораживается от такого вопроса.
Но кто не знает, давайте вспомним [смешная фраза получилась, пожалуй оставлю], что именно для перцептрона Розенблатта существует теорема сходимости. Именно, он позволяет гарантированно найти решение для любой задачи, только если хватит вычислительных мощностей. Для backpropagation - это не так, наоборот маркетологи придумали смешной термин "переобучение сети", попробуете это объяснить? Backpropagation не гарантирует схождения. Тогда почему в основу LLM положен backpropagation ?
Не ужели для перцептрона Розенблатта нельзя придумать альтернативный метод обучения нескольким слоям, если вдруг оказалось бы, что backpropagation действительно осуществляет иерархическое выделение признаков?
В итоге, для backpropagation вообще сложно говорить о каких то метриках:
Он не обучается всему, что ему показываешь
LLM скачек "интеллекта" появляется только на огромных вычислительных мощностях, не меньше 1000 современных видео карт, по сути "вычислительный завод", т.е. отдельный человек уже не может проводить эксперименты
Как LLM создает иллюзию "понимания" вразумительно не может ответить ни один ученный, даже приближенный к разработчикам. И это не удивительно, т.к. нет даже ответа, как происходит иерархическое выделение признаков, и действительно ли оно происходит и что для этого нужно.
-
Обучающая выборка - это, якобы коммерческая тайна
Вам не кажется, что самое время задуматься об альтернативе того, что должно быть в основе LLM? А LLM становится скорее поп-культурой, чем научной областью, особенно с тем уровнем воспроизводимости и задаваемых ученными вопросами.
Комментарии (11)
kulity
28.08.2025 18:22Совершенно излишне говорить, что это полное вранье, а авторы статьи даже не потрудились открыть эту статью, чтобы её прочитать
А вы не потрудились ваши слова подкрепить даже хотя бы какой-нибудь статьей (не вашего авторства).
Все вокруг непонимающие идиоты, кроме, конечно же, вас. А в чем собственно ваше предложение/решение заключается?
Но тогда я спрашиваю: а что дает два, три и больше скрытых слоев?
Насколько я знаю и понимаю наличие больше 1 слоя позволяет аппроксимировать нелинейные функции. И на одном слое, например, не получится решить задачу классификации линейно неразделимых объектов.
tac Автор
28.08.2025 18:22перцептрон Розенблатта не позволяет обучать больше одного слоя. Но тогда я спрашиваю: а что дает два, три и больше скрытых слоев?
Срезали контекст и получилась ерунда. Что дает обучение двух, трех и больше скрытых слоев?
Насколько я знаю и понимаю наличие больше 1 слоя позволяет аппроксимировать нелинейные функции. И на одном слое, например, не получится решить задачу классификации линейно неразделимых объектов.
Понимаете вы не верно. Для этого и давал ссылки, которые вы не соизволили даже открыть. Не понравилось авторство? Так откройте оригинал. Окажется, что перцептрон Розенблатта никогда, просто никогда, не был однослойным. В самой его простейшей версии всегда была два слоя весов, один слой выбирался случайным образом, а второй обучался. Зачем обучать оба слоя или тем более три, четыре, или как сейчас в LLM 32 - никто никогда не ответил, опираясь на научные факты.
kulity
28.08.2025 18:22Это вполне нормальное явление, когда наука не поспевает за практикой. Поэтому отсутствие математически выверенного ответа не делает текущий подход каким-то плохим. Более того человечество видит объективные (для кого-то даже впечатляющие) результаты развития так вами ненавистных моделей с десятками слоев. Однако чем могут похвастаться модели с одним обучающим слоем? Уж вполне достаточно времени прошло, чтобы они могли раскрыть свой потенциал.
kuza2000
28.08.2025 18:22что именно для перцептрона Розенблатта существует теорема сходимости. Именно, он позволяет гарантированно найти решение для любой задачи, только если хватит вычислительных мощностей. Для backpropagation - это не так, наоборот маркетологи придумали смешной термин "переобучение сети", попробуете это объяснить?
Я вообще это не понимаю.
Перцептрон - это архитектура НС, backpropagation - это метод обучения. Почему вы сравнивает архитектуру с методом обучения? Тот же перцептрон можно обучать с помощью backpropagation.
А переобучение - это совсем другое. При переобучение сеть замечательно сходится. Просто она сходится не туда, куда нужно экспериментатору. И это не проблема алгоритма, просто сеть начинает запоминать примеры. Даже человек делает точно так же в похожих ситуациях.
Причем тут маркетологи, тоже не понимаю, этот термин рожден десятки лет назад.
kuza2000
28.08.2025 18:22Прочитал ваши статьи. Что могу сказать.
Перцептон Розенблата, это обычный перцептрон с одним скрытым слоем и зафиксированными весами первого слоя. Инициализируются случайно. backpropagation для его обучения использовать можно, такая архитектура реализуется в любой развитой библиотеке ML за 20 минут. Он будет делать то же самое, что и код из ваших статей - увеличивать "хорошие" связи, уменьшать "плохие". Да, можно тут же реализовать и оригинальный алгоритм, это тоже просто. И сравнить. Сильно сомневаюсь, что оригинальный алгоритм будет работать лучше.
У вас почему-то посыл, что backpropagation - это плохо, так как сходимость не доказана, а вот Перцептон Розенблата - это круто, сходимость доказана. На самом деле все обстоит по другому. backpropagation - это дальнейшее развитие того метода, который предложил Розенблат. Некст левел, обобщение с гораздо большими возможностями.
Перцептон Розенблата может переобучаться - только в путь. Возьмите, к примеру по несколько десятков цифр из набор данных MNIST, обучите на них перцептон Розенблатта и постройте кривые обучения. В качестве теста используйте оставшуюся часть набора. Средний слой должен быть достаточно большим, попробуйте начать с 500. Красивые кривые переобучения вас удивят :)
kipar
LLM хорошо ложаться на ГПУ, поэтому в них можно вбухать "1000 современных видеокарт" и получить подобие интеллекта.
Есть предположение, что любая другая архитектура которая будет также хорошо масштабироваться тоже получит хорошие результаты. Но в случае перцептрона теорема сходимости доказана только для классического случая (когда обучаем один слой), так что преимуществ у него не видно.
JBFW
Кто его знает...
Что-то вспомнились споры времён начала 90-х, какая технология победит, FrameRelay или TCP/IP ? FrameRelay широко известна и активно используется, а TCP/IP сложна и избыточна, значит не нужна никому...
E2a
У них там в Америках при наличии сетевых карт FrameRelay прямо внутри AS/400 и других железок типа банкоматов эти споры были актуальны. У нас же FR пришел как замена X.25, чтобы можно было и голос передавать, и как услуга взамен аренды прямых цифровых каналов у операторов (была, но не взлетела, теперь это L2VPN). Затем FR был заменён MPLS. TCP/IP при этом передавался или поверх X.25, или поверх инкапсуляций X.25 типа HDLC, или поверх FR, или поверх инкапсуляций PPP, SLIP, multilink PPP, а теперь он передаётся поверх MPLS.
Сам по себе IP не может передвигаться по проводам, он 3-го уровня модели OSI. FR - может, он 2-го уровня. Поэтому сравнивать что победит немного некорректно технически, но корректно в плане бизнеса и рынка. По факту MPLS победил и вытеснил FR, в том числе за счёт опережающего роста доступной пропускной способности. FR выше полосы E3 уже не изготавливался, он интересен для узких каналов. В 2003-м на FR по выделенным ТЧ каналам 24000-33600 запускали 2 VoFR голоса одновременно и данные, и оно успешно работало (на 21000 пролезал уже только один голос). C IP такого просто не получится, оверхед инкапсуляций не позволит даже при ровно том же сжатии голоса, нужно ещё компрессию заголовков пакетов наворачивать, и вот уже тогда может быть...
В мотороловских презентациях тех лет двигали фирменную технологию видео через ТЧ-модемы коммутируемого доступа, где через 33600 пропускали охранное Ч/Б телевидение 5 кадров в секунду, и оно работало, стоило правда дорого очень. Никакое IP конечно там не участвовало и близко.
JBFW
Ну просто в итоге сейчас "победил" TCP, прежде всего как универсальный транспорт. По физическим проводам, и не только проводам, он прекрасно передается через тот же PPP - тоже универсальный транспорт.
А тогда это было очень не очевидно и не оптимально
tac Автор
//теорема сходимости доказана только для классического случая (когда обучаем один слой)
и что это означает? решатся любое отображение input -> output ... а у backpropa и этого нет
Kreastr
Ну по большому счету гарантированая сходимость не нужна. Скорее она даже будет мешать, потому что гарантировать она будет минимум по обучающей выборке, а нужен совместный "минимум" по обучающей и контрольной для того чтобы обеспечииь хороший уровень обобщения.
Проблема LLM КМК все же не в бакпропе а в том, что есть в общем-то случайное деление на обучающую и контрольную выборки и от того как поделить + начальных значений бэкпропа очень сильно меняется результат. Поэтому просто глядя на сеть никто не может гарантировать как она работает. Но это только в отдельном кейсе без направленного изучения.
Что касается послойного выделения фич в целом, то есть работы которые косвенно, но убедительно эту гипотезу подтверждают. Вот тут, например, в цитируемых работах раздолье по этому поводу https://arxiv.org/html/2406.10868v2 Вообще ищут и нейроны (отдедбные и группы) по темам и по задачам. Да и в принципе процесс дистилляции изучают и оптимизируют потому что хочется эффективных узконаправленых специалистов получить. А дистиляция по-сути и есть выделение важных для темы нейронов и редукция остальных.