... | ... | @@ -27,6 +27,7 @@ Needs to be called first before all other predicates exept initModelNoTraining! |
|
|
Initiates the Adaboostmodel and trains it, so classify can be used immediately.
|
|
|
|
|
|
```prolog
|
|
|
%% predicate definition
|
|
|
adaboost_initModelWithTraining(MatList, MatRows, VecList, NumClasses, Learner, Iterations, Tolerance) :-
|
|
|
NumClasses >= 0,
|
|
|
Iterations >= 0,
|
... | ... | @@ -35,6 +36,7 @@ adaboost_initModelWithTraining(MatList, MatRows, VecList, NumClasses, Learner, I |
|
|
convert_list_to_float_array(VecList, array(Ysize, Y)),
|
|
|
initModelWithTrainingI(X, Xsize, Xrownum, Y, Ysize, NumClasses, Learner, Iterations, Tolerance).
|
|
|
|
|
|
%% foreign c++ predicate definition
|
|
|
foreign(initModelWithTraining, c, initModelWithTrainingI( +pointer(float_array), +integer, +integer,
|
|
|
+pointer(float_array), +integer,
|
|
|
+integer,
|
... | ... | @@ -69,6 +71,7 @@ adaboost_initModelNoTraining(Tolerance, Learner) :- |
|
|
Tolerance > 0,
|
|
|
initModelNoTrainingI(Tolerance, Learner).
|
|
|
|
|
|
%% foreign c++ predicate definition
|
|
|
foreign(initModelNoTraining, c, initModelNoTrainingI(+float32, +string)).
|
|
|
```
|
|
|
|
... | ... | @@ -98,6 +101,7 @@ adaboost_classify(TestList, TestRows, PredicList, ProbsList, ZRows) :- |
|
|
convert_float_array_to_list(Y, Ysize, PredicList),
|
|
|
convert_float_array_to_2d_list(Z, ZCols, ZRows, ProbsList).
|
|
|
|
|
|
%% foreign c++ predicate definition
|
|
|
foreign(classify, c, classifyI( +pointer(float_array), +integer, +integer,
|
|
|
-pointer(float_array), -integer,
|
|
|
-pointer(float_array), -integer, -integer)).
|
... | ... | @@ -125,6 +129,7 @@ foreign(classify, c, classifyI( +pointer(float_array), +integer, +integer, |
|
|
adaboost_numClasses(ClassesNum) :-
|
|
|
numClassesI(ClassesNum).
|
|
|
|
|
|
%% foreign c++ predicate definition
|
|
|
foreign(numClasses, c, numClassesI([-integer])).
|
|
|
```
|
|
|
|
... | ... | @@ -151,6 +156,7 @@ foreign(numClasses, c, numClassesI([-integer])). |
|
|
adaboost_getTolerance(Tolerance) :-
|
|
|
getToleranceI(Tolerance).
|
|
|
|
|
|
%% foreign c++ predicate definition
|
|
|
foreign(getTolerance, c, getToleranceI([-float32])).
|
|
|
```
|
|
|
|
... | ... | @@ -177,6 +183,7 @@ adaboost_modifyTolerance(NewTolerance) :- |
|
|
NewTolerance > 0,
|
|
|
modifyToleranceI(NewTolerance).
|
|
|
|
|
|
%% foreign c++ predicate definition
|
|
|
foreign(modifyTolerance, c, modifyToleranceI(+float32)).
|
|
|
```
|
|
|
|
... | ... | @@ -208,6 +215,7 @@ adaboost_train(MatList, MatRows, VecList, NumClasses, Learner, Iterations, Toler |
|
|
convert_list_to_float_array(VecList, array(Ysize, Y)),
|
|
|
trainI(X, Xsize, Xrownum, Y, Ysize, NumClasses, Learner, Iterations, Tolerance, Error).
|
|
|
|
|
|
%% foreign c++ predicate definition
|
|
|
foreign(train, c, trainI( +pointer(float_array), +integer, +integer,
|
|
|
+pointer(float_array), +integer,
|
|
|
+integer,
|
... | ... | |