Senior
Jums ir ir mazs datu kopums ar filmu recenzijam rusu valoda un to binara sentimenta zymu (zimes: 0 — negativs, 1 — pozitivs). Jusu uzdevums ir realizet pilnu pipeline 15 minutu laika, lai apmocitu vienkarsu teksta klasifikacijas modeli bez izmantot gatavus kodetajus, kaip BERT, un parāditu precizitati (accuracy) uz šiem datiem. reviews = [ "Šis filmas ir vienkārši pārsteidzošs!", "Briesmīga aktieru spēle un garlaicīga sižeta līnija.", "Man patika katra mirkļa!", "Sliktākais filma, ko esmu redzējis.", "Lieliska režisora darba un brīnišķīga stāsta.", "Neizturami garlaicīgs un prognozējams." ] labels = [1, 0, 1, 0, 1, 0]
sobes.tech AI
Atbilde no AI
Для быстрого решения задачи классификации текстов на русском языке без использования готовых энкодеров можно сделать следующий pipeline:
- Токенизация и простая предобработка (приведение к нижнему регистру, удаление знаков препинания).
- Векторизация текста с помощью мешка слов (Bag of Words) с помощью sklearn CountVectorizer.
- Обучение простой модели, например, логистической регрессии.
- Оценка точности на тех же данных (так как датасет очень маленький).
Пример кода на Python:
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
reviews = [
"Этот фильм просто потрясающий!",
"Ужасная игра актёров и скучный сюжет.",
"Мне очень понравилось каждое мгновение!",
"Самый худший фильм, который я видел.",
"Отличная операторская работа и замечательная история.",
"Невыносимо скучно и предсказуемо."
]
labels = [1, 0, 1, 0, 1, 0]
# Векторизация
vectorizer = CountVectorizer(lowercase=True)
X = vectorizer.fit_transform(reviews)
# Обучение модели
model = LogisticRegression()
model.fit(X, labels)
# Предсказание и оценка
preds = model.predict(X)
accuracy = accuracy_score(labels, preds)
print(f"Accuracy: {accuracy:.2f}")
Такой подход позволит за 15 минут получить базовую модель классификации с приемлемой точностью на маленьком датасете.