Статьи на тему data science, machine learning, big data, python, математика, нейронные сети, искусственный интеллект (artificial intelligence) Англоязычный канал по DS и Machinelearning -https://t.me/ds_international По сотрудничеству - @g_abashkin
🔧 ТОП-10 опенсорсных инструментов для работы с ИИ в 2025 году
Детальный разбор 10 самых перспективных инструментов для работы с ИИ в 2025 году. От создания умных ассистентов до построения мощных RAG-систем — разбираем возможности, сравниваем производительность, безопасность и простоту интеграции каждого решения.
Читать...
👨💻Хранилища данных. Обзор технологий и подходов к проектированию
В этой статье будут рассмотрены основные подходы к проектированию архитектуры хранилищ данных (DWH), эволюция архитектур, взаимосвязь Data Lake, Data Factory, Data Lakehouse, Data Mesh c DWH, преимущества и недостатки подходов к моделированию данных.
Читать...
👩💻 Генератор случайных паролей с настройками
Напишите функцию, которая генерирует случайный пароль заданной длины. Пароль должен быть сформирован на основе пользовательских требований:•
Использовать ли цифры.•
Использовать ли буквы верхнего и/или нижнего регистра.•
Использовать ли специальные символы.
➡️ Пример:
password = generate_password(length=12, use_digits=True, use_uppercase=True, use_lowercase=True, use_specials=False)
print(password)
# Пример вывода: A1b2C3d4E5f6
import randomЧитать полностью…
import string
def generate_password(length, use_digits=True, use_uppercase=True, use_lowercase=True, use_specials=True):
if length < 1:
raise ValueError("Длина пароля должна быть больше 0")
# Формируем набор символов
character_pool = ""
if use_digits:
character_pool += string.digits
if use_uppercase:
character_pool += string.ascii_uppercase
if use_lowercase:
character_pool += string.ascii_lowercase
if use_specials:
character_pool += "!@#$%^&*()-_=+[]{}|;:,.<>?/"
if not character_pool:
raise ValueError("Нужно выбрать хотя бы один тип символов")
# Генерация пароля
return ''.join(random.choice(character_pool) for _ in range(length))
# Пример использования
password = generate_password(length=12, use_digits=True, use_uppercase=True, use_lowercase=True, use_specials=True)
print(password)
➡️ Будущее LLM в XS, S, M и других размерах
В статье обсуждаются подходы к обучению ИИ оптимально использовать свои ресурсы: от минимальной мощности для простых задач до максимума для сложных. Разбираем концепции «я не знаю» и запросов помощи.
Читать...
🤔 Будущее LLM: 7 прогнозов на 2025 год
Что нового ждёт языковые модели в 2025 году? Обсудим прогнозы: расширение возможностей ИИ, их внедрение в бизнес и жизнь. Узнайте, чего ожидать и почему Джарвис пока останется мечтой.
Читать...
⚙️ Что такое @staticmethod
и @classmethod
в Python, и чем они отличаются?
Декораторы @staticmethod
и @classmethod
используются для создания методов, которые не требуют экземпляра класса. @staticmethod
— это метод, который не зависит от экземпляра или самого класса, а @classmethod
получает доступ к самому классу через первый параметр cls
.
➡️ Пример:
class MyClass:
@staticmethod
def static_method():
return "Это статический метод"
@classmethod
def class_method(cls):
return f"Это метод класса {cls.__name__}"
# Использование
print(MyClass.static_method()) # Это статический метод
print(MyClass.class_method()) # Это метод класса MyClass
🗣️ В этом примере static_method ничего не знает о классе, в то время как class_method может взаимодействовать с классом, к которому он принадлежит. Используйте их в зависимости от того, нужно ли вам взаимодействие с классом.
📈 Подборка статей для вашей карьеры
• В какой момент профессия программиста свернула не туда?
• Офис Intel в Израиле отменил бесплатный кофе
• Войти в IT – в 37 и с дипломом филфака
• Путь к мастерству: Как стать успешным разработчиком
• Галера от HH или джуны по-дешевке
E-CUP возвращается. Реальные данные. Масштабные проекты. Большие призы
Решайте ML-задачи в стиле Ozon Tech. Девять победителей разделят призовой фонд соревнования — 7 200 000 рублей 🔥
Тест-драйв работы в e-com бигтехе стартует здесь.
🗓 Регистрация: https://cnrlink.com/ecup25dsml
💻 Формат участия: онлайн
👥 Команда: от 1 до 5 человек
🎯 Для кого: Data Scientists, ML-специалисты, аналитики данных, дата-инженеры, специалисты Big Data и разработчики, которые интересуются ML/DS.
Что вас ждёт:
🔹 Работа над проектом для миллионов пользователей на основе данных от ведущего e-com в России.
🔹 Обмен опытом с экспертами Ozon Tech.
🔹 Эксклюзивный мерч для победителей и подарки для самых активных участников.
🔹 Питчинг — 13 сентября на конференции E-CODE. Ozon Tech предоставит финалистам билеты и оплатит поездку.
Три трека E-CUP:
1️⃣ Рекомендации: предсказание следующей покупки пользователя
2️⃣ Логистика: автопланирование курьеров
3️⃣ Контроль качества: автоматическое выявление поддельных товаров
Регистрация на платформе Codenrock: https://cnrlink.com/ecup25dsml
➡️ Multichannel Keyword Spotting for Noisy Conditions.
Исследователи Яндекса рассказали о технологии, которая распознает голосовые команды даже на фоне сильного шума. Ключевая идея — attention-механизм, который обрабатывает сразу два входных сигнала: один — после шумоподавления, второй — после эхоподавления. Технология уже работает в устройствах Яндекса, а теперь доступна и разработчикам по всему миру. Исследование приняли на Interspeech 2025 — ведущую конференцию по речевым технологиям.
Читать...
⚙️ Пишем сервис инференса ML-модели на go, на примере BERT-а
Статья объясняет, как внедрить ML-модель, обученную на Python, в сервис на Go, используя ONNX. Рассматривается пример работы с моделью seara/rubert-tiny2-russian-sentiment для анализа сентимента текста.
Читать...
🤖 Как мы сделали клиентскую поддержку интернет-магазина действительно умной: опыт внедрения RAG-бота
Статья описывает разработку «умного» помощника для клиентской поддержки интернет-магазина. Рассматриваются проблемы, с которыми сталкивался клиент, и пути их решения с помощью ИИ.
Читать...
☝ Машинное обучение для начинающих: Введение в нейронные сети
Этот пост предназначен для абсолютных новичков и предполагает НУЛЕВЫЕ предварительные знания машинного обучения. Мы разберемся, как работают нейронные сети, и реализуем одну из них с нуля на Python.
Читать...
👩💻 Удаление выбросов из набора данных
Напишите функцию, которая принимает pandas.DataFrame
и название столбца, а затем возвращает новый DataFrame
, в котором выбросы (значения, выходящие за пределы 1.5 межквартильного размаха) удалены.
Пример:
import pandas as pd
data = pd.DataFrame({
"values": [10, 12, 15, 100, 14, 13, 11, 102, 16]
})
cleaned_data = remove_outliers(data, "values")
print(cleaned_data)
# Ожидаемый результат:
# values
# 0 10
# 1 12
# 2 15
# 4 14
# 5 13
# 6 11
# 8 16
import pandas as pdЧитать полностью…
def remove_outliers(df, column):
Q1 = df[column].quantile(0.25)
Q3 = df[column].quantile(0.75)
IQR = Q3 - Q1
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR
return df[(df[column] >= lower_bound) & (df[column] <= upper_bound)]
# Пример использования:
data = pd.DataFrame({
"values": [10, 12, 15, 100, 14, 13, 11, 102, 16]
})
cleaned_data = remove_outliers(data, "values")
print(cleaned_data)
🚀 Анализ текстов задерживает скорость разработки?
Разбираемся, как классический трансформер BERT справляется с миллионами документов за доли секунды!
На открытом уроке «Решаем задачи текстовой классификации с помощью BERT» мы расскажем:
🔹 Внутреннее устройство BERT
🔹 Методы дообучения и интеграции в реальные проекты
🔹 Практические примеры от эксперта OTUS
📅 Когда: 30 июля, 18:00 МСК
🎟 Регистрация бесплатная — зарегистрируйтесь сейчас и получите скидку на программу обучения «NLP / Natural Language Processing»: https://vk.cc/cO4sa6
Не пропустите шанс повысить свою экспертизу в области NLP!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
👩💻 Поиск числа с максимальной суммой цифр
Напишите функцию, которая принимает список положительных чисел и возвращает число с наибольшей суммой цифр. Если таких чисел несколько, вернуть первое из них.
Пример:
numbers = [123, 456, 789, 234]
result = max_digit_sum(numbers)
print(result)
# Ожидаемый результат: 789 (7+8+9=24, это максимальная сумма)
def max_digit_sum(numbers):Читать полностью…
def digit_sum(n):
return sum(int(digit) for digit in str(n))
return max(numbers, key=digit_sum)
# Пример использования:
numbers = [123, 456, 789, 234]
result = max_digit_sum(numbers)
print(result) # Ожидаемый результат: 789
👩💻 Задачка по Python
Напишите функцию, которая принимает список email-адресов и возвращает уникальные домены из этого списка. Домен — это часть адреса после символа @
.
➡️ Пример:
["user1@example.com", "user2@test.com", "user3@example.com", "user4@sample.com"]
#{"example.com", "test.com", "sample.com"}
def get_unique_domains(emails):Читать полностью…
domains = {email.split('@')[1] for email in emails}
return domains
# Пример использования:
emails = ["user1@example.com", "user2@test.com", "user3@example.com", "user4@sample.com"]
result = get_unique_domains(emails)
print(result) # Ожидаемый результат: {'example.com', 'test.com', 'sample.com'}
🔥 Самые интересные статьи за последние дни:
• KAN: Kolmogorov–Arnold Networks
• Стандартное отклонение для полных чайников
• Почему галлюцинируют нейросети [и что с этим делают]
• Понимает ли Vision Llama импрессионистов?
• Что ищет он в краю далёком? Как найти смысл жизни с PostgreSQL
💎Кратко про Ensemble методы с примерами
В этой статье мы рассмотрим три основных подхода: Bagging, Boosting и Stacking, и посмотрим, как их реализовать на Python.
Читать...
⚡️ Ошибки должны быть громкими
Тихие ошибки — это как протечка трубы: они долго не видны, пока не станет плохо.
👉 Совет: логируй и сигнализируй о любых неожиданных ситуациях. Лучше пусть код упадёт с понятным сообщением в деве, чем тихо сломает данные в проде.
✔️ Системы ценностей больших языковых моделей
Разбираю, как LLM умудряются обзавестись политикой, любимыми расами и списками «жертв». От первых восторгов до шока прошло меньше двух лет — теперь копаем, что внутри.
Читать...
⚙️ Как устроена Лаборатория Инноваций СИБУРа и зачем она нужна
Как применять ИИ и цифровизацию в гигантской промышленной компании с десятками заводов? Узнайте, как СИБУР реализует более 30 успешных кейсов и работает с сотнями гипотез в Лаборатории ИИ.
Читать...
➡️ Добро пожаловать в CAMELoT
В статье рассказывается о новой архитектуре CAMELoT, которая помогает большим языковым моделям обрабатывать длинные последовательности, не требуя повторного обучения. Она использует ассоциативную память для улучшения производительности.
Читать...
🔥 Самые интересные статьи за последние дни:
• Что читали на Хабре в 2024 году: анализ статей с Node.js, Google Sheets и каплей ChatGPT
• Поднимаем в облаке расшифровку речи в текст с помощью нейросетей. VPS на пределе возможностей
• Стоит ли ChatGPT о1 Pro своих денег? Небольшой тест-драйв модели
• Возможности LLM и RAG на примере реализации бота для поддержки клиентов
• Гетерогенные вычисления: проектирование и разработка вычислительной системы для нейросетей
👩💻 Удаление выбросов из набора данных
Напишите функцию, которая принимает pandas.DataFrame
и название столбца, а затем возвращает новый DataFrame
, в котором выбросы (значения, выходящие за пределы 1.5 межквартильного размаха) удалены.
Пример:
import pandas as pd
data = pd.DataFrame({
"values": [10, 12, 15, 100, 14, 13, 11, 102, 16]
})
cleaned_data = remove_outliers(data, "values")
print(cleaned_data)
# Ожидаемый результат:
# values
# 0 10
# 1 12
# 2 15
# 4 14
# 5 13
# 6 11
# 8 16
import pandas as pdЧитать полностью…
def remove_outliers(df, column):
Q1 = df[column].quantile(0.25)
Q3 = df[column].quantile(0.75)
IQR = Q3 - Q1
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR
return df[(df[column] >= lower_bound) & (df[column] <= upper_bound)]
# Пример использования:
data = pd.DataFrame({
"values": [10, 12, 15, 100, 14, 13, 11, 102, 16]
})
cleaned_data = remove_outliers(data, "values")
print(cleaned_data)
Компьютерное зрение, студкемп, Нижний Новгород
Яндекс Образование совместно с Неймарком и ФКН ВШЭ подготовили программу теории и практики ввода компьютерного зрения в робототехнику и автономные системы. Лекции и личное общение с экспертами, командные проекты и практические задания.
После студкемпа получите возможность начать карьеру в computer science и практические навыки работы.
Чтобы участвовать, нужно зарегистрироваться по ссылке до 14 августа. На студкемп может попасть любой студент, из любой точки РФ, но есть отбор. Победителям организаторы оплатят и дорогу, и проживание.
⚙️ Что такое модуль shutil
в Python и зачем он используется?
Модуль shutil
предоставляет функции для работы с файлами и директориями, такие как копирование, перемещение и удаление. Он полезен для автоматизации задач управления файлами.
➡️ Пример:
import shutil
# Копирование файла
shutil.copy('source.txt', 'destination.txt')
# Перемещение файла
shutil.move('destination.txt', 'folder/destination.txt')
🗣️ В этом примере shutil.copy копирует файл, а shutil.move перемещает его в другую директорию. Это облегчает выполнение операций с файлами и папками.
➡️ DeepSeek AI: От инъекции промпта до захвата аккаунта
Статья рассказывает о новой AI-модели DeepSeek-R1-Lite, созданной для логических рассуждений. Рассматриваются её возможности, тестирование и перспективы применения в задачах анализа и вычислений.
Читать...
➡️ Машинное обучение: Линейная регрессия. Теория и реализация. С нуля. На чистом Python
В этой статье я рассказываю про линейную регрессию, свойства, которыми должны обладать данные для модели, процесс обучения, регуляризацию, метрики качества. Кроме чистой теории я показываю как это все реализовать. Я рассказываю все в своем стиле и понимании - с инженерной точки зрения, с точки зрения того, как реализовывать с нуля.
Читать...
🔥 Самые интересные статьи за последние дни:
• Не бойтесь потоков в Python, они не кусаются
• Рубрика: VPS на пределе возможностей. LLM на CPU с 12Gb RAM
• Предвзятость русскоязычных LLM: кого машина считает «обычным человеком»?
• Семантический веб: краткий обзор технологий и инструментов
• Инструмент обеспечения качества данных: от теории к практике
⚙️ Physics-based и data-driven моделирование
Статья объясняет различия между физически обоснованными моделями и моделями, основанными на данных, с примерами задач машинного обучения. Рассматривается подход к обработке данных, выбору моделей и их обучению.
Читать...