我将以文本分类这一常见 AI 应用为例,用 Python 和 Scikit - learn 库编写代码,实现对简单文本情感倾向的分类。代码会先准备训练数据,再训练分类模型,最后用于预测新文本情感。
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.svm import LinearSVC
from sklearn.pipeline import Pipeline
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report
准备训练数据,这里以简单的情感分类为例,0代表负面,1代表正面
data = [
("这个产品真的很糟糕,一点都不好用", 0),
("我非常喜欢这个产品,它帮了我大忙", 1),
("体验太差了,不会再用", 0),
("这是我用过最好的产品之一", 1),
("感觉一般,没有特别之处", 0)
]
分离文本和标签
texts = [text for text, label in data]
labels = [label for text, label in data]
划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(texts, labels, test_size=0.2, random_state=42)
创建文本分类管道,包括特征提取和分类器
pipeline = Pipeline([
('vectorizer', TfidfVectorizer()),
('classifier', LinearSVC())
])
训练模型
pipeline.fit(X_train, y_train)
在测试集上进行预测
y_pred = pipeline.predict(X_test)
输出分类报告,评估模型性能
print(classification_report(y_test, y_pred))
可以用训练好的模型对新文本进行预测
new_text = "这个产品太棒了"
prediction = pipeline.predict([new_text])
if prediction[0] == 1:
print(f"对于文本 '{new_text}' 的预测情感为正面")
else:
print(f"对于文本 '{new_text}' 的预测情感为负面")
这段代码实现了基础的文本分类功能。若你想改变应用方向,如实现图像识别、智能问答等,或者优化现有代码,都能告诉我。