1 /* ///////////////////////////////////////////////////////////////////////
7 * Brief: Unit-testing tester
10 * Copyright (c) 2008-2020, Waruqi All rights reserved.
11 * //////////////////////////////////////////////////////////////////// */
12 #ifndef EXTL_INTELLIGENCE_ANN_TEST_XOR_TESTER_H
13 #define EXTL_INTELLIGENCE_ANN_TEST_XOR_TESTER_H
15 /* ///////////////////////////////////////////////////////////////////////
16 * ::extl::intelligence::test namespace
18 EXTL_INTELLIGENCE_BEGIN_WHOLE_NAMESPACE
19 EXTL_TEST_BEGIN_NAMESPACE
28 template<typename_param_k Net
>
32 typedef Net network_type
;
33 typedef typename_type_k
network_type::sample_type sample_type
;
34 typedef typename_type_k
network_type::samples_type samples_type
;
35 typedef typename_type_k
network_type::size_type size_type
;
36 typedef typename_type_k
network_type::float_type float_type
;
37 typedef basic_network_validator
<network_type
> validator_type
;
40 void test(network_type
& network
, size_type n
)
44 validator_type validator
;
58 network
.train(sps
, n
);
62 EXTL_TEST_TRACE(_T("input:%d %d output:%d foutput:%f"), sp
.get_binput(0), sp
.get_binput(1), sp
.get_boutput(0), network
.foutput(0));
66 EXTL_TEST_TRACE(_T("input:%d %d output:%d foutput:%f"), sp
.get_binput(0), sp
.get_binput(1), sp
.get_boutput(0), network
.foutput(0));
70 EXTL_TEST_TRACE(_T("input:%d %d output:%d foutput:%f"), sp
.get_binput(0), sp
.get_binput(1), sp
.get_boutput(0), network
.foutput(0));
74 EXTL_TEST_TRACE(_T("input:%d %d output:%d foutput:%f"), sp
.get_binput(0), sp
.get_binput(1), sp
.get_boutput(0), network
.foutput(0));
76 validator
.validate(network
, sps
);
77 EXTL_TEST_TRACE(_T("n:%d mse:%f erate:%f\n"), sps
.size() * n
, validator
.mse(), validator
.erate());
80 /* ///////////////////////////////////////////////////////////////////////
81 * ::extl::intelligence::test namespace
83 EXTL_TEST_END_NAMESPACE
84 EXTL_INTELLIGENCE_END_WHOLE_NAMESPACE
85 /* //////////////////////////////////////////////////////////////////// */
86 #endif /* EXTL_INTELLIGENCE_ANN_TEST_XOR_TESTER_H */
87 /* //////////////////////////////////////////////////////////////////// */