Newsgroups: comp.ai.neural-nets
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news.mathworks.com!hookup!swrinde!howland.reston.ans.net!pipex!uknet!newsfeed.ed.ac.uk!ainews!thomasg
From: thomasg@aisb.ed.ac.uk (Thomas Grove)
Subject: Re: Program NN In C/C++ ... OOP or not OOP ?
Message-ID: <D5J9p2.Mpq@aisb.ed.ac.uk>
Sender: news@aisb.ed.ac.uk (Network News Administrator)
Organization: Dept AI, Edinburgh University, Scotland
X-Newsreader: TIN [version 1.2 PL2]
References: <793658181.7snx@teow.pl.my> <3isbgu$38t@obelix.cica.es> <3j1nrp$2ng@yama.mcc.ac.uk>
Date: Thu, 16 Mar 1995 12:36:37 GMT
Lines: 35

Suresh Kumar Kannan (mbsfu01@hero.mcc.ac.uk) wrote:
: In article <3isbgu$38t@obelix.cica.es>, jmerelo@kal-el.ugr.es (J.J. Merelo Guervos) writes:
: > In article <793658181.7snx@teow.pl.my>, yokwooi@teow.pl.my (YokWooi Teow) writes:
: > > Hello ..
: > > 
: > > know .... whether i need to code the program in OOP or just using
: > > normal structure programming method ....and what is the advantages
: > > of using the OOP to code the NN program ?
: > 
: > Same advantages as for any other program: modularity, reusability, and so on. But
: > it's always faster to code _any_ problem in a language you are familiar with. 

: Definitely OOP.  I am using ANN and OOP accounts for much shorter more easily understandable code.
: Blum's book provides Vector and Matrix classes which are most useful.  also available are matrix and Vector Classes by ftp://ftp.cs.ucla.edu as Matirx.tar.Z. 


One of the issues here is at what conceptual level we should be thinking of ANNs 
when we implement them in OO languages. Implementing them in terms of linear algebra
type objects is likely to be efficient and very elegant from a mathematical point
of view. Implementing them as collections of weight and neuron classes is likely
to be conceptually "nicer" if you are treating neural nets as simplified
models of nervous systems. However, this representation is likely to be less
efficient due to the extra overhead in treating a weight as a complex structure.

I would imagine that workers in AI would prefer to preserve the biological 
ananlogy, at least for research work. Workers in other areas might prefer a
more abstract description in terms of vector transforms. However, which
representation you choose is determined by what featrues of neural nets that
you regard to be important.

Tom



: Suresh K. Kannan
