Чому нейромережі прекрасно справляються на складних задачах і «ламаються» на простих

💡 Усі статті, обговорення, новини про AI — в одному місці. Приєднуйтесь до AI спільноти!

Мені зустрілося дуже цікаве відео від Andrej Karpathy, де він пояснює із нуля як складені LLM-ки трансформери. Ми кажемо зараз про моделі на кшталт ChatGPT — але механізми наведені у дописі, справедливі для усіх сучасних моделей.

У автора взагалі дуже цікавий канал, рекомендую ознайомитись: в одному відео, він, наприклад, будував GPT з нуля, а в іншому — сам навчав GPT-2. Але досить реклами)

Ми охопимо дуже малу частину оригіналу, бо відео триває 3,5 години. Але рекомендую подивитись, хоча б фоном.

Чому дуже прості питання «ламають» передові моделі?

Відомий секрет, штучний інтелект насправді робить тільки дві речі: приймає токени та повертає токени. Просунуті LLM-ки просто роблять це дуже ловко — у цьому вся «магія» передових моделей.

Покроково, будь-який текст який ми вводимо у нейромережу перетворюється у токени:

Для метакоманд існують власні токени.

Ті ж самі токени генеруються у відповідь. І цей базовий механізм є причиною, чому нейромережа може не справлятися із тривіальними задачами:

  • вирахувати, що більше — 9.11 чи 9.9;
  • виконати просту вправу на «вимовляння»;
  • чи порахувати крапки у реченні:

Ці крапки перетворюються на доволі неочевидну комбінацію токенів для машини. Вона просто не розуміє що із ними робити і які токени повертати назад:

Підкреслене — то крапки у вигляді токенів. Тобто це комбінація, які у перекладі на «мову» токенів означають177 крапок.

Втім, натомість нейромережа чудово напише код, який порахує ці крапки за вас — що насправді вимагає значно глибшої експертизи:

Цей кейс насправді дуже яскравий приклад, наскільки різне «мислення» у людини і машини. Що тривіальне для нас, для нейромережі складе — і навпаки. Модель у прикладі — це ChatGPT-4o, тобто це не якась застаріла ітерація, це флагман сучасного ШІ.

Чому ж їй так складно обробити саме цю комбінацію токенів? Точно ніхто не скаже, але прийнята версія:

Бо модель цього не навчили

Нейромережу не вчили рахувати крапки у реченні — вона знає аналіз творів певного поета, чи основи квантової механіки, чи інші, значно складніші речі. Це буквально «зашито» у її параметри. Вона це пам’ятає.

Додатково: Деякі сторінки із Вікіпедії моделі відтворюють із фотографічною точністю, бо нейромережі на них вчилися по декілька циклів.

Але, коли нейромережа отримує токени на незнайому тему, вона «не знає», що повернути. Згадуємо: для моделі усе є токенами, воно просто їх приймає та повертає, нічого більше. І через своє «незнання» вона галюцинує, і повертає неправильні токени.

Було ціле розслідування на тему: чому моделі вважають, що 9.11 > 9.9. Проблема виявилась у тому, що моделі вчилися на бібліографічних документах, а там така логіка, що 9.11 таки більше ніж 9.9. І це дуже заплутує нейромережу.

Це підводить до іншого цікавого феномена: моделі погано відповідають короткими реченнями. Але причину розповімо наступного разу, бо там також все не так тривіально: треба пояснювати, як саме нейромережа генерує відповіді.

Наостанок, якщо бажаєте, є окремий топік, де можна розповісти: чого ви досягли з AI? Там ділимося кейсами — цікавими, складними, смішними.

👍ПодобаєтьсяСподобалось3
До обраногоВ обраному1
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Нехай тоді модель, у випадку своєї першої невірної відповіді далі завжди пише код на пітоні, виконує його у внутрішньому інтерпретаторі десь глибоко у собі і видає відповідь вже більш точну, обгрунтовану для замовника оцим новоствореним та виконаним у сендбокс кодом на пітоні.

Модель у прикладі — це ChatGPT-4o, тобто це не якась застаріла ітерація, це флагман сучасного ШІ.

openai o1, o3-mini, o3-mini-high теж не справилися
в мене було 89 крапок
```
How many dots are below?
.........................................................................................
```
але цікаво було глянути на їх reasoning — «I’ll group the periods by tens, making it easier to track.» :)

пару раз було, що коли потрібно було вирішити питання для роботи ’як зробити таку-то штуку’, у випадку, якщо це не можливо, замість того, щоб вказати що це не можливо, модель звідкись генерує абсолютно вигадане рішення, з неіснуючими конструкціями чи функціями чи методами, яке відповідно ніколи не працюватиме

і лише коли уточнити, але ж такого нема в документації, тоді вже буде відповідь, що це неможливо, чому одразу про це не написати — хз

по факту — ничему нельзя верить, все надо перепроверять
Це буквально «зашито» у її параметри. Вона це пам’ятає.

по факту, это тоже огромная проблема и работает далеко не идеально

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

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

як і всьому що тобі кажуть, як і гуглу, як і книгам

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

потому что у фактического по своей сути материала есть источники из которых обычно берут такого рода информацию
и ошибка в такого рода данных стремится к нулю
нет разночтений по вопросу атомной массы серебра или сколько тактов занимает инструкция mov ax, bx в процессоре 8080

власне як і у випадку з АІ, який дуже рідко видає дічь на фактичну чи статистичну інформацію

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

хіба що якщо дегенеративний оператор, у нормальних людей постоянно норм пише і інколи дічь, а вот у дегенаративних — чомусь навпки )

який дуже рідко видає дічь на фактичну чи статистичну інформацію

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

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

много и ошибок. В справочниках, учебниках, энциклопедиях, словарях

а ты можешь ошибаться на этот счёт? 🤔

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

Підписатись на коментарі