Overview
Information Flow of PCN.
Menu Hierarchy of PCN.
Files Used by PCN.
System Installation.
Run the System.
Sample Key Strokes.
[ Back to Syllabus Page ]
Overview:
This is an educational version of PCNeuron, a
neural network development shell developed by Professor I-Cheng
Yeh at the Chung-Hwa Institute, Taiwan in 1992.
The PCN system was written in Turbo C (version 2.0) and can be run in a PC
but only under the DOS Mode.
PCN coverage is quite comprehensive. It can be used to build, train,
and test 11 different neural networks, including perceptron (Per),
backpropagation (BPN), probabilistic neural network (PNN), learning
vector quantization (LVQ), counter-propagation (CPN), self-organizing
map (SOM), adaptive resonance theory (ART) network, Hopfield neural
network (HNN), Hopfield-Tank neural (HTN) network, and annealed
neural network (ANN). The educational version restricts users to
develop neural networks with up to 50 neurons in each layer.
The professional version, however, extends its capacity up to machine's
available RAM and includes two more networks - improved backpropagation
(IBP) and neural expert systems (NES).
[ Back to Top of the Page ]
Information Flow of PCN:
The development of neural network involves the following key steps:
- Determine the input and output variables to be considered.
- Select an appropriate neural network model.
- Represent the problem in terms of the selected neural network model.
- Collect data.
- Preprocessing the data (scaling, transferring and filtering).
- Divide the data into training and testing data sets.
- Train and test the result.
- Postprocessing the result (plotting, analyzing, etc.).
- Use the trained weight data for prediction (most public
domain system don’t have this option).
The design of PCN follows the above generic procedure. Figure 1 shows
the specific information flow of PCN:
Figure 1: Information Flow of PCN
[ Back to Top of the Page ]
Menu Hierarchy of PCN:
PCN is a menu-driven system. Table 1 shows its menu hierarchy. The first
hierarchy contains five modules: file, pre, build, run, and post:
- File. This module allows users to load and save files, jump
to DOS environment, and exit the system.
- Pre. This module provides all mathematical functions needed
to preprocess data for variables. Variable Statistic can be
used to compute maximum, minimum, mean, standard deviation, and
perform probability scaling. Example Process & Sampling
can be used to divide data into training and testing data sets
according to the type of data user has.
- Build. This module is provided to setup and modify parameter
file. The user needs to choose the type of neural network to be
developed first, the system will then list the needed parameters
that matched with the selected network type for entry or revision.
- Run. Once the parameter file was built, user can then start
to train and test the network by selecting this menu. The training
and testing results will then be displayed in screen for user to
review and saved in a file for printing. If the results is not as
good as user expected, s/he can go back to modify the structure or
parameter values.
- Post. This module provides seven popular analytical methods
- convergence curve, scatter diagram, confusion matrix, ROC curve,
SOM matrix, weight histogram, and rescaling for user to evaluate
the performance of the network s/he developed.
Table 1: Menu Hierarchy of PCN
|
Root |
Level 1 |
Level 2 |
Remarks |
|
|
File |
- Load
- Save
- Dos
- Exit
|
- Load file
- Save file
- Jump to DOS Mode
- Quit the system
|
|
|
Pre |
- Variable Statistic
- Example Process & Sampling
|
- Perform statistical analysis on variables
- Divide data into training & testing sets
|
|
|
Build |
- Per
- BPN
. . .
- IBP
|
- Perceptron
- Backpropagation
- Improved Backpropagation
|
|
PCN |
Run |
- Per
- BPN
. . .
- NES
|
- Perceptron
- Backpropagation
- Neural Expert Systems
|
|
|
Post |
- Convergence Curve
- Scatter Diagram
- Confusion Matrix
- ROC Curve
- SOM Matrix
- Weight Histogram
- Rescaling
|
- Plot the process of convergence
- Draw the scatter diagram
- Compute confusion matrix
- Draw the ROC curve
- Compute SOM matrix
- Plot histogram of connecting weights
- Convert scaled value back to original scale
|
[ Back to Top of the Page ]
Files Used by PCN:
Input Files:
- net: file used to store parameters.
- tra: file used to store training data set.
- tes: file used to store testing data set.
Output Files:
- res: file used to store results.
- cur: file used to store data related to the progress of convergence.
- wei: file used to store connecting weight.
Other Files:
- ori: file used to store original data.
- fin: file used to store final scaled data.
- sta: file used to store statistical analysis results for data.
- lst: list of parameter values in text format.
[ Back to Top of the Page ]
System Installation:
PCN was stored in my course server under directory "systems\pcn"
in a compressed format to save disk space. The following steps can be
used to install the system:
- Create a directory (e.g., PCN) in the hard drive and download
the two files - "exe.exe" and "exam.exe" into
that directory.
- Run "exe.exe" and "exam.exe" from Windows Explorer
(by click on the fil name). The program extract all the necessary
files automatically.
[ Back to Top of the Page ]
Run the System:
- Copy a group of files related to each neural network model
(e.g., "bpn_iris.*") as "pcn.*". It is
easier to change to MS-DOS Prompt and then enter the following
command: "copy bpn_iris.* pcn.*".
- Using a text editor (e.g., Notepad or WordPad) " to prepare the
"training" and "test" data sets. The training data set should be
organized such that a column of data for each input and
output neuron.
For instance, if there are five input neurons and three output
neurons, then the training data set should have eight columns
- the first five columns for input neurons and the last three
columns for output neurons. The format of testing data set
is the same as training data set except that there is no data
for output neurons (i.e., only five columns for input neurons).
Save training data set as "pcn.tra" and testing data set as
"pcn.tes".
- Click over "Pcn.exe" (from c:\pcn) to activate PCN. Following
the sequence of "pre" (if doing preprocessing), "build"
(generate the parameter file), "run" (train and test network),
and "post" (if doing post analysis).
[ Back to Top of the Page ]
Sample Key Strokes:
|
Procedure / Required Actions |
Sample Key strokes |
- Switch to DOS Mode
|
Click on the MS-DOS Prompt |
- Change to the PCN directory
|
Type: CD PCN |
- Prepare for parameter/network files
|
Type: Copy bpn_iris.* PCN.* (Replace all) |
- Start PCN
|
Type: PCN
|
| |
|
- Build
the network parameter file |
Type: 3
(Select menu #3 -
Build) |
- Select the neural network type
|
Type: 2 (Select BPN, for example) |
- Select Edit Type (1=New, 2=Modify)
|
Type: 2
(Select modify) |
- Modify the parameters (especially 0 - 6)
|
Type the item number and modify |
- End/confirm the modification
|
Type: -1 |
| |
|
- Train
the neural network |
Type: 4 (Select menu #4 - Run) |
- Select the neural network type
|
Type: 2 (Select BPN, for example) |
- Enter number of hidden layer (0, 1, or 2)
|
Type: 1 for one hidden layer |
- Repeat Run & Build until the results are acceptable
|
|
| |
|
- Conduct
post analysis |
Type: 5 (Select menu #5 - Post) |
- Select the type of post analysis (1 and/or 3)
|
Type: 1 (Select Convergence Diagram) |
- Decide whether to list the parameters
|
Type: 1 for yes and 0 for No |
- Select the neural network type
|
Type: 2 (Select BPN, for example) |
- Enter the value of (Ncycle/Nperiod)
|
Type: 500 (if Ncycle=1000 and Nperiod = 2) |
- Enter number of columns of data file
|
Type: 5 (for BPN) |
- Enter number of lines of graph
|
Type: 1 for one, 2 for two (training/testing) |
- Enter column of data for
X axis |
Type: 1 (usually 1) |
- Enter column of data for Y axis
|
Type: 2 for training error, 3 for testing error, etc. |
- Set scale parameter (0, 1, or 2)
|
Type: 2 for multi-scale and auto |
- Enter number of scale of X axis
|
Type: 30 (for 30 scales) |
- Enter number of scale of Y axis
|
Type: 30 (for 30 scales) |
| |
|
- Conduct
post analysis |
Type: 5 (Select menu #5 - Post) |
- Select the type of post analysis (1 and/or 3)
|
Type: 3 (Select Confusion Matrix) |
- Decide whether to list the parameters
|
Type: 1 for yes and 0 for No |
- Enter number of classes
|
Type: 3 (for 3 output neurons) |
- Enter number of testing examples
|
Type: 75 (for 75 testing data) |
| |
|
- Quit
the system |
Type: 1 (Select menu #1 - File) |
- Exit
|
Type: 4
(Select item #4 -
Exit) |
[ Back to Top of the Page ]
[ Back to Syllabus Page ]
|