使用mahout,我能够对数据的情感进行分类。但是我被困在了一个混乱的矩阵中。
我正在使用mahout 0.7朴素贝叶斯算法来对推文的情绪进行分类。我使用trainnb和testnb朴素贝叶斯分类器来训练分类器,并将推文的情绪分类为“积极”、“消极”或“中性”。
样本正训练集
'positive','i love my i phone'
'positive' , it's pleasure to have i phone'
同样,我也准备了负性和中性的训练样本,这是一个巨大的数据集。
我提供的样本测试数
我已经构建了一个列表理解,它接受列表[actual, predicted]的列表,然后对包含的列表进行分类。我希望生成输出列表,如果原始元素为> .1,则输出列表为1;如果原始元素为< -.1,则输出列表为-1;如果原始元素为< .1 .1>,则输出列表为0。例如,[[2, 0, -2],[0, 0, 0]]将映射到[[1,0,-1], [0,0,0]]。
我使用以下代码来执行此操作:classified = [list(map(lambda x: 1 if x > .1 else (-1 if x < .1 else 0), i)) for i in in