回炉重造带你搞懂什么是机器学习?

Posted ZSYL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了回炉重造带你搞懂什么是机器学习?相关的知识,希望对你有一定的参考价值。

机器学习介绍

什么是机器学习:

机器学习是一门多领域交叉学科,涉及概率论、统计学、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。大白话讲就是:通过根据已有的数据使用算法获取这些数据的特性(模型),然后预测未知数据的走向。

机器学习应用案例:

如今因为数据量的增加,硬件条件越来越好,给机器学习提供了非常多的发展空间。目前在很多领域都用到了机器学习,比如:计算机识别、抖音推荐算法、360异常流量监控、信用卡欺诈检测、AI游戏玩家、医学诊断等都有很多非常成功的案例。

机器学习程序开发流程:

1. 获取数据:

机器学习最核心的东西,还是大量的数据作为基本基础。数据可以通过多个渠道获取,比如通过网络爬虫抓取,通过公司自有产品收集,通过与第三方公司合作等。

2. 清洗数据:

获取到数据后,可能存在很多问题,比如字段缺失,比如数据格式不一致,异常数据等,这时候需要将数据进行清洗,然后再送到机器学习程序进行训练。

3. 训练模型:

在这一步通过一定的算法,对数据进行建模,然后不断的调整各个参数的值已达到最优的训练模型。

4. 测试模型:

使用其他的数据对这个模型进行测试,看下这个模型的准确率,如果准确率偏低,则重复第3步,直至最优的模型。

5. 投入使用:

将做好的机器学习模型和算法转化为可以在生产环境中使用的产品。比如提供一个网站,或者一个app,通过接口的方式访问机器学习程序。在这个过程中也要不断的循环3、4来测试和优化模型。

开发环境:

Anaconda3(python3.7+jupyter notebook5.7)
其中用到的包:numpy 1.15.4pandas 0.24.1scikit-learn 0.20.2

Scikit-Learn库介绍:

scikit-learn是基于Python语言的机器学习工具,具有以下特点:

  1. 简单高效的数据挖掘和数据分析工具。
  2. 可供大家在各种环境中重复使用。
  3. 建立在NumPySciPymatplotlib上。
  4. 开源,可商业使用 - BSD许可证
  5. 目前最新的文档版本是0.20

历史由来:

Python语言有所了解的科研人员可能都知道SciPy——一个开源的基于Python的科学计算工具包。基于SciPy,目前开发者们针对不同的应用领域已经发展出了为数众多的分支版本,它们被统一称为Scikits,即SciPy工具包的意思。而在这些分支版本中,最有名,也是专门面向机器学习的一个就是Scikit-learn
Scikit-learn项目最早由数据科学家David Cournapeau在2007 年发起,需要NumPySciPy等其他包的支持,是Python语言中专门针对机器学习应用而发展起来的一款开源框架。
它的维护也主要依靠开源社区。

特点

作为专门面向机器学习的Python开源框架,Scikit-learn可以在一定范围内为开发者提供非常好的帮助。它内部实现了各种各样成熟的算法,容易安装和使用,样例丰富,而且教程和文档也非常详细。

另一方面,Scikit-learn也有缺点。例如它不支持深度学习和强化学习,这在今天已经是应用非常广泛的技术。此外,它也不支持图模型和序列预测,不支持Python之外的语言,不支持PyPy,也不支持GPU加速。

看到这里可能会有人担心Scikit-learn的性能表现,这里需要指出的是:如果不考虑多层神经网络的相关应用,Scikit-learn的性能表现是非常不错的。究其原因,一方面是因为其内部算法的实现十分高效,另一方面或许可以归功于Cython编译器;通过CythonScikit-learn框架内部生成C语言代码的运行方式,Scikit-learn消除了大部分的性能瓶颈。

主要功能:

Scikit-learn的基本功能主要被分为六大部分:分类回归聚类数据降维模型选择数据预处理(特征工程)等。

官方文档:

https://scikit-learn.org/stable/


加油!

感谢!

努力!

以上是关于回炉重造带你搞懂什么是机器学习?的主要内容,如果未能解决你的问题,请参考以下文章

以❤️简单易懂❤️的语言带你搞懂有监督学习算法附Python代码详解机器学习系列之KNN篇

机器学习带你搞懂什么是特征工程?(特征抽取&特征预处理&特征选择&数据降维)

机器学习带你搞懂什么是特征工程?(特征抽取&特征预处理&特征选择&数据降维)

机器学习线性回归(回炉重造)

学习带你搞懂朴素贝叶斯分类算法

强烈推荐一文带你搞定Python基础篇(回炉重造)