Интересное что-то
517 subscribers
2.71K photos
253 videos
138 files
4.51K links
Материалы и мысли, понадерганные отовсюду
Блог: https://t.iss.one/asisakov_channel
Чат: https://t.iss.one/youknowds_chat
Download Telegram
Forwarded from Aspiring Data Science Chat
feature_analyzer.py
19.6 KB
Ага. Универсальный с примерами делать нет сил, но, думаю, с небольшими адаптациями можно запустить на своих данных.
Forwarded from Инжиниринг Данных (Dmitry)
Все знакомы с понятием Ad-hoc запросов. Обычно мы воспринимаем их негативно, так как они отвлекают, время-то и так мало.

На самом деле, ad-hoc запросы могут бысть источником quick wins, и способом быстро показать impact и завоевать доверие (earn trust).

Ad-hoc — это не бардак. Это VIP-запросы, которые показывают: вам доверяют. Ваша задача - не утонуть, а превратить это в рычаг для влияния.

Вот пример фреймфорка:

1. Принять быстро
Ответ в течение пары минут (или автоответ, если в фокусе) показывает: у нас есть процесс, а не паника.

2. Быстрое фильтрование (2 минуты):

- Это повлияет на $Xk+ или стратегию?
- Нужно на этой неделе для принятия решений?
- Делается за полдня одним аналитиком?
- Если да → делаем. Если нет - в бэклог с пометкой по приоритету.

3. Минимум, но по делу
- Отправляем краткий инсайт, график или SQL - что реально помогает. Повторилось 3 раза? → автоматизация.

📌 Чтобы не сгореть:

- Назначаем on-call-аналитика/инженера (10% времени спринта)
- Не забываем про ротацию и отслеживание нагрузки
- Повторяемые запросы → обучающие материалы или дашборды

Эскалации - через менеджера, не через «договорился в курилке».
#llm #petproject

# AI-инструменты

## Чат-боты и языковые модели

- ChatGPT (https://chat.openai.com) — чат-бот для общения, помощи с текстами и решения различных задач
- Claude (https://claude.ai) — AI-ассистент с широким спектром возможностей от Anthropic
- Gemini (https://gemini.google.com) — многофункциональная AI-модель от Google
- GigaChat (https://giga.chat/) — русскоязычный чат-бот от Сбера
- DeepSeek (https://deepseek.com) — AI-платформа для глубокого анализа и генерации контента
- YandexGPT (Алиса) (https://yandex.ru/alice) — языковая модель от Яндекса, встроенная в Алису
- Mistral.ai (https://mistral.ai) — открытая языковая модель
- Perplexity (https://www.perplexity.ai) — инструмент для поиска и анализа информации с помощью AI
- Qwen (https://qwen.ai) — языковая модель от Alibaba
- Qwen.chat (https://qwen.ai/chat) — чат-интерфейс на основе Qwen
- Llama (https://ai.meta.com/llama/) — открытая языковая модель от Meta

## Инструменты для разработчиков

- GitHub Copilot (https://github.com/features/copilot) — AI-ассистент для написания кода
- Cursor (https://cursor.sh) — IDE с интегрированным AI для разработчиков
- Windsurf VSCode extension (https://windsurf.ai) — AI-расширение для VSCode для редактирования кода
- Ollama (https://ollama.ai) — платформа для локального запуска языковых моделей
- OpenWebUI (https://openwebui.com/) — веб-интерфейс для локальных языковых моделей
- HuggingChat (https://huggingface.co/chat) — чат-интерфейс от Hugging Face
- V0 (https://v0.dev/) — генератор веб-интерфейсов с помощью AI
- Phind (https://phind.com/) — поисковый движок, ориентированный на разработчиков

## Фреймворки и инструменты для разработки AI-приложений

- LangChain (https://www.langchain.com/) — фреймворк для создания приложений с использованием языковых моделей
- AutoGPT (https://github.com/Significant-Gravitas/Auto-GPT) — экспериментальный фреймворк для автономных агентов на основе GPT
- CrewAI (https://github.com/crewai/crewai) — фреймворк для создания интеллектуальных агентов, сотрудничающих для решения задач
- buildin.ai (https://buildin.ai) — платформа для создания собственных AI-агентов без кода или с минимумом кода
- Hugging Face (https://huggingface.co) — платформа для работы с AI-моделями

## Исследовательские инструменты

- Connected Papers (https://www.connectedpapers.com/) — инструмент для визуального изучения научных работ и их взаимосвязей
- Research Rabbit (https://www.researchrabbit.ai/) — инструмент для обнаружения и организации академических исследований
- Scholar AI (https://scholarai.io/) — AI-ассистент для научных исследований

src: https://devcrowd.ru/ds25/tools_5/
https://chrome-nutria-a9b.notion.site/AI-2329a25b3eb580d3831ad210a22b698c
- Stepik - https://stepik.org/ - 8 упоминаний
- Курс по машинному обучению - [https://stepik.org/course/125587/](https://stepik.org/course/125587/promo#toc)
- Поколение Python - https://stepik.org/course/58852/promo
- Практический Machine Learning - [https://stepik.org/course/125501/](https://stepik.org/course/125501/promo)
- Data engineer с нуля до junior - https://stepik.org/course/137235/promo
- SQL практикум. Продвинутый уровень - https://stepik.org/course/206995/syllabus
- Karpov Courses: https://karpov.courses/ - 7 упоминаний
- Курс Инженер данных - https://karpov.courses/dataengineer
- Симулятор Data Science - https://karpov.courses/simulator-ds
- DeepSchool: https://deepschool.ru/ - 5 упоминаний
- курс 3D CV - https://deepschool.ru/3dcv
- курс LLM - https://deepschool.ru/llm
- Школа анализа данных (ШАД): https://shad.yandex.ru/ - 5 упоминаний
- GPT week - https://shad.yandex.ru/gptweek
- NLP - https://shad.yandex.ru/courses
- Deep Learning School: https://dls.samcs.ru/ - 3 упоминания
- Hugging Face: https://huggingface.co/learn - 3 упоминания
- Яндекс Практикум: https://practicum.yandex.com/ - 3 упоминания
- Machine Learning - https://practicum.yandex.com/machine-learning/?from=catalog
- Академия Аналитиков Авито: https://www.avito-analytics-academy.ru/ - 2 упоминания
- Machine Learning - https://www.avito-analytics-academy.ru/#directions
- ИТМО, AI Talent Hub: https://ai.itmo.ru/ - 2 упоминания
- МФТИ: https://fpmidpo.mipt.ru/ - 2 упоминания
- Data Scientist: ****https://fpmidpo.mipt.ru/programs/ppp/datascience
- Инструменты по работе с большими данными: https://fpmidpo.mipt.ru/programs/ppk/hadoop
- НИУ ВШЭ: - 2 упоминания
- Аналитика данных и прикладная статистика - [Магистерская программа, Сетевой анализ, Сетевая аналитика, П…](https://www.hse.ru/ma/sna/courses/918951899.html)
- Генеративные модели на основе диффузии - [https://wiki.cs.hse.ru/Генеративные_модели_на_основе_диффузии](https://wiki.cs.hse.ru/%D0%93%D0%B5%D0%BD%D0%B5%D1%80%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8_%D0%BD%D0%B0_%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%B5_%D0%B4%D0%B8%D1%84%D1%84%D1%83%D0%B7%D0%B8%D0%B8)
- Глубинное обучение в обработке звука: https://wiki.cs.hse.ru/Глубинное_обучение_в_обработке_звука_24/25
- ШИФТ: https://shift-cftbank.cft.ru/ - 2 упоминания
- Большие данные: https://bigdatateam.org/ru/big-data-course
- Компьютерные сети: https://www.youtube.com/@AndreySozykin
- Оконные функции: https://antonz.ru/window-functions/
- Прогнозирование временных рядов: https://centraluniversity.ru/courses/forecasting
- Тренировки по Machine Learning: https://yandex.ru/yaintern/training/ml-training
- Школа сильных программистов: https://tough-dev.school/developer-experience
- Эстетика в графиках: https://plus-level.ru/
- 3blue1brown: https://www.youtube.com/@3blue1brown
- AI Masters. МГУ: https://aimasters.ru/
- AI Mindset: https://aimindset.org/ai-mindset
- ComfyAI: https://comfyai.app/article/llm-applications/retrieval-augmented-generation
- Datalearn: https://datalearn.ru/
- Data Engineering Zoomcamp: https://github.com/DataTalksClub/data-engineering-zoomcamp/
- Data Structures and Algorithms: https://leetcode.com/explore/featured/card/leetcodes-interview-crash-course-data-structures-and-algorithms/
- Dagster University: https://courses.dagster.io/
- dbt Learn: https://learn.getdbt.com/courses/jinja-macros-and-packages
- Deeplearning.ai: https://www.deeplearning.ai/resources/generative-ai-courses-guide/
- Dev ChatGPT Prompts: https://github.com/PickleBoxer/dev-chatgpt-prompts
- GirafeAI: https://girafe.ai/
- Introduction to SQL: https://www.datacamp.com/courses/introduction-to-sql
- Kaggle: https://www.kaggle.com/learn
- Learn Kubernetes in a Month of Lunches: https://github.com/sixeyed/kiamol
- LLM Zoomcamp: https://github.com/DataTalksClub/llm-zoomcamp
Forwarded from Dealer.AI
Проблема "Не знаю", как метод побороть галлюцинации и как с этим сейчас пытаются работать.

Сегодня обсуждаем "вечное" - про то как можно сейчас работать с галюнами (глюками) LLM. Для примера возьмем известный кейс как модели заставить говорить "я не знаю".

Для начала, нужно понимать, что у модели прямой механизм сказать "не знаю" отсутствует, разве, что вам повезло с претреном и там по методу максимального правдоподобия в рамках текущего контекста, самое релевантное сгенерировать именно это. Тоже касается и тюна модели, можно бесконечно точечно элайнить модель под нужное поведение на нужных контекстах и ждать трансфера под "не знаю". Но вам или выстрелит в ногу рано или поздно тема с oof/ood примерами (примеры которые не попали в обучение) или возникнут проблемы обновления знаний, когда сегодня она не знает, а завтра знает, тк сет уже обновили. А это извините случай постоянной гонки с самим собой, с точечным дообучением и переобучением.

Поэтому в комьюнити набирают давно уже популярность подходы на инференсе, не требующие переобучения. Данные методы работают с внутренними механизмами моделей - веса, активации, логиты и т.п. Конечно можно всегда ходить в RAG на вопросы, чувствительные к фактологии, но в идеале, как заметил один подписчик, не тратить лишний компьют на внешние вызовы. У инженеров есть запрос на то, чтобы модель "сама осознала" надо ей идти во внешний источник или нет, через понимание "я не знаю, пойду гляну вокруг, а когда она "осознает", что "знает" отвечала бы из своих весов.
К сожалению, прямого "осознания" у модели (пока, и это в тч путь к AGI) нет, поэтому приходится костылять вокруг.

Примеры подходов:

1. Подход с классификацией интента самой LLM. Приходит запрос, модель видит пулл инструментов и у нее есть их описание, инструкции когда, что вызывать. Это путь "в лоб", который даже не задействует механизм "самосознания", что не ко мне вопрос, пойду сразу во вне. И зачастую оно так и работает у 99%.

2. Работа с внешним классификатором. Учат любые модели от лесов и бустинга, до трансформера. Но проблема классификации, отсутствует достойный трансфер знаний и есть возможность взломать на ood примерах. Обычно строится поверх логитов/пробитов распределения вероятности токенов. Пример.

3. Работа с "внутренней" механикой сети. Например подход в данной статье, строится на внутренней согласованности суждения. Основная идея подхода заключается в построении дерева убеждений, обозначаемого как 𝒯, где корневой узел — это целевое утверждение, каждый дочерний узел — это утверждение, логически связанное с родительским узлом, а каждое ребро представляет собой логическую связь между двумя узлами. Затем получаем оценки достоверности для всех узлов и используем логическую согласованность оценок для исправления возможных ошибок в них. Далее модель смотрит на цепочки согласованности и ищет противоречия. Это и есть сигнал к глюкам.

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

В заключении, хочу сказать, что тот кто сможет победить проблему "я не знаю", сможет косвенно побороть галлюцинации и открыть новую эру доверия к LLM. При этом, не важно будет это связано с архитектурой, методом обучения или внешним механизмом. Главное надежность и достоверность работы на любых примерах в 99% случаев. Конечно, я пока считаю, что сегодня лучшие механики, те что работают только с инференсом (логиты, деревья и т.п.). А еще эффективнее будет микстить их с внешними оценщиками.

Пишите свои способы борьбы с галлюцинациями в комментариях. Также интересует, как вы решаете проблему решения LLM ответа из весов, чтобы не ходить лишний раз в RAG и т.п.👇👇👇
Riffusion выкатили нового музыкального ИИ-агента, который работает как студия и продюсер:

🟢 По промту генерирует трек с вокалом и аранжировкой
🟢 В чате можно менять стиль, детали и структуру
🟢 Делает ремиксы: reverb, slowed, dark synth
🟢 Создаёт музыкальные клипы и обложки

➡️ Подробнее

🤖Saramudvlad | забустить 🤖
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🚀 Собери приложение без кода за 30 минут

Пошаговый набор сервисов + альтернатива из скрина

1) Сгенерировать PRD (Product Requirements Document)
• ChatPRD — ИИ делает полноценный PRD из вашей идеи:
https://chatprd.ai/
• Feedough PRD Generator — готовит PRD по шаблону:
https://www.feedough.com/ai-product-requirements-document-prd-generator/

2) Сгенерировать мобильное приложение и протестировать в Expo Go
• Create (create.xyz) — text-to-app билдер, собирает React Native/Expo-проект из описания или PRD.
• Rork AI — генерация приложения по тексту/промпту:
https://rork.app/

Как использовать (коротко):
Идея → генерируете PRD → вставляете текст/PRD в билдер → через 10–15 минут получаете проект → открываете на телефоне в Expo Go (iOS/Android).

💡Еще сервисы (AI-билдеры/IDE): chatgpt-5
Replit, Rocket, Loveable, Youware, Bolt, Firebase Studio, Cursor, Trae AI IDE, Gemini CLI, Warp Terminal, Rork Ai, Orchids, Deepsite.

🤖Saramudvlad | забустить 🤖
Please open Telegram to view this post
VIEW IN TELEGRAM
Буквально 2 дня назад вышла статья Avito 🌍 по 🆎. Разбираем по шагам механику A/B-тестирования: математика, интуиция и код

Почитал, в целом могу сказать, что хорошее чтиво для разбора A/B тестов.

Обычно, я смотрю графически на то, как изменяется MDE (тут это написано в зависимости от длительности эксперимента), также смотрю и по количеству пользователей в эксперименте (10/10, 20/20 и тд), только равные группы пользователей.

🧑‍🎓 Теоретическое
def compare_mde(current_a, current_b, new_a, new_b):
return np.sqrt(1/current_a + 1/current_b) / np.sqrt(1/new_a + 1/new_b)

# здесь смотрят на то, а как изменится mde, если мы перейдем от 10/10 к 50/50 разбиению
compare_mde(0.1, 0.1, 0.5, 0.5) # ~2.236


💻 Практическое
def check_mde_reduce_from_size(grouped_dataset, current_t, current_c, new_t, new_c):
"""
Функция для сравнения MDE в текущем варианте сплитования и в новом.
Параметры:
- grouped_dataset: сгруппированный поюзерный датасет, на осоновании которого будут сравниваться MDE
- current_t: доля пользователей в тесте в текущем сетапе
- current_c: доля пользователей в контроле в текущем сетапе
- new_t: доля пользователей в тесте в новом сетапе
- new_c: доля пользователей в контроле в новом сетапе
Возвращает:
- отношение MDE_current / MDE_new
"""


grouped_dataset['group_current'] = np.random.choice(['test', 'control', '-'],
p=[current_t, current_c, 1 - current_c - current_t],
size=len(grouped_dataset))
grouped_dataset['group_new'] = np.random.choice(['test', 'control', '-'],
p=[new_t, new_c, 1 - new_t - new_c],
size=len(grouped_dataset))
metric = 'promotion_revenue'


test_curr = np.array(grouped_dataset[(grouped_dataset['group_current'] == 'test')][metric])
control_curr = np.array(grouped_dataset[(grouped_dataset['group_current'] == 'control')][metric])

test_new = np.array(grouped_dataset[(grouped_dataset['group_new'] == 'test')][metric])
control_new = np.array(grouped_dataset[(grouped_dataset['group_new'] == 'control')][metric])

MDE_current = get_relative_MDE(test_curr, control_curr, alpha=0.05, beta=0.2)
MDE_new = get_relative_MDE(test_new, control_new, alpha=0.05, beta=0.2)
return MDE_current / MDE_new


Из формулы MDE зачастую мы работаем с равными дисперсиями в выборкам, поэтому можно вынести из под корня константу в виде дисперсии и размера выборки, это вот тут.

Прикольно, что на практических сгенерированных примерах видно, что эти расчеты реально работают и можно использовать для реализации внутри компании, при дизайне / расчета A/B тестов.

Написано еще тут и про прокси-метрики, что их нужно выбирать в зависимости от каждого кейса, про оценку эффекта при переходе от обычной метрики к прокси-метрике, интерпретацию прокси-метрик

+ итоги правильной подготовки сетапа теста, где выбрали

а) сплит 50/50, а не 10/10
б) выбрали прокси-метрику, а не основную (которая обладает меньшей чувствительностью)
в) держать тест не 1, а 7 недель.

🔽 как результат, получили сокращение MDE в 9.2 раза!

Ну и дополнительно рассказали про контр-метрики, в очередной раз упомянули линеаризацию + доверительный интервал для оценки эффекта Ratio-метрик.

В целом, хорошая и ненапряжная статья, которую я вам советую прочитать, если хотите начать разбираться в A/B тестах + подметить для себя что-то новое)

Ставьте 🐳, если понравился пост, делитесь своими мыслями в комментариях.
Please open Telegram to view this post
VIEW IN TELEGRAM