自定义数据集 ,使用朴素贝叶斯对其进行分类

数据集定义:

  • data 列表包含了文本样本及其对应的情感标签。每个元素是一个元组,第一个元素是文本,第二个元素是标签。

特征提取:

  • 使用 CountVectorizer 将文本转换为词频向量。 fit_transform 方法在训练数据上拟合向量器并进行转换。

模型训练:

  • 初始化 MultinomialNB 模型,这是适用于离散数据(如词频)的朴素贝叶斯分类器。

  • 使用 fit 方法在提取的特征和标签上训练模型。

预测:

  • 对新的文本数据,先使用 vectorizer.transform 方法将其转换为特征向量,然后使用训练好的模型进行预测。

评估:

  • 这里简单地假设了新文本的真实标签,使用 accuracy_score 计算预测准确率。在实际应用中,应使用独立的测试集来评估模型性能。

import numpy as np

from sklearn.naive_bayes import GaussianNB

from sklearn.metrics import accuracy_score

自定义数值型数据集

X = np.array([

1, 2\], \[2, 3\], \[3, 4\], \[4, 5

])

y = np.array([0, 0, 1, 1])

初始化并训练高斯朴素贝叶斯模型

clf = GaussianNB()

clf.fit(X, y)

新数据进行预测

new_X = np.array([

1.5, 2.5\], \[3.5, 4.5

])

predictions = clf.predict(new_X)

输出预测结果

for new_data, pred in zip(new_X, predictions):

print(f"Data: {new_data}, Prediction: {pred}")

假设我们有真实标签用于计算准确率(这里只是示例,实际应用中需有真实测试集标签)

true_labels = [0, 1]

accuracy = accuracy_score(true_labels, predictions)

print(f"Accuracy: {accuracy}")

相关推荐
江上鹤.1483 小时前
Day40 复习日
人工智能·深度学习·机器学习
weixin_3954489110 小时前
迁移后的主要升级点(TDA4 相对 TDA2)
人工智能·深度学习·机器学习
光锥智能10 小时前
罗福莉首秀,雷军的AI新战事
人工智能·深度学习·机器学习
高锰酸钾_10 小时前
机器学习-线性回归详解
人工智能·机器学习·线性回归
lisw0510 小时前
人工智能伦理的演进对科技政策有何影响?
人工智能·科技·机器学习
心疼你的一切10 小时前
使用Transformer构建文本分类器
人工智能·深度学习·神经网络·机器学习·transformer
لا معنى له11 小时前
学习笔记:Transformer
人工智能·笔记·深度学习·学习·机器学习·transformer
~~李木子~~12 小时前
基于 MovieLens-100K 数据集的推荐算法设计与实现
算法·机器学习·推荐算法
Heyxy13 小时前
RobustMerge—— 无训练的 PEFT 模型融合方法,从低秩分解视角揭示方向鲁棒性对 PEFT 融合的作用
人工智能·深度学习·机器学习·大模型