NOTE:
- All the files that are generated by programs are in folder output/
ATTRIBUTES:
- N is total number of points to be generated : TRAINING + TEST
- r is no_of_training_points/no_of_total_points and 0 < r < 1
- M is complexity of model
- L is LAMBHDA used in ridge regression, provide x100 value of L as it is divided by 100 in program
- m1 lower limit of M
- m2 upper limit of M
- n1 lower limit of N
- n2 upper limit of N
- l1 lower limit of L
- l2 upper limit of L
OUTPUT FILES:
- test.txt - contains test points - format: X Y \n
- training.txt - contains training points - format: X Y \n
- varyM.txt - contains M, training error, test error - format: M train_error test_error
- varyL.txt - contains L, training error, test error - format: L train_error test_error
- varyN.txt - contains N, training error, test error - format: N train_error test_error
- trainingPoints(, )
- shows graph of original function with training points
- simpleModel(, , )
- shows graph of original function with estimated function with training points
- regressionModel(, , , )
- shows graph of original function with estimated function with training points
- M_vs_eRMS() - shows graph of M vs training_error and test_error
- N_vs_eRMS() - shows graph of N vs training_error and test_error
- L_vs_eRMS() - shows graph of L vs training_error and test_error
HOW TO RUN:
-
To run the full model with random points generation:
make N=30 r=0.8 M=10 full
output: test.txt train.txt simpleModel().png trainingPoints().png
-
To run the full model with ridge regression and random points generation:
make N=30 r=0.8 M=10 L=10 fullReg
output: test.txt train.txt regressionModel() trainingPoints()
-
To generate random points
make N=30 r=0.8 generate
output: test.txt train.txt trainingPoints().png
-
To run Simple Model
make M=9 model
output: simpleModel().png
-
To run Model with Regression
make M=9 L=0.1 regression
output: regressionModel().png
-
To run simple model by varying M and keeping N constant
make m1=1 m2=20 varyM
output: simpleModel().png varyM.txt M_vs_eRMS().png
-
To run model with ridge regression by varying M and keeping N constant
make m1=1 m2=20 L=10 varyMReg
output: regressionModel().png varyM.txt M_vs_eRMS().png
-
To run model with ridge regression by varying lambhda
make M=9 l1=1 l2=10 varyLReg
output: regressionModel().png varyL.txt L_vs_eRMS().png
-
To run simple model by varying N keeping M constant
make M=9 r=0.8 n1=5 n2=10 varyN
output: trainVN.txt testVN.txt simpleModel().png varyN.txt N_vs_eRMS().png
-
To run simple model by varying N keeping M constant
make M=9 r=0.8 L=20 n1=5 n2=10 varyNReg
output: trainVN.txt testVN.txt regressionModel().png varyN.txt N_vs_eRMS().png