Data Science | Machinelearning [ru]
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM. Личный блог автора - @just_genych По вопросам рекламы или разработки - @g_abashkin РКН: https://vk.cc/cJPGXD
Показати більше📈 Аналітичний огляд Telegram-каналу Data Science | Machinelearning [ru]
Канал Data Science | Machinelearning [ru] (@devsp) у мовному сегменті Російська є активним учасником. На даний момент спільнота об'єднує 20 041 підписників, посідаючи 6 738 місце в категорії Технології та додатки та 33 739 місце у регіоні Росія.
📊 Показники аудиторії та динаміка
З моменту свого створення невідомо, проект продемонстрував стрімке зростання, зібравши аудиторію у 20 041 підписників.
За останніми даними від 14 червня, 2026, канал демонструє стабільну активність. Хоча за останні 30 днів спостерігається зміна кількості учасників на -87, а за останні 24 години на -13, загальне охоплення залишається високим.
- Статус верифікації: Не верифікований
- Рівень залученості (ER): Середній показник залученості аудиторії становить 7.71%. Протягом перших 24 годин після публікації контент зазвичай збирає 4.62% реакцій від загальної кількості підписників.
- Охоплення публікацій: В середньому кожен допис отримує 1 546 переглядів. Протягом першої доби публікація в середньому набирає 926 переглядів.
- Реакції та взаємодія: Аудиторія активно підтримує контент: середня кількість реакцій на один пост – 7.
- Тематичні інтереси: Контент зосереджений навколо ключових тем, таких як llm, nvidia, контекст, openai, архитектура.
📝 Опис та контентна політика
Автор описує ресурс як майданчик для висловлення суб'єктивної думки:
“Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM.
Личный блог автора - @just_genych
По вопросам рекламы или разработки - @g_abashkin
РКН: https://vk.cc/cJPGXD”
Завдяки високій частоті оновлень (останні дані отримано 15 червня, 2026), канал підтримує актуальність та високий рівень охоплення публікацій. Аналітика показує, що аудиторія активно взаємодіє з контентом, що робить його важливою точкою впливу в категорії Технології та додатки.
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 помогает предотвратить переобучение, улучшая обобщающую способность модели. 🖥 Подробнее тут
Вже доступно! Дослідження Telegram за 2025 — головні інсайти року 
