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 >
