Data Science | Machinelearning [ru]
17.9K subscribers
461 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
⚙️ Как мы создаём Visionatrix: упрощая ComfyUI

В этой статье мы расскажем о нашем опыте работы с ComfyUI и разработке Visionatrix — надстройки, которая упрощает генерацию медиа. Мы обсудим ключевые проблемы, с которыми сталкиваются пользователи, наш подход к их решению, а также вкратце поделимся тем, как мы использовали ChatGPT и Claude для ускорения разработки в условиях ограниченного времени.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🤔 Насколько хороши LLM?

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

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

Senior Data Engineer
🟢ClickHouse, Aerospike, TiDB, Grafana, Kafka
🟢до 5 000 $ | 3–6 лет​

Senior Data Engineer / Data Platform Architect
🟢S3, MinIO, Parquet, DeltaLake, PostgreSQL, ClickHouse, Python, Airflow, dbt, Docker, Kubernetes, Kafka, RabbitMQ
🟢до 350 000 ₽ | 3–6 лет​

Senior Data Scientist (LLM)
🟢Python, глубокое обучение, LLM, чат-боты
🟢от 350 000 до 450 000 ₽ | 3–6 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
1
⚙️ Под микроскопом: 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