After setting the training set there is the step of testing a pattern thru the built network.
I don't fully understand the exact steps.
First, I'll describe PNN as I understand it and later will ask my question.
Assume we have $d$ dimensional $n$ sample patterns, so we have the input layer= $x_1, x_2,...,x_d$, and we have the sample patterns layer = $p_1, p_2,...,p_n$ such that $p_i$ has edge to $x_j$ for $i=1,2,...,n$, $j=1,2,...,d$ with $d$ edges. Each edge $w_{ij}$ (which is the edge coming out of sample pattern $p_i$ and goes to input $x_j$) has a value corresponding to the $j$-th coordinate of the vector $p$ (after normalizing $p$ so its magnitude equal to 1 and the direction remain). $p_i$ is connected to one and only one known $c_m, m\in1,2,...,c$ ($c$ is the number of classses)
When we get a novel pattern $x$ and need to classify it we do:
- Normalize the vector represent the pattern (as we did to the sample patterns)
- Each sample pattern computes the inner product $net_k=w_k^t\bullet{x}$ (result is scalar) and emits $f(net_k)=\exp[{\frac{net_k-1}{\sigma^2}}]$. ($\sigma=\sqrt2*h$ where $h$ is the chosen window size.)
- Each output unit sums the contributions from all pattern units connected to it
My problem: I don't understand why we are doing what we are doing in step 2. How do we get to that expression?
[For more information it is possible to see the text book: "Pattern Classification, Richard Duda"]