Developing testable documentation
In this part of the chapter, we'll just explore different classifier algorithms, and learn the ins and outs of each.
Decision trees
Let's start with decision trees. scikit-learn has some great documentation, which you can find at http://scikit-learn.org/stable/. So, let's jump over there, and look up an example that states how to use their decision tree. The following is a test with the details greatly simplified to get to the simplest possible example:
from sklearn.tree import DecisionTreeRegressor def decision_tree_can_predict_perfect_linear_relationship_test(): decision_tree = DecisionTreeRegressor() decision_tree.fit([[1],[1.1],[2]], [[0],[0],[1]]) predicted_value = decision_tree.predict([[-1],[5]]) assert list(predicted_value) == [0,1]
A good place to start with the most classified algorithms is to assume that they can accurately classify data with linear relationships. This test passed. We can look for more interesting bits to test as...