机器学习实战 adaboost学习

建立决策树首先得建立树桩,单层决策树(仅基于单个特征来做决策)
transpose 转置可以对数组进行重置,返回的是源数据的视图(不会进行任何复制操作)。

def plotimage(dataMat, labelMat):
    matplus = []
    matmini = []
    for i in range(len(dataMat)):
        if labelMat[i] > 0:
            matplus.append(dataMat[i])
        else:
            matmini.append(dataMat[i])
        ###当满足条件的时候是增加的这个点,因此一点要加上i
    matplusnp = np.array(matplus)
    matmininp = np.array(matmini)
    ###文本输入是list,具体分析的时候需要转换成array
    plt.scatter(np.transpose(matplusnp)[0], np.transpose(matplusnp)[1])
    plt.scatter(np.transpose(matmininp)[0], np.transpose(matmininp)[1])
    plt.show()

可以看到,如果想要试着从某个坐标轴上选择一个值(即选择一条与坐标轴平行的直线)来将所有的蓝色圆点和橘色圆点分开,这显然是不可能的。这就是单层决策树难以处理的一个著名问题。通过使用多颗单层决策树,我们可以构建出一个能够对该数据集完全正确分类的分类器




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值