fa
Feedback

فریب کلاهبرداران را نخورید! تل‌متریو این کانال‌ها را شناسایی و برچسب‌گذاری می‌کند 👉 برای مشاهده برچسب، اشتراک تهیه کنید 👈

ML&|Sec Feed

ML&|Sec Feed

رفتن به کانال در Telegram
1 383
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+87 روز
+4730 روز
آرشیو پست ها
Repost from ИИ МОЗГ
«Базовая математика для искусственного интеллекта. Математика нового уровня для эффективных и успешных систем ИИ» Хала Нельсо
«Базовая математика для искусственного интеллекта. Математика нового уровня для эффективных и успешных систем ИИ» Хала Нельсон Книга дает прочные знания математики, лежащей в основе работы современных систем ИИ. Приведены необходимые и достаточные сведения для успешной работы в области ИИ, без углубления  в  сложные  академические  теории,  с  акцентом  на практическом применении и современных моделях. Даны основы машинного обучения и науки о данных. Рассмотрены регрессия, нейронные сети, свертка, оптимизация, вероятность, марковские процессы, дифференциальные уравнения и многое другое исключительно в контексте искусственного интеллекта. Показано, как объединять модели машинного обучения и естественного языка, работать с графовыми и сетевыми данными, визуализировать преобразования пространства, уменьшать размерность, обрабатывать изображения, выбирать модели и для проектов, основанных на данных 👁️

Repost from Data Secrets
Там Anthropic предложили новую технику для RAG. Разбираемся: Как работает обычный RAG: 1. Документы в корпусе разбиваются на
Там Anthropic предложили новую технику для RAG. Разбираемся: Как работает обычный RAG: 1. Документы в корпусе разбиваются на чанки 2. Из каждого такого чанка мы достаем эмбеддинг и кладем его в векторную БД 3. Когда поступает запрос (промпт), мы ищем в этой БД семантически близкие к нему чанки и добавляем их в промпт, чтобы модель могла использовать эту информацию для ответа В чем тут проблема? Дело в том, что таким образом мы можем упустить важный контекст и детали запроса. Например, пользователь запрашивает "Error code TS-999". Поиск найдет информацию про коды ошибок в целом, но может упустить точное совпадение «TS-999». К тому же, при возвращении конкретного чанка из базы может случится так, что он будет вырван из какого-то важного контекста, и это может помешать модели. Что предлагают Anthropic? Во-первых, они предлагают извлекать не только обычные эмбеддинги, но и делать TF-IDF энкодинг чанков с помощью BM25. TF-IDF утроен так, чтобы как раз отбрасывать наиболее "общие" вещи в тексте, и фокусироваться на редких и самых важных словах. Это поможет не упускать детали при поиске, как в примере с ошибкой TS-999. Во-вторых, чтобы избавиться от проблемы отсутствия контекста, они предлагают этот контекст добавлять искусственно (то есть делать из такого: "Прибыль росла на 3%." ... такое: "Этот чанк относится к отчету компании ACME за Q2 2023; прибыль росла на 3%."). Для этого перед извлечением эмбеддингов и TF-IDF энкодингом каждый чанк аннотируется с помощью отдельного запроса к модели (в случае Anthropic это делается с помощью Клода). Да, дорого. Но с помощью фишки Prompt Caching, которую недавно завезли в API, можно хорошо скостить цену. В итоге все это дает достаточно ощутимый прирост к метрикам качества поиска. Например, фактических ошибок становится меньше на 35%, а это ничего себе!

Repost from GitHub Community
LazyLLM — самый простой и ленивый способ создания многоагентных приложений LLM. 4️⃣ GitHub
LazyLLM — самый простой и ленивый способ создания многоагентных приложений LLM. 4️⃣ GitHub

#Tech_book "ChatGPT for Cybersecurity Cookbook: Learn practical generative AI recipes to supercharge your cybersecurity skills", 2024.

Пока шел дождик, накидал скрипт, который парсит страничку с лучшими статьями по ML за неделю, выкачивает abstract'ы и лезет в
Пока шел дождик, накидал скрипт, который парсит страничку с лучшими статьями по ML за неделю, выкачивает abstract'ы и лезет в Claude за объяснениями в разных стилях и генерацией дополнительной информации типа заголовков, эмодзи и тегов. Красивый UI не смог нагенерить ни чем, так что большинство времени ушло на верстку. Стоит один такой "выпуск" где-то 0.15 долларов. P.S. Скрипт причешу и выложу, сможете поиграться. https://averkij.github.io/top_papers/

Куда движется кибербез.pdf17.94 MB

Моя презентации с Positive Tech Day в Новосибирске
Моя презентации с Positive Tech Day в Новосибирске

Вот это я понимаю схема Ребята из Sonatype тут решили потратить колоссальное количество времени и сил – они умудрились засунуть в одну схему по DevSecOps всё, что только можно – от классов решений и ролей до самих инструментов и их вендоров. А еще всё это обмазано бесконечным количеством стрелочек и связей. В общем, очень сложное, но полезное и красивое. Забираем – полезно будет практически всем безопасникам. #DevSecOps #AppSec #BaseSecurity Твой Пакет Знаний | Кибербезопасность

Repost from Vikhr models
🔥 Новое пополнение в семействе вихрей! ⚡️ Vikhr-Llama-3.2-1B-Instruct — компактная и мощная языковая модель, созданная на ба
🔥 Новое пополнение в семействе вихрей! ⚡️ Vikhr-Llama-3.2-1B-Instruct — компактная и мощная языковая модель, созданная на базе Llama-3.2-1B, специально обученная на русскоязычном датасете GrandMaster-PRO-MAX. Её эффективность в 5 раз выше по сравнению с базовой моделью, и она идеально подходит для мобильных и слабых устройств, занимая всего до 3GB. 💡 Что нового? - Инструктивная дообученная модель: разработана для русскоязычных задач - Компактный размер: всего 1B параметров - Мощь в компактности: работает на уровне более крупных моделей 🔗 Подробнее о наших моделях: Vikhrmodels/Vikhr-Llama-3.2-1B-Instruct Коллектив авторов: @LakoMoorDev @nlpwanderer

Efficient Retrieval with Learned Similarities Сегодня обсуждаем статью от Microsoft и Meta об эффективном retrieval с обучаем
Efficient Retrieval with Learned Similarities Сегодня обсуждаем статью от Microsoft и Meta об эффективном retrieval с обучаемыми функциями близости. Исторически нишу функций близости в retrieval занимали косинусные близости — скалярные произведения над нормализованными векторами. Но в последнее время популярность стали набирать обучаемые функции близости. Например, они допускают сопоставление одному запросу нескольких эмбеддингов, чтобы лучше улавливать редкие и противоречивые интересы пользователей. Также можно использовать нейросети над векторами запроса и векторами айтема и делать многие другие интересные вещи. Однако с эффективностью этих решений есть проблемы. Чтобы повысить эффективность обучаемых функций близости, в статье используют Mixture-of-Logits как универсальный аппроксиматор и предлагают методы его ускорения для получения достаточно точной аппроксимации топ-k соседей. В экспериментах подход авторов обгоняет бейслайны почти в 100 раз по времени работы и при этом достигает 99% полноты/рекола. По сути обучаемые функции близости — это попытка повысить экспрессивность функции, моделирующей релевантность. В идеале у нас есть большая матрица релевантностей, где каждому запросу сопоставлена вероятность. При переходе к обучаемым эмбеддингам мы оцениваем релевантность как dot product и пытаемся оценить логарифм матрицы низкоранговым разложением. Если изначальная матрица имела высокий ранг, мы не получим точного разложения. Простым решением является увеличение размерности эмбеддингов, но оно может привести к проблемам с памятью и оверфиту. А MoL позволяет аппроксимировать матрицу релевантности, сохранив ее ранг. Также авторы предлагают методы ускорения этой конструкции: несколько вариаций алгоритмов, о которых можно узнать больше из полного текста статьи, и оптимизацию GPU-кернелов вкупе с использованием более масштабных датасетов, что сделает разницу между традиционными подходами и обучаемыми функциями близости ещё более выраженной. @RecSysChannel Разбор подготовил ❣ Сергей Макеев

Repost from Ethical Machines
Почему использование DIfferential Privacy (DP) не всегда защищает от утечек конфиденциальных данных? TL;DR Парадигма public-pretraining и private-finetuning, что становится все более популярной, имеет несколько недостатков: 🟣Web содержит конфиденциальную информацию; 🟣Данные для предобучения и дообучения могут пересекаться; 🟣Для обучения больших моделей требуется передача конфиденциальных данных. Из-за этого DP не может обеспечить полную конфиденциальность данных. Об этом много пишет Nicholas Carlini — известный ученый из мира безопасности машинного обучения. А его работы на эту тему получили Best Paper на ICML в этом году, что делает тему еще более интересной. Теперь подробнее Проблема 1. Обучение модели на данных из Интернета может приводить к утечке конфиденциальных данных. Модель, дообученная на приватных данных, может раскрывать те детали о людях, что были использованы в датасете для предварительного обучения. И хотя данные, собранные из интернета, являются общедоступными, они могут нести риски для конфиденциальности: 🟣Люди могут размещать некоторые данные с определенным контекстом использования; 🟣Приватные данные о человеке может разместить третье лицо без согласия владельца. Тут можно привести пару примеров: 🟣Одна компания как-то зафайнтюнила GPT-2 на сообщениях своих пользователях, используя DP. И даже несмотря на внушительные параметры для DP (ε = 0.1, δ = 1e−12) можно было отправить запрос типа
The phone number of Peter W. is:
и получить реальный номер телефона; 🟣Пользователь GitHub случайно загрузил информацию о своем криптовалютном кошельке в публичный репозиторий. И когда обучали Copilot, он запомнил приватный ключ этого кошелька, и другой пользователь смог вывести деньги с аккаунта. Что с этим делать: 🟣Получить явное согласие на использование данных от пользователей. Но как это реализовать и контролировать, пока вопрос открытый; 🟣Уведомлять о возможных рисках для конфиденциальности при использовании данных из Web; 🟣Создать privacy-friendly модель. Проблема 2. Отсутствие качественных бенчмарков для оценки прогресса private learning. Существующие бенчмарки, используемые для оценки private learning, не всегда измеряют реальный прогресс в приватности. Это связано с тем, что публичные и приватные наборы данных в таких исследованиях часто исходят из одного и того же распределения данных, как это происходит, например, с ImageNet и CIFAR-10. А еще чаще — с текстовыми данными. Что с этим делать: для начала понять, хорошо ли представлены важные для нас чувствительные задачи в публичных данных: 🟣Если да — можно решать задачу с использованием zero-shot learning или минимального файнтюнинга; 🟣Если нет — скорее всего, придется поискать новый подход. Возможно, тут пригодится обучение приватной модели с нуля, так как модель, предобученная на огромном количестве публичных данных, может оказаться не очень эффективной; 🟣И в обоих случах будет полезна разработка новых бенчмарков для оценки приватности. Проблема 3. Обучение больших моделей требует передачи конфиденциальных данных. И хотя модели размером ~ 250 млн параметров все еще могут работать на пользовательских GPU (это потребует ~ 1 Гб памяти), размер state-of-the-art моделей растет гораздо быстрее, чем пользовательское оборудование (сегодня самая большая LLM содержит > 500 млрд параметров). Это приводит к необходимости использования удаленных облачных сервисов для обработки конфиденциальных данных. Что с этим делать: 🟣Дообучить очень большую предобученную модель на конфиденциальных данных с использованием DP (но тут мы можем столкнуться с проблемой 1); 🟣Использовать меньшую модель (и не дообучать ее с DP). Можно использовать модели локально на устройстве каждого пользователя. Хотя тут есть другие проблемы: защита от запоминания не гарантирована. 🟣Теоретически, конфиденциальность внешних данных может быть гарантирована с помощью криптографических методов, таких как fully homomorphic encryption или secure multiparty computation. Но на практике мы пока не можем прменять эти методы эффективно для больших моделей.

Leak OSINT bot Давненько я не постил никаких инструментов для OSINT-расследований. Но вот порадовал меня данный бот совсем не
Leak OSINT bot Давненько я не постил никаких инструментов для OSINT-расследований. Но вот порадовал меня данный бот совсем недавно и неоднократно помог в расследованиях. По сути, такая же база данных, но есть очень хороший функционал: Когда мы исследуем сетевой псевдоним какого-то киберпреступника, кажется логичным, что поискать стоит не только через никнеймы в соц сетях и мессенджерах, но еще и в утечках паролей, среди существующих сервисов электронной почты и тд. И вот этот инструмент облегчает данную задачу. Это прям хорошо экономит драгоценное время. #инструменты #осинт

Repost from Echelon Eyes
Создана первая карта ландшафта атак на ИИ Исследователь Дэниел Месслер попытался создать визуальную карту атак на искусственный интеллект (ИИ). С помощью предложенного им фреймворка специалистам будет легче разобраться, как происходят атаки на ИИ-системы. Месслер пояснил, что писал свою статью в то время, когда только появился GPT-4. На тот момент уже имелось большое количество информации об атаках на реализации машинного обучения, но не на полные системы, созданные с использованием ИИ как части нескольких компонентов. «Во многом это связано с тем, что такие интеграционные технологии, как Langchain, стали популярными только за последние 2 месяца. Поэтому людям потребуется время, чтобы создавать продукты и услуги с использованием этого инструментария», - поясняет исследователь. Естественный язык — основа для атаки на системы ИИ, что порождает совершенно новый вид уязвимостей. Автор выделяет два метода, которыми могут действовать злоумышленники, - внедрение подсказок и атаки на обучение. С помощью этих методов можно реализовать атаки на модели, агенты, инструменты и обучающие данные. В статье подчеркивается, что при изучении атак на ИИ важно думать не только о больших языковых моделях, но обо всей ИИ-экосистеме, которая состоит из множества компонентов. «Нам особенно нужно думать о том, где системы ИИ пересекаются с нашими стандартными бизнес-системами, например, на уровнях агентов и инструментов, поскольку это системы, которые могут выполнять действия в реальном мире», - подытоживает Месслер. Источник: https://danielmiessler.com/p/the-ai-attack-surface-map-v1-0/ #ИИ #кибератаки

Про доверенный ИИ и AI TRiSM Появилась запись встречи экспертного сообщества по криптографии и большим данным от 28 августа 2024 года по теме “Доверенный ИИ”: ▫️ RuTube | VK Видео (~2 часа 30 минут). Еще вслед небольшая мысль, которую не успел озвучить во время своего выступления. Есть такой термин от Гартнера AI TRiSM (Trust, Risk, Security Management), стоящий на 4-х столпах: ▫️ Explainability / Model Monitoring; ▫️ ModelOps; ▫️ AI Application Security; ▫️ (Data) Privacy. Все эти темы как раз детально обсудили на встрече экспертного сообщества 28 августа. По нашему мнению есть еще один важный столп, который должны накрывать вопросы доверенного ИИ, это: ▫️ Процессы принятия решений. Ведь степень доверия к технологиям и методам DS/ML/AI не может быть абсолютной, она всегда относительна — относительна бизнес-приложениям, в которых используются эти методы, то есть принятию решений, которые частично или полностью автоматизируются с помощью ИИ. А математическая оптимизация и исследование операций, которые мы тут активно продвигаем — это как раз про моделирование для автоматизации принятия решений.

Principles of Beautiful Figures for Research Papers Видео с подробным разбором принципов визуализации для научных статей, автор - Andrey Churkin (Андрей Чуркин) Перевод описания Создание высококачественных иллюстраций для научных статей - сложная и трудоемкая задача. Обычно требуется тщательное тестирование различных методов, чтобы представить результаты исследования наилучшим образом. Однако многие университеты упускают из виду эту тему, оставляя студентов и молодых исследователей изучать графический дизайн научных публикаций методом проб и ошибок. В течение последних нескольких лет у меня была идея создать учебные пособия для студентов и исследователей, объясняющие, как создавать красивые графики. Теперь, наконец, у меня дошли до него руки. Это видео - первая часть серии учебных пособий, где мы поговорим о принципах создания графиков для научных работ. Затем, в следующих видеороликах, я покажу вам процесс разработки таких графиков, мы научимся создавать сложные визуализации, используя как программирование, так и программное обеспечение для векторной графики. Таймкоды 00:00 Вступление 04:51 Качество изображения, векторная графика 14:42 Удобочитаемость 20:03 Упрощайте и избавляйтесь от беспорядка 30:52 Цвета 45:03 Посыл и задумка 51:31 Последовательный стиль 54:04 Чего следует избегать: круговые диаграммы, 3D 58:18 Время 59:24 Итого

Repost from CodeCamp
Разрабы, внимание: большинство моделей от Mistral теперь доступны бесплатно по API! Буквально аттракцион невиданной щедрости,
Разрабы, внимание: большинство моделей от Mistral теперь доступны бесплатно по API! Буквально аттракцион невиданной щедрости, но будьте готовы к тому, что ваши запросы могут использовать для тренировки новых моделей. Не нужен ни VPN ни карточка.

Анализ признаков влияющих на предсказание нейронной сети В рамках проекта по созданию торгового бота на акциях Московской бир
+5
Анализ признаков влияющих на предсказание нейронной сети В рамках проекта по созданию торгового бота на акциях Московской биржи, использовал индикаторы технического анализа для извлечения признаков, которые помогут нейронной сети лучше обобщить экономические закономерности финансовых рынков. В результате, получил внушительное количество признаков — целых 39, поэтому необходимо убрать лишние, чтобы повысить качество предсказания нейронной сети. Одним из эффективных способов достижения этой цели является вычисление градиентов. Определим функцию compute_gradients, которая будет вычислять градиенты предсказаний модели по отношению к входным данным:
import tensorflow as tf

@tf.function
def compute_gradients(inputs):
    with tf.GradientTape() as tape:
        tape.watch(inputs)  # Следим за входными данными
        predictions = best_model(inputs)  # Получаем предсказания от модели
    return tape.gradient(predictions, inputs)  # Вычисляем градиенты
@tf.function: Этот декоратор позволяет TensorFlow оптимизировать выполнение функции, превращая ее в граф (повышает производительность). tf.GradientTape(): Контекстный менеджер, который отслеживает операции с тензорами, что позволяет вычислять производные. tape.watch(inputs): Указывает, что мы хотим следить за изменениями в inputs. tape.gradient(predictions, inputs): Вычисляет градиенты предсказаний модели по отношению к входным данным. Теперь можем использовать эту функцию для вычисления градиентов на примере входных данных, чтобы оценить важность признаков.
# Пример входных данных
sample = tf.convert_to_tensor(X_test[:1], dtype=tf.float32) 

# Вычисление градиентов
grads = compute_gradients(sample).numpy()

# Расчет средних абсолютных градиентов по всем признакам
mean_grads = np.mean(np.abs(grads), axis=(0, 1))

# Сортировка признаков по важности
important_features_idx = np.argsort(mean_grads)[::-1]
sorted_features = X.columns[important_features_idx]
sorted_importances = mean_grads[important_features_idx]

print("Важность признаков:", sorted_features)
sample = tf.convert_to_tensor(X_test[:1], dtype=tf.float32): Преобразуем первый пример из тестового набора в тензор TensorFlow. compute_gradients(sample).numpy(): Вызываем функцию для вычисления градиентов и преобразуем результат обратно в массив NumPy. np.mean(np.abs(grads), axis=(0, 1)): Вычисляем среднее значение абсолютных градиентов для каждого признака. np.argsort(mean_grads)[::-1]: Получаем индексы признаков, отсортированных по убыванию их важности. sorted_features и sorted_importances: Получаем отсортированные названия признаков и их значения. Гистограмма:
plt.figure(figsize=(10, 6))
plt.barh(sorted_features, sorted_importances, color='skyblue')
plt.xlabel('Средний абсолютный градиент')
plt.ylabel('Признаки')
plt.title('Наиболее важные признаки')
plt.gca().invert_yaxis() 
plt.show()
В результате выполнения кода получим список признаков, отсортированных по их важности для модели. Это поможет лучше понять, какие входные данные оказывают наибольшее влияние на предсказания модели и, возможно, позволит улучшить ее качество за счет фокусировки на наиболее значимых признаках. #ML

Repost from NLP Wanderer
🔥 Новые модели Vikhr: Приближаемся к локальной gpt-4o-mini, собственный метод алайнмента и Grounded RAG Мы выпускаем в релиз
🔥 Новые модели Vikhr: Приближаемся к локальной gpt-4o-mini, собственный метод алайнмента и Grounded RAG Мы выпускаем в релиз свои лучшие модели и тулкит алайнмента. который использовался для их тренировки. Итак, наш флагман - Vikhr-Nemo-12B-Instruct-R-21-09-24 (карточка на HF) 12B модель на основе Mistral-Nemo, с качеством на русском языке в некоторых задачах не хуже gpt-4o-mini и имеет 128к токенов контекста, была специально заалайнена под решение широкого спектра задач на реальных и синтетических вопросах пользователей, включая код, математику, суммаризацию, ризонинг, ответы в специальном формате (JSON/HTML и тд) и многие другие. Модель получила винрейт 79.8 (относительно gpt-3.5-turbo) на оффлайн бенчмарке Ru-General-Arena, что лучше любой текущей опенсорс модели до 30В для русского языка. Для достижения такого качества мы собрали большой инструктивный датасет со втроенным CoT, что позволило сильно прочкать ризонинг модели, далее обучили Reward модель, сделали Rejection Sampling и применили собственный метод SMPO (вариация DPO) для выполнения преференс-тюнинга. Вторая модель - Vikhrmodels/Vikhr-Llama3.1-8B-Instruct-R-21-09-24 (карточка на HF) Так же обучена Llama-3,1-8B и имеет аналогичный размер контекста в 128k токенов. Винрейт на Ru-Arena-General - 63.9, что делает ее одной из лучших 8B моделей дла русского языка. Модели обучены работать с RAG Обе модели имеют уникальную особенность - они заалайнены для работы с RAG, т.е. используя системный промпт и спец. роль documents, вы сможете подавать ей документы в стандартизированной форме (JSON). При этом сам текст каждого документа может быть грязным чанком HTML, Markdown или Plain text формата до 4к символов каждый. Модели умеют выделять информацию из предоставленных документов самостоятельно, реализуя таким образом "реранкер" на уровне LLM. Это сделано за счет двух-этапного ответа. Первый ответ модели представляет из себя JSON со списокм релевантных идентификаторов документов, а второй, если юзер его запросит, будет уже текстовым ответом модели на вопрос пользователя. Благодаря такому обучению, на нашем бенчмарке для RAG (судья gpt-4o) Vikhr-Nemo показала качество в RAG задачах даже лучше, чем gpt-4o-mini (цифры в карточках моделей) SMPO - Simple Margin Preference Optimization Наш собственный метод выравнивания, разработанный для стабилизации прцоесса PO. Этот метод во многом заимствует идеи IPO, SimPO, C-RLFT, а также содержит собственную функцию потерь для разделения выбранных и отклоненных пар, отказываясь от классической сигмойды. Основная идея метода заключается в стремлении плавно достичь желаемого уровня margin, не заставляя модель переобучаться, в том числе с помощью добавления балансирующего SFT лосса для выбранных и отклоненных вариантов одновременно. Тулкит на Github - effective_llm_alignment Репозиторий содержит скрипты и конфиги которые использовались для всех этапов обучения моделей. он позволяет удобно работать с основными методами алайнмента для LLM, включая наш SMPO. Больше подробностей о моделях, как с ними работать, бенчмарках, процедуре обучения, вы можете найти в их карточках на HF. Поиграться с Vikhr-Nemo-12B можно в tg bot_e (@vikhrbot), Gradio инференс

Курс по безопасности машинного обучения https://github.com/unica-mlsec/mlsec