fann_create_sparse_array 함수는 신경망의 스페어 매트릭스를 생성하는 함수입니다. 이 함수의 매개변수는 다음과 같습니다.
- num_inputs: 입력 뉴런의 수
- num_outputs: 출력 뉴런의 수
- min_threshold: 뉴런의 최소 임계값
- max_threshold: 뉴런의 최대 임계값
- num_neurons_hidden: 은닉층의 뉴런의 수
- num_layers: 은닉층의 수
- layer_array: 각 은닉층의 뉴런의 수를 저장하는 배열
- num_neurons_hidden_array: 각 은닉층의 뉴런의 수를 저장하는 배열
이 함수를 사용하여 스페어 매트릭스를 생성하려면, 다음과 같은 단계를 거칩니다.
1. 입력 뉴런의 수(num_inputs)와 출력 뉴런의 수(num_outputs)를 지정합니다.
2. 뉴런의 최소 임계값(min_threshold)과 최대 임계값(max_threshold)을 지정합니다.
3. 은닉층의 수(num_layers)와 각 은닉층의 뉴런의 수(num_neurons_hidden)를 지정합니다.
4. 각 은닉층의 뉴런의 수를 저장하는 배열(layer_array)과 num_neurons_hidden_array를 지정합니다.
5. fann_create_sparse_array 함수를 호출하여 스페어 매트릭스를 생성합니다.
예를 들어, 다음과 같이 스페어 매트릭스를 생성할 수 있습니다.
#hostingforum.kr
c
#include intmain(){// 입력 뉴런의 수
unsigned int num_inputs =2;// 출력 뉴런의 수
unsigned int num_outputs =1;// 뉴런의 최소 임계값float min_threshold =-1.0;// 뉴런의 최대 임계값float max_threshold =1.0;// 은닉층의 수
unsigned int num_layers =1;// 각 은닉층의 뉴런의 수
unsigned int num_neurons_hidden =10;// 각 은닉층의 뉴런의 수를 저장하는 배열
unsigned int* layer_array =(unsigned int*)malloc(num_layers *sizeof(unsigned int));
layer_array[0]= num_neurons_hidden;// fann_create_sparse_array 함수를 호출하여 스페어 매트릭스를 생성
struct fann *ann =fann_create_sparse_array(num_inputs, num_outputs, min_threshold, max_threshold, num_layers, layer_array);// 스페어 매트릭스를 사용하여 신경망을 구축// ...// 스페어 매트릭스를 삭제fann_destroy(ann);return0;}
이 예제에서는 2개의 입력 뉴런과 1개의 출력 뉴런을 가진 스페어 매트릭스를 생성합니다. 은닉층의 뉴런의 수는 10개로 지정하고, 뉴런의 최소 임계값은 -1.0, 최대 임계값은 1.0으로 지정합니다.