Updated to beta d again... still can’t use JHS- similar to my previous error 
report. Sorry, no time to give further details now as Liz wants to move on from 
this WiFi spot.
Thanks,
Mike

Please reply to [email protected].      
Sent from my iPad

> On 26 Apr 2019, at 15:35, jonghough via Programming 
> <[email protected]> wrote:
> 
> The erorr is in the L-BFGS test, which is unrelated to conv nets. In fact 
> just remove all tests from the init.ijs file and that error can be ignored.
> These lines at teh bottom of init.ijs 
> NB. test
> require jpath '~Projects/jlearn/test/testbase.ijs'
> require jpath '~Projects/jlearn/test/testgmm.ijs'
> require jpath '~Projects/jlearn/test/testknn.ijs'
> require jpath '~Projects/jlearn/test/testnnopt.ijs'
> require jpath '~Projects/jlearn/test/testoptimize.ijs'
> require jpath '~Projects/jlearn/test/testrunner.ijs'
> 
> can be deleted.     On Friday, April 26, 2019, 10:39:32 PM GMT+9, Devon 
> McCormick <[email protected]> wrote:  
> 
> Hi Jon -
> I came up with a work-around by changing the "beta" parameter to 1e_7
> instead of 0.0001 (in the call to "minBFGS" in "test4") but have no idea
> what this means in the larger scheme of things.  Your helpful error message
> gave me the clue I needed:
> 
> Error attempting line search. The input values to the function may be too
> extreme.
> Function input value (xk): _9.65977e27 _6.73606e6
> Search direction value (pk): 2.06573e27 3.10187e6
> A possible solution is to reduce the size of the initial inverse hessian
> scale, beta.
> Beta is currently set to 0.0001, which may be too large/small.
> |uncaught throw.: minBFGS_BFGS_
> |minBFGS_BFGS_[0]
> 
> Thanks again.  I look forward to exploring this code.
> 
> Regards,
> 
> Devon
> 
> 
>> On Fri, Apr 26, 2019 at 9:16 AM Devon McCormick <[email protected]> wrote:
>> 
>> Hi Jon -
>> I got your example CIFAR-10 code running on one of my machines but got the
>> following error when running "init.ijs" on another one (perhaps with a
>> different version of J 8.07):
>> Test success AdaGrad Optimizer test 1
>> 1
>> Test success 1
>> 1
>> Test success 2
>> 1
>> Test success 3
>> |value error: minBFGS_BFGS_
>> |  k=.    u y
>> |assertThrow[2]
>> 
>> It looks like "minBFGS_BFGS_" was not defined, so I pasted in the
>> definition before loading "init.ijs" and got a little further only to hit
>> this error:
>> Test success 3
>> |NaN error: dot
>> |dot[:0]
>>       13!:1''
>> |NaN error
>> *dot[:0]
>> |  Hk=.(rhok*(|:sk)dot sk)+(I-rhok*(|:sk)dot yk)dot Hk
>>   dot(I-rhok*(|:yk)dot sk)
>> |minBFGS_BFGS_[0]
>> |  k=.    u y
>> |assertThrow[2]
>> |  (    minBFGS_BFGS_ assertThrow(f f.`'');(fp f.`'');(4
>> 3);100000;0.0001;0.0001)
>> |test4[2]
>> |  res=.    u''
>> |testWrapper[0]
>> |      test4 testWrapper 4
>> |run__to[5]
>> |      run__to''
>> |[-180]
>> c:\users\devon_mccormick\j64-807-user\projects\jlearn\test\testoptimize.ijs
>> |      0!:0 y[4!:55<'y'
>> |script[0]
>> |fn[0]
>> |      fn fl
>> |load[:7]
>> |  0    load y
>> |load[0]
>> |      load fls
>> |require[1]
>> |      require jpath'~Projects/jlearn/test/testoptimize.ijs'
>> |[-39] c:\Users\devon_mccormick\j64-807-user\projects\jlearn\init.ijs
>> |      0!:0 y[4!:55<'y'
>> |script[0]
>> |fn[0]
>> |      fn fl
>> |load[:7]
>> |  0    load y
>> |load[0]
>> |
>>   load'c:\Users\devon_mccormick\j64-807-user\projects\jlearn\init.ijs'
>> 
>> The arguments to "dot" appear to be extreme values:
>>       (I-rhok*(|:yk)dot sk)
>> 1 0
>> _ 0
>>       Hk
>>           _ _4.62371e38
>> _4.62371e38 2.76904e_78
>> 
>> Any idea what might cause this?
>> 
>> Thanks,
>> 
>> Devon
>> 
>> 
>> 
>> 
>> On Thu, Apr 25, 2019 at 9:55 PM Devon McCormick <[email protected]>
>> wrote:
>> 
>>> That looks like it did the trick - thanks!
>>> 
>>> On Thu, Apr 25, 2019 at 9:23 PM jonghough via Programming <
>>> [email protected]> wrote:
>>> 
>>>>   Hi Devon.
>>>> Did you run the init.ijs script. If you run that initially, everything
>>>> should be setup, and you should have no problems.
>>>>       On Friday, April 26, 2019, 9:54:55 AM GMT+9, Devon McCormick <
>>>> [email protected]> wrote:
>>>> 
>>>>   Hi - so I tried running the code at "
>>>> https://github.com/jonghough/jlearn/blob/master/adv/conv2d.ijs"; but get
>>>> numerous value errors.
>>>> 
>>>> Is there another package somewhere that I need to load?
>>>> 
>>>> Thanks,
>>>> 
>>>> Devon
>>>> 
>>>> On Fri, Apr 19, 2019 at 10:57 AM Raul Miller <[email protected]>
>>>> wrote:
>>>> 
>>>>> That's the same thing as a dot product on ravels, unless the ranks of
>>>>> your arguments are ever different.
>>>>> 
>>>>> Thanks,
>>>>> 
>>>>> --
>>>>> Raul
>>>>> 
>>>>> On Thu, Apr 18, 2019 at 8:13 PM jonghough via Programming
>>>>> <[email protected]> wrote:
>>>>>> 
>>>>>>   The convolution kernel function is just a straight up elementwise
>>>>> multiply and then sum all, it is not a dot product or matrix product.
>>>>>> Nice illustration is found here:
>>>> https://mlnotebook.github.io/post/CNN1/
>>>>>> 
>>>>>> so +/@:,@:* works. I don't know if there is a faster way to do it.
>>>>>> 
>>>>>> Thanks,
>>>>>> Jon    On Friday, April 19, 2019, 5:54:24 AM GMT+9, Raul Miller <
>>>>> [email protected]> wrote:
>>>>>> 
>>>>>>   They're also not equivalent.
>>>>>> 
>>>>>> For example:
>>>>>> 
>>>>>>   (i.2 3 4) +/@:,@:* i.2 3
>>>>>> 970
>>>>>>   (i.2 3 4) +/ .* i.2 3
>>>>>> |length error
>>>>>> 
>>>>>> I haven't studied the possibilities of this code base enough to know
>>>>>> how relevant this might be, but if you're working with rank 4 arrays,
>>>>>> this kind of thing might matter.
>>>>>> 
>>>>>> On the other hand, if the arrays handled by +/@:,@:* are the same
>>>>>> shape, then +/ .*&, might be what you want. (Then again... any change
>>>>>> introduced on "performance" grounds should get at least enough
>>>> testing
>>>>>> to show that there's a current machine where that change provides
>>>>>> significant benefit for plausible data.)
>>>>>> 
>>>>>> Thanks,
>>>>>> 
>>>>>> --
>>>>>> Raul
>>>>>> 
>>>>>> On Thu, Apr 18, 2019 at 4:16 PM Henry Rich <[email protected]>
>>>> wrote:
>>>>>>> 
>>>>>>> FYI: +/@:*"1 and +/ . * are two ways of doing dot-products fast.
>>>>>>> +/@:,@:* is not as fast.
>>>>>>> 
>>>>>>> Henry Rich
>>>>>>> 
>>>>>>>> On 4/18/2019 10:38 AM, jonghough via Programming wrote:
>>>>>>>> 
>>>>>>>> Regarding the test network I sent in the previous email, it will
>>>> not
>>>>> work. This one should:
>>>>>>>> 
>>>>>>>> NB.
>>>>> 
>>>> =========================================================================
>>>>>>>> 
>>>>>>>> 
>>>>>>>> NB. 3 classes
>>>>>>>> NB. horizontal lines (A), vertical lines (B), diagonal lines (C).
>>>>>>>> NB. each class is a 3 channel matrix 3x8x8
>>>>>>>> 
>>>>>>>> 
>>>>>>>> A1=: 3 8 8 $ 1 1 1 1 1 1 1 1, 0 0 0 0 0 0 0 0, 0 0 0 0 0 0 0 0,
>>>> 1 1
>>>>> 1 1 1 1 1 1, 0 0 0 0 0 0 0 0, 1 1 1 1 1 1 1 1, 1 1 1 1 1 1 1 1, 0 0 0
>>>> 0 0 0
>>>>> 0 0, 0 0 0 0 0 0 0 0
>>>>>>>> 
>>>>>>>> A2=: 3 8 8 $ 1 1 1 1 1 1 1 1, 0 0 0 0 0 0 0 0, 1 1 1 1 1 1 1 1,
>>>> 1 1
>>>>> 1 1 1 1 1 1, 0 0 0 0 0 0 0 0
>>>>>>>> 
>>>>>>>> A3=: 3 8 8 $ 1 1 1 1 1 1 1 1, 0 0 0 0 0 0 0 0, 0 0 0 0 0 0 0 0
>>>>>>>> 
>>>>>>>> A4=: 3 8 8 $ 1 1 1 1 1 1 1 1, 0 0 0 0 0 0 0 0, 0 0 0 0 0 0 0 0,
>>>> 1 1
>>>>> 1 1 1 1 1 1, 1 1 1 1 1 1 1 1, 0 0 0 0 0 0 0 0
>>>>>>>> 
>>>>>>>> A5=: 2 |. A4
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> B1=: |:"2 A1
>>>>>>>> 
>>>>>>>> B2=: |:"2 A2
>>>>>>>> 
>>>>>>>> B3=: |:"2 A3
>>>>>>>> 
>>>>>>>> B4=: |:"2 A4
>>>>>>>> 
>>>>>>>> B5=: |:"2 A5
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> C1=: 3 8 8 $ 1 0 0 0 0 0 0 1, 0 1 0 0 0 0 1 0, 0 0 1 0 0 1 0 0,
>>>> 0 0
>>>>> 0 1 1 0 0 0, 0 0 0 1 1 0 0 0, 0 0 1 0 0 1 0 0, 0 1 0 0 0 0 1 0, 1 0 0
>>>> 0 0 0
>>>>> 0 1
>>>>>>>> 
>>>>>>>> C2=: 3 8 8 $ 1 0 0 0 0 0 0 0, 0 1 0 0 0 0 0 0, 0 0 1 0 0 0 0 0,
>>>> 0 0
>>>>> 0 1 0 0 0 0, 0 0 0 0 1 0 0 0, 0 0 0 0 0 1 0 0, 0 0 0 0 0 0 1 0, 0 0 0
>>>> 0 0 0
>>>>> 0 1
>>>>>>>> 
>>>>>>>> C3=: 3 8 8 $ 1 0 1 0 1 0 0 0, 0 1 0 1 0 1 0 0, 0 0 1 0 1 0 1 0,
>>>> 0 0
>>>>> 0 1 0 1 0 1, 1 0 0 0 1 0 1 0, 0 1 0 0 0 1 0 1, 1 0 1 0 0 0 1 0, 0 1 0
>>>> 1 0 0
>>>>> 0 1
>>>>>>>> 
>>>>>>>> C4=: |."1 C3
>>>>>>>> 
>>>>>>>> C5=: 3 8 8 $ 1 1 1 1 0 0 0 0, 0 0 1 1 1 1 0 0, 0 0 0 0 1 1 1 1,
>>>> 1 1
>>>>> 0 0 0 0 1 1, 1 1 1 1 0 0 0 0, 0 0 1 1 1 1 0 0, 0 0 0 0 1 1 1 1, 1 1 0
>>>> 0 0 0
>>>>> 1 1
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> A=: 5 3 8 8 $, A1, A2, A3, A4, A5
>>>>>>>> 
>>>>>>>> B=: 5 3 8 8 $, B1, B2, B3, B4, B5
>>>>>>>> 
>>>>>>>> C=: 5 3 8 8 $, C1, C2, C3, C4, C5
>>>>>>>> 
>>>>>>>> INPUT=: A,B,C
>>>>>>>> 
>>>>>>>> OUTPUT=: 15 3 $ 1 0 0, 1 0 0, 1 0 0, 1 0 0, 1 0 0, 0 1 0, 0 1 0,
>>>> 0 1
>>>>> 0, 0 1 0, 0 1 0, 0 0 1, 0 0 1, 0 0 1, 0 0 1, 0 0 1
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> pipe=: (10;10;'softmax';1;'l2';0.0001) conew 'NNPipeline'
>>>>>>>> 
>>>>>>>> c1=: ((10 3 4 4);2;'relu';'adam';0.01;0) conew 'Conv2D'
>>>>>>>> 
>>>>>>>> b1=: (0; 1 ;0.0001;10;0.01) conew 'BatchNorm2D'
>>>>>>>> 
>>>>>>>> a1=: 'relu' conew 'Activation'
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> c2=: ((12 10 2 2); 1;'relu';'adam';0.01;0) conew 'Conv2D'
>>>>>>>> 
>>>>>>>> b2=: (0; 1 ;0.0001;5;0.01) conew 'BatchNorm2D'
>>>>>>>> 
>>>>>>>> a2=: 'relu' conew 'Activation'
>>>>>>>> 
>>>>>>>> p1=: 2 conew 'PoolLayer'
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> fl=: 3 conew 'FlattenLayer'
>>>>>>>> 
>>>>>>>> fc=: (12;3;'softmax';'adam';0.01) conew 'SimpleLayer'
>>>>>>>> 
>>>>>>>> b3=: (0; 1 ;0.0001;2;0.01) conew 'BatchNorm'
>>>>>>>> 
>>>>>>>> a3=: 'softmax' conew 'Activation'
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> addLayer__pipe c1
>>>>>>>> 
>>>>>>>> addLayer__pipe p1
>>>>>>>> 
>>>>>>>> NB.addLayer__pipe b1
>>>>>>>> 
>>>>>>>> addLayer__pipe a1
>>>>>>>> 
>>>>>>>> addLayer__pipe c2
>>>>>>>> 
>>>>>>>> NB.addLayer__pipe b2
>>>>>>>> 
>>>>>>>> addLayer__pipe a2
>>>>>>>> 
>>>>>>>> addLayer__pipe fl
>>>>>>>> 
>>>>>>>> addLayer__pipe fc
>>>>>>>> 
>>>>>>>> NB.addLayer__pipe b3
>>>>>>>> 
>>>>>>>> addLayer__pipe a3
>>>>>>>> 
>>>>>>>> require 'plot viewmat'
>>>>>>>> NB. check the input images (per channel)
>>>>>>>> NB. viewmat"2 A1
>>>>>>>> NB. viewmat"2 B1
>>>>>>>> NB. viewmat"2 C1
>>>>>>>> 
>>>>>>>> 
>>>>>>>> OUTPUT fit__pipe INPUT NB. <--- should get 100%ish accuracy after
>>>>> only a few iterations.
>>>>>>>> NB.
>>>>> 
>>>> =========================================================================
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Running the above doesn't prove much, as there is no training /
>>>>> testing set split. It is just to see *if* the training will push the
>>>>> networks parameters in the correct direction. Getting accurate
>>>> predictions
>>>>> on all the A,B,C images will at least show that the network is not
>>>> doing
>>>>> anything completely wrong. It is also just useful as a playground to
>>>> see if
>>>>> different ideas work.
>>>>>>>> 
>>>>>>>> You can test the accuracy with
>>>>>>>> OUTPUT -:"1 1 (=>./)"1 >{: predict__pipe INPUT
>>>>>>>>       On Thursday, April 18, 2019, 11:36:35 AM GMT+9, Brian
>>>> Schott <
>>>>> [email protected]> wrote:
>>>>>>>> 
>>>>>>>>   I have renamed this message because the topic has changed, but
>>>>> considered
>>>>>>>> moving it to jchat as well. However I settled on jprogramming
>>>>> because there
>>>>>>>> are definitely some j programming issues to discuss.
>>>>>>>> 
>>>>>>>> Jon,
>>>>>>>> 
>>>>>>>> Your script code is beautifully commented and very valuable,
>>>> imho.
>>>>> The lack
>>>>>>>> of an example has slowed down my study of the script, but now I
>>>> have
>>>>> some
>>>>>>>> questions and comments.
>>>>>>>> 
>>>>>>>> I gather from your comments that the word tensor is used to
>>>>> designate a 4
>>>>>>>> dimensional array. That's new to me, but it is very logical.
>>>>>>>> 
>>>>>>>> Your definition convFunc=: +/@:,@:* works very well. However, for
>>>>> some
>>>>>>>> reason I wish I could think of a way to defined convFunc in
>>>> terms of
>>>>> X=:
>>>>>>>> dot=: +/ . * .
>>>>>>>> 
>>>>>>>> The main insight I have gained from your code is that (x u;.+_3
>>>> y)
>>>>> can be
>>>>>>>> used with x of shape 2 n where n>2 (and not just 2 2). This is
>>>> great
>>>>>>>> information. And that you built the convFunc directly into cf is
>>>>> also very
>>>>>>>> enlightening.
>>>>>>>> 
>>>>>>>> I have created a couple of examples of the use of your function
>>>> `cf`
>>>>> to
>>>>>>>> better understand how it works. [The data is borrowed from the
>>>> fine
>>>>> example
>>>>>>>> at http://cs231n.github.io/convolutional-networks/#conv . Beware
>>>>> that the
>>>>>>>> dynamic example seen at the link changes everytime the page is
>>>>> refreshed,
>>>>>>>> so you will not see the exact data I present, but the shapes of
>>>> the
>>>>> data
>>>>>>>> are constant.]
>>>>>>>> 
>>>>>>>> Notice that in my first experiments both `filter` and the RHA of
>>>>> cf"3 are
>>>>>>>> arrays and not tensors. Consequently(?) the result is an array,
>>>> not a
>>>>>>>> tensor, either.
>>>>>>>> 
>>>>>>>>     i=: _7]\".;._2 (0 : 0)
>>>>>>>> 0 0 0 0 0 0 0
>>>>>>>> 0 0 0 1 2 2 0
>>>>>>>> 0 0 0 2 1 0 0
>>>>>>>> 0 0 0 1 2 2 0
>>>>>>>> 0 0 0 0 2 0 0
>>>>>>>> 0 0 0 2 2 2 0
>>>>>>>> 0 0 0 0 0 0 0
>>>>>>>> 0 0 0 0 0 0 0
>>>>>>>> 0 2 1 2 2 2 0
>>>>>>>> 0 0 1 0 2 0 0
>>>>>>>> 0 1 1 1 1 1 0
>>>>>>>> 0 2 0 0 0 2 0
>>>>>>>> 0 0 0 2 2 2 0
>>>>>>>> 0 0 0 0 0 0 0
>>>>>>>> 0 0 0 0 0 0 0
>>>>>>>> 0 0 0 1 2 1 0
>>>>>>>> 0 1 1 0 0 0 0
>>>>>>>> 0 2 1 2 0 2 0
>>>>>>>> 0 1 0 0 2 2 0
>>>>>>>> 0 1 0 1 2 2 0
>>>>>>>> 0 0 0 0 0 0 0
>>>>>>>> )
>>>>>>>> 
>>>>>>>>     k =: _3]\".;._2(0 :0)
>>>>>>>> 1  0 0
>>>>>>>> 1 _1 0
>>>>>>>> _1 _1 1
>>>>>>>> 0 _1 1
>>>>>>>> 0  0 1
>>>>>>>> 0 _1 1
>>>>>>>> 1  0 1
>>>>>>>> 0 _1 0
>>>>>>>> 0 _1 0
>>>>>>>> )
>>>>>>>> 
>>>>>>>>     $i NB. 3 7 7
>>>>>>>>     $k NB.  3 3 3
>>>>>>>> 
>>>>>>>>     filter =: k
>>>>>>>>     convFunc=: +/@:,@:*
>>>>>>>> 
>>>>>>>>     cf=: 4 :  '|:"2 |: +/ x filter&(convFunc"3 3);._3 y'
>>>>>>>>     (1 2 2,:3 3 3) cf"3 i NB. 3 3$1 1 _2 _2 3 _7 _3 1  0
>>>>>>>> 
>>>>>>>> My next example makes both the `filter` and the RHA into
>>>> tensors. And
>>>>>>>> notice the shape of the result shows it is a tensor, also.
>>>>>>>> 
>>>>>>>>     filter2 =: filter,:_1+filter
>>>>>>>>     cf2=: 4 :  '|:"2 |: +/ x filter2&(convFunc"3 3);._3 y'
>>>>>>>>     $ (1 2 2,:3 3 3) cf2"3 i,:5+i NB. 2 2 3 3
>>>>>>>> 
>>>>>>>> Much of my effort regarding CNN has been studying the literature
>>>> that
>>>>>>>> discusses efficient ways of computing these convolutions by
>>>>> translating the
>>>>>>>> filters and the image data into flattened (and somewhat sparse}
>>>>> forms that
>>>>>>>> can be restated in matrix  formats. These matrices accomplish the
>>>>>>>> convolution and deconvolution as *efficient* matrix products.
>>>> Your
>>>>>>>> demonstration of the way that j's ;._3 can be so effective
>>>>> challenges the
>>>>>>>> need for such efficiencies.
>>>>>>>> 
>>>>>>>> On the other hand, I could use some help understanding how the 1
>>>> 0 2
>>>>> 3 |:
>>>>>>>> transpose you apply to `filter` is effective in the
>>>> backpropogation
>>>>> stage.
>>>>>>>> Part of my confusion is that I would have thought the transpose
>>>>> would have
>>>>>>>> been 0 1 3 2 |:, instead. Can you say more about that?
>>>>>>>> 
>>>>>>>> I have yet to try to understand your verbs `forward` and
>>>> `backward`,
>>>>> but I
>>>>>>>> look forward to doing so.
>>>>>>>> 
>>>>>>>> I could not find definitions for the following functions and
>>>> wonder
>>>>> if you
>>>>>>>> can say more about them, please?
>>>>>>>> 
>>>>>>>> bmt_jLearnUtil_
>>>>>>>> setSolver
>>>>>>>> 
>>>>>>>> I noticed that your definitions of relu and derivRelu were more
>>>>> complicated
>>>>>>>> than mine, so I attempted to test yours out against mine as
>>>> follows.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>     relu    =: 0&>.
>>>>>>>>     derivRelu =: 0&<
>>>>>>>>     (relu -: 0:`[@.>&0) i: 4
>>>>>>>> 1
>>>>>>>>     (derivRelu -: 0:`1:@.>&0) i: 4
>>>>>>>> 1
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On Sun, Apr 14, 2019 at 8:31 AM jonghough via Programming <
>>>>>>>> [email protected]> wrote:
>>>>>>>> 
>>>>>>>>>     I had a go writing conv nets in J.
>>>>>>>>> See
>>>>>>>>> https://github.com/jonghough/jlearn/blob/master/adv/conv2d.ijs
>>>>>>>>> 
>>>>>>>>> This uses ;.3 to do the convolutions. Using a version of this ,
>>>>> with a
>>>>>>>>> couple of fixes/, I managed to get 88% accuracy on the cifar-10
>>>>> imageset.
>>>>>>>>> Took several days to run, as my algorithms are not optimized in
>>>> any
>>>>> way,
>>>>>>>>> and no gpu was used.
>>>>>>>>> If you look at the references in the above link, you may get
>>>> some
>>>>> ideas.
>>>>>>>>> 
>>>>>>>>> the convolution verb is defined as:
>>>>>>>>> cf=: 4 : 0
>>>>>>>>> |:"2 |: +/ x filter&(convFunc"3 3);._3 y
>>>>>>>>> )
>>>>>>>>> 
>>>>>>>>> Note that since the input is an batch of images, each 3-d
>>>> (width,
>>>>> height,
>>>>>>>>> channels), we are actually doing the whole forward pass over a
>>>> 4d
>>>>> array,
>>>>>>>>> and outputting another 4d array of different shape, depending on
>>>>> output
>>>>>>>>> channels, filter width, and filter height.
>>>>>>>>> 
>>>>>>>>> Thanks,
>>>>>>>>> Jon
>>>>>>>>> 
>>>>>>>> Thank you,
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> ---
>>>>>>> This email has been checked for viruses by AVG.
>>>>>>> https://www.avg.com
>>>>>>> 
>>>>>>> 
>>>> ----------------------------------------------------------------------
>>>>>>> For information about J forums see
>>>> http://www.jsoftware.com/forums.htm
>>>>>> 
>>>> ----------------------------------------------------------------------
>>>>>> For information about J forums see
>>>> http://www.jsoftware.com/forums.htm
>>>>>> 
>>>> ----------------------------------------------------------------------
>>>>>> For information about J forums see
>>>> http://www.jsoftware.com/forums.htm
>>>>> ----------------------------------------------------------------------
>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>> 
>>>> 
>>>> 
>>>> --
>>>> 
>>>> Devon McCormick, CFA
>>>> 
>>>> Quantitative Consultant
>>>> ----------------------------------------------------------------------
>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>> 
>>>> ----------------------------------------------------------------------
>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>> 
>>> 
>>> 
>>> --
>>> 
>>> Devon McCormick, CFA
>>> 
>>> Quantitative Consultant
>>> 
>>> 
>> 
>> --
>> 
>> Devon McCormick, CFA
>> 
>> Quantitative Consultant
>> 
>> 
> 
> -- 
> 
> Devon McCormick, CFA
> 
> Quantitative Consultant
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
> 
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to