• 机器学习:scikit-learn 文档、深入学习机器学习的思路


    一、scikit-learn 的文档查阅

    • 网页访问 scikit-learn 的文档:
    1. scikit-learn.org —— Document —— User Guide:
    2. scikit-learn.org —— Document —— API
    • API 下可以直接搜索某一类,然后查看其用法;
    • scikit-learn 的文档相对于机器学习的教材,而不单是讲解类、函数、参数、变量等的功能及使用规则;

    二、深入学习机器学习的思路

    • 实际工作中,有很多时间,很重的任务都是在处理数据:预处理、特征工程、非监督学习的工作;

     1)掌握数据操作的方式:数据预处理

    • pandas
    1. 对应真实的数据,通常先使用 pandas 预处理数据,之后转成 numpy 的 array 传给 sklearn ;
    • 特征工程
    1. 算法与特征工程的关系:算法是算法,特征工程是特征工程。好的算法没有好的特征是毫无用武之地的。只用一个人的名字做特征,什么样的算法也无法判断这个人是否患某种疾病,就算给了身高体重也没用!而只有特征没有算法也是没有意义的,面对一片数据,无从下手。
    2. 线性回归:可以做为特征选择的依据;
    3. LASSO 回归:也可以用于特征选择;
    4. 决策树、随机森林等算法:可以用于辨识已知特征的重要程度;
    5. 深度学习等方法,背后其实很大程度也是在解决特征的问题;
    6. 所有的非监督学习,或多或少都可以叫做在做特征工程(或者是数据的预处理);
    7. PCA 就是非监督算法:降维不仅仅是将高维特征映射到了低维空间,更能起到降噪的作用;
    • 很多general的特征工程的思想其实隐藏在统计学中。系统学习一遍统计学,对发掘数据中的“秘密”很有帮助。毕竟,统计学的作用,就是要发掘数据中的“秘密”;
    • 从某种程度上讲,各个专业领域研究的一个很重要的方向,都可以理解成在做特征工程。比如医学:研究到底哪些基因和哪些疾病相关;心理学,研究哪些大脑活动和哪些情绪相关;经济学,研究哪些社会现象,和经济表现结果相关,等等等等。

     2)非监督学习、监督学习、集成学习

    • 实际在一些应用上,非监督学习可能会发挥很大的作用;
    • 非监督学习中,最常见的是降维、去燥;
    • 集成学习在机器学习竞赛中使用很广泛,老师建议深入学习;

     3)特殊领域的特殊方法

    • 无论是图像、NPL(自然语言处理)、医疗成像,都有专门的算法;
    • 经典算法(kNN、线性回归、多项式回归、逻辑回归、SVM、决策树、集成学习,等)是特殊领域中特殊算法的基石;

     4)数学建模的方法

    • PRML:《Pattern Recognition and Machine Learning》,书籍,主要讲解数学建模的方法;
    • 最典型的一类数学建模方法,就是随机过程中涉及的模型。如 HMM 在语音识别中的应用,或者对时序数据的建模,等;

     5)工具

    • Pandas
    • TensorFlow、Keras:深度学习领域的算法库;
    • xgboost:集成学习算法工具;(机器学习领域,集成学习效果很好)

     6)学习材料

    • 数据或者教材,在数量、可选择性、质量等方面,国内的教程相差国外教程很大;
    • 最好的材料都散落在互联网上,需要一点点挖掘;
    • Kaggle
  • 相关阅读:
    Spark算子--join
    Spark算子--filter
    Spark算子--reduceByKey
    Spark算子--mapPartitions和mapPartitionsWithIndex
    Spark算子--map和flatMap
    Flume环境搭建_五种案例
    枚举深入剖析
    Oracle_基本函数查询综合
    Oracle_复杂查询综合
    softmax 杂谈
  • 原文地址:https://www.cnblogs.com/volcao/p/9491574.html
Copyright © 2020-2023  润新知