官术网_书友最值得收藏!

Ensemble learning random forest

One-sentence explanation for LOTR fans: if decision trees were Ents, the random forest would be an Entmoot. For everyone else, random forest algorithm works like this:

  • Split data into random subsets of equal size, maybe with replacement
  • On each of those subsets, build a decision tree, choosing for every split a random feature subset of fixed size
  • To perform inference, perform a voting among the trees (classification), or average their predictions (regression)

Such tree ensembles are very popular in certain domains, because their prediction quality beats most other models.

Most likely, this is not the model you want to train on a mobile device, due to the memory and time limitations, but you can still use it for inference thanks to Core ML. The workflow looks like this:

  • Pre-train random forest in scikit-learn
  • Export the model in the scikit-learn format
  • Convert it to the Apple mlmodel format with the help of the coremltool Python package
  • Import it in your iOS project using Core ML framework

By the way, if you look at the inner structure of the GameplayKit's tree learner in a debugger or playground, you'll see that it also uses random forest under the hood.

主站蜘蛛池模板: 汨罗市| 西盟| 纳雍县| 泰州市| 五莲县| 彭泽县| 灌南县| 肇源县| 赤峰市| 巴彦淖尔市| 汶上县| 饶河县| 遵化市| 潼关县| 雷波县| 韶关市| 阳高县| 焉耆| 化德县| 根河市| 惠安县| 板桥市| 宿州市| 筠连县| 廊坊市| 武穴市| 广汉市| 忻州市| 开江县| 太保市| 洪湖市| 榕江县| 陵水| 三门峡市| 黎平县| 赣榆县| 长葛市| 富平县| 麻江县| 永胜县| 张掖市|