Newsgroups: comp.ai.neural-nets
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!gatech!newsfeed.internetmci.com!howland.reston.ans.net!surfnet.nl!spider.research.kpn.com!usenet
From: Hage <hage@cs.utwente.nl>
Subject: Re: Probabilistic Neural Networks -- Bayesian Confidence Levels
Content-Type: text/plain; charset=us-ascii
Message-ID: <3164F138.84@cs.utwente.nl>
Sender: usenet@news.research.kpn.com (USENET News System)
Nntp-Posting-Host: gd0119.research.kpn.com
Content-Transfer-Encoding: 7bit
Organization: KPN Research, The Netherlands
References: <4k1hqg$asl@ra.nrl.navy.mil>
Mime-Version: 1.0
Date: Fri, 5 Apr 1996 10:08:56 GMT
X-Mailer: Mozilla 2.01 (Win16; I)
Lines: 55

shaffer@ccf.nrl.navy.mil wrote:
> 
> Hello neural net experts,
> 
> We are using a Probabilistic Neural Network (PNN) to classify
> chemical warfare agents.  One of the reasons we have chosen
> PNNs is the ability to generate a posterior probability for each
> class of agent.  However, there is still one point I am not
> clear on and I hope somebody in this newsgroup can enlighten
> me.  From Timothy Master's book "Practical Neural Network
> Recipes" we apply Bayes Theorem to compute posterior
> probabilities using the outputs of the PNN.  The equation
> is:  p[a|X] = ga(X) / sum(g(X)) where g(X) is the summation of
> the density estimates (outputs of the PNN) for all classes and
> ga(X) is the output for class A.  To use this equation does
> each class have to have the same number of members (i.e.,
> equal sample sizes for each class)?  It would seem to me
> that if the training set contained many more members of one
> class the outputs would be biased toward that class due the
> summation layer of the PNN.  For example, if class A had
> 100 members in the training set and classes B and C had
> 50 members each do we need to correct for the different
> class sizes in the Bayes equation?  In other words
> divide each g(X) by the class size or something like that.
> Your assumption is correct. If you have more samples of class A then from 
class B, the network will be biased for class A. This is, because the net 
creates an internal representation of the input. This means you're input 
needs to be a good representation of the *true* input. Normaly it would 
not be desirable to adjust the Bayes equation, because (if the input is 
indeed a good representation) you want the network to bias towards 
classes that are more common than others. However, if you're sure the 
chances for all classes are the same, you can either adjust your input 
(by using equal amounts of instants for each class), or adjust the 
equation. But I would choose the former.

> Another more general pattern recognition question.  For most
> of the pattern recognition methods I am familiar with, equal
> sample sizes for each class are recommended.  I am correct
> to assume that this recommendation follows for MLPs and PNNs
> as well?

Not so much an equal amount, but a good representation. After all, if you 
have a better chance of finding a class A in real life, you'll want the 
network to have a bias to this class as well.

 
> Ron Shaffer
> Naval Research Laboratory
> Chemistry Division

-- 
|~~|	"Sure I've got a brain, it's a multilayer Kohonen net"
 ~~|  oost  Hage (hage@cs.utwente.nl)
       |
  \_/		Oh, right, this is my personal opinion, and mine only
