NLP!
В ИБ - полезен.
Но как разобраться?..
Часть 2.
#ml_для_иб
Визуальное🔖Выращивание векторов слов Word2Vec прямо на глазах -
демонстрация с кучей кнопочек, наглядно. И дополнительно
статья, где объясняется феномен его работы.
🔖Google Model Explorer. Инструмент для анализа собственных разработок и их отладки.
🔖B. Bycroft LLM Visualization. Интерактивный учебник по устройству трансформеров и LLM на примере GPT-2 small, GPT-2 XL, nano-gpt и GPT-3.
Полный практический ликбезНоутбук на Kaggle с разбором Word2Vec, Glove, RNN, и до Seq2Seq, механизма внимания из трансформеров и BERT. Мощная теория, но без кода.
LLMПомимо бесчисленных гайдов о том, что и как в них работает, обращу ваше внимание на пару важных вещей.
➡️Квантизация моделей. А точнее, их весов. Вот есть модель на миллиард параметров, 1B. А что есть параметр? - это число. Если это float64, он весит 8 байт, float32 - 4 байт. Таким образом, модель в зависимости от числового типа займет либо 500 или 1000 МБ - разница значительная. О том, как сжать веса модели и при этом сохранить по максимуму ее эффективность, отлично расписано
тут. И я достаточно убежден, что это - ключ к развертыванию подобных больших моделей в контуре заказчика, как того требуют часто реалии рынка ИБ.
➡️Высочайшая схожесть эмбеддингов. Пробовали ли вы, например, с помощью
SecureBERT сделать эмбеддинг фразы "base64 encoded suspicious powershell command content" и "serve the donuts warm for the best taste", а потом измерить расстояние от них до, например "windows malicious command"? Результат вас удивит - близость будет одинаковой и колебаться в районе 0.9 (косинусная). У этого есть причина, заключается она в анизотропности пространства отображения трансформеров, создаваемого ими в процессе обучения. Подробнее о том, что это и как с этим справиться, читайте
здесь.