Hi Jing,

> 
> 1. I know when the parameter "learningmode" is set to 1, the connections 
> between each column and cell will keep updating. But how to set parameter 
> "inferencemode" ? If I have a network sensor-->sp-->tp-->claclassifier,  it 
> is obvious that we should set claclassifier's "inferencemode" to be 1 because 
> we want to get the output result of claclassifier. My question is how to set 
> sp's and tp's "inferencemode" (both sp's and tp 's learningmode are 1 for 
> learning continually)?

You do not need to worry about setting `inferenceMode` to 1, it is 1 by default.

> 2. Does likelihood has the relationship with prediction? The "result"[4] is a 
> dict, which has two pairs of key-value. One is 1:list1, the other is 
> actualValues:list2. List1 and list2 are one-to-one correspondence.  We get 
> the actual values in list2 which has the biggest likelihood in list1. And the 
> sum of list1 equals 1. But I didn't understand how the two lists are 
> calculated.  The bucketIndex gets from 
> scalarEncoder.getBucketIndcex(actualInput) is a number, and list1's index is 
> a bucket range. What's the corresponding relationship between bucketIndex and 
> list1? How to define list1's length and bucket range?

I'm sorry, I don't really understand your question. Perhaps you can rephrase 
it? Maybe it would help to see example values for the `results` dict you are 
talking about.

> 3. In a multiEncoder network, if I want to predict field1, can I know which 
> fields contribute to field1? Not by swarming.

I'm not sure what you mean. Swarming is a way to automatically discover which 
fields help the most with the prediction of field1. You can also try different 
combinations of fields by hand.

> 4. Last time you suggest me to set a parameter to get connection 
> relationship. I set the 'temporalImp' in file[3] to 'tm_py' but get the error 
> as follows.

It looks like you don't have the latest version of nupic. Please update your 
repository and try it again.

- Chetan

> 
> ------------------ 原始邮件 ------------------
> 发件人: "Chetan Surpur";<[email protected]>;
> 发送时间: 2015年10月17日(星期六) 凌晨2:52
> 收件人: "fuyajing"<[email protected]>;
> 主题: Re: A tp program question
> 
> Jing,
> 
> > Both spRegion and tpRegion have an attribute "bottomUpOut", which are 
> > arrays(0 and 1). How to decode the 01 array into a predicted value?
> 
> This is what the CLA classifier is used for. It takes these binary output 
> arrays, and decodes the input value to the encoder that is the most likely 
> prediction.
> 
> >  The multiEncoder is not SDR though there is little 1 and much 0.(Or 
> > multiEncoder is sparse, not distributed? Which explanation is right?)
> 
> It is distributed, but not necessarily sparse. It produces sparse 
> representations only if the inputs to the MultiEncoder are all sparse. Either 
> way, the output of the SPRegion is sparse and distributed.
> 
> > So to top level (for example, classifier), we get   a map from final active 
> > columns index (we call it 'finalColumns') to sourceData.
> 
> Correct, this is what the CLA classifier does in essence. You can just use it 
> on top of the TPRegion to do this classification.
> 
> > What's more, I can't understand the code segment in 
> > nupic/examples/network/hierachy-network-demo.py.(line 267-272)
> 
> The `results` dictionary is produced by the CLA Classifier. If you would like 
> to understand the CLA Classifier better, please see Subutai's recent talk on 
> how it works [1].
> 
> [1] https://www.youtube.com/watch?v=QZBtaP_gcn0 
> <https://www.youtube.com/watch?v=QZBtaP_gcn0>
> 
> Hope this helps,
> Chetan
> 
> 
>> On Oct 15, 2015, at 12:34 AM, fuyajing <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> And another question: Both spRegion and tpRegion have an attribute 
>> "bottomUpOut", which are arrays(0 and 1). How to decode the 01 array into a 
>> predicted value?
>> For easier understanding, I want to express my understanding. If I have a 
>> wrong explanation, please tell me. Thank you in advance. :)
>> For example, each attribute's value can be encoded into a 01 array, by 
>> setting params w, n(or radius, or resolution) , max, min and so on.  
>> A-->1111 0000 0000 0000
>> B-->0000 1111 0000 0000
>> C--> 0000 0000 1111 0000
>> Monday-->111000000000
>> Tuesday -->011100000000
>> Thursday-->001110000000
>> ...
>> Then if there are two attribute need to be encoded, we can just concatenate 
>> them simply, we call it multiEncoder.
>> AMonday-->1111 0000 0000 0000 111000000000
>>  The multiEncoder is not SDR though there is little 1 and much 0.(Or 
>> multiEncoder is sparse, not distributed? Which explanation is right?) It 
>> just the input of the first spRegion. The out put of spRegion and tpRegion 
>> is SDR. ( We can get it from "bottomUpOut").  From the SDR, we can't 
>> distinguish which columns represent for which input bits, right?  So to top 
>> level (for example, classifier), we get   a map from final active columns 
>> index (we call it 'finalColumns') to sourceData. (If we want to predict A, 
>> it's a map from finalColumns to A; if we want to predict Monday, it's a map 
>> from finalColumns to Monday.) I think maybe it's the meaning of decode for 
>> HTM. The column doesn't have a specific correspondence.  Moreover,  how to 
>> initialize the connection relationship between the input 01 array and first 
>> spRegion's columns?
>> 
>> What's more, I can't understand the code segment in 
>> nupic/examples/network/hierachy-network-demo.py.(line267-272)
>> 
>> results = 
>> classifier.getSelf().customCompute(recordNum=recordNumber,patternNZ=tpOutput,classification=classDict)
>> mostLikelyResult = sorted(zip(results[1], results["actualValues"]))[-1]
>> 
>> How does each element of "results" come out? And I found the lengths of 
>> result[1] and results["actualValues"] are variable lengths.
>> 
>> Looking forward to hear from you at earliest.
>> 
>> Jing
>> 
>> 
>> 
>> 
>> ------------------ 原始邮件 ------------------
>> 发件人: "付亚静";<[email protected] <mailto:[email protected]>>;
>> 发送时间: 2015年10月15日(星期四) 中午1:21
>> 收件人: "fuyajing"<[email protected] <mailto:[email protected]>>;
>> 主题: A tp program question
>> 
>> Hello
>> I'm using network API to make predictions. The tp_params has an attribute 
>> "cellsPerColumn". My question is: How to get the synapses connection between 
>> columns or cells? Are there any method or code?
>> Thank you in advance.
>> 
>> Jing
> 

Reply via email to