
FANN 스케일링 출력 함수는 입력 데이터의 스케일링을 수행하는 함수입니다. 이 함수는 입력 데이터의 범위를 지정된 범위로 변환합니다.
스케일링 타입은 다음과 같습니다.
- `fann_scale_min_max` : 입력 데이터의 최소값과 최대값을 사용하여 스케일링합니다.
- `fann_scale_symmetric` : 입력 데이터의 최소값과 최대값을 사용하여 스케일링합니다. 하지만 스케일링된 데이터의 범위는 -1과 1 사이입니다.
- `fann_scale_linear` : 입력 데이터의 최소값과 최대값을 사용하여 스케일링합니다. 하지만 스케일링된 데이터의 범위는 0과 1 사이입니다.
스케일링 범위는 다음과 같습니다.
- `min_input` : 스케일링을 수행하기 전에 입력 데이터의 최소값입니다.
- `max_input` : 스케일링을 수행하기 전에 입력 데이터의 최대값입니다.
- `min_output` : 스케일링을 수행한 후 출력 데이터의 최소값입니다.
- `max_output` : 스케일링을 수행한 후 출력 데이터의 최대값입니다.
예시 코드를 통해 스케일링이 수행되는 방식을 설명하겠습니다.
#hostingforum.kr
c
#include
int main() {
// 신경망 객체 생성
fann_type *input = (fann_type *)fann_type_realloc(NULL, 2 * sizeof(fann_type));
fann_type *output = (fann_type *)fann_type_realloc(NULL, 1 * sizeof(fann_type));
// 스케일링 함수 사용
fann_scale_output(output, input, 0, 1, 0, 1);
// 스케일링된 데이터의 범위는 0과 1 사이입니다.
// 예를 들어, 입력 데이터가 0.5일 때, 스케일링된 데이터는 0.5입니다.
// 예를 들어, 입력 데이터가 1.5일 때, 스케일링된 데이터는 1입니다.
return 0;
}
이 코드를 통해 스케일링 타입은 `fann_scale_linear`이고, 스케일링 범위는 0과 1 사이입니다.
2025-07-24 03:55