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

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

РКН: https://vk.cc/cJPGXD
Download Telegram
👩‍💻 Парсинг и подсчёт количества слов в текстовом файле

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

Пример:

# Содержимое файла example.txt:
# "Hello, world! This is a test. Hello again."

result = count_words_in_file("example.txt")
print(result)
# Ожидаемый результат:
# {'hello': 2, 'world': 1, 'this': 1, 'is': 1, 'a': 1, 'test': 1, 'again': 1}


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

import string
from collections import Counter

def count_words_in_file(file_path):
with open(file_path, 'r', encoding='utf-8') as f:
text =
f.read().lower()
text = text.translate(str.maketrans('', '', string.punctuation))
words = text.split()
return dict(Counter(words))

# Пример использования
result = count_words_in_file("example.txt")
print(result)
Please open Telegram to view this post
VIEW IN TELEGRAM
👎32👍1🔥1🐳1
🧠 Как нейросети, RL и байесовскую оптимизацию стали использовать на ускорителях заряженных частиц

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

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

Data Engineer
Python, CI/CD, Apache Spark, Apache Hadoop
от 250 000 до 320 000 ₽ | от 2 лет опыта

Data Scientist (E-com)
Python, SQL
Уровень дохода не указан | от 1 года опыта

Data Scientist (middle)
Python, SQL, A/B тестирование, Математическая статистика
Уровень дохода не указан | от 1 года опыта
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🤔 Топология в нейросетях?

Когда говорят о математике в ML, чаще всего вспоминают Байесовские методы и тензоры. Но математика в машинном обучении может затрагивать и фундаментальные направления, как топологический анализ данных (TDA) — ту самую науку про бублики и ленточки.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
4
⚙️ Что такое logging в Python?

logging — это встроенный модуль Python для создания логов, которые помогают отлаживать и мониторить работу приложений.

➡️ Пример:

import logging

# Настройка базового уровня логирования
logging.basicConfig(level=logging.INFO)

# Создание лога
logging.info("Приложение запущено")
logging.warning("Это предупреждение!")
logging.error("Произошла ошибка")


🗣️ В этом примере модуль logging создаёт сообщения разного уровня важности. Логирование позволяет отслеживать работу приложений и находить проблемы в коде.


🖥 Подробнее тут
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥1
Кто такой разметчик данных и сколько он зарабатывает? Все, что вам нужно знать о профессии

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1🐳1
👩‍💻 Линейная регрессия и её регуляризация в Scikit-learn

Линейная регрессия — это метод обучения с учителем, который предсказывает значение y на основе признаков X. Основное допущение — линейная зависимость y от Xi, что позволяет оценить y через математическое выражение.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43🔥1🐳1
💡 Пиши код так, чтобы не пришлось его объяснять

Тебя уже дважды спрашивали, как работает твой код, а ты сам еле вспоминаешь?

👉 Совет: если код требует объяснения — значит, его можно улучшить. Улучши имена переменных, избавься от хитрых решений, добавь комментарии только там, где действительно нужно. Хороший код читается, как книга, а не как зашифрованное послание.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72🐳1
➡️ Что такое технология TTS, как устроена и каких сферах используется синтез речи

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
4🐳1
📨 Пример использования программы для парсинга e-mail адресов с сайтов, созданный ИИ

Сегодня делимся программой для парсинга e-mail с сайтов, созданной за 30 минут с помощью ИИ от Rokitok. Это показывает, как ИИ ускоряет задачи, на которые раньше уходили дни или большие бюджеты.

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

Создайте Python-приложение, которое принимает путь к CSV-файлу с историческими данными о ценах акций (дата, цена закрытия) и предсказывает, будет ли цена акций расти или падать на следующий день, используя простую линейную регрессию. Программа должна выводить прогноз в консоль и сохранять модель в файл model.pkl.

➡️ Пример:

python app.py predict_stock prices.csv — предсказывает изменение цены акций на следующий день.

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

import sys
import pandas as pd
from sklearn.linear_model import LinearRegression
import pickle

def predict_stock(file):
data = pd.read_csv(file)
X = data.index.values.reshape(-1, 1)
y = data['Close'].values

model = LinearRegression()
model.fit(X, y)

next_day = [[len(X)]]
prediction = model.predict(next_day)

with open('model.pkl', 'wb') as f:
pickle.dump(model, f)

print(f'Прогноз на следующий день: {"Рост" if prediction > y[-1] else "Падение"}')

if __name__ == "__main__":
if len(sys.argv) != 3 or sys.argv[1] != 'predict_stock':
print('Использование: python
app.py predict_stock <файл.csv>')
else:
predict_stock(sys.argv[2])
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2
☁️ Как обучить ИИ в облаке

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

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

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

➡️ Пример:

python app.py data.csv — выводит важные признаки.

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

import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split

def feature_importance(file):
data = pd.read_csv(file)
X = data.drop(columns=['target'])
y = data['target']

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

model = RandomForestClassifier()
model.fit(X_train, y_train)

importance = pd.Series(model.feature_importances_, index=X.columns).sort_values(ascending=False)
print("Важные признаки:\n", importance)

if __name__ == "__main__":
import sys
if len(sys.argv) != 2:
print("Использование: python
app.py <файл.csv>")
else:
feature_importance(sys.argv[1])
Please open Telegram to view this post
VIEW IN TELEGRAM
3
🔎 Подборка вакансий для джунов

Системный аналитик junior
🟢UML, BPMN, API, MongoDB
🟢от 60 000 ₽ | 1–3 года

Junior Data Scientist \ Аналитик
🟢SQL, PostgreSQL, MariaDB, ClickHouse, Python, Pandas, Git
🟢от 50 000 до 60 000 ₽ | 1–3 года

Data-аналитик в области временных рядов (Junior)
🟢Python, Pandas, NumPy, SciPy, Matplotlib, Seaborn, SQL
🟢от 247 000 ₽ | 1–3 года
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1🔥1
🤔 В чём различия между Data Science, машинным обучением, ИИ, глубоким обучением и Data Mining

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

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
7
Как обработать пропущенные данные?

Пропущенные данные — частая проблема в Data Science, особенно в реальных данных. Чтобы правильно обработать такие данные, можно использовать стратегии заполнения пропусков (например, средним значением или медианой) или удалить строки/столбцы с пропусками.

➡️ Пример:
import pandas as pd
import numpy as np

data = {'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, 8]}
df = pd.DataFrame(data)

# Заполнение пропусков средним значением
df['A'].fillna(df['A'].mean(), inplace=True)

print(df)


🗣️ Пропущенные данные могут искажать результаты анализа, поэтому их нужно обрабатывать перед моделированием.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71👎1
📝 Подборка вакансий для мидлов

Data Engineer
SQL, Python, bash, Airflow, NiFi, PostgreSQL, GreenPlum, Clickhouse, Redis, Kafka, Git, Linux
Уровень дохода не указан | Опыт работы: 3–6 лет

Data аналитик (Виртуальные ассистенты)
SQL, Big Data, Python, библиотеки для анализа данных
Уровень дохода не указан | Опыт работы: 1–3 года

Data Scientist (Скоринг/моделирование)
Python, SQL, Hadoop, методы машинного обучения
Уровень дохода не указан | Опыт работы: 1–3 года
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🤖 42 секунды и 5 запросов: как взламывают генеративные ИИ-модели

Ты знал, что злоумышленникам для взлома генеративных ИИ достаточно всего 42 секунды и пяти запросов? В этой статье мы разберем, как это происходит, какие уязвимости существуют и как защитить свои системы от подобных атак.

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

Создайте Python-скрипт, который читает большой CSV-файл построчно, фильтрует строки по заданному критерию и подсчитывает агрегированные данные на основе указанного столбца. Скрипт должен эффективно обрабатывать файл, используя потоковое чтение (без загрузки файла целиком в память) и выводить итоговую статистику в консоль.

➡️ Пример:

python process_data.py data.csv age 30 — фильтрует строки, где значение в столбце age больше 30, и подсчитывает общее количество таких записей и среднее значение в другом числовом столбце, например, salary.

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

import csv
import sys

def process_large_csv(file_path, filter_column, threshold, aggregate_column):
count = 0
total_sum = 0.0

with open(file_path, 'r', encoding='utf-8') as file:
reader = csv.DictReader(file)

for row in reader:
# Преобразование значений для фильтрации и агрегации
try:
filter_value = float(row[filter_column])
aggregate_value = float(row[aggregate_column])
except ValueError:
continue # Пропускаем строки с некорректными данными

# Фильтрация строк по заданному условию
if filter_value > threshold:
count += 1
total_sum += aggregate_value

# Вывод итоговой статистики
if count > 0:
average = total_sum / count
print(f"Обработано записей: {count}")
print(f"Среднее значение {aggregate_column} для записей, где {filter_column} > {threshold}: {average:.2f}")
else:
print("Записи, соответствующие условиям фильтрации, не найдены.")

if __name__ == "__main__":
if len(sys.argv) < 5:
print("Использование: python process_data.py <file_path> <filter_column> <threshold> <aggregate_column>")
sys.exit(1)

file_path = sys.argv[1]
filter_column = sys.argv[2]
threshold = float(sys.argv[3])
aggregate_column = sys.argv[4]

process_large_csv(file_path, filter_column, threshold, aggregate_column)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥2