Investigate what are decision forest and trees about in machine learning.
1. It is an alternative to neural networks.
2. What kinds of models do we have. Random Forest, Gradient Boosted Trees, Cart, Distributed Gradient Boosted Trees.
3. What platforms we have. YDF, TF-DF, Scikit Learn, ONNX, TreeLite, HB-TVM
4. Examples github.com/tensorflow/decision-forests/blob/main/examples/
5. It is possible to combine NN and DF for examle use DF on top of pretrained NN model it is called stacked model. Or you can ensemble NN and DF in parallel way.
3. To install $ pip install tensorflow_decision_forests
0. Yggdrasil is the tree of life from viking's mythology.
1. Install $ pip install ydf -U
1.1. While I am trying to import ydf I got an error illegal instuction core dumped. The same problem I had with Tensorflow on one of my laptops. It means the CPU architecture doesn't not supported. I think recompilation from the source code should help. But it is always the problem to install from source some google "piece of art". You need install bazel and you always get problem.
1.1.1 So I've installed this shitty bazel thing and ran $ bazel build and ofcourse get an error as usual Required Bazel version 5.3.0
1.1.2. I've reinstalled bazel with .deb 5.3.0 version
1.1.3. I don't really know how to build packages with this shit. It have to be another article to learn this bazel thing. But I don't have desire to learn some useless shit instead of decision trees. I'd better find other solution that works Scikit maybe.
2. Usefull for my SEO purposes analitic tool
a = model.analyze(test_ds)
a.to_file("/home/dir/analysis.html")
2.1. For my SEO analitic purposes I would like to switch off early stoppage.
ydf.GradientBoostedTreesLearner(early_stopping="NONE")
2.2. To increase testing dataset.
ydf.GradientBoostedTreesLearner(validation_ratio=0.0)