Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!wasatch!sunset.utah.edu!u-jmolse From: u-jmolse%sunset.utah.edu@wasatch.utah.edu (John M. Olsen) Newsgroups: comp.sys.amiga Subject: Re: blitting a neural net. Keywords: Neural nets, blitter, life, pickled cumquats Message-ID: <1870@wasatch.utah.edu> Date: 20 May 89 20:32:29 GMT References: <1082@altos86.UUCP> <10650@orstcs.CS.ORST.EDU> <3029@cps3xx.UUCP> <610@censor.UUCP> <730@wsu-cs.uucp> <11269@netnews.upenn.edu> Sender: news@wasatch.utah.edu Reply-To: u-jmolse%sunset.utah.edu.UUCP@wasatch.utah.edu (John M. Olsen) Organization: University of Utah, Computer Science Dept. Lines: 59 In article <3029@cps3xx.UUCP>, golden@cps3xx.UUCP (golden james) writes: > What about using the blitter to implement a neural network, since they > usually suffer from hundreds of simple integer calculations? Could you > simply "blit" the network recursively to obtain a result? In article <11269@netnews.upenn.edu> ranjit@grad2.cis.upenn.edu.UUCP (Ranjit Bhatnagar) writes: > >Since the implementation of such a restricted network consists of >nothing but zillions of 1-bit adds and multiplies, and a relatively >small number of integer operations, and any network >that does anything reasonable is going to be very large, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >perhaps the >blitter would actually be able simulate such a network very efficiently >compared to a general purpose processor (like the 68000). Uh, have you seen the size of the networks that are used to do loan application analysis? A whopping 15-20 nodes. Now if you want to talk about things like image analysis and enhancement, or robot vision, you will get lots of nodes. > > Mike Golden > Physiology Undergraduate > Michigan State University In some lost article, hugh@censor (Hugh D. Gamble) writes: >That's something I thought of just after I discovered Tom's nifty keen >life program that mapped so beautifully on to the blitter instructions. >So I asked a few experts and they either said no without thinking, >or thought for a second before saying the same thing. Back when I thought (during a moment of madness) I might have some spare time, I thought about this, and came up with the idea of implementing a 3-dimensional neural back propogation network with the blitter, and after doing some back-of-the-envelope calculations, figured it would be about 1/4 to 1/2 as fast to teach when compared with professional net software on fast PCAT's, but after it's learned it's stuff, it would blaze away at *over* 5-10X the typical speeds (number of nodes calculated per second). I used the blitter to do lots of parallel addition in a BADGE killer demo entry last year (Where *ARE* those prizes, you guys?!), which helped to inspire me. The way I figure it, a large network using binary values is equivelant to a not-so-large network using integer or floating point weights and computation. An additional blessing of using the blitter is storage space. You can use huge 2 or 3 dimensional bit arrays (called screens :^) and most of the code is just interface stuff for the blitter. That way, you can even watch the network run. :^) As a side note, the LIFE game is actally a neural net where each node has the same rules and weights, and just takes input from it's neighbors. + /| | /||| /\| | John M. Olsen, 1547 Jamestown Drive + | \|()|\|\_ |||.\/|/)@|\_ | Salt Lake City, UT 84121-2051 | | | u-jmolse%ug@cs.utah.edu or ...!utah-cs!utah-ug!u-jmolse | + (Net address changing July 10-15, 1989) +