Four Branches Of Machine Learning