sklearn垃圾邮件分类

在Python中,可以使用机器学习算法来进行垃圾邮件分类。下面是一个简单的示例,使用朴素贝叶斯算法进行垃圾邮件分类:

import pandas as pd
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.model_selection import train_test_split
from sklearn.naive_bayes import MultinomialNB
from sklearn.metrics import accuracy_score

# 1. 准备数据集
data = pd.read_csv('spam.csv')
X = data['text']
y = data['label']

# 2. 数据预处理
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(X)

# 3. 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 4. 训练模型
model = MultinomialNB()
model.fit(X_train, y_train)

# 5. 预测并评估模型
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

在上述代码中,首先需要准备一个包含邮件文本和标签(垃圾邮件或非垃圾邮件)的数据集。然后使用CountVectorizer将文本数据转换为特征向量表示。接着使用train_test_split函数将数据集划分为训练集和测试集。然后使用MultinomialNB训练一个朴素贝叶斯分类器,并对测试集进行预测。最后使用accuracy_score函数计算分类器的准确率。

这只是一个简单的示例,实际的垃圾邮件分类任务可能需要更多的特征工程和模型调优。你可以根据实际情况选择其他机器学习算法或使用更多的特征来提高分类性能。

你可能感兴趣的:(python智能算法,人工智能,机器学习)