gzyueqian
13352868059

想要学习Python人工智能应该怎么选择好的Python培训学校?

更新时间: 2018-09-27 10:55:30来源: Python培训浏览量:4294

    虽说现在尽管是人工智能(AI )已经存在很长的一个时间了,但这并不意味着(AI)的风口和高潮已经过去,恰恰相反,浪潮才刚刚开始。 AI 曾被认为是狂热爱好者和天才的专属领域,但由于各种库和框架的蓬勃发展,它慢慢成为了一个不那么排外的 IT 领域,并吸引了大量的人才投入其中。
    现在,小编将介绍那些用于 AI 开发的高质量库,并谈谈它们的优缺点,以及特性。 现在,让我们进入并探索 AI 库的世界吧。
    1. TensorFlow
    “使用数据流程图对可拓展的机器学习进行计算”
    语言:C++
    初接触 AI 时,你听说的首批框架应该包含了谷歌的 TensorFlow。 TensorFlow 是一个使用数据流程图进行数值计算的开源软件。这个不错的框架因其架构而闻名,它允许在任何 CPU 或 GPU 上进行计算,不管是桌面、服务器,还是移动设备。它可在 Python 编程语言中使用。 TensorFlow 主要是通过数据层进行排序,而我们可以调用节点,并根据所得到的信息进行决策。
    优点:
    使用简单易学的语言,如 Python
    使用计算图进行抽象。
    可以使用 TensorBoard 获得可视化。
    缺点:
    运行速度慢,因为 Python 不是快的语言。
    缺乏许多预训练的模型。
    不完全开源。
    2. Microsoft CNTK
    “开源的深度学习工具包”
    语言:C++
    我们是否可以将它看作是微软对谷歌 TensorFlow 的回应? 微软的 CNTK(计算网络工具包)是一个用来增强模块化和保持计算网络分离的库,提供学习算法和模型描述。 在需要大量服务器进行计算的情况下,CNTK 可以同时利用多台服务器。 据说 CNTK 在功能上接近谷歌的 TensorFlow,但速度比对方要快一些。
    优点:
    高度灵活。
    允许分布式训练。
    支持 C++、C#、Java 和 Python。
    缺点:
    它由一种新的语言——NDL(网络描述语言)实现。
    缺乏可视化。
    3. Theano
    “数值计算库”
    语言:Python
    作为 TensorFlow 的强有力竞争对手,Theano 是一个强大的 Python 库,它允许使用高效多维数组进行数值计算。 它不使用 CPU,而是透明地使用 GPU,用于数据密集型计算,所以效率很高。 因此,在大约 10 年内,Theano 一直被用于大规模的数据密集型计算。 然而,在 2017 年 9 月 28 日当日,开发团队宣称,将在 2017 年 11 月 15 日发布 1.0 版后,停止对它的主要开发。 但这并没有削弱它的强大实力,你仍可以使用它,随时进行深入学习的研究。
    优点:
    对 CPU 和 GPU 进行了适当优化。
    高效的数值计算任务。
    缺点:
    与其他库相比,原始的 Theano 有点儿低级。
    需要与其他库一起使用,以获得较的抽象。
    在 AWS 上使用有点小 Bug。
    4. Caffe
    “应对深入学习的快速开放架构”
    语言:C++
    Caffe 是一个强大的深度学习框架。 和这个列表中的其他框架一样,它对于深入学习的研究而言,是非常快速和有效的。 使用 Caffe,你可以轻易地构建一个用于图像分类的 CNN(卷积神经网络)。它在 GPU 上运行良好,运行速度非常快。
    上图是 Caffe 的主类。 优点:
    可以与 Python 和 MATLAB 绑定使用。
    高性能。
    无需编写代码,即可训练模型。
    缺点:
    对递归网络支持不好。
    对新架构来说不是很好。
    5. Keras
    “针对人类的深度学习”
    语言:Python
    Keras 是一个用 Python 编写的开源神经网络库。 不似 TensorFlow、CNTK、Theano、Keras 这种端到端(End-to-End)的机器学习框架, 相反,它是一个接口,提供了高层次的抽象,使得神经网络的配置变得更加简单,而不必考虑所在的框架。 谷歌的 TensorFlow 目前支持 Keras 作为后端,而微软的 CNTK 也将在短时间内获得支持。
    优点:
    它对用户友好,易于上手。
    高度拓展。
    可以在 CPU 或 GPU 上无缝运行。
    完美兼容 Theano 和 TensorFlow。
    缺点:
    不能有效地作为一个独立的框架来使用。
    6. Torch
    “开源机器学习库”
    语言:C
    Torch 是一个用于科学计算和数值计算的开源机器学习库。 它是一个基于 Lua 编程语言(终于不再是 Python)的库。 通过提供大量算法,使得深入学习的研究更加容易,并提高了效率和速度。它有一个强大的 N 维数组,帮助进行类似切片和索引这样的计算,并提供线性代数程序和神经网络模型。
    优点:
    高度灵活。
    速度快,效率高。
    大量的预训练模型可用。
    缺点:
    说明文档不够清晰。
    缺乏立即使用的即插即用代码。
    它基于一个不怎么流行的编程语言 Lua。
    7. Accord . NET
    “针对 . NET 的机器学习、计算机视觉、统计学和通用科学计算”
    语言:C#
    这是为 C# 程序员准备的。 Accord . NET 框架是一个 .NET 机器学习框架,使得音频和图像的处理变得更加简单。 该框架可以有效地解决数值优化、人工神经网络,甚至给出了可视化的特征。此外,Accord . NET 对计算机视觉和信号处理具有强大的功能,并且易于算法实现。
    优点:
    它拥有一个庞大且活跃的开发团队。
    说明文档非常不错。
    高质量的可视化。
    缺点:
    这不是一个非常流行的框架。
    与 TensorFlow 相比,速度慢。
    8. Spark MLlib
    “可扩展的机器学习库”
    语言:Scala
    Apache 的 Spark MLlib 是一个具有高度拓展性的机器学习库。 它在 Java、Scala、Python 甚至 R 语言中都非常有用,因为它使用 Python 和 R 中类似 Numpy 这样的库,能够进行高效的交互。 MLlib 可以很容易地插入 Hadoop 工作流程中。它提供了机器学习算法,如分类、回归、聚类等。 这个强大的库在处理大规模的数据时,速度非常快。
    优点:
    对于大规模数据处理来说,非常快。
    可用于多种语言。
    缺点:
    陡峭的学习曲线。
    仅 Hadoop 支持即插即用。
    Sci-Kit Learn “Python 中的机器学习”
    9. Sci-Kit Learn
    “Python 中的机器学习”
    语言:Python
    Sci-kit learn 是一个针对机器学习的强大 Python 库,主要用于构建模型。 使用诸如 Numpy、SciPy 和 Matplotlib 等其他库构建,对于统计建模技术(如分类、回归、集群等)非常有效。 Sci-Kit learn的特性包括监督式学习算法、非监督式学习算法和交叉验证。
    优点:
    可以使用许多 shell 算法。
    高效的数据挖掘。
    缺点:
    不是的模型构建库。
    GPU 使用不高效。
    10. MLPack
    “可扩展的 C++ 机器学习库”
    语言:C++
    MLPack 是一个使用 C++ 实现的可扩展的机器学习库。在 C++ 中,你可以猜到,它的内存管理非常出色。 拥有高质量的机器学习算法与库,MLPack 的运行速度非常快。它对新手十分友好,因为它提供了一个可供使用的简单 API。
    优点:
    高度拓展。
    可以与 PythonC++ 绑定。
    缺点:
    说明文档不够清晰。(如果这也算的话)
    总结

    本文所讨论的库都非常高效,久经时间检验,已经是当前无比接近真理的存在了。很多知名企业都在使用这些库进行深度学习和机器学习项目。

    想要了解多的东西那就加入我们吧!


免费预约试听课