[libfann] 91/242: Fixed signedness error, error_value should not be in fann_error struct
Christian Kastner
chrisk-guest at moszumanska.debian.org
Sat Oct 4 21:10:23 UTC 2014
This is an automated email from the git hooks/post-receive script.
chrisk-guest pushed a commit to tag Version2_0_0
in repository libfann.
commit 095f3ba1896d6816b6a7e9396fa5c93931d3157b
Author: Evan Nemerson <evan at coeus-group.com>
Date: Wed Feb 18 21:07:47 2004 +0000
Fixed signedness error, error_value should not be in fann_error struct
---
src/fann_error.c | 1 -
src/fann_train_data.c | 17 ++++++++---------
src/include/fann_data.h | 12 +++++-------
3 files changed, 13 insertions(+), 17 deletions(-)
diff --git a/src/fann_error.c b/src/fann_error.c
index 6ff16c1..70e5585 100644
--- a/src/fann_error.c
+++ b/src/fann_error.c
@@ -163,7 +163,6 @@ void fann_error(struct fann_error *errdat, const unsigned int errno, ...)
*/
void fann_init_error_data(struct fann_error *errdat)
{
- errdat->error_value = 0;
errdat->errstr = NULL;
errdat->errno_f = 0;
errdat->error_log = stderr;
diff --git a/src/fann_train_data.c b/src/fann_train_data.c
index 86f5a36..875de8b 100644
--- a/src/fann_train_data.c
+++ b/src/fann_train_data.c
@@ -151,19 +151,18 @@ void fann_train_on_file(struct fann *ann, char *filename, unsigned int max_epoch
/* shuffles training data, randomizing the order
*/
void fann_shuffle_train_data(struct fann_train_data *train_data) {
- int dat = train_data->num_data - 1, elem;
- unsigned int swap;
+ unsigned int dat = 0, elem, swap;
fann_type temp;
- for ( ; dat >= 0 ; dat-- ) {
+ for ( ; dat < train_data->num_data ; dat++ ) {
swap = (unsigned int)(rand() % train_data->num_data);
if ( swap != dat ) {
- for ( elem = train_data->num_input ; elem >= 0 ; elem-- ) {
+ for ( elem = 0 ; elem < train_data->num_input ; elem++ ) {
temp = train_data->input[dat][elem];
train_data->input[dat][elem] = train_data->input[swap][elem];
train_data->input[swap][elem] = temp;
}
- for ( elem = train_data->num_output ; elem >= 0 ; elem-- ) {
+ for ( elem = 0 ; elem < train_data->num_output ; elem++ ) {
temp = train_data->output[dat][elem];
train_data->output[dat][elem] = train_data->output[swap][elem];
train_data->output[swap][elem] = temp;
@@ -176,7 +175,7 @@ void fann_shuffle_train_data(struct fann_train_data *train_data) {
*/
struct fann_train_data * fann_merge_train_data(struct fann_train_data *data1, struct fann_train_data *data2) {
struct fann_train_data * train_data;
- int x;
+ unsigned int x;
if ( (data1->num_input != data2->num_input) ||
(data1->num_output != data2->num_output) ) {
@@ -198,7 +197,7 @@ struct fann_train_data * fann_merge_train_data(struct fann_train_data *data1, st
fann_destroy_train(train_data);
return NULL;
}
- for ( x = train_data->num_data - 1 ; x >= 0 ; x-- ) {
+ for ( x = 0 ; x < train_data->num_data ; x++ ) {
if ( ((train_data->input[x] = (fann_type *)calloc(train_data->num_input, sizeof(fann_type))) == NULL) ||
((train_data->output[x] = (fann_type *)calloc(train_data->num_output, sizeof(fann_type))) == NULL) ) {
fann_error(NULL, FANN_E_CANT_ALLOCATE_MEM);
@@ -220,7 +219,7 @@ struct fann_train_data * fann_merge_train_data(struct fann_train_data *data1, st
*/
struct fann_train_data * fann_duplicate_train_data(struct fann_train_data *data) {
struct fann_train_data * dest;
- int x;
+ unsigned int x;
if ( (dest = malloc(sizeof(struct fann_train_data))) == NULL ) {
fann_error(NULL, FANN_E_CANT_ALLOCATE_MEM);
@@ -240,7 +239,7 @@ struct fann_train_data * fann_duplicate_train_data(struct fann_train_data *data)
return NULL;
}
- for ( x = dest->num_data - 1 ; x >= 0 ; x-- ) {
+ for ( x = 0 ; x < dest->num_data ; x++ ) {
if ( ((dest->input[x] = (fann_type *)calloc(dest->num_input, sizeof(fann_type))) == NULL) ||
((dest->output[x] = (fann_type *)calloc(dest->num_output, sizeof(fann_type))) == NULL) ) {
fann_error(NULL, FANN_E_CANT_ALLOCATE_MEM);
diff --git a/src/include/fann_data.h b/src/include/fann_data.h
index 319dabc..5544b79 100644
--- a/src/include/fann_data.h
+++ b/src/include/fann_data.h
@@ -58,11 +58,6 @@ struct fann_layer
*/
struct fann
{
- /* the total error value.
- the real mean square error is error_value/num_errors
- */
- float error_value;
-
/* The type of error that last occured. */
unsigned int errno_f;
@@ -155,12 +150,16 @@ struct fann
/* the number of data used to calculate the error.
*/
unsigned int num_errors;
+
+ /* the total error value.
+ the real mean square error is error_value/num_errors
+ */
+ float error_value;
};
/* Structure used to store data, for use with training. */
struct fann_train_data
{
- float error_value;
unsigned int errno_f;
FILE *error_log;
char *errstr;
@@ -175,7 +174,6 @@ struct fann_train_data
/* Structure used to store error-related information */
struct fann_error
{
- float error_value;
unsigned int errno_f;
FILE *error_log;
char * errstr;
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/libfann.git
More information about the debian-science-commits
mailing list