Cosan  1.0
Data Analytics Library
GridSearchTest.cpp
Go to the documentation of this file.
1 //gcc -I/Users/xinyuzhang/Desktop/Spring2021/c++pattern/project/cosan /Users/xinyuzhang/Desktop/Spring2021/c++pattern/project/cosan/test/selection/GridSearchTest.cpp
2 
3 #include <iostream>
4 #include <vector>
5 #include <string>
6 #include <cosan/data/CosanData.h>
7 // #include <cosan/model/CosanLinearModel.h>
14 #include <cosan/selection/kfold.h>
17 typedef double db;
18 int main(){
19  int x = 5;
20  int y = 5;
22  // std::cout<<X_input.rows()<<std::endl;
23  // X_input.setZero();
24  std::cout<<X_input<<std::endl;
25 
26 
27  constexpr gsl::index nrows = 10000;
28  constexpr gsl::index ncols = 5;
31  X_input.resize(nrows,ncols);
32  Y_input.resize(nrows,1);
33  X_input = Eigen::Matrix<decltype(X_input)::Scalar,nrows,ncols>::Random();
34  Y_input = Eigen::Matrix<decltype(X_input)::Scalar,nrows,1>::Random();
35  Cosan::CosanData<NumericType> CD(X_input,Y_input);
36  Cosan::CosanPCRRidge<decltype(X_input)::Scalar> CRRwbias;
37  Cosan::MeanSquareError<decltype(X_input)::Scalar> mse;
38  NumericType a = 0.05;
39  std::vector<NumericType> v(10);
40  std::generate(v.begin(), v.end(), [n = 1, &a]() mutable { return n++ * a; });
41  Cosan::KFold kf(5);
42  Cosan::RandomGridSearch GDS(CD,CRRwbias,mse,kf,v);
43 //
44 // Cosan::CosanLinearRegression<decltype(X_input)::Scalar> CRRwbias(true);
45 // // X_input = Eigen::Matrix<decltype(X_input)::Scalar,nrows,ncols>::Random();
46  // Y_input = Eigen::Matrix<decltype(X_input)::Scalar,nrows,1>::Random();
47  // std::cout<<X_input <<std::endl;
48  // std::cout<<Y_input <<std::endl;
49 // X_input = Eigen::Matrix<X_input::Scalr,X_input.rows(),X_input.cols()>::Random();
50  Cosan::CosanData<db> CRD(X_input,Y_input);
51  // Cosan::CosanData<db> CRD(Eigen::Matrix<decltype(X_input)::Scalar,nrows,ncols>::Random()
52  // ,Eigen::Matrix<decltype(X_input)::Scalar,nrows,1>::Random());
53  // // Cosan::CosanLinearRegression<decltype(X_input)::Scalar> CRRwbias(true);
54  // Cosan::CosanPCRRidge<decltype(X_input)::Scalar> CRRwbias;
55 
56  // CRRwbias.fit(CRD.GetInput(),CRD.GetTarget());
57  // // std::cout<<CRRwbias.GetParams()<<std::endl;
58  // Cosan::CosanMatrix<db> beta = CRRwbias.GetBeta();
59  // std::cout<<CRRwbias.predict(CRD.GetInput())<<std::endl;
60  // std::cout<<beta<<std::endl;
61  // Cosan::MeanSquareError<decltype(X_input)::Scalar> mse;
62  // Cosan::MeanAbsError<decltype(X_input)::Scalar> mae;
63  // Cosan::R2Score<decltype(X_input)::Scalar> r2;
64  // Cosan::MaxError<decltype(X_input)::Scalar> me;
65 
66  // for (auto & each : v){
67  // std::cout<<each<<std::endl;
68  // }
69 // auto a = Cosan::KFoldParallel(11).GetSplit();
70  // // KFoldParallel
71  // // TimeSeriesSplitParallel
72  // // TimeSeriesSplit
73  // // RandomKFoldParallel
74  // // RandomKFold
75  // // Cosan::RandomGridSearch GDS1(CRD,CRRwbias,mse,kf,v);
76  // std::cout<<Cosan::RandomGridSearch(CRD,CRRwbias,mse,kf,v).GetBestParams()<<std::endl;
77  // // Cosan::RandomGridSearch GDS2(CRD,CRRwbias,mae,kf,v);
78  // std::cout<<GDS2.GetBestParams()<<std::endl;
79  // Cosan::RandomGridSearch GDS3(CRD,CRRwbias,r2,kf,v);
80  // std::cout<<GDS3.GetBestParams()<<std::endl;
81  // Cosan::RandomGridSearch GDS4(CRD,CRRwbias,me,kf,v);
82  // std::cout<<GDS4.GetBestParams()<<std::endl;
83 
84 
85  // std::cout<<GDS.GetBestParams()<<std::endl;
86  // std::cout<<CRRwbias.predict(X_input)<<std::endl;
87 
88 
89  return 0;
90 }
timeseriessplit.h
CosanData.h
CosanMetric.h
Cosan::RandomGridSearch
Definition: randomgridsearch.h:16
NumericType
double NumericType
Definition: onehotencodingTest.cpp:20
CosanRidgeRegression.h
Cosan::MeanSquareError
Mean squared error.
Definition: CosanMetric.h:132
Cosan::KFold
Definition: kfold.h:12
db
double db
Definition: GridSearchTest.cpp:17
gridsearch.h
randomkfold.h
Cosan::CosanMatrix
Eigen::Matrix< NumericType, Eigen::Dynamic, Eigen::Dynamic > CosanMatrix
Definition: CosanBO.h:37
main
int main()
Definition: GridSearchTest.cpp:18
randomgridsearch.h
Cosan::CosanData
Data container.
Definition: CosanData.h:546
CosanPCRRidge.h
CosanLinearRegression.h
Cosan::CosanPCRRidge
Definition: CosanPCRRidge.h:19
kfold.h