Contents
3.
Testing and Result
3.1
Testing
-Set
up parameters
To test the program, BackPropConstants.cs is the file that
allows us to set all parameters needed for training and testing the
network. I will explain all the parameter here:
TRAIN_FILE_NAME
sets the name of the Training File to be trained. (Don't worry about
this file, it will be automatically set while running the program)
WEIGHT_FILE_NAME sets Weight File that will be used. (Don't
worry about this file, it will be automatically set while running
the program)
TEST_FILE_NAME sets Test File to be loaded for testing user's
data. (Don't worry about this file, it will be automatically set while
running the program)
INPUT_NUMBER sets number of input neurons for the network
HIDDEN_NUMBER sets number of hidden neurons for the network
STEP_SIZE should not be bigger than 0.1
MOMENTUM, a reasonable value of momentum is 0.9
THRESHOLD_VALUE, less value give more precise model.
ADJUST_THRESHOLD improves speed of training.
MAX_LOOP sets the maximum repeated times for each training.
TRUE_VALUE defines what "TRUE" value is. (1)
FALSE_VALUE defines what "FALSE" value is. (0)
DELTAmax sets maximum average weight different.
RANDOM_RANGE = (double) 2/INPUT_NUMBER sets random range
between -RANDOM_RANGE to + RANDOM_RANGE
-
Run the program
TRAINING PROCESS
1. Start program, the main menu will show up.
2. Select "Training the Network"
3. Select "Training Database Pictures"
4. Select "Training File"
5. Set "True" or "False" for each picture in the
database. For example, for training01.txt we have to set picture 1
and 2 to be TRUE and the rest FALSE.
6. Set "Repeat Time" for True training. Suggest "7".
7. Select "Create Training File" that will create Training
file with all information that we set.
8. Select "Training Database" and the training form will
show up.
9. Select "Start Training" to start training and update
all training and weights files. You can also select "Pause",
"Resume" while training is in process. Or "Stop"
to stop the training process. (Kill the thread)
ADDING
NEW FACE(S) TO RECOGNIZE
1. From Training menu, select "Train New Pictures"
2. Select "Load a Face" and choose a file you want to add.
3. Select the radio button "Matched With" for the matched
database picture we want to add.
4. Set "Repeat Time".
5. Select "Train" to pop up Training Process form.
6. Start to train until it's done.
MATCHING
PROCESS
1. From the main menu, select "Face Matching"
2. "Load a File" to select a file you want to test.
3. "Process" to start searching for the matched database
face(s). The matched face(s) will show on the picture boxes area.
3.2 Result
- Matching False Faces
The problem I found after training the database pictures and new picture
was some times it matched with the wrong faces. Even though it always
gives the correct "true" matched face(s) but also including
some "false" unmatched face(s).
3.3
Possible Improvements
- Training FALSE cases
Another idea that Prof.Mahmood advised me was created a new training
program for finishing only the false cases. Opposite to the previous
training process, the false matching will finish when the false (unmatched)
faces can be trained to be false. Then we will compare the previous
result and this result and eliminate the same results so there will
be only the TRUE or matched face(s) left. This idea should work but
I found that the false training after trained more and more, it will
give all the faces from the database. So we have to develop the program
again to achieve our goal. My project stops at this point.
Copyright 2003.
All Rights Reserved.