如何将我的要素引用到我的标签?朴素贝叶斯分类器



我正在尝试适应机器学习NB模型,我的所有内容都很干净,但是可以将我的功能引用到我的标签上,以适应模型:


labels = [[0,0,0,1,1,0],[0,0,1,0,1,1],...]]
features = [[[0.1,0.2,0.3,0.4,0.5],[0.11,0.21,0.31,0.41,0.51],[0.12,0.22,0.32,0.42,0.52],[0.12,0.22,0.32,0.42,0.52],[0.12,0.22,0.32,0.43,0.53]],[0.13,0.23,0.33,0.43,0.53]...]]]

在我的问题中,[0.1,0.2,0.3,0.4,0.5] 必须引用标签中的第一个 0,所以分类器给出一个 no,[0.11,0.21,0.31,0.41,0.51] 指的是第二个 0,也是一个 no,[0.12,0.22,0.32,0.42,0.52] 是指第一个 1,所以对于分类器来说这是一个是。

如何拟合

NB 分类器或重新排列列表以使其能够拟合模型?

谢谢。

您可能可以利用一个很棒的numpy库,您可以使用该库以多种不同的方式重新组织输入数据的形状。可能的决定之一可能如下:

import numpy as np
from sklearn.naive_bayes import GaussianNB
labels = [[0,0,0,1,1,0],
          [0,0,1,0,1,1]]
features = [[[0.1,0.2,0.3,0.4,0.5],
             [0.11,0.21,0.31,0.41,0.51],
             [0.12,0.22,0.32,0.42,0.52],
             [0.12,0.22,0.32,0.42,0.52],
             [0.12,0.22,0.32,0.43,0.53],
             [0.13,0.23,0.33,0.43,0.53]],
           [[0.1,0.2,0.3,0.4,0.5],
             [0.11,0.21,0.31,0.41,0.51],
             [0.12,0.22,0.32,0.42,0.52],
             [0.12,0.22,0.32,0.42,0.52],
             [0.12,0.22,0.32,0.43,0.53],
             [0.13,0.23,0.33,0.43,0.53]]]
labels = np.ravel(labels)
features = np.reshape(features, (-1, 5))
gnb = GaussianNB()
gnb.fit(features, labels) 

最新更新