17988
Статьи на тему data science, machine learning, big data, python, математика, нейронные сети, искусственный интеллект (artificial intelligence) Англоязычный канал по DS и Machinelearning -https://t.me/ds_international По сотрудничеству - @g_abashkin
⚙️ Как я учился писать промпты для RAG пайплайна. Разбор 3-го места на AI Journey 24 E-com AI assistant
Статья описывает опыт создания RAG-пайплайна с использованием Gigachat API для участия в AI Journey. Автор делится инсайтами, полученными в процессе разработки ассистента для рекомендаций товаров, который занял 3-е место.
Читать...
❓ Как работает кросс-валидация в ML?
Кросс-валидация — это техника оценки модели, которая помогает избежать переобучения и лучше оценить её обобщающую способность. В классической k-блочной кросс-валидации данные разбиваются на k равных частей, и модель обучается k раз, каждый раз используя одну часть для тестирования и остальные для обучения.
➡️ Пример применения кросс-валидации с использованием библиотеки scikit-learn:
from sklearn.model_selection import cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
data = load_iris()
X, y = data.data, data.target
clf = RandomForestClassifier()
scores = cross_val_score(clf, X, y, cv=5)
print(f'Средняя точность: {scores.mean()}')
🗣️ Кросс-валидация помогает лучше понять, как модель будет работать на новых данных, улучшая её обобщение.
🔎 Подборка вакансий для джунов
Junior Data Analyst
🟢Python, SQL, ETL, Airbyte, dbt
🟢Уровень дохода не указан | Без опыта
Junior Data Scientist (A/B-testing)
🟢Python, Spark, Airflow, MLFlow, Postgres, Git, DVC, Docker
🟢Уровень дохода не указан | 1–3 года опыта
Младший Data engineer
🟢Python, SQL, Debezium, Airflow
🟢Уровень дохода не указан | 1–3 года опыта
➡️ Семантическая сегментация: самый полный гайд
Статья раскрывает, как семантическая сегментация помогает машинам «видеть», разбивая изображение на классы объектов. Обсуждаются её применение в автономных авто, медицине и обработке спутниковых снимков для точного распознавания контекста.
Читать...
👩💻 Задачка по Python
Создайте Python-скрипт, который анализирует временной ряд, выявляя тренд и сезонные колебания. Используйте для этого библиотеку statsmodels и визуализируйте результат с помощью matplotlib. Скрипт должен принимать данные в формате CSV и выводить график, на котором будут отображены исходные данные, тренд и сезонные компоненты.
➡️ Пример:
• python app.py analyze timeseries.csv — анализирует временной ряд из файла timeseries.csv, разлагает его на тренд и сезонные компоненты и строит график с визуализацией.
Решение задачи ⬇️
import sysЧитать полностью…
import pandas as pd
import matplotlib.pyplot as plt
from statsmodels.tsa.seasonal import seasonal_decompose
def analyze_timeseries(file_path):
# Чтение данных из CSV
data = pd.read_csv(file_path, parse_dates=['Date'], index_col='Date')
# Проверка, что в данных есть столбец 'Value' для анализа
if 'Value' not in data.columns:
print("Файл должен содержать столбец 'Value' с числовыми значениями.")
sys.exit(1)
# Декомпозиция временного ряда
decomposition = seasonal_decompose(data['Value'], model='additive', period=12)
# Визуализация исходного ряда, тренда, сезонной и остаточной составляющих
plt.figure(figsize=(10, 8))
plt.subplot(411)
plt.plot(data['Value'], label='Исходные данные')
plt.legend(loc='best')
plt.subplot(412)
plt.plot(decomposition.trend, label='Тренд')
plt.legend(loc='best')
plt.subplot(413)
plt.plot(decomposition.seasonal, label='Сезонность')
plt.legend(loc='best')
plt.subplot(414)
plt.plot(decomposition.resid, label='Остатки')
plt.legend(loc='best')
plt.tight_layout()
plt.show()
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Укажите путь к файлу CSV для анализа.")
sys.exit(1)
file_path = sys.argv[1]
analyze_timeseries(file_path)
🔎 Подборка зарубежных вакансий
Senior Data Scientist (Recommender Systems)
🟢Python, PyTorch, PySpark
🟢от 5 000 до 6 500 € до вычета налогов | 3–6 лет опыта
Senior Data Engineer в международный проект HealthTech
🟢Python, Apache Spark, AWS, SQL, NoSQL
🟢Уровень дохода не указан | 3–6 лет опыта
Data Engineer
🟢DBT, Amazon Redshift, Fivetran, Python, ETL, Amazon Web Services, SQL
🟢Уровень дохода не указан | 3–6 лет опыта
✔️ Простой и быстрый тест LLM для прототипа: сравниваем 16 open-source-моделей на запросе с разной температурой
В статье рассказывается, как быстро протестировать 16 LLM для создания текстовых прототипов, даже если вы не в теме ML. Берём несколько моделей, сравниваем результаты, оцениваем, подходит ли под задачу.
Читать...
➡️ ИИ в логистике: отслеживаем транспортные средства на производственной территории с помощью нейросети
В статье описан путь от пет-проекта до системы для трекинга транспорта: нейросети, компьютерное зрение и инструменты, позволяющие «видеть» и анализировать производственные процессы.
Читать...
📈 Подборка статей для вашей карьеры
• Мои Red-Flags при устройстве в IT-компании: Как не стать гребцом. Часть 2
• Как строить карьеру в корпорации
• История: работа в чешском Red Hat
• Циничные заметки о карьере в IT от «гейткипера»
• Моя петиция EB-1A на грин-карту талантов, одобренная с первой попытки
🤔 Реальная эффективность Qwen 2.5 Coder против ChatGPT (или можно ли сэкономить 20$?)
В статье будет рассмотрена практическая проверка возможностей модели Qwen 2.5 Coder на основе задачи перевода кода из VB в C#. Узнаем, сможет ли она справиться с нюансами цикла и корректно адаптировать формулу.
Читать...
👩💻 FlexiPrompt: Удобное создание динамических промптов в Python
Статья знакомит с FlexiPrompt — лёгкой библиотекой для генерации промптов в Python при работе с языковыми моделями. Рассмотрены её преимущества: быстрая интеграция, гибкая настройка диалога и возможность создания нескольких агентов в одной LLM.
Читать...
🤔 3750 дней разработки AI или почему боты всё ещё не захватили покер
Статья рассматривает создание AI для покера (Техасского безлимитного холдема) и анализирует его сложность как модели бизнес-отношений. Обсуждаются метрики и стратегии, которые игроки используют в изменяющемся контексте для принятия решений.
Читать...
👩💻 Как работает модуль os в Python для работы с файловой системой?
Модуль os в Python предоставляет инструменты для взаимодействия с операционной системой. С его помощью можно управлять файлами и директориями, получать информацию о системе и переменных окружения, а также выполнять системные команды. Этот модуль особенно полезен для кроссплатформенных сценариев.
➡️ Пример:
import os
# Получение текущей директории
current_dir = os.getcwd()
print('Текущая директория:', current_dir)
# Создание новой директории
os.mkdir('new_folder')
print('Создана директория new_folder')
🗣 os позволяет удобно и кроссплатформенно работать с файловой системой, выполнять команды и настраивать окружение.Читать полностью…
🔎 Подборка вакансий для джунов
Data-аналитик в области временных рядов (Junior)
🟢Python, pandas, numpy, scipy, matplotlib, seaborn, SQL
🟢от 40 000 ₽ до вычета налогов | 1–3 года опыта
Продуктовый аналитик/junior product менеджер
🟢SQL, Google Analytics, Tableau, Power BI, BigQuery, Looker, UML, Use Case Analysis
🟢от 100 000 ₽ на руки | 1–3 года опыта
Data-инженер
🟢SQL, C#, MS Visual Studio, Big Data
🟢от 140 000 ₽ на руки | 1–3 года опыта
⚙️ Неувядающая классика или «чёрный ящик»: кто кого в битве за прогноз. Глава вторая. Продолжение
Статья продолжает разбор моделирования температурного временного ряда с двойной сезонностью. Основное внимание уделено подбору оптимальных параметров сезонной модели САРПСС для точного описания данных.
Читать...
📝 Подборка вакансий для мидлов
LLM Engineer• Проектирование и создание инфраструктуры для запуска ИИ-агентов, включая работу с RAG, tools, механизмами памяти• Уровень дохода не указан | Требуемый опыт не указан
Tech Lead Data Engineer• Oracle, Greenplum, ETL, DWH• до 430 000 ₽ | от 2 лет опыта
Бизнес-аналитик / Системный аналитик• BPMN, UML, Анализ данных, Разработка ТЗ• до 150 000 ₽ | Средний (Middle)
⚙️ Как обеспечить Data Quality терабайтов данных и зачем: опыт СИБУРа
Статья посвящена опыту СИБУРа в создании DQ-сервиса для обеспечения качества данных. Рассматриваются задачи DQ, архитектура решения и универсальные подходы, применимые для анализа данных в крупных компаниях.
Читать...
👩💻 Задачка по Python
Напишите Python-скрипт, который принимает путь к большому CSV-файлу и подсчитывает количество строк (записей) в файле без загрузки его целиком в память. Скрипт должен быть оптимизирован для работы с большими файлами.
➡️ Пример:
python count_rows.py large_file.csv
Количество строк: 3
import csvЧитать полностью…
import sys
def count_rows(file_path):
with open(file_path, 'r', encoding='utf-8') as file:
reader = csv.reader(file)
# Используем enumerate для подсчёта строк, исключая заголовок
row_count = sum(1 for _ in reader) - 1 # Минус 1 для исключения заголовка
return row_count
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Использование: python count_rows.py <file_path>")
sys.exit(1)
file_path = sys.argv[1]
try:
result = count_rows(file_path)
print(f"Количество строк: {result}")
except Exception as e:
print(f"Ошибка: {e}")
🔥 Самые интересные статьи за последние дни:
• Всё, что вы хотели знать о Django Channels
• Сборка Python проекта с uv и Docker
• DE-1. DIY ассистент на LLM
• Ваши генераторные выражения сломаны: чиним и разбираемся
• Всё, что вы хотели знать о Django Channels
📊 ИИ в Крипто-Торговле: Возможен ли Успех?
Статья описывает процесс создания успешных ИИ-моделей для автоматизированной крипто-торговли на ByBit. Рассматриваются три стратегии, их разработка, оптимизация и результаты, превысившие убытки.
Читать...
🧠 Эмоциональное принятие решений в LLM: исследование, которое мы показали на NeurIPS 2024
На NeurIPS 2024 группа «ИИ в промышленности» представила исследование по эмоциональным большим языковым моделям (LLM). Рассмотрены два подхода: строгая оптимальность и эмоциональный алайнмент. Как LLM правильно эмулируют эмоции? Узнаем!
Читать...
👩💻 Как работает __name__ == "__main__" в Python?
Конструкция if __name__ == "__main__" определяет, выполняется ли скрипт как основная программа или импортируется в качестве модуля. Это позволяет запускать код только при непосредственном запуске скрипта, исключая его выполнение при импорте.
➡️ Пример:
def greet():
print("Hello from greet!")
if __name__ == "__main__":
greet() # Этот вызов выполнится только при запуске скрипта напрямую
🗣 В этом примере greet() будет вызвана, если файл запускается напрямую. Если скрипт импортируется как модуль, greet() не вызовется, сохраняя модульную структуру кода.
Приглашаем вас на открытый вебинар: «Технологии за современными LLM»
https://otus.pw/nI3x/
⏰Дата: 20 января в 18:00 мск
Спикер: Мария Тихонова
📚На занятии мы обсудим:
+ Какие современные LLM сегодня используют на практике.
+ Основные концепции языкового моделирования и продвинутые языковые модели.
+ Методы и технологии, благодаря которым создатели ChatGPT совершили прорыв.
+ Что представляет из себя задача языкового моделирования
+ Языковые модели, которые сегодня лежат в основе всех NLP методов
🔥Результаты урока:
- Вы поймете, где применяются методы NLP
- Узнаете основные тренды и перспективы развития методов NLP
- Узнаете современное состояние области в связи с быстрым развитием LLM
Участники открытых уроков получат скидку🎁 на онлайн-курс «NLP / Natural Language Processing»
👉Регистрируйтесь на открытый вебинар по ссылке: https://otus.pw/nI3x/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, erid: 2VtzqxXrK6s
📝 Подборка вакансий для сеньоров
Database Administrator• ClickHouse, PostgreSQL, Debian/Ubuntu, Systemd, TCP/IP, iptables, SSH, x509-сертификаты, Bash, LVM• до 5 000 $ | от 3 лет опыта
Data engineer• SQL, Hive-SQL, Spark, AirFlow, Git, DWH, реляционные и NoSQL базы данных• Уровень дохода не указан | от 2 лет опыта
Data-аналитик (Senior)• SQL, PostgreSQL, Greenplum, ETL, DWH, оконные функции, оптимизация запросов• Уровень дохода не указан | от 2 лет опыта
Станьте инженером данных с нуля за 5 месяцев, обучаясь на реальных задачах бизнеса.
Основная проблема обучений – оторванность от задач реального бизнеса. На курсе учился складывать 2+2, а на работе – сразу отправляют считать интегралы.
Курс-симулятор от Simulative построен таким образом, что вы сразу погружаетесь в настоящую работу: например, вы будете формировать продуктовые рекомендации для клиентов крупного телекома с помощью Clickhouse.
Обучение охватывает весь стек, который нужен специалисту: SQL, Python, Metabse, Linux, Docker, Airflow, Clickhouse, Hadoop и Spark. А также готовит к любому собеседованию – в курс включены тестовые задания, пробные интервью (технические и с HR) и многое другое.
С трудоустройством поможем, а на VIP тарифе преподаватели и HR спроектируют вам персональный трек обучения и за руку доведут до оффера. Часть стоимости курса вы оплачиваете только, когда найдёте работу.
Еще успеваете записаться в текущий поток.
По промокоду DEV дарим скидку 12%
👩💻 Задачка по Python
Напишите функцию, которая принимает список чисел и возвращает все значения, которые являются выбросами. Выбросы определяются как значения, которые находятся ниже первого квартиля (Q1) минус 1.5 * IQR или выше третьего квартиля (Q3) плюс 1.5 * IQR, где IQR — межквартильный размах.
➡️ Пример:
Входной список:
[10, 12, 14, 15, 15, 16, 16, 16, 17, 18, 19, 100]
Ожидаемый вывод:
[100]
import numpy as npЧитать полностью…
def find_outliers(data):
q1 = np.percentile(data, 25)
q3 = np.percentile(data, 75)
iqr = q3 - q1
lower_bound = q1 - 1.5 * iqr
upper_bound = q3 + 1.5 * iqr
return [x for x in data if x < lower_bound or x > upper_bound]
# Пример использования:
input_data = [10, 12, 14, 15, 15, 16, 16, 16, 17, 18, 19, 100]
result = find_outliers(input_data)
print(result) # Ожидаемый результат: [100]
📝 Подборка вакансий для мидлов
Data-аналитик• Python, SQL, Apache Hadoop, Kubernetes, Docker• Уровень дохода не указан | от 2 лет опыта
Data-инженер• Python, Greenplum, Apache Airflow, Apache Spark, ETL, Apache Hadoop, Linux, PostgreSQL, Kubernetes, SQL• Уровень дохода не указан | от 2 лет опыта
Data Analyst• Python, Apache Spark, SQL, Apache Hadoop• Уровень дохода не указан | от 2 лет опыта
🤔 Prompt Me One More Time. Учим LLM строить графы знаний из текстов
Статья описывает метод, разработанный для автоматического наполнения графов знаний с помощью LLM, что снижает вероятность «галлюцинаций» и повышает точность ответов. Решение Prompt Me One More Time подробно представлено на TextGraphs-17 конференции ACL-2024.
Читать...
👩💻 Задачка по 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'}
Приглашаем вас на открытый вебинар: «Similarity Text Search (STS) - оценка текстовой схожести и семантический анализ»
⏰Дата: 14 января в 20:00 мск
Спикер: Андрей Коняев
🧩На вебинаре вы узнаете:
- Что такое Similarity Text Search
- Зачем это нужно и где применяется.
- Подходы и реальные кейсы, а так же метрики для оценки качества STS
- На практике посмотрим кейсы для русского и английского языков.
🔥В результате вебинара вы узнаете про задачу STS и её применение в современном NLP.
📚Вебинар будет полезен:
- Практикующим Data Scientist и ИТ-специалистам, которые хотят глубже погрузиться в область NLP
- Тем, кто хочет узнать, как реализовать смысловой поиск вместо поиска по полному соответствию
- Людям, освоившими основы машинного обучения, но желающими развиваться в области Data-Science.
Участники всех открытых уроков получат скидку🎁 на большое обучение
👉Регистрируйтесь на открытый вебинар по ссылке: https://vk.cc/cHeLms
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576