如何从 NN FANN 获取权重矩阵?
How Get Weight Matrix from NN FANN?
我正在使用 FANN 来使用神经网络。 (Link to FANN)
我需要在训练网络后获取权重矩阵,但我没有从文档中找到任何内容。 (Link to documentation)
你知道怎么得到那个矩阵吗???
谢谢!
您需要使用fann_get_connection_array()
功能。它为您提供 struct fann_connection
数组,并且 struct fann_connection
具有字段 weight
,因此这就是您想要的。
您可以像这样打印您的体重矩阵:
int main(void)
{
struct fann *net; /* your trained neural network */
struct fann_connection *con; /* weight matrix */
unsigned int connum; /* connections number */
size_t i;
/* Insert your net allocation and training code here */
...
connum = fann_get_total_connections(net);
if (connum == 0) {
fprintf(stderr, "Error: connections count is 0\n");
return EXIT_FAILURE;
}
con = calloc(connum, sizeof(*con));
if (con == NULL) {
fprintf(stderr, "Error: unable to allocate memory\n");
return EXIT_FAILURE;
}
/* Get weight matrix */
fann_get_connection_array(net, con);
/* Print weight matrix */
for (i = 0; i < connum; ++i) {
printf("weight from %u to %u: %f\n", con[i].from_neuron,
con[i].to_neuron, con[i].weight);
}
free(con);
return EXIT_SUCCESS;
}
详情:
我正在使用 FANN 来使用神经网络。 (Link to FANN)
我需要在训练网络后获取权重矩阵,但我没有从文档中找到任何内容。 (Link to documentation)
你知道怎么得到那个矩阵吗???
谢谢!
您需要使用fann_get_connection_array()
功能。它为您提供 struct fann_connection
数组,并且 struct fann_connection
具有字段 weight
,因此这就是您想要的。
您可以像这样打印您的体重矩阵:
int main(void)
{
struct fann *net; /* your trained neural network */
struct fann_connection *con; /* weight matrix */
unsigned int connum; /* connections number */
size_t i;
/* Insert your net allocation and training code here */
...
connum = fann_get_total_connections(net);
if (connum == 0) {
fprintf(stderr, "Error: connections count is 0\n");
return EXIT_FAILURE;
}
con = calloc(connum, sizeof(*con));
if (con == NULL) {
fprintf(stderr, "Error: unable to allocate memory\n");
return EXIT_FAILURE;
}
/* Get weight matrix */
fann_get_connection_array(net, con);
/* Print weight matrix */
for (i = 0; i < connum; ++i) {
printf("weight from %u to %u: %f\n", con[i].from_neuron,
con[i].to_neuron, con[i].weight);
}
free(con);
return EXIT_SUCCESS;
}
详情: