Data Science | Machinelearning [ru]
17.9K subscribers
460 photos
14 videos
29 files
3.32K links
Статьи на тему data science, machine learning, big data, python, математика, нейронные сети, искусственный интеллект (artificial intelligence)

По вопросам рекламы или разработки - @g_abashkin

РКН: https://vk.cc/cJPGXD
Download Telegram
⚙️ Под микроскопом: AI Product Hack

Статья анализирует результаты AI Product Hack, рассматривая спорное судейство и кейс компании Raft по мониторингу токсичного контента в AI-продуктах. Исследуются риски и последствия неконтролируемого поведения LLM в реальных проектах.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥1
👩‍💻 Как работает __name__ == "__main__" в Python?

Конструкция if __name__ == "__main__" определяет, выполняется ли скрипт как основная программа или импортируется в качестве модуля. Это позволяет запускать код только при непосредственном запуске скрипта, исключая его выполнение при импорте.

➡️ Пример:
def greet():
print("Hello from greet!")

if __name__ == "__main__":
greet() # Этот вызов выполнится только при запуске скрипта напрямую


🗣 В этом примере greet() будет вызвана, если файл запускается напрямую. Если скрипт импортируется как модуль, greet() не вызовется, сохраняя модульную структуру кода.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52
👀 Распознавание ж/д пикетных столбиков по фотографиям с беспилотника на основе PyTorch и YOLOv5

Статья раскрывает процесс использования БПЛА и нейросетей для точного распознавания объектов на ортофотопланах. Описаны этапы подготовки данных, разметки и обучения сети на примере поиска пикетных столбиков на ж/д перегонах. Исходный код доступен на GitHub.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
2
✔️ Простой и быстрый тест LLM для прототипа: сравниваем 16 open-source-моделей на запросе с разной температурой

В статье рассказывается, как быстро протестировать 16 LLM для создания текстовых прототипов, даже если вы не в теме ML. Берём несколько моделей, сравниваем результаты, оцениваем, подходит ли под задачу.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
🕳 Не избегай «странных» багов — изучай их до конца

Столкнулся с багом, который исчезает после перезапуска? Или ведёт себя непоследовательно? Проще списать на случайность. Но это ловушка.

👉 Совет: такие баги — твои лучшие учителя. Разбери их до основания, даже если потратишь на это день. Ты прокачаешься в логике, научишься работать с пограничными случаями и будешь увереннее в своём коде.
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2🔥1
🛍 Как базовые знания кодинга и нейросетей сэкономили нам больше 15 млн ₽ на Wildberries [скрины]

Статья раскрывает процесс полной автоматизации создания карточек товаров для маркетплейсов, используя нейросети, Photoshop и немного креативного подхода. Описаны практические методы, которые экономят тысячи рублей на огромном ассортименте.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍1🔥1
👩‍💻 Задачка по 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]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
🖥 Руководство по созданию приложения для поиска данных на основе агента GraphRAG

Статья описывает приложение, объединяющее GraphRAG и AutoGen-агентов с локальными LLM от Ollama для автономного встраивания и вывода. Рассмотрены ключевые аспекты: интеграция знаний, настройка LLM, вызов функций и интерактивный интерфейс.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2👎1🔥1
👩‍💻 Задачка по Python

Напишите функцию, которая принимает DataFrame и заменяет отсутствующие значения (NaN) в каждом числовом столбце на среднее значение этого столбца. Если столбец содержит только NaN, оставьте его без изменений.

➡️ Пример:

   feature1  feature2  feature3
0 1.0 10.0 NaN
1 2.0 NaN NaN
2 NaN 30.0 NaN
3 4.0 40.0 NaN

feature1 feature2 feature3
0 1.00 10.0 NaN
1 2.00 26.7 NaN
2 2.33 30.0 NaN
3 4.00 40.0 NaN


Решение задачи ⬇️

import pandas as pd

def fill_missing_with_mean(df):
numeric_columns = df.select_dtypes(include=['float', 'int'])
for column in numeric_columns:
if df[column].notna().any(): # Проверяем, есть ли значения не NaN
df[column] = df[column].fillna(df[column].mean())
return df

# Пример использования:
data = pd.DataFrame({
'feature1': [1.0, 2.0, None, 4.0],
'feature2': [10.0, None, 30.0, 40.0],
'feature3': [None, None, None, None]
})

result = fill_missing_with_mean(data)
print(result)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥41👍1
🔎 Подборка вакансий для джунов

Data engineer (junior)
🟢SQL, Linux, Scala (желательно), понимание ООП, ФП, MapReduce, архитектуры Hadoop YARN, HDFS, Apache Spark
🟢от 70 000 до 140 000 ₽ | Без опыта​

DATA-аналитик/Аналитик данных (Junior)
🟢T-SQL (MS SQL), Python (pandas, SQLAlchemy, requests), ETL, Excel, Power BI, DAX (приветствуется)
🟢95 000 ₽ | 1–3 года

Data Scientist (Junior)
🟢Python, SQL, машинное обучение, статистика, анализ данных
🟢до 150 000 ₽ | 1–3 года
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🖥 Ведущий разработчик ChatGPT и его новый проект — Безопасный Сверхинтеллект

Кратко о том, как Суцкевер стал не просто сооснователем OpenAI, а мозгом ChatGPT, почему ушёл в новый проект и зачем вообще создавать "безопасный сверхинтеллект".

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👎32🔥2
⚙️ Что такое One-Hot Encoding в Data Science и зачем он используется?

One-Hot Encoding — это способ преобразования категориальных признаков в числовые. Он создаёт бинарные столбцы для каждого уникального значения категории. Это важно, потому что большинство алгоритмов машинного обучения не работают напрямую с текстовыми значениями.

➡️ Пример:

import pandas as pd

df = pd.DataFrame({'Цвет': ['красный', 'синий', 'зелёный']})

encoded = pd.get_dummies(df)
print(encoded)


🗣️ В этом примере get_dummies() преобразует колонку Цвет в три бинарных признака: Цвет_красный, Цвет_синий, Цвет_зелёный. Для каждой строки только один из них равен 1, остальные — 0.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥1
🔎 Подборка вакансий для джунов

​Data Scientist (Middle)
🟢Python, SQL, Pandas, NumPy, Matplotlib
🟢Уровень дохода не указан | 3–6 лет​

Data Engineer (Middle)
🟢Python, Rust, SQL, ClickHouse, PostgreSQL, Greenplum, Airflow, Dagster, Prefect, Docker, Kubernetes
🟢от 200 000 ₽ | 1–3 года​

Data Scientist
🟢Python, SQL, A/B тесты, MLflow, DVC, Apache Airflow, Hadoop, Spark, LLM, NLP
🟢Уровень дохода не указан | 3–6 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
👎131🐳1
🖥 Как работает Трансформер: очень простое описание

Вот очень простое объяснение для тех, кто не хочет вдаваться в сложную математику, но и не готов принимать эту ключевую технологию как магию, которая просто работает. Конечно, никакого волшебства тут и нет — идея на самом деле довольно проста..

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥1
👩‍💻 Постройте логистическую регрессию вручную

Напишите простую реализацию логистической регрессии с нуля (без sklearn) для бинарной классификации. Это поможет лучше понять, как работает один из самых базовых алгоритмов в машинном обучении.

Решение задачи🔽

import numpy as np

# Сигмоида
def sigmoid(z):
return 1 / (1 + np.exp(-z))

# Функция логистической регрессии
def logistic_regression(X, y, lr=0.1, epochs=1000):
m, n = X.shape
X = np.c_[np.ones(m), X] # добавляем bias
theta = np.zeros(n + 1)

for _ in range(epochs):
z =
np.dot(X, theta)
h = sigmoid(z)
gradient =
np.dot(X.T, (h - y)) / m
theta -= lr * gradient

return theta

# Предсказание
def predict(X, theta):
X = np.c_[np.ones(X.shape[0]), X]
return sigmoid(
np.dot(X, theta)) >= 0.5

# Пример
X = np.array([[1], [2], [3], [4]])
y = np.array([0, 0, 1, 1])

theta = logistic_regression(X, y)
print(predict(X, theta)) # [False False True True]
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1
🖥 Про разработку LLM: какие ещё есть справочники и кукбуки

В статье — разбор, почему собирать платформу инференса LLM с нуля не всегда разумно, и как MWS GPT помогает запускать большие языковые модели проще, быстрее и без лишнего сумасшествия.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🐳21🔥1
⚙️ Неувядающая классика или «чёрный ящик»: кто кого в битве за прогноз. Глава вторая. Продолжение

Статья продолжает разбор моделирования температурного временного ряда с двойной сезонностью. Основное внимание уделено подбору оптимальных параметров сезонной модели САРПСС для точного описания данных.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥1
🔎 Подборка вакансий для сеньоров

​Ведущий Python разработчик
🟢Python, Django, Pydantic, SQL, NoSQL, AWS, Docker, Kubernetes, asyncio, aiohttp, RabbitMQ, Kafka
🟢Уровень дохода не указан | 3–6 лет​

Ведущий менеджер AI (Data Scientist)
🟢Python, машинное обучение, SQL, A/B тесты, NLP, deep learning, RNN, трансформеры, MLOps, DVC, MLflow, Airflow, Hadoop, Spark, LangChain, LangGraph, LLM
🟢Уровень дохода не указан | 3–6 лет

​Senior Data Analyst
🟢SQL, Python, Excel, BI tools (Tableau, PowerBI, Metabase)
🟢Уровень дохода не указан | 3–6 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
1