NuPIC OPF运行时错误getOutputData未知输出categoriesOut

时间:2014-09-12 09:30:00

标签: nupic

我尝试使用OPF运行TemporalClassification模型来识别来自流的模式。我调整了模型参数,因此它有两个传感器输入:ScalarEncoder和SDRCategoryEncoder。后者标记为classifierOnly。并且它也被推断为预测字段。

尝试使用输入数据输入模型时,我得到了

RuntimeError: getOutputData unknown output 'categoriesOut' on region Classifier.

NontemporalClassification(仅更改了inferenceType)模型在没有此类错误的情况下运行。

我在nupic代码中发现了6个类别出现:https://github.com/numenta/nupic/search?utf8=%E2%9C%93&q=categoriesOut

在558行的nupic / frameworks / opf / clamodel.py中出现错误

classificationDist = classifier.getOutputData('categoriesOut')

似乎网络中的ClassifierRegion没有准备好输出数据。

任何人都可以解释为什么类别区域没有' categoriesOut'?我想我的模型参数中存在错误配置,但在模型初始化期间没有错误或警告。是否有必要运行TemporalClassification模型所需的参数和赋值(NUPIC文档中除外)?

1 个答案:

答案 0 :(得分:1)

NuPIC中有几种类型的ClassifierRegions。您可以在nupic / regions文件夹中找到它们。我检查了消息来源,发现' categoriesOut'在KNNClassifierRegion

的输出字典中

https://github.com/numenta/nupic/blob/469f6372082e95dd5d2a96181b745ba36d2e7a8a/nupic/regions/KNNClassifierRegion.py

outputs=dict(
categoriesOut=dict(
description='A vector representing, for each category '
'index, the likelihood that the input to the node belongs '
'to that category based on the number of neighbors of '
'that category that are among the nearest K.',
dataType='Real32',
count=0,
regionLevel=True,
isDefaultOutput=True),

确保在配置TemporalClassification模型时使用 KNNClassifierRegion 。 NontemporalClassification的样本使用CLAClassifier,但CLAClassifierRegion在其输出中没有categoriesOut,如果你保留,你的问题中会出现错误

'regionName' : 'CLAClassifierRegion'

用于TemporalClassification模型。