【问题标题】:What does sentiment = model.predict(twt,batch_size=1,verbose = 2)[0] means?情绪 = model.predict(twt,batch_size=1,verbose = 2)[0] 是什么意思?
【发布时间】:2020-02-26 10:13:13
【问题描述】:

我正在使用 Keras 预测情绪。我不明白这段代码是什么意思。

 sentiment = model.predict(twt,batch_size=1,verbose = 2)[0]
 print (sentiment)
 print (np.argmax(sentiment))

我得到的结果是,

[0.18970804 0.81029195]
1

我正在预测一条推文。这是一条积极情绪的推文。 twt 是推文。对于情绪,我得到两个值,在两个值中,我得到的情绪为 1。这是积极的。它是如何得到的? 谁能解释一下。 提前谢谢你

【问题讨论】:

  • 您的问题到底是什么?输出的意思还是代码的意思?
  • 在没有上下文的情况下说起来有点复杂。我想说的是,您正在对(推文?)中的情绪是否属于一类或另一类进行分类。在这种情况下,您的网络预测您的twt 属于第二类。
  • 是的,你基本上在做的是为神经网络提供 twt 中的输入。之后,代码打印每个类的概率。在您的示例中,输入属于情绪 0 的概率为 0.18,属于 1 的概率为 0.81。通常你只对概率最高的类感兴趣。这就是上次打印中出现 argmax 的原因。它在那里打印神经网络“预测”的类(如果你查看所有类,这是最大的概率)
  • 训练模型时,您定义了两个输出。输出 0 是带有负面情绪的输出,输出 1 是带有正面情绪的输出(我猜从您的描述中可以看出。也可能反过来)。如果你现在向神经网络展示一条应该被预测的推文,它会在每个输出处向你展示这条推文属于类别 x 的概率。这意味着在这个特定示例中,负面情绪的概率为 0.18(如果负面对应于输出 0),而正面情绪的概率为 0.81。
  • 这是一个基本的语法问题,对任何人都没有价值

标签: python tensorflow machine-learning keras lstm


【解决方案1】:

这两个值给出情绪为 0 和情绪为 1 的概率。这两个概率相加为 1。在这种情况下,由于情绪为 1 的概率大于 1,推文被归类为积极情绪。

【讨论】:

    猜你喜欢
    • 2018-09-25
    • 1970-01-01
    • 2015-05-27
    • 2023-02-02
    • 2023-03-19
    • 2020-02-15
    • 2017-02-23
    • 2019-04-25
    • 2017-05-31
    相关资源
    最近更新 更多