🌟 BM25S — очень быстрая реализация алгоритма BM25 на чистом Python
— pip install bm25s[full]
Это сверхбыстрая библиотека лексического поиска, реализующая BM25 с помощью Scipy (ускорение до 500 раз).
BM25S построена исключительно на Numpy и Scipy, с дополнительными зависимостями для stemming и selection, а также интеграцией с Huggingface Hub, позволяющей вам легко делиться и использовать другие индексы BM25.
Благодаря минимальному количеству зависимостей bm25s позволяет сделать все внутри Python всего за несколько строк.
BM25S позволяет достичь скорости, сравнимой или превышающей скорость ElasticSearch, при этом отпадает необходимость в настройке веб-серверов, установке и запуске Java и использовании абстрактных API.
На графике — относительное ускорение BM25S и Elastic по отношению к rank-bm25, самой популярной реализации BM25 на Python. Скорость рассчитывается как отношение количества запросов в секунду по отношению к rank-bm25.
🖥 GitHub
🤗 Hugging Face
@data_analysis_ml
🌟 Hamilton — библиотека Python для создания направленных ациклических графов (DAG), визуализирующих потоки данных
— pip install sf-hamilton
Чтобы создать граф при помощи Hamilton, ничего особенного не требуется: нужно просто писать обычные функции Python, которые указывают свои зависимости с помощью параметров.
Как раз по этим параметрам Hamilton и построит граф, по которому можно легко увидеть, как преобразуются данные и передаются из одной функции в другую
Hamilton может быть очень полезным инструментом при работе с большими конвейерами данных и в ML-системах
🖥 GitHub
🟡 Доки
🟡 Затестить Hamilton онлайн
@data_analysis_ml
🌟 Lux.jl — фреймворк Julia для Deep Learning
— import Pkg; Pkg.add("Lux")
Lux бесшовно интегрируется с CUDA и AMDGPU, также поддерживается экспериментальная поддержка Metal Hardware.
Фреймворк используется по умолчанию во многих пакетов SciML, включая DiffEqFlux.jl, NeuralPDE.jl и другие.
Lux изначально поддерживает произвольные типы параметров, что делает его совместимым с другими пакетами Julia (и даже с пакетами, не относящимися к Julia).
🖥 GitHub
🟡 Примеры использования
🟡 Доки
@data_analysis_ml
🌟 TabuLa-8B — LLM, созданная на основе Llama 3-8B для генерации табличных данных
TabuLa-8B обучена на корпусе TabLib.
Модель подробно описана в статье "Large Scale Transfer Learning for Tabular Data through Language Modeling".
🤗 Hugging Face
🟡 Arxiv
@data_analysis_ml
🔹 Как осуществлять технический анализ финансовых рынков?
Расскажем на открытом уроке от Otus, посвященный курсу «ML для финансового анализа», 24 июня в 20:00.
✅ В течении часа рассмотрим основные инструменты и техники, используемые на финансовых рынках.
Рассмотрим основы технического анализа: что такое технический анализ и почему это важный навык для всех, кто работает на рынках.
Научитесь читать и интерпретировать различные типы торговых графиков, включая линейные, столбчатые и свечные графики.
✅ Познакомьтесь с основными индикаторами, такими как скользящие средние, RSI и MACD, и узнайте, как они используются для определения тенденций и разворотов.
Оставляйте заявку на курс «ML для финансового анализа» и создайте торгового робота для автоматического проведения операций с оценкой уровня риска
👉 Регистрация на урок и подробности:
https://otus.pw/LbG8/?erid=LjN8KJ52V
⚡️ HelpSteer2 — открытый датасет от Nvidia
На днях Nvidia выкатили HelpSteer2, который позволяет сделать модели фактологически корректными и последовательными, плюс регулирует сложность и многословность их ответов.
При обучении базовой Llama 3 70B на HelpSteer2 модель достигает 88.8% в RewardBench, что делает ее 4-й лучшей Reward-моделью на текущий момент
🤗 Hugging Face
@data_analysis_ml
В следующий раз, когда будете выбирать бенчмарки для оценки модели, ознакомьтесь с этой корреляционной матрицей из статьи MixEval.
Удобно смотреть производительность чат-ботов на арене, идеально подходит для поиска чат-ботов общего назначения.
🌀 MixEval: https://mixeval.github.io
6–9 июля проводим Weekend Offer Analytics
Устроиться в Яндекс за выходные — реально. Ищем крутых аналитиков с опытом работы от 2 лет на Python или C++, готовых работать в офисном или гибридном режиме на территории России или Республики Беларусь.
Подавайте заявку до 3 июля — и всего за 3 дня пройдите все технические собеседования. После сможете пообщаться с девятью нанимающими командами и выбрать ту, которая покажется самой интересной. Если всё сложится хорошо, сразу же пришлём вам офер.
Узнать подробности и зарегистрироваться.
Реклама. ООО "Яндекс". ИНН 7736207543
⚡️ Google Mind gредставили AvatarPopUp!
Этот метод позволяет создавать высококачественные трехмерные аватары людей из одного изображения или текстового запроса всего за 2 секунды 🔥
https://nikoskolot.com/avatarpopup/
@data_analysis_ml
🖥 Вышел NumPy 2.0.0. Самые значительные обновления с 2006 года для Python разработчиков
Вышла новая версия Python-библиотеки для научных вычислений NumPy 2.0.0, предназначенная для работы с многомерными массивами и матрицами.
Она включает обширную коллекцию функций, реализующих различные алгоритмы, связанные с использованием матриц. NumPy считается одной из самых популярных библиотек для научных расчетов. Код библиотеки написан на Python с применением оптимизаций на языке C и распространяется под лицензией BSD.
NumPy 2.0.0 является первым значительным обновлением с 2006 года. В новой версии добавлены новые функции и улучшена производительность, а также внесены изменения в ABI, Python API и C-API, нарушающие обратную совместимость. Например, библиотека SciPy, собранная с NumPy 1.x, потребует перекомпиляции для работы с NumPy 2.0. В некоторых случаях для использования NumPy 2.0 в приложениях потребуется внести изменения в код.
Одно из наиболее значимых изменений связано с сохранением точности скалярных выражений.
Например, выражение “np.float32(3) + 3”
теперь вернет значение типа float32, а не float64.
В выражениях с несколькими типами для результата будет использоваться тип с наивысшей точностью, например, “np.array([3], dtype=np.float32) + np.float64(3)” вернет значение типа float64. Также изменены целочисленные типы по умолчанию на платформе Windows: на 64-разрядных системах теперь используется 64-разрядный целый тип, а на 32-разрядных – 32-разрядный (ранее использовался аналог типа long из C, теперь это эквивалент np.intp).
Некоторые определения в C-API были изменены или удалены, например, структура PyArray_Descr. Максимальное число измерений и аргументов, выставляемое через макросы NPY_MAXDIMS и NPY_MAXARGS, увеличено до 64.
Все комплексные типы переведены на использование стандартных типов из спецификации C99 (cfloat_t, cdouble_t, clongdouble_t). Добавлен новый C API для создания собственных dtype. Также предложены новые упрощённые функции инициализации PyArray_ImportNumPyAPI и PyUFunc_ImportUFuncAPI.
В Python API обеспечено более четкое разделение между публичными и приватными API, представлена новая структура модулей. Около 100 функций, модулей и констант вынесены из основного пространства имен “np”, объявлены устаревшими или удалены. Пространство имен np.lib было очищено. Число объектов в основном пространстве имен сокращено на 10%, а в пространстве имен numpy.lib – на 80%. Пространство имен numpy.core переведено в разряд приватных. Удалены некоторые методы из классов np.ndarray и np.generic. Создано новое пространство имен numpy.stringsf со строковыми операциями.
https://uproger.com/vyshel-numpy-2-0-0-samye-znachitelnye-obnovleniya-s-2006-goda-dlya-python-razrabotchikov/
@data_analysis_ml
🏆 Depth Anything 2 - новая версия модели для анализа сцен, которая определяет глубину каждого пикселя.
Новая модель 10 раз предыдущая SoTA!
💪 Модели различных размеров (от 25 миллионов до 1,3 миллиарда параметров) доступны на Hugging face Hub ✨
https://huggingface.co/collections/depth-anything/depth-anything-v2-666b22412f18a6dbfde23a93
@data_analysis_ml
🔥 Thread — типо Jupyter Notebook, но не совсем, — позволяет генерировать и редактировать код, коммуницируя при этом с GPT
— pip install thread-dev
Thread — это Jupyter Notebook на максималках, в нём можно использовать естественный язык для создания ячеек, редактирования кода, задавать вопросы GPT или исправлять ошибки, при всём этом можно редактировать работать с кодом, как в обычном Jupyter Notebook.
После установки для запуска достаточно прописать thread
или jupyter thread
🖥 GitHub
@data_analysis_ml
Для тех, кто хочет в финтех
Т-Банк растет и зовет сильных специалистов в команду. Условия — мед: задачи нескучные, коллеги недушные. Есть над чем подумать и когда отдохнуть.
Приходите прокачивать навыки, развивать финтех и работать в команде единомышленников. Посмотреть вакансии и откликнуться, если у вас больше двух лет опыта, можно здесь
Реклама. АО «Тинькофф Банк», ИНН 7710140679
Профессия аналитика данных — одна из самых высокооплачиваемых и перспективных в сфере IT.
На курсе «Аналитик данных» от Нетологии вы с нуля освоите необходимые навыки за 7 месяцев под руководством опытных наставников-практиков.
Вы изучите SQL, Python, Power BI — ключевые инструменты для работы с данными. Научитесь использовать статистические методы, строить и проверять гипотезы. Создадите 4 полноценных проекта для своего портфолио и выполните более 20 практических заданий.
А по окончании курса получите диплом о профпереподготовке и сможете претендовать на должность junior-аналитика.
Начните свой путь в сфере аналитики данных — присоединяйтесь к программе:
https://netolo.gy/degZ
Реклама. ООО "Нетология". Erid 2VSb5wEwF9z
🔴 Разработали библиотеку, чтобы быстрее обучать нейросети
YaFSDP оптимизирует использование ресурсов графических процессоров (GPU). Нейросети обучаются быстрее, а требования к вычислительным ресурсам снижаются. Это особенно важно для небольших компаний и научных проектов.
Библиотека рассчитана в первую очередь на большие языковые модели, но также может ускорять и обучение других типов нейросетей, например, рисующих картинки. Исходный код YaFSDP опубликован на GitHub, а на Хабре можно подробнее узнать о разработке библиотеки.
↗️ А зачем вообще большие компании делятся своими разработками с сообществом? Поговорили об этом в одном из выпусков yet another podcast — смотрите на YouTube.
Подписывайтесь ✨ @yandex
⚡️Лучший способ получать свежие обновлении и следить за трендами в разработке на вашем языке. Находите свой стек и подписывайтесь:
C#: t.me/csharp_ci
Машинное обучение: t.me/ai_machinelearning_big_data
АНАЛИЗ Данных: t.me/data_analysis_ml
Хакинг: t.me/linuxkalii
Linux: t.me/linuxacademiya
Базы данных: t.me/sqlhub
C++ t.me/cpluspluc
Golang: t.me/Golang_google
Java: t.me/javatg
React: t.me/react_tg
Javascript: t.me/javascriptv
Мобильная разработка: t.me/mobdevelop
Docker: t.me/+0WdB4uvOwCY0Mjdi
Python: t.me/pythonl
Rust: t.me/rust_code
PHP: t.me/phpshka
Android: t.me/android_its
Big Data: t.me/bigdatai
Devops: t.me/devOPSitsec
Собеседования МЛ: t.me/machinelearning_interview
Python подготовка с собесу: t.me/python_job_interview
МАТЕМАТИКА: t.me/data_math
💼 Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: /channel/addlist/2Ls-snqEeytkMDgy
C++ папка: /channel/addlist/CdBs5DLepLJmZjY6
C# папка: /channel/addlist/u15AMycxRMowZmRi
Java папка: /channel/addlist/ZM3J6oFNAnRlNWU6
FRONTEND папка: /channel/addlist/mzMMG3RPZhY2M2Iy
Linux папка: /channel/addlist/w4Doot-XBG4xNzYy
😆ИТ-Мемы: t.me/memes_prog
🇬🇧Английский: t.me/english_forprogrammers
🧠ИИ: t.me/vistehno
📕Ит-книги бесплатно: /channel/addlist/BkskQciUW_FhNjEy
🌟 Эти 94 строки кода — всё, что нужно для обучения нейросети
Всё остальное — просто для повышения эффективности и т.д.
Это код engine.py
из проекта Micrograd.
Micrograd – это небольшая реализация нейронной сети от Карпати, написанная на чистом Python без библиотек, в которой вычислительными единицами выступают не векторы и матрицы, а скалярные величины.
Micrograd представляет из себя комбинацию нескольких взаимодополняющих частей:
— небольшого построителя и оценивателя выражений на основе графа;
— автоматической дифференциации в обратном режиме для того же самого графа вычислений;
— строительных блоков нейронной сети для многослойного перцептрона
🖥 Код со скрина из micrograd
🟡 Пошаговое создание micrograd
🟡 Пост Андрея Карпати в X
@data_analysis_ml
Цифры без бизнеса — это математика. Бизнес без цифр — это авантюра. Цифры в основе бизнеса — это анализ данных.
Аналитик данных собирает, анализирует, структурирует данные — и благодаря этому помогает бизнесу решать проблемы и принимать важные решения. Поэтому профессия входит в топ-5 на рынке.
Стать аналитиком данных за 5 месяцев вы можете на курсе от онлайн-школы KARPOV.COURSES.
Вас всему научат с нуля. Преподаватели — практикующие спецы, которые знают, какие навыки нужны для успешной карьеры, поэтому обучение включает в себя и теорию, и отработку знаний на практических задачах.
На курсе вы:
🔹Освоите Python и SQL;
🔹Научитесь визуализировать данные;
🔹Освоите теорию вероятности, статистику и A/B тесты;
🔹Сформируете продуктовое видение и понимание бизнеса и продукта.
Школа поможет вам с трудоустройством: подготовить резюме и получить первый оффер. Как показывает статистика, 89% студентов уже нашли интересную работу.
Присоединяйтесь к курсу со скидкой 5% по промокоду DAMML до 30.06.2024: https://clc.to/erid_LjN8JwdhF
🌟 PySR — open-source инструмент для высокопроизводительной символьной регрессии на Python и Julia
— pip install pysr
PySR создан для решения задачи символьной регрессии, т.е. для нахождения интерпретируемого символьного выражения, которое корректно описывает наблюдаемые данные.
PySR был разработан с нуля, чтобы быть
(1) как можно более высокопроизводительным,
(2) как можно более настраиваемым, гибким и
(3) простым в использовании.
Параллельно с PySR развивается библиотека Julia SymbolicRegression.jl, которая отвечает за нагруженные компоненты PySR, в частности за алгортм поиска.
🖥 GitHub
@data_analysis_ml
🖥 Daft — фреймворк для ETL, аналитики и ML/AI в нагруженных системах
— pip install getdaft
Daft — это распределенный движок запросов для обработки больших данных на Python; реализован на Rust.
Многие идеи Daft позаимствовал из Apache Arrow In-Memory
Особенности Daft
— встроенный мощный оптимизатор переписывает запросы, чтобы сделать их максимально эффективными
— есть полная интеграция с такими системами как Apache Iceberg
— имеется поддержка изображений, URL, тензоров и других самых разных объектов
— рекордная производительность ввода-вывода для интеграции с облачным хранилищем S3
🖥 GitHub
🟡 Доки
@data_analysis_ml
🌟 TextGrad — open-source фреймворк для реализации обратного распространения, опирающегося на текстовую обратную связь
— pip install textgrad
TextGrad может оптимизировать неструктурированные переменные, такие как текст. Пусть у нас есть исходное решение математической задачи, мы хотим, чтобы это решение выглядело лучше. Вот как можно реализовать это в коде с помощью TextGrad и GPT-4o:
tg.set_backward_engine("gpt-4o")
initial_solution = """To solve the equation 3x^2 - 7x + 2 = 0, we use the quadratic formula:
x = (-b ± √(b^2 - 4ac)) / 2a
a = 3, b = -7, c = 2
x = (7 ± √((-7)^2 - 4 * 3(2))) / 6
x = (7 ± √(7^3) / 6
The solutions are:
x1 = (7 + √73)
x2 = (7 - √73)"""
# Define the variable to optimize, let requires_grad=True to enable gradient computation
solution = tg.Variable(initial_solution,
requires_grad=True,
role_description="solution to the math question")
# Define the optimizer, let the optimizer know which variables to optimize, and run the loss function
loss_fn = tg.TextLoss("You will evaluate a solution to a math question. Do not attempt to solve it yourself, do not give a solution, only identify errors. Be super concise.")
optimizer = tg.TGD(parameters=[solution])
loss = loss_fn(solution)
🌟 d3rlpy — библиотека Python, предоставляющая реализации алгоритмов Deep Learning
— pip install d3rlpy
d3rlpy уделяет большое внимание простоте использования; эта библиотека предназначена не только для исследователей, но и для практиков, работающих над обычными проектами.
🖥 GitHub
🟡 Доки
🟡 Arxiv
@data_analysis_ml
🌟 AXLearn — open-source библиотека от Apple, созданная на основе JAX и XLA для разработки больших Deep Learning моделей
— pip install 'axlearn[apple-silicon]'
Система конфигурации AXLearn позволяет пользователям создавать модели из многократно используемых строительных блоков и интегрировать их с другими библиотеками, такими как Flax и Hugging Face transformers.
AXLearn создана для масштабирования — она поддерживает обучение моделей с сотнями миллиардов параметров на тысячах GPU.
AXLearn также поддерживает работу в публичных облаках и предоставляет инструменты для развертывания и управления моделями.
Поддерживает широкий спектр приложений, включая NLP, CV и распознавание речи, и содержит базовые конфигурации для обучения современных моделей.
🖥 GitHub
🟡 Доки
@data_analysis_ml
🌟 R2R — open-source RAG фреймворк
— pip install r2r
R2R создан, чтобы помочь разработчикам преодолеть разрыв между локальными экспериментами с LLM и созданием масштабируемого, готового к продакшену приложения.
R2R, созданный для работы с пользовательскими приложениями RAG, обеспечивает достаточную производительность и возможности для большинства случаев использования RAG.
Фичи R2R:
— позволяет легко развернуть RAG-приложение в проде
— гибкий в настройке, легко конфигурируется
🖥 GitHub
🟡 Доки
@data_analysis_ml
⚡️ Понимание Deep Learning
Отличная книга и масса Colab'ов от MIT для полного понимания Deep Learning
Определённо это один из лучших ресурсов по DL
🟡 Understanding Deep Learning
📎 PDF
@data_analysis_ml
📚Grog book - это приложение streamlit, которое позволяет создавать книги из просптов с помощью Llama3 в Groq.
Оно неплохо работает с научно-популярными книгами и создает каждую га=лавы за считанные секунды.
▪Github
▪Приложение
@data_analysis_ml
🔥 Реализация архитектуры nanoGPT в электронной таблице — для полного понимания, как работает типичный трансформер
Внутренние операции любого трансформера можно свести к простым матричным вычислениям — собственно это и реализовано в этой таблице.
Таблица воспроизводит структуру nanoGPT от Андрея Карпати с ~85000 параметрами.
И эта таблица представляет собой систему предсказания следующих символов на основе предыдущих, то есть для простоты каждый токен — это символ; для уменьшения сложности токенизируются только буквы A/B/C.
На прикреплённых изображениях — механизм самовнимания и полный вид всей таблицы
🖥 GitHub
🟡 Тред в X
@data_analysis_ml
🌟 «R for Data Science» — open-source книга для дата-сайентистов
Здесь описывается практически всё, что только может пригодится среднестатистическому специалисту Data Science;
вот некоторые из раскрываемых тем:
— разведочный анализ данных (EDA)
— преобразование данных, удаление пропущенных значений, выбросов
— веб-скрепинг, сбор данных из открытых источников
📎 Книга «R for Data Science»
@data_analysis_ml
🌟 Cognee — open-source фреймворк для работы с LLM, с графами и для векторного поиска
— pip install cognee
Cognee поддерживает множество инструментов для различных операций:
— LanceDB или Neo4j для локального хранения графов и не только
— Qdrant и Weaviate для хранения векторных данных
— в качестве LLM можно использовать Anyscale или Ollama
🖥 GitHub
🟡 Доки
🟡 Попробовать в Colab'е
🟡 Обзор на YouTube
@data_analysis_ml
🌟 Merlion — ML-фреймворк для анализа временных рядов
— pip install salesforce-merlion[dashboard]
Merlion — это фреймворк Python для интеллектуального анализа временных рядов.
Merlion представляет собой набор ML-алгоритмов, позволяющих загружать и преобразовывать данные, строить и обучать модели, проводить обработку результатов моделирования и оценивать эффективности модели.
Merlion позволяет решать такие задачи как прогнозирование, обнаружение аномалий (как для одномерных, так и для многомерных временных рядов).
🖥 GitHub
🟡 Доки
@data_analysis_ml