gpt4 book ai didi

neural-network - PyBrain 如何解释 net.activate 的结果?

转载 作者:行者123 更新时间:2023-12-01 01:19:01 25 4
gpt4 key购买 nike

我已经在 PyBrain 上训练了一个用于分类的网络,并准备好用特定的输入来启动。但是,当我这样做时


classes = ['apple', 'orange', 'peach', 'banana']

data = ClassificationDataSet(len(input), 1, nb_classes=len(classes), class_labels=classes)

data._convertToOneOfMany( ) # recommended by PyBrain

fnn = buildNetwork( data.indim, 5, data.outdim, outclass=SoftmaxLayer )

trainer = BackpropTrainer( fnn, dataset=data, momentum=m, verbose=True, weightdecay=wd)

trainer.trainUntilConvergence(maxEpochs=80)

# stop training and start using my trained network here

output = fnn.activate(input)


正如预期的那样,我得到了“输出”的数值,但是有没有办法直接确定预测的类标签?即使没有,我如何将“输出”的值映射到我的类标签?感谢您的帮助。

最佳答案

当您说您获得“输出”的数值时,您的意思是标量(即,不是数组)吗?根据我的理解,您应该得到一个包含四个值的数组(即您拥有的尽可能多的输出类)。该数组中的最大值对应于类的索引。我不知道 PyBrain 是否提供了一个实用函数来提取它,但你可以这样做:

class_index = max(xrange(len(output)), key=output.__getitem__)
class_name = classes[class_index]

顺便说一下,您省略了在数据集中实际填充数据的步骤。

关于neural-network - PyBrain 如何解释 net.activate 的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10348749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com