机器学习算法:决策树|python与r语言代码实现

2018-10-1123:56:11数据结构与算法Comments3,167 views字数 1020阅读模式

决策树

这是我最喜欢的算法之一,我经常使用它。它是一种主要用于分类问题的监督学习算法。令人惊讶的是,它适用于分类和连续因变量。在该算法中,我们将人口分成两个或更多的齐次集。这是基于最重要的属性变量/独立变量,以尽可能不同的组。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

机器学习算法:决策树|python与r语言代码实现文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

在上面的图像中,您可以看到,根据多个属性,人口被划分为四个不同的组,以标识“他们是否想玩”。为了将种群分成不同的异质群体,它使用如Gini、信息增益、卡方、熵等各种技术。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

了解决策树是如何运作的最好方法是玩Jazzball——一个经典的微软游戏(下图)。基本上,你有一个房间有移动的墙壁,你需要创建墙壁,以便最大面积得到清除的球。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

机器学习算法:决策树|python与r语言代码实现文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

所以,每次你用墙拆开房间时,你试图在同一个房间里创造2个不同的群体。决策树以非常相似的方式工作,将种群划分为不同的组。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

延展阅读:决策树算法的简化版本文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

Python 代码

#Import Library
#Import other necessary libraries like pandas, numpy...
from sklearn import tree
#Assumed you have, X (predictor) and Y (target) for training data set and x_test(predictor) of test_dataset
# Create tree object 
model = tree.DecisionTreeClassifier(criterion='gini') # for classification, here you can change the algorithm as gini or entropy (information gain) by default it is gini  
# model = tree.DecisionTreeRegressor() for regression
# Train the model using the training sets and check score
model.fit(X, y)
model.score(X, y)
#Predict Output
predicted= model.predict(x_test)

R 语言代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html

library(rpart)
x <- cbind(x_train,y_train)
# grow tree 
fit <- rpart(y_train ~ ., data = x,method="class")
summary(fit)
#Predict Output 
predicted= predict(fit,x_test)
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6543.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/suanfa/6543.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定