• 【Spark机器学习速成宝典】基础篇04数据类型(Python版)


    目录

      Vector

      LabeledPoint

      Matrix

      使用C4.5算法生成决策树

      使用CART算法生成决策树

      预剪枝和后剪枝

      应用:遇到连续与缺失值怎么办?

      多变量决策树

      Python代码(sklearn库)


    Vector

      一个数学向量。MLlib 既支持稠密向量也支持稀疏向量,前者表示向量的每一位都存储下来,后者则只存储非零位以节约空间。后面会简单讨论不同种类的向量。向量可以通过mllib.linalg.Vectors 类创建出来

    # -*-coding=utf-8 -*-  
    from pyspark import SparkConf, SparkContext
    sc = SparkContext('local')
    
    import numpy as np
    import scipy.sparse as sps
    from pyspark.mllib.linalg import Vectors
    
    # Use a NumPy array as a dense vector.使用NumPy数组作为稠密向量
    dv1 = np.array([1.0, 0.0, 3.0])
    # Use a Python list as a dense vector.使用Python list作为稠密向量
    dv2 = [1.0, 0.0, 3.0]
    # Create a SparseVector.创建一个稀疏向量<1.0 0.0 2.0 3.0>的两种方式
    sv1 = Vectors.sparse(4, {0: 1.0, 2: 2.0})
    sv2 = Vectors.sparse(4, [0, 2], [1.0, 2.0])
    # Use a single-column SciPy csc_matrix as a sparse vector.使用单列的csc_matrix作为稀疏向量
    sv2 = sps.csc_matrix((np.array([10.0, 30.0]), np.array([0, 2]), np.array([0, 2])), shape=(3, 1))

     返回目录

    LabledPoint

      在诸如分类和回归这样的监督式学习(supervised learning)算法中,LabeledPoint 用来表示带标签的数据点。它包含一个特征向量与一个标签(由一个浮点数表示),位置在mllib.regression 包中。

    # -*-coding=utf-8 -*-  
    from pyspark import SparkConf, SparkContext
    sc = SparkContext('local')
    
    from pyspark.mllib.linalg import SparseVector
    from pyspark.mllib.regression import LabeledPoint
    
    # Create a labeled point with a positive label and a dense feature vector.使用稠密向量创建一个带有正标记LabeledPoint
    pos = LabeledPoint(1.0, [1.0, 0.0, 3.0])
    
    # Create a labeled point with a negative label and a sparse feature vector.使用稀疏向量创建一个带有负标记LabeledPoint
    neg = LabeledPoint(0.0, SparseVector(3, [0, 2], [1.0, 3.0]))

     返回目录

    Matrix

      矩阵的基类是Matrix,我们提供了两种实现方法:稠密矩阵和稀疏矩阵。建议使用矩阵实现的工厂方法来创建矩阵。

    # -*-coding=utf-8 -*-  
    from pyspark import SparkConf, SparkContext
    sc = SparkContext('local')
    
    from pyspark.mllib.linalg import Matrix, Matrices
    
    # Create a dense matrix ((1.0, 2.0), (3.0, 4.0), (5.0, 6.0))
    dm2 = Matrices.dense(3, 2, [1, 2, 3, 4, 5, 6])
    
    # Create a sparse matrix ((9.0, 0.0), (0.0, 8.0), (0.0, 6.0))
    sm = Matrices.sparse(3, 2, [0, 1, 3], [0, 2, 1], [9, 6, 8])

     

     返回目录

    什么是决策树(Decision Tree)4 

      引例

      现有训练集如下,请训练一个决策树模型,对未来的西瓜的优劣做预测。

     返回目录

    什么是决策树(Decision Tree)5 

      引例

      现有训练集如下,请训练一个决策树模型,对未来的西瓜的优劣做预测。

     返回目录

    什么是决策树(Decision Tree)6 

      引例

      现有训练集如下,请训练一个决策树模型,对未来的西瓜的优劣做预测。

     返回目录

    什么是决策树(Decision Tree)7 

      引例

      现有训练集如下,请训练一个决策树模型,对未来的西瓜的优劣做预测。

     返回目录

    什么是决策树(Decision Tree)8 

      引例

      现有训练集如下,请训练一个决策树模型,对未来的西瓜的优劣做预测。

     返回目录

  • 相关阅读:
    C++内存机制中内存溢出、内存泄露、内存越界和栈溢出的区别和联系
    ArrayList、Vector、HashMap、HashTable、HashSet的默认初始容量、加载因子、扩容增量
    C++ 智能指针 auto_ptr 和 shared_ptr
    Java初始和环境搭建(一)
    Spring_01
    Linux中常用命令
    linux_Ubuntu项目运行环境搭建
    Nginx_Ubuntu
    idea运行时 Process finished with exit code -1073741819 (0xC0000005)
    MySQL_基础
  • 原文地址:https://www.cnblogs.com/itmorn/p/8004694.html
Copyright © 2020-2023  润新知