| | |
| | | #include "shortcut_layer.h" |
| | | #include "softmax_layer.h" |
| | | #include "utils.h" |
| | | #include <stdint.h> |
| | | |
| | | typedef struct{ |
| | | char *type; |
| | |
| | | } |
| | | #endif |
| | | fprintf(stderr, "Saving weights to %s\n", filename); |
| | | FILE *fp = fopen(filename, "w"); |
| | | FILE *fp = fopen(filename, "wb"); |
| | | if(!fp) file_error(filename); |
| | | |
| | | int major = 0; |
| | |
| | | fwrite(&major, sizeof(int), 1, fp); |
| | | fwrite(&minor, sizeof(int), 1, fp); |
| | | fwrite(&revision, sizeof(int), 1, fp); |
| | | fwrite(net.seen, sizeof(int), 1, fp); |
| | | fwrite(net.seen, sizeof(uint64_t), 1, fp); |
| | | |
| | | int i; |
| | | for(i = 0; i < net.n && i < cutoff; ++i){ |
| | |
| | | fread(&major, sizeof(int), 1, fp); |
| | | fread(&minor, sizeof(int), 1, fp); |
| | | fread(&revision, sizeof(int), 1, fp); |
| | | fread(net->seen, sizeof(int), 1, fp); |
| | | if ((major * 10 + minor) >= 2) { |
| | | fread(net->seen, sizeof(uint64_t), 1, fp); |
| | | } |
| | | else { |
| | | int iseen = 0; |
| | | fread(&iseen, sizeof(int), 1, fp); |
| | | *net->seen = iseen; |
| | | } |
| | | int transpose = (major > 1000) || (minor > 1000); |
| | | |
| | | int i; |