Data Science | Machinelearning [ru] – Telegram
Data Science | Machinelearning [ru]
20.1K subscribers
631 photos
39 videos
29 files
3.52K links
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM.

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

РКН: https://vk.cc/cJPGXD
Download Telegram
⚙️ Умножение троичных матриц для нейросетей

Статья исследует использование троичных значений (-1, 0, 1) в нейросетевых матрицах. Рассматриваются методы хранения тритов с использованием 32-битной арифметики и подходы к их быстрому умножению через оптимизацию памяти.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
👩‍💻 Задачка по 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
5
Forwarded from .ml
Ранее мы обсуждали с вами RoPE, а теперь поговорим о его модификациях. Собрали много интересного, поэтому будет целых три поста по этой теме. Enjoy!

Для начала напомним, что Positional Encoding (кодирование позиций слов/токенов) нужен, чтобы передать модели или трансформеру информацию о позициях слов — относительную или же абсолютную.


Как развивалось позиционное кодирование:

📆 2017 год
С появлением ванильного трансформера позиции токенов кодировались тригонометрической функцией, значение которой зависело от позиции и просто прибавлялось к эмбеддингу соответсутвующего слова.

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

Минусы — не очень работает на длинных последовательностях, да и вообще не очень хорошо работает.

📆 2018 год
Потом появился гугловский BERT, а вместе с ним новый подход позиционного кодирования: авторы предложиди выкинуть тригонометрию и вместо этого добавить в модель ещё один обучаемый слой nn.Embedding — такой же, как для получения эмбеддингов слов. Он должен кодировать — то есть, превращать в вектор — позицию токена.

Итоговый вектор токена, который будет передан следующим слоям модели — это сумма векторов токена и его позиции. Работает лучше, чем тригонометрия, но при этом никак не экстраполируется: так как векторы выучиваемые, то для позиций, превосходящих максимальную тренировочную длину, мы кодировать не умеем — она вне ключей нашего словаря эмбеддингов, так же, как мы не можем закодировать и незнакомый модели токен.

В это же время впервые появилась идея о том, что нам важны не столько абсолютные позиции слов, сколько относительные. Авторы статьи решили кодировать не абсолютную позицию, а только относительную (Relative Position Encoding, или RPE), то есть близость каждой пары токенов. Здесь же появилась идея, что позицонное кодирование стоит добавлять не в момент создания эмбеддингов слов, а на этапе Attention, добавляя знание о позициии в queries и keys.
2
🤖 Как развернуть LLM с помощью vLLM и TorchServe

Хочешь запустить большую языковую модель в продакшене, но не знаешь, как совместить простоту развертывания с промышленной надежностью? Комбинация vLLM и TorchServe решает эту задачу. Она обеспечивает как простой запуск, так и продвинутые возможности для масштабирования.

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

Напишите скрипт, который удаляет дублирующиеся строки из CSV-файла на основе указанного столбца и сохраняет результат в новый файл.

➡️ Пример:

python remove_duplicates.py input.csv output.csv column_name
id,name,age
1,John,30
2,Jane,25
4,Bob,35


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

import pandas as pd
import sys

if len(sys.argv) < 4:
print("Использование: python remove_duplicates.py <input_file> <output_file> <column_name>")
sys.exit(1)

input_file = sys.argv[1]
output_file = sys.argv[2]
column_name = sys.argv[3]

try:
df = pd.read_csv(input_file)
df = df.drop_duplicates(subset=[column_name])
df.to_csv(output_file, index=False)
print(f"Дубликаты удалены. Результат сохранён в {output_file}")
except Exception as e:
print(f"Ошибка: {e}")
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👎21
🔎 Подборка вакансий для джунов

Junior Data Analyst
🟢SQL, Python, опыт в медицине
🟢от 1 500 до 2 000 $ | 1–3 года

Data Scientist
🟢GA4, Shopify, ClickFunnels, Klaviyo, Kajabi
🟢от 1 000 до 1 350 $ | 1–3 года

Junior Data Scientist
🟢Python (pandas, numpy, scikit-learn), статистика, комбинаторика
🟢от 70 000 до 100 000 ₽ | 1–3 года
Please open Telegram to view this post
VIEW IN TELEGRAM
2
✔️ Как нейросети меняют работу дизайнеров

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
📝 Подборка вакансий для мидлов

Скоринг Middle Data Scientist
Git, Python, базы данных
Уровень дохода не указан | от 1 года

Data Scientist в команду RecSys (middle)
Машинное обучение, SQL, Python, PostgreSQL, Git, TensorFlow, ClickHouse, Apache Airflow, Pandas
Уровень дохода не указан | от 2 лет

Аналитик данных в сфере HR, middle
SQL, Power BI, анализ данных, математическая статистика
Уровень дохода не указан | от 2 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
✔️ 30k аудиозаписей: наводим порядок

Статья рассказывает, как организовать и обработать огромный архив аудиозаписей дневников, созданных задолго до эпохи современных speech-to-text технологий. Рассматриваются инструменты и подходы для упорядочивания данных.

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

Напишите функцию, которая принимает строку и возвращает новую строку, из которой удалены все гласные буквы (a, e, i, o, u в любом регистре).

➡️ Пример:

print(remove_vowels("Hello World"))  # Ожидаемый результат: "Hll Wrld"
print(remove_vowels("Python is great")) # Ожидаемый результат: "Pythn s grt"


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

def remove_vowels(s):
vowels = "aeiouAEIOU"
return ''.join(char for char in s if char not in vowels)

# Пример использования:
print(remove_vowels("Hello World")) # Ожидаемый результат: "Hll Wrld"
print(remove_vowels("Python is great")) # Ожидаемый результат: "Pythn s grt"
Please open Telegram to view this post
VIEW IN TELEGRAM
6🐳3👎2
🤔 Прогнозирование продаж с использованием библиотеки Prophet

Статья посвящена прогнозированию продаж FTTB-FMC для ежедневной отчетности. Рассматриваются подходы к анализу данных, ключевые KPI и методы, используемые для прогнозирования продаж в сегменте ШПД и конвергентных продуктов.

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

Product Analyst
SQL, Amplitude, Анализ данных, Веб-аналитика
от 2 000 $ | более 3 лет

Дата инженер
Python, Apache Hadoop, Apache Spark, Apache Airflow, Apache Kafka
Уровень дохода не указан | от 2–3 лет

Senior Data Scientist в команду ценообразования
Python, SQL
Уровень дохода не указан | от 3 лет
Please open Telegram to view this post
VIEW IN TELEGRAM
1
⚙️ Инфраструктура для Data-Engineer BI-tools

В этой статье я хотел бы показать куда уходят данные и что с ними происходит, когда пайплайны дата-инженеров заканчивают работу.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
1🐳1
⚙️ Что такое декораторы в Python и как они работают?

Декораторы — это функции в Python, которые принимают другую функцию в качестве аргумента и возвращают новую функцию с добавленным поведением. Это удобный способ модификации или расширения функциональности без изменения исходного кода функции.

➡️ Пример:

# Декоратор для логирования вызовов функции
def log_call(func):
def wrapper(*args, **kwargs):
print(f"Вызов функции {func.__name__} с аргументами: {args}, {kwargs}")
result = func(*args, **kwargs)
print(f"Результат: {result}")
return result
return wrapper

# Применение декоратора
@log_call
def add(a, b):
return a + b

add(3, 5)


🗣️ В этом примере декоратор log_call добавляет логирование вызовов и результатов функции add. Декораторы позволяют делать код более модульным и удобным для повторного использования.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
✔️ Big Data мертвы, да здравствуют Smart Data

Давайте рассмотрим концепцию Smart Data и выясним, действительно ли Big Data превращаются во что-то более интеллектуальное.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥61👎1🐳1
🔥 Дообучаем языковую модель GPT2 с помощью Torch

Статья углубляется в дообучение языковых моделей, используя DistilGPT2 на данных QuyenAnhDE/Diseases_Symptoms. Рассматривается процесс настройки модели для генерации симптомов на основе заболеваний, с возможностью расширения логики.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥2
🧠 Задачи быстрее решаются на бумаге

Залип на архитектуре или не можешь построить логическую цепочку? Иногда монитор — не лучший инструмент.

👉 Совет: возьми ручку и лист. Нарисуй схему, напиши шаги алгоритма, обозначь зависимости. Физическое взаимодействие с задачей включает другие области мозга и часто помогает увидеть то, что ускользает на экране. Старый трюк, который работает всегда.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍204🔥1
🔎 Подборка зарубежных вакансий

Team Lead Data Scientist
🟢Python, SQL, Machine Learning, Big Data
🟢от 5 000 до 7 250 $ | более 6 лет

Аналитик данных (Data Analyst)
🟢SQL, Yandex DataLens, Tableau, Power BI
🟢от 150 000 до 200 000 ₽ | 1–3 года

Junior Marketplace Researcher/Team Assistant
🟢Google Sheets, English (basic), Data Analysis
🟢500 $ | Без опыта
Please open Telegram to view this post
VIEW IN TELEGRAM
2
📊 ИИ в Крипто-Торговле: Возможен ли Успех?

Статья описывает процесс создания успешных ИИ-моделей для автоматизированной крипто-торговли на ByBit. Рассматриваются три стратегии, их разработка, оптимизация и результаты, превысившие убытки.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥2