Data Science | Machinelearning [ru]
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. Личный блог автора - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD
Mostrar más📈 Análisis del canal de Telegram Data Science | Machinelearning [ru]
El canal Data Science | Machinelearning [ru] (@devsp) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 20 041 suscriptores, ocupando la posición 6 738 en la categoría Tecnologías y Aplicaciones y el puesto 33 739 en la región Rusia.
📊 Métricas de audiencia y dinámica
Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 20 041 suscriptores.
Según los últimos datos del 14 junio, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de -87, y en las últimas 24 horas de -13, conservando un alto alcance.
- Estado de verificación: No verificado
- Tasa de interacción (ER): El promedio de interacción de la audiencia es 7.71%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 4.62% de reacciones respecto al total de suscriptores.
- Alcance de las publicaciones: Cada publicación recibe en promedio 1 546 visualizaciones. En el primer día suele acumular 926 visualizaciones.
- Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 7.
- Intereses temáticos: El contenido se centra en temas clave como llm, nvidia, контекст, openai, архитектура.
📝 Descripción y política de contenido
El autor describe el recurso como un espacio para expresar opiniones subjetivas:
“Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM.
Личный блог автора - @just_genych
По вопросам рекламы или разработки - @g_abashkin
РКН: https://vk.cc/cJPGXD”
Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 15 junio, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.
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"
• Git, Python, базы данных
• Уровень дохода не указан | от 1 года
Data Scientist в команду RecSys (middle)
• Машинное обучение, SQL, Python, PostgreSQL, Git, TensorFlow, ClickHouse, Apache Airflow, Pandas
• Уровень дохода не указан | от 2 лет
Аналитик данных в сфере HR, middle
• SQL, Power BI, анализ данных, математическая статистика
• Уровень дохода не указан | от 2 лет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}")
Для начала напомним, что Positional Encoding (кодирование позиций слов/токенов) нужен, чтобы передать модели или трансформеру информацию о позициях слов — относительную или же абсолютную.Как развивалось позиционное кодирование: 📆 2017 год С появлением ванильного трансформера позиции токенов кодировались тригонометрической функцией, значение которой зависело от позиции и просто прибавлялось к эмбеддингу соответсутвующего слова. Плюсы — мы умеем кодировать любую позицию, в том числе превосходящую максимальную длину, на которой тренировались. Минусы — не очень работает на длинных последовательностях, да и вообще не очень хорошо работает. 📆 2018 год Потом появился гугловский BERT, а вместе с ним новый подход позиционного кодирования: авторы предложиди выкинуть тригонометрию и вместо этого добавить в модель ещё один обучаемый слой nn.Embedding — такой же, как для получения эмбеддингов слов. Он должен кодировать — то есть, превращать в вектор — позицию токена. Итоговый вектор токена, который будет передан следующим слоям модели — это сумма векторов токена и его позиции. Работает лучше, чем тригонометрия, но при этом никак не экстраполируется: так как векторы выучиваемые, то для позиций, превосходящих максимальную тренировочную длину, мы кодировать не умеем — она вне ключей нашего словаря эмбеддингов, так же, как мы не можем закодировать и незнакомый модели токен. В это же время впервые появилась идея о том, что нам важны не столько абсолютные позиции слов, сколько относительные. Авторы статьи решили кодировать не абсолютную позицию, а только относительную (Relative Position Encoding, или RPE), то есть близость каждой пары токенов. Здесь же появилась идея, что позицонное кодирование стоит добавлять не в момент создания эмбеддингов слов, а на этапе Attention, добавляя знание о позициии в queries и keys.
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)
1. Регуляризация: • L1 и L2-регуляризация добавляют штраф к сложным моделям. • Уменьшают коэффициенты модели, предотвращая избыточное подстраивание. 2. Dropout (для нейронных сетей): • Исключение случайных нейронов на этапе обучения. 3. Снижение сложности модели: • Использование меньшего числа признаков или более простых алгоритмов. 4. Увеличение данных: • Генерация новых данных или увеличение объёма обучающей выборки.➡️ Пример:
from sklearn.linear_model import Ridge from sklearn.model_selection import train_test_split from sklearn.datasets import load_diabetes # Загружаем данные data = load_diabetes() X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2, random_state=42) # Создаём модель с регуляризацией (Ridge) ridge = Ridge(alpha=1.0) ridge.fit(X_train, y_train) # Оцениваем качество train_score = ridge.score(X_train, y_train) test_score = ridge.score(X_test, y_test) print(f"Train Score: {train_score}, Test Score: {test_score}")🗣️ В этом примере Ridge-регрессия с параметром регуляризации alpha=1.0 помогает предотвратить переобучение, улучшая обобщающую способность модели. 🖥 Подробнее тут
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
