为什么机器学习部署起来这么难?
demi 在 周五, 10/11/2019 - 16:03 提交根据我作为顾问的经验,只有非常少的机器学习项目能够投入生产。一个人工智能项目可能会因为多种原因而失败,其中之一就是部署。
机器学习(Machine Learning,简称ML)是一种人工智能(AI)的分支,致力于研究让计算机系统能够从数据中学习并自动改进性能的算法和技术。机器学习使计算机系统能够从经验中学习,而不需要明确地进行编程。
根据我作为顾问的经验,只有非常少的机器学习项目能够投入生产。一个人工智能项目可能会因为多种原因而失败,其中之一就是部署。
近日,Judea Pearl 发表技术报告,指出当前机器学习的三个主要障碍,并提出了人工智能范式的完整结构应该包含三个层级,而当前的机器学习尚处于底层,最后他列举了七个用于克服这些障碍的因果推理工具。
简单来说,标准化是依照特征矩阵的列处理数据,其通过求z-score的方法,将样本的特征值转换到同一量纲下。标准化的前提是特征值服从正态分布,标准化后,其转换成标准正态分布。
近年以来,计算机技术的发展越来越快,人类的生活开创了一个新的时代—开发强大的计算机系统,通过使用适当的设备,将其移动应用程序实施到全球所有垂直领域,无论是医学,教育,还是商业等等。
在 XGBoost算法原理小结 中,我们讨论了XGBoost的算法原理,这一片我们讨论如何使用XGBoost的Python类库,以及一些重要参数的意义和调参思路。
本文主要参考了XGBoost的Python文档 和XGBoost的参数文档 。
1. XGBoost类库概述
机器学习(深度学习)跟编程范式以及处理的数据等方面根传统的编程有较大不同,需要学习或准备转型做这个领域的需要引起足够的关注。
是否需要人工构造特征,这应该是深度学习和传统机器学习的最明显的差异。feature engining是传统机器学习中的一个重要组成部分,sift,hog,wavelet等都是解决如何描述数据的问题。深度学习兴起后,feature engining的研究几乎停滞,而end-to-end成为一个新兴的研究方向。
要做机器学习项目,第一重要的就是数据!那如何来准备机器学习要用的数据就成了第一要做的事情,巧妇难为无米之炊,今天就来教大家如何成为巧妇(夫)。
机器学习算法一般都会有训练和测试的过程,而且算法在不同训练集上学得的模型,测试的结果也很可能不同。一般来说,算法的方差衡量了训练集的变动导致的模型性能的变化,即多次训练的模型之间的性能差异性。偏差则是度量算法的期望输出与真实标记的区别,表达了学习算法对数据的拟合能力。而噪声则表示数据的真实标记与数据在数据集上标记的区别,表明算法在当前任务上能达到的测试误差的下界。
本篇博客主要是基于花书(古德费洛的《Deep Learning》)和西瓜书(周志华的《机器学习》)撰写的,其中插入了博主的一些个人见解,如有不对之处希望大家指出来一起来讨论一下嘿嘿,万分感谢。