在本文中,我想与他们的实际应用程序共享前五个框架和库。人工智能是计算领域的未来。看到越来越多的人工智能技术需求,越来越多的程序员熟悉了这一科学。我希望本指南将帮助您获得启发,并开始更多地了解这个强大且不断发展的领域。
背景
一些重要的关键数据可以使我们有所了解:
- 2019年认知和人工智能系统市场的服务部门收入— 127亿美元
- 人工智能业务运营全球收入2023 — 108亿美元
- 2025年全球自然语言处理(NLP)市场规模— 433亿美元
- 2019年全球人工智能创业公司的融资金额— 24B美元
(参考数据:https://www.statista.com)
这是一个漂亮的图表,显示了领先的高科技公司收购了多少个人工智能初创企业:
> https://www.statista.com/chart/9443/ai-acquisitions/
介绍
假设您决定在这一领域进行练习和发展。今天,我们将看到软件工程师如何将深度学习和人工智能应用于他们的编程工作。
我们必须知道的第一件事是如何应用它,这是一个进行研究的好问题:"什么是2021年开始学习的最有用的框架/库?"这正是我问自己的问题。
这就是我们今天在本文中要解决的问题:我收集了每个软件工程师/开发人员都需要了解的最受欢迎的五个人工智能框架和库。您还将找到官方文档页面以及一些有关如何应用它们的实践应用程序。
这将有助于我们不仅了解他们的名字,而且更了解他们。足够介绍。让我向您介绍小队!
1. Caffe
作为咖啡爱好者,我想从Caffe开始,它代表快速特征嵌入的卷积架构。伯克利AI的Analysis Caffe是与小组成员合作的深度学习框架。
通过其框架,可以启动语言,速度和可用性。它具有可靠的体系结构,可遵循配置定义的系统,并且无需硬编码即可进行优化。这对于在CPU和GPU之间进行切换也很有用。
Caffe是一个科研项目和工业实施的理想选择,因为它每天使用一个NVIDIA GPU即可处理超过6000万张照片。
AI框架可响应C ++,CUDA的命令行,Python和MATLAB接口。建立协进化神经网络(CNN)以使用Caffe识别图片非常简单。
官方页面:Caffe https://caffe.berkeleyvision.org/
价格:免费(开源)
一些实际的应用程序:
- 学习LeNet https://nbviewer.jupyter.org/github/BVLC/caffe/blob/master/examples/01-learning-lenet.ipynb
- 图像分类和滤镜可视化 https://nbviewer.jupyter.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb
2. Torch
Torch是用于科学和数字处理的科学计算系统。它产生具有节奏,多功能性和可用性的算法。
Torch似乎将GPU放在首位,并且是与NumPy等效的Tensor库。它捆绑在LuaJIT中,并且具有C / CUDA的基本集成。通过使用大量算法,这提高了性能并促进了深度学习分析。
Torch使用者配备了易于使用的库,因此可以对人工智能分布式系统进行模块化应用。通过通用的N维数组,这可以通过诸如切割和分度之类的程序来改善。它还包括线性代数协议和神经网络。
官方页面:火炬 http://torch.ch/
价格:免费(开源)。
一些实际的应用程序:
- 玩Atari游戏的Deep-Q强化学习 https://github.com/soumith/cvpr2015/blob/master/DQN%20Training%20iTorch.ipynb
- 应用视觉和自然语言深度学习 https://on-demand.gputechconf.com/gtc/2015/webinar/torch7-applied-deep-learning-for-vision-natural-language.mp4
3. Scikit-learn
Scikit-learn是人工智能的可访问方法之一,可从商业上获得AI框架。这是一个Python程序,可同时进行有监督和无监督的机器学习。
它是通用的AI创建方法之一,支持分组,回归,聚类算法和降维,模型收集和预处理。
数据科学家可以使用sci-kit learning提供的详细用户指南轻松地访问工具,从分类和多标签算法到协方差估计。
Sci-kit编程具有交叉验证,受控和不受监控的学习算法等功能。
官方页面:Scikit-learn https://scikit-learn.org/stable/
价格:免费(开源)。
一些实际的应用程序:
- 支持向量机(SVM)监督学习 https://scikit-learn.org/stable/modules/svm.html#classification
- 分解组件中的信号 https://scikit-learn.org/stable/modules/decomposition.html#decompositions
4. Google Cloud AutoML
关于前面提到的所有工具和库,Auto ML当前是机器学习工程师可用工具库中最新最好的一种。
如概述中所述,效率对于机器学习职责至关重要。尽管从中获得的好处是可观的,但确定最佳超参数并非易事。
在类似黑匣子的神经网络中尤其如此,随着网络复杂性的增加,决定重要事项的难度也越来越大。请记住一个有趣的事实:Google云端服务提供了Auto ML。
官方页面:Google Cloud AutoML https://cloud.google.com/automl
价格:定价(按使用量付费)。
一些实际的应用程序:
- AutoML视觉 https://cloud.google.com/vision/automl/docs
- 使用AutoML自然语言进行自定义文本分类 https://www.youtube.com/watch?v=ieaqfU1BwJ8
5. 亚马逊机器学习
Amazon Web Services(AWS)具有广泛的机器学习框架,全球数百个组织和组织都在使用。其软件与核心人工智能系统集成,并提供了一系列现成的AI应用程序。从聊天机器人到分类,AWS提供了许多训练有素的智能模型。
官方页面:AWS Machine Learning https://aws.amazon.com/
价格:定价(按使用量付费)。
一些实际的应用程序:
- Amazon Personalize:使用Amazon更快地获得实时个性化用户体验 https://aws.amazon.com/personalize/?c=ml&sec=srv
- Amazon Kendra:高度精确的智能搜索服务。 https://aws.amazon.com/kendra/?c=ml&sec=srv
结论
当然,除了列出的框架和库外,还有许多其他框架和库。我只分享了一滴人工智能和深度学习海洋。
人工智能是计算领域的一个迷人的市场。每个自重的软件开发人员都必须具有坚定的AI开发经验。至少有一些背景知识。
成为一名优秀的AI专业人员需要强大的理智,技能,毅力和职业道德。如果您有它们,那么现在是进入此领域的理想选择和时间。