Skip to content
Snippets Groups Projects
Commit bf6366e8 authored by Jakhes's avatar Jakhes
Browse files

Adding lars tests

parent 48d3f4a5
No related branches found
No related tags found
No related merge requests found
...@@ -39,6 +39,7 @@ ...@@ -39,6 +39,7 @@
%% Only initialize the LARS model. %% Only initialize the LARS model.
%% %%
lars_initModelNoDataNoGram(UseCholesky, Lambda1, Lambda2, Tolerance) :- lars_initModelNoDataNoGram(UseCholesky, Lambda1, Lambda2, Tolerance) :-
Tolerance > 0,
initModelNoDataNoGramI(UseCholesky, Lambda1, Lambda2, Tolerance). initModelNoDataNoGramI(UseCholesky, Lambda1, Lambda2, Tolerance).
foreign(initModelNoDataNoGram, c, initModelNoDataNoGramI(+integer, foreign(initModelNoDataNoGram, c, initModelNoDataNoGramI(+integer,
...@@ -59,6 +60,7 @@ foreign(initModelNoDataNoGram, c, initModelNoDataNoGramI(+integer, ...@@ -59,6 +60,7 @@ foreign(initModelNoDataNoGram, c, initModelNoDataNoGramI(+integer,
%% Initialize LARS model, and pass in a precalculated Gram matrix but dont train the model. %% Initialize LARS model, and pass in a precalculated Gram matrix but dont train the model.
%% %%
lars_initModelNoDataWithGram(UseCholesky, GramList, GramRows, Lambda1, Lambda2, Tolerance) :- lars_initModelNoDataWithGram(UseCholesky, GramList, GramRows, Lambda1, Lambda2, Tolerance) :-
Tolerance > 0,
convert_list_to_float_array(GramList, GramRows, array(Zsize, Zrownum, Z)), convert_list_to_float_array(GramList, GramRows, array(Zsize, Zrownum, Z)),
initModelNoDataWithGramI(UseCholesky, Z, Zsize, Zrownum, Lambda1, Lambda2, Tolerance). initModelNoDataWithGramI(UseCholesky, Z, Zsize, Zrownum, Lambda1, Lambda2, Tolerance).
...@@ -82,6 +84,7 @@ foreign(initModelNoDataWithGram, c, initModelNoDataWithGramI( +integer, ...@@ -82,6 +84,7 @@ foreign(initModelNoDataWithGram, c, initModelNoDataWithGramI( +integer,
%% Initialize LARS model, and train the model. %% Initialize LARS model, and train the model.
%% %%
lars_initModelWithDataNoGram(DataList, DataRows, ResponsesList, TransposeData, UseCholesky, Lambda1, Lambda2, Tolerance) :- lars_initModelWithDataNoGram(DataList, DataRows, ResponsesList, TransposeData, UseCholesky, Lambda1, Lambda2, Tolerance) :-
Tolerance > 0,
convert_list_to_float_array(DataList, DataRows, array(Xsize, Xrownum, X)), convert_list_to_float_array(DataList, DataRows, array(Xsize, Xrownum, X)),
convert_list_to_float_array(ResponsesList, array(Ysize, Y)), convert_list_to_float_array(ResponsesList, array(Ysize, Y)),
initModelWithDataNoGramI(X, Xsize, Xrownum, Y, Ysize, TransposeData, UseCholesky, Lambda1, Lambda2, Tolerance). initModelWithDataNoGramI(X, Xsize, Xrownum, Y, Ysize, TransposeData, UseCholesky, Lambda1, Lambda2, Tolerance).
...@@ -110,6 +113,7 @@ foreign(initModelWithDataNoGram, c, initModelWithDataNoGramI( +pointer(float_a ...@@ -110,6 +113,7 @@ foreign(initModelWithDataNoGram, c, initModelWithDataNoGramI( +pointer(float_a
%% Initialize LARS model, pass in a precalculated Gram matrix and train the model. %% Initialize LARS model, pass in a precalculated Gram matrix and train the model.
%% %%
lars_initModelWithDataWithGram(DataList, DataRows, ResponsesList, TransposeData, UseCholesky, GramList, GramRows, Lambda1, Lambda2, Tolerance) :- lars_initModelWithDataWithGram(DataList, DataRows, ResponsesList, TransposeData, UseCholesky, GramList, GramRows, Lambda1, Lambda2, Tolerance) :-
Tolerance > 0,
convert_list_to_float_array(DataList, DataRows, array(Xsize, Xrownum, X)), convert_list_to_float_array(DataList, DataRows, array(Xsize, Xrownum, X)),
convert_list_to_float_array(ResponsesList, array(Ysize, Y)), convert_list_to_float_array(ResponsesList, array(Ysize, Y)),
convert_list_to_float_array(GramList, GramRows, array(Zsize, Zrownum, Z)), convert_list_to_float_array(GramList, GramRows, array(Zsize, Zrownum, Z)),
......
...@@ -8,77 +8,406 @@ ...@@ -8,77 +8,406 @@
:- use_module(lars). :- use_module(lars).
:- use_module('../../helper_files/helper.pl'). :- use_module('../../helper_files/helper.pl').
reset_Model :- reset_Model_NoTrain :-
lars_initModelNoDataNoGram(1, 0.1, 0.3, 0.001), lars_initModelNoDataNoGram(0, 0.0, 0.0, 1.0e-16).
convert_list_to_float_array([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5],3, array(Xsize, Xrownum, X)),
convert_list_to_float_array([0.2,0.2,0.2,0.2], array(Ysize, Y)),
lars_trainNoBetaReturn(X,Xsize, Xrownum,Y, Ysize, 1, _).
:- begin_tests(lists). reset_Model_WithTrain :-
lars_initModelWithDataNoGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, 0, 0.0, 0.0, 1.0e-16).
%% train tests
test(train, [true(A =:= 0)]) :-
reset_Model,
convert_list_to_float_array([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5],3, array(Xsize, Xrownum, X)),
convert_list_to_float_array([0.2,0.2,0.2,0.2], array(Ysize, Y)),
lars_trainNoBetaReturn(X,Xsize, Xrownum,Y, Ysize, 1, A),
lars_predict(X, Xsize,Xrownum, Predic, PredicSize,0),
convert_float_array_to_list(Predic, PredicSize, Result),
print(Result).
test(activeSet) :- %%
reset_Model, %% TESTING predicate lars_initModelNoDataNoGram/4
lars_activeSet(ActSet, ActSetSize), %%
convert_float_array_to_list(ActSet, ActSetSize, Result), :- begin_tests(lars_initModelNoDataNoGram).
print(Result).
%% Failure Tests
test(lars_InitModelNoDataNoGram_Negative_Tolerance, fail) :-
lars_initModelNoDataNoGram(0, 0.0, 0.0, -1.0e-16).
%% Successful Tests
test(lars_InitModelNoDataNoGram_Normal_Use) :-
lars_initModelNoDataNoGram(0, 0.0, 0.0, 1.0e-16).
test(lars_InitModelNoDataNoGram_Alternative_Use) :-
lars_initModelNoDataNoGram(1, -1.0, 1.0, 1.0e-16).
:- end_tests(lars_initModelNoDataNoGram).
%%
%% TESTING predicate lars_initModelNoDataWithGram/6
%%
:- begin_tests(lars_initModelNoDataWithGram).
%% Failure Tests
test(lars_InitModelNoDataWithGram_Negative_Tolerance, fail) :-
lars_initModelNoDataWithGram(0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0.0, 0.0, -1.0e-16).
%% Successful Tests
test(lars_InitModelNoDataWithGram_Normal_Use) :-
lars_initModelNoDataWithGram(0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0.0, 0.0, 1.0e-16).
test(lars_InitModelNoDataWithGram_Alternative_Use) :-
lars_initModelNoDataWithGram(1, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, -1.0, 1.0, 1.0e-16).
:- end_tests(lars_initModelNoDataWithGram).
%%
%% TESTING predicate lars_initModelWithDataNoGram/8
%%
:- begin_tests(lars_initModelWithDataNoGram).
%% Failure Tests
test(lars_InitModelWithDataNoGram_Negative_Tolerance, fail) :-
lars_initModelWithDataNoGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, 0, 0.0, 0.0, -1.0e-16).
test(lars_InitModelWithDataNoGram_Too_Few_Labels, [error(_,system_error('Error'))]) :-
lars_initModelWithDataNoGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1], 0, 0, 0.0, 0.0, -1.0e-16).
test(lars_InitModelWithDataNoGram_Too_Many_Labels, [error(_,system_error('Error'))]) :-
lars_initModelWithDataNoGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1,0,1], 0, 0, 0.0, 0.0, -1.0e-16).
test(lars_InitModelWithDataNoGram_Too_Many_Labelclasses, [error(_,system_error('Error'))]) :-
lars_initModelWithDataNoGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,2,3], 0, 0, 0.0, 0.0, -1.0e-16).
%% Successful Tests
test(lars_InitModelWithDataNoGram_Normal_Use) :-
lars_initModelWithDataNoGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, 0, 0.0, 0.0, 1.0e-16).
test(lars_InitModelWithDataNoGram_Alternative_Use) :-
lars_initModelWithDataNoGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 1, 1, 1.0, -1.0, 1.0e-16).
:- end_tests(lars_initModelWithDataNoGram).
%%
%% TESTING predicate lars_initModelWithDataWithGram/10
%%
:- begin_tests(lars_initModelWithDataWithGram).
%% Failure Tests
test(lars_InitModelWithDataWithGram_Negative_Tolerance, fail) :-
lars_initModelWithDataWithGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, 0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0.0, 0.0, -1.0e-16).
test(lars_InitModelWithDataWithGram_Too_Few_Labels, [error(_,system_error('Error'))]) :-
lars_initModelWithDataWithGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1], 0, 0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0.0, 0.0, -1.0e-16).
test(lars_InitModelWithDataWithGram_Too_Many_Labels, [error(_,system_error('Error'))]) :-
lars_initModelWithDataWithGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1,0,1], 0, 0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0.0, 0.0, -1.0e-16).
test(lars_InitModelWithDataWithGram_Too_Many_Labelclasses, [error(_,system_error('Error'))]) :-
lars_initModelWithDataWithGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,2,3], 0, 0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0.0, 0.0, -1.0e-16).
test(lars_InitModelWithDataWithGram_Diffrent_Dimensions, [error(_,system_error('Error'))]) :-
lars_initModelWithDataWithGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, 0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 4, 0.0, 0.0, -1.0e-16).
%% Successful Tests
test(lars_InitModelWithDataWithGram_Normal_Use) :-
lars_initModelWithDataWithGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, 0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0.0, 0.0, 1.0e-16).
test(lars_InitModelWithDataWithGram_Alternative_Use) :-
lars_initModelWithDataWithGram([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 1, 0, [5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 1.0, -1.0, 1.0e-16).
:- end_tests(lars_initModelWithDataWithGram).
%%
%% TESTING predicate lars_activeSet/1
%%
:- begin_tests(lars_activeSet).
%% Failure Tests
test(lars_ActiveSet_Before_Train, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_activeSet(_).
%% Successful Tests
test(lars_ActiveSet_Normal_Use) :-
reset_Model_WithTrain,
lars_activeSet(ActiveSetList),
print('\nActive Set: '),
print(ActiveSetList).
:- end_tests(lars_activeSet).
%%
%% TESTING predicate lars_beta/1
%%
:- begin_tests(lars_beta).
%% Failure Tests
test(lars_Beta_Before_Train, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_beta(_).
test(matUtriCholFactor) :- %% Successful Tests
reset_Model,
lars_matUtriCholFactor(Matrix, MatrixColNum, MatrixRowNum), test(lars_Beta_Normal_Use) :-
print(MatrixColNum), reset_Model_WithTrain,
convert_float_array_to_2d_list(Matrix, MatrixColNum, MatrixRowNum, Results), lars_beta(BetaList),
print(Results). print('\nBeta : '),
print(BetaList).
:- end_tests(lars_beta).
%%
%% TESTING predicate lars_betaPath/2
%%
:- begin_tests(lars_betaPath).
%% Failure Tests
test(lars_BetaPath_Before_Train, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_betaPath(_, _).
test(betaPath) :-
reset_Model, %% Successful Tests
lars_betaPath(Matrix, MatrixColNum, MatrixRowNum),
print(MatrixColNum), test(lars_BetaPath_Normal_Use) :-
convert_float_array_to_2d_list(Matrix, MatrixColNum, MatrixRowNum, Results), reset_Model_WithTrain,
print(Results). lars_betaPath(BetaPathList, _),
print('\nBeta List: '),
print(BetaPathList).
:- end_tests(lars_betaPath).
:- end_tests(lists).
%% %%
%% TESTING predicate predicate/10 %% TESTING predicate lars_computeError/5
%% %%
:- begin_tests(predicate). :- begin_tests(lars_computeError).
%% Failure Tests %% Failure Tests
test(testDescription, [error(domain_error('expectation' , culprit), _)]) :- test(lars_ComputeError_Before_Train, [error(_,system_error('Error'))]) :-
reset_Model_No_Train(perceptron), reset_Model_NoTrain,
train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,0,0,0], 2, culprit, 50, 0.0001, _). lars_computeError([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, _).
test(lars_ComputeError_Too_Few_Labels, [error(_,system_error('Error'))]) :-
reset_Model_WithTrain,
lars_computeError([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1], 0, _).
test(testDescription2, [error(_,system_error('The values of the Label have to start at 0 and be >= 0 and < the given numClass!'))]) :- test(lars_ComputeError_Too_Many_Labels, [error(_,system_error('Error'))]) :-
reset_Model_No_Train(perceptron), reset_Model_WithTrain,
train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,2], 2, perceptron, 50, 0.0001, _). lars_computeError([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1,0,1], 0, _).
test(lars_ComputeError_Too_Many_Labelclasses, [error(_,system_error('Error'))]) :-
reset_Model_WithTrain,
lars_computeError([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,2,3], 0, _).
%% Successful Tests %% Successful Tests
test(testDescription3, [true(Error =:= 1)]) :- test(lars_ComputeError_Normal_Use) :-
reset_Model_No_Train(perceptron), reset_Model_WithTrain,
train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,0,0,0], 2, perceptron, 50, 0.0001, Error). lars_computeError([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, Error),
print('\nError : '),
print(Error).
test(lars_ComputeError_Alternative_Use) :-
reset_Model_WithTrain,
lars_computeError([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 1, Error),
print('\nError : '),
print(Error).
test(lars_ComputeError_CSV_Input) :-
reset_Model_WithTrain,
open('src/data_csv/iris2.csv', read, File),
take_csv_row(File, skipFirstRow,10, Data),
lars_computeError(Data, 4, [0,1,0,1,1,0,1,1,1,0], 0, Error),
print('\nError : '),
print(Error).
:- end_tests(lars_computeError).
%%
%% TESTING predicate lars_lambdaPath/1
%%
:- begin_tests(lars_lambdaPath).
%% Failure Tests
test(lars_LambdaPath_Before_Train, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_lambdaPath(_).
%% Successful Tests
test(lars_LambdaPath_Normal_Use) :-
reset_Model_WithTrain,
lars_lambdaPath(LambdaPathList),
print('\nLambda Path: '),
print(LambdaPathList).
:- end_tests(lars_lambdaPath).
%%
%% TESTING predicate lars_matUtriCholFactor/2
%%
:- begin_tests(lars_matUtriCholFactor).
%% Failure Tests
test(lars_MatUtriCholFactor_Before_Train, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_matUtriCholFactor(_, _).
%% Successful Tests
test(lars_MatUtriCholFactor_Normal_Use) :-
reset_Model_WithTrain,
lars_matUtriCholFactor(FactorList, _),
print('\nUtriCholFactor: '),
print(FactorList).
:- end_tests(lars_matUtriCholFactor).
%%
%% TESTING predicate lars_predict/10
%%
:- begin_tests(lars_predict).
%% Failure Tests
test(lars_Predict_Before_Train, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_predict([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0, _).
test(lars_Predict_Diffrent_Dims, [error(_,system_error('Error'))]) :-
reset_Model_WithTrain,
lars_predict([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 4, 0, _).
%% Successful Tests
test(lars_Predict_Normal_Use) :-
reset_Model_WithTrain,
lars_predict([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 0, PredictList),
print('\nPrediction: '),
print(PredictList).
test(lars_Predict_Alternative_Use) :-
reset_Model_WithTrain,
lars_predict([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, 1, PredictList),
print('\nPrediction: '),
print(PredictList).
test(lars_Predict_CSV_Input) :-
reset_Model_WithTrain,
open('src/data_csv/iris2.csv', read, File),
take_csv_row(File, skipFirstRow,10, Data),
lars_predict(Data, 4, 0, PredictList),
print('\nPrediction: '),
print(PredictList).
:- end_tests(lars_predict).
%%
%% TESTING predicate lars_train/10
%%
:- begin_tests(lars_train).
%% Failure Tests\
test(lars_Train_Diffrent_Dims, [error(_,system_error('Error'))]) :-
reset_Model_WithTrain,
lars_train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 4, [0,1,0], 0, _, _).
test(lars_Train_Too_Few_Labels, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1], 0, _, _).
test(lars_Train_Too_Many_Labels, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1,0,1], 0, _, _).
test(lars_Train_Too_Many_Labelclasses, [error(_,system_error('Error'))]) :-
reset_Model_NoTrain,
lars_train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,2,3], 0, _, _).
%% Successful Tests
test(lars_Train_Normal_Use) :-
reset_Model_NoTrain,
lars_train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, BetaList, Error),
print('\nBeta: '),
print(BetaList),
print('\nError: '),
print(Error).
test(lars_Train_Normal_Use) :-
reset_Model_WithTrain,
lars_train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 0, BetaList, Error),
print('\nBeta: '),
print(BetaList),
print('\nError: '),
print(Error).
test(lars_Train_Alternative_Use) :-
reset_Model_NoTrain,
lars_train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,1], 1, BetaList, Error),
print('\nBeta: '),
print(BetaList),
print('\nError: '),
print(Error).
test(testDescription4, [true(Error =:= 0.9797958971132711)]) :- test(lars_Train_CSV_Input) :-
reset_Model_No_Train(perceptron), reset_Model_NoTrain,
open('src/data_csv/iris2.csv', read, File), open('src/data_csv/iris2.csv', read, File),
take_csv_row(File, skipFirstRow,10, Data), take_csv_row(File, skipFirstRow,10, Data),
train(Data, 4, [0,1,0,1,1,0,1,1,1,0], 2, perceptron, 50, 0.0001, Error). lars_train(Data, 4, [0,1,0,1,1,0,1,1,1,0], 0, BetaList, Error),
print('\nBeta: '),
print(BetaList),
print('\nError: '),
print(Error).
:- end_tests(predicate). :- end_tests(lars_train).
run_lars_tests :- run_lars_tests :-
run_tests. run_tests.
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment