Актуальні теми
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.

Andrej Karpathy
Будівля @EurekaLabsAI. Раніше директор AI @ Tesla, команда засновників @ OpenAI, CS231n/PhD @ Stanford. Мені подобається тренувати великі глибокі нейронні мережі.
Мені подобається вираз «їжа для роздумів» як конкретна, загадкова когнітивна здатність, яку люди відчувають у людей, але для LLM немає еквіваленту.
Визначення: «щось, про що варто подумати або врахувати, наприклад, ментальна їжа, яка живить ваш розум ідеями, інсайтами чи питаннями, що потребують глибшого роздуму. Він використовується для тем, що кидають виклик вашій перспективі, пропонують нове розуміння або змушують задуматися над важливими питаннями, виступаючи як інтелектуальна стимуляція.»
Отже, у мові LLM це послідовність токенів, які, коли використовуються як підказка для ланцюжка думок, ці зразки винагороджуються за переглядом через якусь ще не відкриту вбудовану функцію винагороди. Одержимий тим, яку форму він набуває. Їжа для роздумів.
147
Швидкий новий допис: Автоматичне оцінювання десятирічної давності обговорень Hacker News із ретроспективою
Я взяв усю статтю 930 на головній сторінці Hacker News+обговорення грудня 2015 року і попросив GPT 5.1 Thinking API провести аналіз заднім числом, щоб визначити найбільш або найменш передбачливі коментарі. Це зайняло ~3 години на віб-код і ~1 годину і $60 на запуск. Ідея виникла після вчорашняї статті в HN, де Gemini 3 попросили галюцинувати на головній сторінці HN через десятиліття.
Більш загально:
1. Аналіз заднім числом завжди захоплював мене як спосіб тренувати модель прогнозування вперед, тому читати результати дуже цікаво, і
2. варто замислитися, як це виглядає, коли мегарозуми LLM майбутнього зможуть виконувати таку роботу значно дешевше, швидше і краще. Кожна інформація, яку ви внесете в інтернет, може (і, ймовірно, буде) ретельно перевіряти, якщо вона «безкоштовна». Звідси й мій попередній твіт деякий час тому — «будь чемним, майбутні LLM дивляться».
Вітаємо топ-10 акаунтів pcwalton, tptacek, paulmd, cstross, greglindahl, moxie, hannob, 0xcde4c3db, Manishearth і johncolanduoni - GPT 5.1 Thinking вважав ваші коментарі найпроникливішими та найпророчішими з усіх коментарів HN у грудні 2015 року.
Посилання:
- Набагато більше деталей у моєму блозі
- Репозиторій проєкту на GitHub, якщо хочете пограти
- Сторінки з фактичними результатами для вашого задоволення від читання

662
У сьогоднішньому епізоді програмного жаху...
У Python-документації random.seed() def. нам кажуть
"Якщо a — це інтелект, його використовують безпосередньо." [1]
Але якщо ви сідуєте з 3 або -3, ви отримуєте той самий об'єкт випадковості, що створює ті самі потоки. (Сьогодні дізнався). У Nanochat я використовував цей знак як (як мені здавалося) розумний спосіб отримати різні послідовності RNG для тренування/тестового спліту. Ось чому це жахлива помилка, бо тепер train=test.
Я знайшов код CPython, відповідальний у cpython/Modules/_randommodule.c [2], де на рядку 321 ми бачимо в коментарі:
"Цей алгоритм базується на тому, що номер не підписаний. Отже: якщо arg — це PyLong, використовуйте його абсолютне значення.» після чого слідує
n = PyNumber_Absolute(arg);
який явно викликає abs() на вашому сіді, щоб зробити його позитивним, відкидаючи біт знаку.
Але цей коментар насправді неправильний і вводить в оману. Під капотом Python викликає алгоритм Mersenne Twister MT19937, який у загальному випадку має стан бітів 19937 (ненульова). Python бере ваш int (або інші об'єкти) і «розподіляє» цю інформацію по цих бітах. У принципі, біт знаку міг би використовуватися для доповнення бітів стану. В алгоритмі немає нічого, що «покладається на непідписане число». Було прийнято рішення не включати знак (що, на мою думку, було помилкою). Одним із тривіальних прикладів могло б бути відображення n -> 2*abs(n) + int(n < 0).
Нарешті, це приводить нас до контракту випадкового Python, який також не повністю викладений у документації. Договір, який згадується, такий:
те саме насіння => та сама послідовність.
Але немає гарантії, що різні насінини дають різні послідовності. Отже, в принципі, Python не дає жодних гарантій, що, наприклад, seed(5) і seed(6) — це різні потоки випадковості. (Хоча це досить часто неявно припускається у багатьох застосуваннях.) Справді, ми бачимо, що seed(5) і seed(-5) — це ідентичні потоки. І, ймовірно, не варто використовувати їх для розділення поведінки тренувань/тестування в машинному навчанні. Один із найкумедніших програмуючих хорорів, з якими я нещодавно стикався. Побачимось у наступному епізоді.
[1]
[2]

495
Найкращі
Рейтинг
Вибране
