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

数据集定义:

  • 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}")

相关推荐
阿里云大数据AI技术6 小时前
光轮智能 × 阿里云:共建 Physical AI 云上数据、评测与持续学习基础设施
人工智能·机器学习
拾年2751 天前
大模型的"聪明"从哪来?聊聊 AI 数据集的那些事儿
人工智能·深度学习·机器学习
罗西的思考2 天前
机器人 / 强化学习】HIL-SERL:人类在环驱动的具身智能进化框架
人工智能·算法·机器学习
ShallWeL2 天前
【机器学习】(3)—— 线性回归:梯度下降
人工智能·机器学习
ShallWeL2 天前
【机器学习】(2)—— 线性回归:损失函数
人工智能·机器学习
Lihua奏5 天前
# 机器学习:机器是怎么从数据里学出规则的
机器学习