10 大热门人工智能开源工具(框架)

御弟哥哥 等级 352 0 0

下面是我们今天要讲的10个热门的人工智能开源工具/框架。

1.TensorFlow

10 大热门人工智能开源工具(框架)

TensorFlow™是一个开源软件库,最初由Google Brain Team的研究人员和工程师开发。TensorFlow使用数据流图进行数值计算。图中的节点表示数学运算,边表示它们之间通信的多维数据数组(张量)。其架构灵活,你可以使用单个API将计算部署到桌面、服务器或移动设备中的一个或多个CPU或GPU。

TensorFlow提供了多种API。最低级别的API——TensorFlow Core——提供了完整的编程控制。高级API则建立在TensorFlow Core的顶部。这些更高级别的API通常比TensorFlow Core更容易学习和使用。此外,更高级别的API使得重复性的任务在不同的用户之间变得更容易、更一致。一个高级API就像tf.estimator,可以帮助您管理数据集、评估器、训练和推理。

TensorFlow中的数据中心单位是张量。一个张量由一组形成任意数量维数组的原始值组成。张量的阶就是它的维数。

一些使用Tensorflow的Google应用有:

1.RankBrain:在www.google.com上大规模部署用于搜索排名的深度神经网络。

2.Inception图像分类模型:基准模型和对高度精确的计算机视觉模型的后续研究,它是在获得2014年Imagenet图像分类挑战赛的模型基础之上进行构建的。

3.SmartReply:可自动生成电子邮件响应的Deep LSTM模型。

4.Massively Multitask Networks for Drug Discovery:Google与斯坦福大学合作的识别有效候选药的的深度神经网络模型。

5.用于OCR的设备级计算机视觉:基于设备级的计算机视觉模型实现光学字符识别,进行实时翻译。

2.Apache SystemML

利用大数据进行机器学习的最佳开源工具。

10 大热门人工智能开源工具(框架)

SystemML是由IBM创建的机器学习技术,是Apache中的顶级项目之一,它是一个灵活、可扩展的机器学习系统。SystemML的重要特点如下:

1.使用类R和类Python语言定制算法。

2.有多种执行模式,包括Spark MLContext、Spark Batch、Hadoop Batch、Standalone和JMLC(Java机器学习连接器)。

3.基于数据和聚类特性的自动优化,保证了算法的高效率和可扩展性。

4.将SystemML视为机器学习的结构化查询语言SQL。SystemML的最新版本(1.0.0)支持:Java 8+、Scala 2.11+、Python 2.7/3.5+、Hadoop 2.6+以及Spark 2.1+。

5.可在Apache Spark上运行,在Apache Spark上,SystemML通过逐行查看代码,确保代码是否能够在Apache Spark聚类上运行。

未来对SystemML的开发将包括:使用GPU进行额外的深度学习,例如导入和运行神经网络架构以及用于训练的预训练模型。

SystemML的Java机器学习连接器(JMLC)

Java机器学习连接器(JMLC)API是一种编程接口,它在嵌入式时与SystemML进行交互。JMLC的主要目的是作为一个评分API,其中,评分函数是用SystemML的DML语言表示的。除了评分外,嵌入式SystemML还可在一台机器上运行的更大的应用程序的上下文中,执行聚类等无监督学习任务。

3.Caffe

Caffe是一种清晰而高效的深度学习框架。

10 大热门人工智能开源工具(框架)

Caffe最初由杨庆佳在加州大学伯克利分校读博期间发起,后来由伯克利AI研究公司(BAIR)和社区贡献者联合开发。它主要专注于用于计算机视觉应用的卷积神经网络。对于计算机视觉相关的任务来说,Caffe是一个不错且较为流行的选择,您可以在Caffe Model Zoo上注册,下载很多已经成功建模的模型,直接用于开发。

优点

1.Expressive架构鼓励实用和创新。用配置定义的模型和优化,而不需要硬编码。通过设置单个标志在GPU机器上进行训练,然后部署聚类或移动设备,实现CPU和GPU之间的切换。

2.可扩展代码更有助于开发。在Caffe开发好的的第一年,就有1,000多个开发者分享了出去,对其做了重大贡献。

3.Caffe的高速使理论实验和实际应用得到了完美的结合。Caffe使用单个NVIDIA K40 GPU每天可处理超过6000万张图像。

4.社区:Caffe已经为视觉、语音和多媒体领域的学术研究项目,启动原型,甚至大规模工业应用提供支持。

4.Apache Mahout

Apache Mahout是一个分布式线性代数框架,提供了一些经典的机器学习算法。

10 大热门人工智能开源工具(框架)

Mahout旨在帮助开发人员方便快捷的实现自己的算法。Apache Spark是一种即拿即用的分布式后台,或者也可以将其扩展到其他分布式后台。其特点如下:

1.数学表达Scala DSL。

2.支持多种分布式后端(包括Apache Spark)。

3.包含用于CPU / GPU / CUDA加速的模块化本地求解器。

4.Apache Mahout应用的领域包括:协作过滤(CF),聚类和分类。

功能

1.Taste CF.Taste 是 Sean Owen 在 SourceForge 上发起的一个针对协同过滤(CF)的开源项目,并在 2008 年被赠予 Mahout。

2.支持 Map-Reduce 的集群实现包括 :k-Means、模糊 k-Means、Canopy、Dirichlet 和 Mean-Shift算法等。

3.分布式朴素贝叶斯和互补朴素贝叶斯的分类实现。

4.用于进化编程的分布式适应度函数。

5.矩阵和矢量库。

5.OpenNN

OpenNN是一个用c++编写的开源类库,它实现了神经网络建模。

Opennn (开放神经网络图书馆)以前被称为Flood,它是以R. Lopez在2008年泰罗尼亚技术大学的博士论文《在工程变分问题的神经网络》为基础开发的。

10 大热门人工智能开源工具(框架)

Opennn使用一组函数实现了数据挖掘,并且,可以使用一个API将这些函数嵌入到其他软件工具中,使软件工具和预测分析任务之间进行交互。Opennn的主要优点就是它的高性能。由于采用c++开发,因此它有更好的内存管理和更高的处理速度,并利用 OpenMP 和 GPU 加速度(CUDA)实现 CPU 并行化。

Opennn包中含有单元测试、许多示例和大量文档。为神经网络算法和应用的研究开发提供了一个有效的框架。神经网络设计是一个基于OpenNN的专业预测分析工具,这就意味着神经网络设计的神经引擎是基于 OpenNN 建立的。

OpenNN旨在从数据集和数学模型中进行学习。

数据集

特征回归

模式识别

时间序列预测

数学模型

最佳控制

最佳形状设计

数据集和数学模型

反向问题

6.Torch

Torch是一个开源机器学习库、科学计算框架和基于Lua编程语言的脚本语言。

10 大热门人工智能开源工具(框架)

功能

1.一个强大的 n 维数组

2.有很多索引、切片、转换的程序。

3.可使用 LuaJIT编写简单的C扩展。

4.线性代数程序

5.神经网络和基于能量的模型

6.数字优化程序

7.GPU支持,更加快速和高效

8.可嵌入,带有 iOS 和 Android 的后台端口

Torch供 Facebook 人工智能研究小组、 IBM、 Yandex 和 Idiap 研究所使用。现在,它已经扩展到 Android 和 iOS系统上,研究人员也使用Torch来构建硬件实现数据流。

Pytorch是一个Python的开源机器学习库,用于自然语言处理等应用,主要由 Facebook 的人工智能研究小组开发,Uber 的概率编程软件"Pyro"就是在Pytorch上创建的。

7.Neuroph

Neuroph是一种用 Java 编写的面向对象的神经网络框架。

10 大热门人工智能开源工具(框架)

Neuroph可用于在Java程序中创建和训练神经网络,它提供了Java类库以及用于创建和训练神经网络的GUI工具easyNeurons。Neuroph是一个轻量级的Java神经网络框架,可用于开发常见的神经网络架构。它包含一个设计良好的开源Java库,其中包含少量与基本神经网络概念对应的基础类。它还有一个很好的GUI神经网络编辑器来快速创建Java神经网络组件。目前,已经在Apache 2.0许可下作为开源发布出来。

Neuroph的核心类与人工神经元、神经元层、神经元连接、权重、传递函数、输入函数和学习规则等基本神经网络概念对应。Neuroph支持常见的神经网络体系结构,例如具有反向传播,Kohonen和Hopfield网络的多层感知器。所有的这些类都可以进行扩展和定制,以自定义创建神经网络和学习规则。Neuroph同时也支持图像识别。

8.Deeplearning4j

Deeplearning4j是第一个为Java和Scala编写的商业级开源分布式深度学习库。

Deeplearning4j旨在成为顶尖的即拿即用设备,而不是只是做一些配置,这使得非专业人员也能够快速的构建模型。

DL4J可以通过Keras(包括TensorFlow,Caffe和Theano)从大多数主要框架中导入神经网络模型,它为数据科学家、数据工程师和DevOps提供了跨团队工具包,弥合了Python生态系统和JVM之间的障碍。现在,Keras是Deeplearning4j的Python API。

功能

1.分布式 cpu 和 gpu

2.Java, Scala and Python APIs

3.适用于微服务体系结构

4.通过降低迭代次数进行并行训练

5.在Hadoop 上可伸缩

6.在AWS扩展上提供Gpu 支持

1.Deeplearning4J: 神经网络平台

2.ND4J: Numpy for the JVM

3.DataVec:机器学习ETL操作的工具

4.JavaCPP:Java和C ++之间的桥梁

5.Arbiter:机器学习算法的评估工具

6.RL4J:JVM的深度增强学习

9.Mycroft

Mycroft声称是世界上第一个开源助手,适用于从科学项目到企业软件应用程序的任何事情。

10 大热门人工智能开源工具(框架)

Mycroft可以在任何地方运行——台式计算机上、在汽车内或在树莓派上运行。这是可以自由混合、自由扩展和改进的开源软件。

10.OpenCog

OpenCog是一个旨在构建开源人工智能框架的项目。

10 大热门人工智能开源工具(框架)

OpenCog是认知算法的多元化组合,每种组合都体现了它们的创新之处。但是,认真遵守认知协同原则才是OpenCog整体架构强大的原因。OpenCog最初是基于2008年“Novamente Cognition Engine”(NCE)发布的源代码。

1.一个图表数据库,它包含术语、原子公式、句子和关系作为超图。

2.一个模理论解算器,作为通用图形查询引擎的一部分,用于执行图和超图模式匹配。

3.一种称为元优化语义进化搜索的概率遗传程序(MOSES),最初由在Google工作的Moshe Looks开发。

4.有一个基于 OpenPsi 和 Unity 的虚拟世界中的交互学习应用体系。

5.有一个由Link Grammar和RelEx组成的自然语言输入系统,它们都采用类AtomSpace来表示语义和句法的关系。

6.有一个称为SegSim的自然语言生成系统,它实现NLGen和NLGen2。

7.Psi 理论的实现,用于处理情绪状态、驱动和冲动,称为 OpenPsi。

本文为云栖社区原创内容.

收藏
评论区

相关推荐

10分钟学会python函数式编程
在这篇文章里,你将学会什么是函数范式以及如何使用Python进行函数式编程。你也将了解列表推导和其它形式的推导。 函数范式 在命令式范式中,通过为计算机提供一系列指令然后执行它们来完成任务。在执行这些指令时,可以改变某些状态。例如,假设你最初将A设置为5,然后更改A的值。这时在变量内部值的意义上,你改变了A的状态。 在函数式范式中,你不用告诉计算机做什
AT大牛带你深度剖析Android 10大开源框架
做了几年的Android开发,也面试过不少公司,被面试过,也面试过不少人,其实Android的技术真的是无边界,不管你做过多牛的项目,不管你多久的经验在Android开发中不可能是停滞不前的,需要不断的学习及总结,否则难以解公关技术问题,下面把我压箱底的视频资料贡献给大家; 一,android视频教程 Android视频教程: 1,Android入门
Gartner:敏捷开发的10大指导原则
据Gartner的资料表明,一众CIO现在有压力,需要支持快速发展的数字业务发展,而同时又遇上传统项目和开发方法不能与时俱进的难题。企业现在大量采用敏捷开发,以加快项目进度及更好地显示其价值。 Gartner应用架构、开发和整合峰会下个月在悉尼召开。Gartner公司研究总监Nathan Wilson在会议前夕表示,敏捷方法如果使用得当,是有能力改变IT业
Python SQLite 基本操作和经验技巧(一)
1.插入单行数据 python import sqlite3 con sqlite3.connect('xxxx/test.db') cur con.cursor() 创建游标对象 cur.execute("create table Student(SNO char(10) UNIQUE primary key,Sname char(20),Sse
10 大热门人工智能开源工具(框架)
下面是我们今天要讲的10个热门的人工智能开源工具/框架。 1.TensorFlow 10大热门人工智能开源工具(框架)(https://imghelloworld.osscnbeijing.aliyuncs.com/d0aa9
别再问我Python打包成exe了!(终极版)
大家好,我是小五🐶上次这篇文章中,评论区有好几条留言都是关心如何将python脚本打包成10多M的?那今天小五就给大家全面总结一下:Python如何打包成exe,以及如何打得足够小。标准打包目前比较常见的打包exe方法都是通过Pyinstaller来实现的,本文也将使用这种常规方法。如果对这块已经很熟悉的小伙伴,可以直接下滑到本文下半部分。 为什么要打包?众
python常用150个英文单词
需要学习资料和视频 加我微信:156758039571.python 蟒蛇2. downlaods 下载3. install 安装4. customize 自定义5. path 环境变量:路径6. optional 可选的7. feature 特性特点8. documentation 文档9. associate 关联10. shortcuts 快捷方式11
盘点最重要的7个Python库
点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书导读:对于那些对Python数据生态系统不太熟悉的人士,我将简要地介绍一部分重要的库。 作者:韦斯·麦金尼(Wes McKinney)译者:徐敬来源:大数据DT(ID:hzdashuju) 01 NumPy http://numpy
一篇文章带你弄懂Python异常简介和案例分析
点击上方“Go语言进阶学习”,进行关注回复“Go语言”即可获赠从入门到进阶共10本电子书今日鸡汤似此星辰非昨夜,为谁风露立中宵。大家好,我是Go进阶者,今天给大家分享一些Python基础 (异常),一起来看看吧一、异常简介当Python检测到一个错误时,解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的"异常"。 二、案例分析 打开一个不存在的
干货|利用Python自动根据数据生成降雨量统计分析报告
作者:小小明 简介:Pandas数据处理专家,10余年编码经验,至今已帮助过成千上万名数据从业者解决工作实际遇到的问题,其中数据处理和办公自动化问题涉及的行业包括会计、HR、气象、金融等等,现为菜J学Python核心技术团队成员之一。 点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤今夜偏
看我用Python一秒发送数百份邮件,让财务部妹子追着喊666!
之前有分享过如何的文章,今天再分享一个如何用几行Python代码让财务部妹子追着喊666的实用案例。需求描述最近公司要发奖金,需要财务部妹子给每个员工发一封邮件,现在全公司 10 个部门每个人的奖金情况已经计算好了,并根据部门分别制作了 10 张表格:每个奖金表格内容大致如下:同时有一份 Excel 文件邮件地址.xlsx,里面有各部门负责人的邮箱:首先第一
盘点Python列表生成式的三种方法
一、前言列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。 二、案例分析 三种方法要生成list \[1, 2, 3, 4, 5, 6, 7, 8, 9, 10\]可以用list(range(1, 11))。print(list(range(1, 11))) 如果要生成\[1x1, 2x2
醒醒!Python已经支持中文变量名啦!
作者:豌豆花下猫来源:Python猫最近,我在翻阅两本比较新的 Python 书籍时,发现它们都犯了一个严重的低级错误!这两本书分别是《Python编程:从入门到实践》和《父与子的编程之旅》,它们都是畅销书,都在 2020 年 10 月出了新版本,都使用 Python3.7+ 版本的语法。然而,在关于变量的命名规则部分,它们犯下了一样的错误,即还在使用 Py
Python基础2——类型转换、深浅拷贝、函数
8、类型转换、深浅拷贝 8.1 数据转换数据类型 int 整型 float浮点数 bool 布尔值 complex复数 str 字符串 list 列表 tuple 元组 dict 字典 set 集合python 类型转换int() num int("123")if num 123: print("等于123")num 123n str(num)
Python基础10——线程、进程、协程
18 线程 18.1 进程和线程进程:打开一个程序至少就会有一个进程。操作系统进行资源分配的基本单位线程:线程是CPU调度的基本单位,每个进程至少都有一个线程。单线程:只有一个线程pythondef funa(): print(123)def funb(): print(456)funa()funb() 先执行funa 再执行funb多线程 线程