Forwarded from Data Secrets
Лаборатория Goodfire предложила принципиально новый подход к интерпретации нейросетей. Разбираемся 👇
Как вам уже известно, нейросети и, в частности, LLM – это большие черные ящики. Аппарат их обучения понятный, но мы не знаем, как «думают» уже обученные модели, как они принимают решения, почему действуют так или иначе.
Так вот, все существующие методы интерпретации в основном опираются на активации, то есть на численные значения, которые принимают нейроны на инференсе.
В Goodfire же предложили опираться на параметры – то есть на сами веса модели, которые мы обучаем. Это похоже на попытку восстановить программу через обратное проектирование её исходного кода вместо наблюдения за её поведением на точечных тестах.
Предложенный метод Stochastic Parameter Decomposition (SPD) работает так:
➖ Каждая матрица весов расладываются на матрицу ранга 1, которая представляется в виде произведения двух векторов. Это называется субкомпонента.
➖ Для каждой субкомпоненты создается функция, предсказывающая её каузальную важность. Это, грубо говоря, степень, до которой её можно "обрубить" (аблатировать) без изменения выходов модели.
➖ В начале эта функция даёт примерные значения важности для каждой субкомпоненты. На их основе субкомпоненты случайным образом маскируются, после чего модель делает предсказание, и оно сравнивается с оригинальным. Если отличается сильно – значит, значения важности были далеки от правильных. Используя ошибки, делаем шаг обучения, и начинаем с начала.
В итоге имеем набор простых субкомпонент и функцию важности, которые вместе показывают, какие параметры реально используются моделью для того или иного промпта. А это в свою очередь позволяет разложить работу сети на интерпретируемые механизмы и понять, как она принимает решения.
Интересно, что на игрушечных примерах SPD действительно очень точно восстанавливает процесс "мышления", то есть субкомпоненты совпадают с истинными параметрами, отвечающими за конкретные функции. Возможно, у подхода большое будущее.
Статью читаем здесь. А вот тут, кстати, какой-то энтузиаст уже воспроизвел прототип SPD, так что можно поиграться.
Как вам уже известно, нейросети и, в частности, LLM – это большие черные ящики. Аппарат их обучения понятный, но мы не знаем, как «думают» уже обученные модели, как они принимают решения, почему действуют так или иначе.
Так вот, все существующие методы интерпретации в основном опираются на активации, то есть на численные значения, которые принимают нейроны на инференсе.
В Goodfire же предложили опираться на параметры – то есть на сами веса модели, которые мы обучаем. Это похоже на попытку восстановить программу через обратное проектирование её исходного кода вместо наблюдения за её поведением на точечных тестах.
Предложенный метод Stochastic Parameter Decomposition (SPD) работает так:
В итоге имеем набор простых субкомпонент и функцию важности, которые вместе показывают, какие параметры реально используются моделью для того или иного промпта. А это в свою очередь позволяет разложить работу сети на интерпретируемые механизмы и понять, как она принимает решения.
Интересно, что на игрушечных примерах SPD действительно очень точно восстанавливает процесс "мышления", то есть субкомпоненты совпадают с истинными параметрами, отвечающими за конкретные функции. Возможно, у подхода большое будущее.
Статью читаем здесь. А вот тут, кстати, какой-то энтузиаст уже воспроизвел прототип SPD, так что можно поиграться.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from tazlog (Винсент)
В последнее время меня немного заинтересовала та сторона: Guix! С тех пор когда я начал пользоваться Nix'ом уже знал про него, и, конечно, на Lisp уже давно пишу. Почему бы не исследовать его подробно?
Значит я решил поставить Guix System (это их аналог NixOS) на одном ноуте, чтобы посмотреть, как там у них вообще дела.
У меня до этого было что-то похожее на ментальную модель - "Guix - это Nix с Lisp'ом". На самом деле это не так. Да,
Первый день когда попробовал я написал блогпост (на английском) о сравнении с Nix'ом, может быть, кому-нибудь из вас это будет интересно: https://tazj.in/blog/trying-guix
Вообще-то, что-то в нём есть. Продолжаю пробовать, хотя я пока не справился даже свой относительно простой сетап для десктопа полностью дублировать на Guix. Скорее всего, нужно будет ещё постов написать)
PS: У Guix'а, в отличие от Nix, нету нормальных кэшей с CDN. У них CI занимаются два сервера в Европе: Один из них полностью перегружен и отвечает только 500'ками, другой работает, но медленно. Я поэтому запустил российское (и по идее не только) зеркало для Guix: https://mirror.yandex.ru/mirrors/guix/
Значит я решил поставить Guix System (это их аналог NixOS) на одном ноуте, чтобы посмотреть, как там у них вообще дела.
У меня до этого было что-то похожее на ментальную модель - "Guix - это Nix с Lisp'ом". На самом деле это не так. Да,
guix-daemon - это просто nix-daemon который форкнули давно, но буквально всё остальное отличается. Они строили параллельную экосистему на Scheme.Первый день когда попробовал я написал блогпост (на английском) о сравнении с Nix'ом, может быть, кому-нибудь из вас это будет интересно: https://tazj.in/blog/trying-guix
Вообще-то, что-то в нём есть. Продолжаю пробовать, хотя я пока не справился даже свой относительно простой сетап для десктопа полностью дублировать на Guix. Скорее всего, нужно будет ещё постов написать)
PS: У Guix'а, в отличие от Nix, нету нормальных кэшей с CDN. У них CI занимаются два сервера в Европе: Один из них полностью перегружен и отвечает только 500'ками, другой работает, но медленно. Я поэтому запустил российское (и по идее не только) зеркало для Guix: https://mirror.yandex.ru/mirrors/guix/
Forwarded from ❆ (Artsiom K)
Я аутист, мне нравится ковыряться в Емаксе
Неоднократно видел подобное заявление и хочется, раздвинув границы познания человека, ответить ему на это — попробуй FreeCAD.
FreeCAD это трехмерная параметрическая система автоматизированного проектирования и на первый взгляд может быть непонятно как CAD может быть похож на тестовой редактор.
Но я всё же хочу по пунктам показать несколько схожих качеств, которые позволили мне отнести данный САПР к загончикам для аутистов:
0. Открытый исходный код.
Достаточно очевидный пункт, без которого не обойтись.
1. Верстаки.
Если у Емакса есть major-modes для редактирования разных форматов файлов, то в случае с FreeCAD существуют аналогичное разделение на верстаки (workbenches), когда в каждом верстаке осуществляется тот или иной вид работы. Например в верстаке TechDraw оформляется конструкторская документация, а в верстаке FEM исследования методом конечных элементов.
Говорят, что эта UX метафора с верстаками взята из CATIA.
2. Возможность одну и ту же вещь сделать несколькими разными способами.
По моему это как раз таки и показывает высокий уровень возможностей той или иной программы.
В случае FreeCAD есть официальный туториал, в котором одну и ту же деталь делают в трёх верстаках.
https://wiki.freecad.org/Tutorials#Modeling_parts
3. Practical software freedom. Возможность написать свой верстак.
FreeCAD не только состоит из встроенных в него верстаков, но и позволяет скачивать дополнительные из менеджеров аддонов и писать свои на Python и C++.
https://wiki.freecad.org/Workbench_creation/en
Почти как с модами в Емакс.
4. Интегрированность разных программ.
Если присмотреться к Емаксу, то можно заметить, что он в полне по юниксовому вызывает несколько программ, которые does one thing and does it well. Из примеров: ispell, который дёргает бинарник hunspell и функция smtp-mail-send-it, которая для отправки письма вызывает бинарник под названием
sendmail. У меня в openSUSE этот бинарник берется из postfix, в OpenBSD из собственного OpenSMTPD.Во FreeCAD это тоже заметно. Верстак FEM например использует для создания сетки конечных элементов GMSH, которую можно запускать как отдельную программу.
Ещё как пример — существование OpenSCAD и как отдельной программы, и как верстака во FreeCAD, требующего наличия этой программы.
https://wiki.freecad.org/OpenSCAD_Workbench/en
Это пожалуй все пункты, которые мне в голову пришли после нескольких минут раздумий на тему. Чем можно подытожить этого текст ? Попробуйте FreeCAD, если до этого вам нравилось копаться в емакс? Наоборот, попробуйте один из самых мощных текстовых редакторов, если смогли освоить FreeCAD? Совершенно разные вещи, могут быть сравнимыми между собой ? Да, пожалуй это. По крайней мере в моем восприятии реальности это выглядит так.
Да, и кстати, называть людей аутистами, как в этом посте, и как это принято на форчонге, мне не так уж нравится. Но это была почти дословная цитата двух несвязанных между собой людей.
Forwarded from GitHub Community
Raspirus — ваш лёгкий сканер вредоносного ПО на основе правил.
Изначально разработанный для сканирования подключённых USB-накопителей с помощью Raspberry Pi, Raspirus превратился в универсальный инструмент, способный сканировать локальные файлы и папки.
Среди его отличительных особенностей:
▫️Комплексное сканирование файлов: Raspirus может эффективно сканировать сжатые файлы, гарантируя, что ни одна угроза не останется незамеченной.
▫️Приоритет конфиденциальности: Raspirus обеспечивает конфиденциальность и безопасность вашей личной информации.
▫️Кроссплатформенное удобство: пользуйтесь преимуществами защиты Raspirus в различных операционных системах.
🐱 GitHub
Изначально разработанный для сканирования подключённых USB-накопителей с помощью Raspberry Pi, Raspirus превратился в универсальный инструмент, способный сканировать локальные файлы и папки.
Среди его отличительных особенностей:
▫️Комплексное сканирование файлов: Raspirus может эффективно сканировать сжатые файлы, гарантируя, что ни одна угроза не останется незамеченной.
▫️Приоритет конфиденциальности: Raspirus обеспечивает конфиденциальность и безопасность вашей личной информации.
▫️Кроссплатформенное удобство: пользуйтесь преимуществами защиты Raspirus в различных операционных системах.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Neural Shit
🎙 Уже месяц кайфую от VoiceHotKey — лучший голосовой ввод, что я пробовал!
🔑 Как работает:
Нажал горячую клавишу — наговорил — нажал ещё раз — текст сам вставился куда нужно.
🎮 Гибкая настройка:
Можно выбрать любую клавишу — хоть правый Ctrl, ⌥ Option или даже кнопку мышки.
(Я использую MX Master 3S — у неё как раз несколько свободных кнопок!)
💻 Поддерживает все платформы:
🖥 Mac / Windows
📱 iOS / Android
🧠 Дополнительные возможности:
✍️ Автоматически улучшает текст
🌍 Переводит на любой язык
😎 Вставляет эмодзи по голосу
💸 Месяц бесплатно, потом — от 2 USD/мес
🛟 Поддержка — быстрая по любым мелочам в Telegram: @voicekey
📌 Работает в любом приложении — все посты и задачи для vibe-кодинга теперь голосом пишу.
И этот пост тоже полностью надиктован через VoiceHotKey.
👉 https://ru.voicehotkey.com — поставьте, не пожалеете!
🔑 Как работает:
Нажал горячую клавишу — наговорил — нажал ещё раз — текст сам вставился куда нужно.
🎮 Гибкая настройка:
Можно выбрать любую клавишу — хоть правый Ctrl, ⌥ Option или даже кнопку мышки.
(Я использую MX Master 3S — у неё как раз несколько свободных кнопок!)
💻 Поддерживает все платформы:
🖥 Mac / Windows
📱 iOS / Android
🧠 Дополнительные возможности:
✍️ Автоматически улучшает текст
🌍 Переводит на любой язык
😎 Вставляет эмодзи по голосу
💸 Месяц бесплатно, потом — от 2 USD/мес
🛟 Поддержка — быстрая по любым мелочам в Telegram: @voicekey
📌 Работает в любом приложении — все посты и задачи для vibe-кодинга теперь голосом пишу.
И этот пост тоже полностью надиктован через VoiceHotKey.
👉 https://ru.voicehotkey.com — поставьте, не пожалеете!
Forwarded from FrontEndDev
CSS лифт: конечный автомат на чистом CSS для навигации по этажам
Как при помощи современных возможностей CSS можно создать полнофункциональный лифт с перемещением между этажами без JavaScript. Интерфейс работает как конечный автомат: пользователь выбирает этаж, и благодаря состояниям CSS лифт «понимает», куда ему двигаться.
https://css-tricks.com/css-elevator-a-pure-css-state-machine-with-floor-navigation/
Как при помощи современных возможностей CSS можно создать полнофункциональный лифт с перемещением между этажами без JavaScript. Интерфейс работает как конечный автомат: пользователь выбирает этаж, и благодаря состояниям CSS лифт «понимает», куда ему двигаться.
https://css-tricks.com/css-elevator-a-pure-css-state-machine-with-floor-navigation/
Common Go Mistakes - 100 Go Mistakes and How to Avoid Them
https://100go.co/
https://100go.co/
100go.co
Common Go Mistakes - 100 Go Mistakes and How to Avoid Them
Summary of the mistakes in the 100 Go Mistakes book.
Forwarded from Data Secrets
This media is not supported in your browser
VIEW IN TELEGRAM
Google продолжают экспериментировать с ИИ-продуктами и на этот раз выкатили Code Wiki – агента, который сделает по любому репозиторию красочную понятную документацию
Открываете codewiki.google/, вставляете ссылку на репозиторий и все: перед вами подробная документация с оглавлением и схемами, по которой вы можете перемещаться в интерактивном режиме.
Тут же встроен чат с ассистеном, которому можно задавать вопросы по проекту и доке: он будет отвечать сразу с гиперссылками на файлы и куски кода, очень удобно.
И еще интересная фича: документация будет автоматически обновляться каждый раз, когда в репозитории происходят изменения.
Скоро обещают выкатить еще и CLI расширение, а пока Code Wiki можно попробовать абсолютно бесплатно здесь
Открываете codewiki.google/, вставляете ссылку на репозиторий и все: перед вами подробная документация с оглавлением и схемами, по которой вы можете перемещаться в интерактивном режиме.
Тут же встроен чат с ассистеном, которому можно задавать вопросы по проекту и доке: он будет отвечать сразу с гиперссылками на файлы и куски кода, очень удобно.
И еще интересная фича: документация будет автоматически обновляться каждый раз, когда в репозитории происходят изменения.
Скоро обещают выкатить еще и CLI расширение, а пока Code Wiki можно попробовать абсолютно бесплатно здесь
Forwarded from Технотренды
Вышел Google на МАКСИМАЛКАХ — сервис ищет ЛЮБЫЕ файлы и страницы в сети.
Самое главное — ищет инфу без SEO-мусора и рекламы и находит то, что обычный Google пропускает.
DorkGPT работает на русском и бесплатно. Проверяем по ссылке.
📲 Технотренды
Самое главное — ищет инфу без SEO-мусора и рекламы и находит то, что обычный Google пропускает.
DorkGPT работает на русском и бесплатно. Проверяем по ссылке.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Denis Sexy IT 🤖
Если кто-то хотел почитать вечером что-то на Английском, то вот – копия емейл ящика Джеффри Эпштейна с закосом под Gmail почту:
https://jmail.world/
Переписку официально опубликовал сенат США на этой неделе
Если вы не знаете кто это, я вам завидую – почитать можно тут, сразу скажу, история мерзейшая, не буду ее пересказывать
https://jmail.world/
Переписку официально опубликовал сенат США на этой неделе
Если вы не знаете кто это, я вам завидую – почитать можно тут, сразу скажу, история мерзейшая, не буду ее пересказывать
Forwarded from ITTales :(){ :|:& };:
Недавно узнал что в go можно эмбедить файлы прямо в бинарник. Это прям супер удобно, особенно для написания различных CLI-утилит, которые традиционно распространяются в формате: "скачай бинарник из запусти".
Раньше я использовал кодогенерацию, но в большинстве случаев можно обойтись без неё. Можно эмбедить Kubernetes-манифесты, Helm-чарты, так и вообще любую статику.
//go:embed позволяет на этапе сборки положить файлы прямо в бинарь. Go читает указанные пути, запаковывает содержимое в секцию данных, а в рантайме это выглядит как обычная переменная или embed.FS.
Дальше с этим можно работать так же, как с привычной файловой системой из пакета io/fs: открывать файлы, читать директории, перечислять содержимое. Фактически это виртуальный read-only FS, который живёт внутри бинарника и полностью повторяет структуру исходных путей.
Примеры:
- Довольно исчерпывающий пример от Go by example
- Мой пример в Talm, где я эмбежу
Раньше я использовал кодогенерацию, но в большинстве случаев можно обойтись без неё. Можно эмбедить Kubernetes-манифесты, Helm-чарты, так и вообще любую статику.
//go:embed позволяет на этапе сборки положить файлы прямо в бинарь. Go читает указанные пути, запаковывает содержимое в секцию данных, а в рантайме это выглядит как обычная переменная или embed.FS.
Дальше с этим можно работать так же, как с привычной файловой системой из пакета io/fs: открывать файлы, читать директории, перечислять содержимое. Фактически это виртуальный read-only FS, который живёт внутри бинарника и полностью повторяет структуру исходных путей.
Примеры:
- Довольно исчерпывающий пример от Go by example
- Мой пример в Talm, где я эмбежу
./charts в гошный пакет