这12个最新AI开源项目,你一定要收下

#基于TensorFlow的强化学习框架

Dopamine 是一款快速实现强化学习算法原型的研究框架,基于 TensorFlow 实现,旨在为研究人员提供一种简单易用的实验环境,能够满足用户对小型、便于访问的代码库的需求,用户可以很方便地构建实验去验证自身在研究过程中的想法。

项目链接

https://github.com/google/dopamine

TransmogrifAI

#用于结构化数据的端到端AutoML库

TransmogrifAI 是一个基于 Scala 编写、运行在 Spark 上的 AutoML 库,由 Salesforce 开源。本项目旨在通过自动机器学习技术帮助开发者加速产品化进程,只需几行代码,便能自动完成数据清理、特征工程和模型选择,然后训练出一个高性能模型,进行进一步探索和迭代。

关于 AutoML:神经网络架构搜索(NAS)综述 | 附AutoML资料推荐

项目链接

https://github.com/salesforce/TransmogrifAI

OpenNRE

#神经网络关系抽取工具包

OpenNRE 是一个基于 TensorFlow 的神经网络关系抽取工具包,由清华大学计算机系刘知远老师组开源。本项目将关系抽取分为四个步骤:Embedding、Encoder、Selector 和 Classifier。

项目链接

https://github.com/thunlp/OpenNRE


TensorFlow Model Analysis

#TensorFlow模型分析开源库

TFMA 是一个来自 Google 的开源库,用于帮助 TensorFlow 用户对所训练模型进行分析。用户可以使用 Trainer 里定义的指标,以分布式方式评估大量数据的模型。这些指标可在不同的数据片段上进行计算,并在 Jupyter Notebooks 里实现结果可视化。

项目链接

https://github.com/tensorflow/model-analysis

#通用深度学习模型部署框架

GraphPipe 是由甲骨文公司开源的通用深度学习模型部署框架,旨在帮助用户简化机器学习模型部署,并将其从特定框架的模型实现中解放出来的协议和软件集合。GraphPine 可提供跨深度学习框架的模型通用 API、开箱即用的部署方案以及强大的性能,目前已支持 TensorFlow、PyTorch、MXNet、CNTK 和 Caffe2 等框架。


项目链接

https://github.com/oracle/graphpipe

ONNX Model Zoo

#通用深度学习预训练模型集合

本项目汇集了当前最优的各类深度学习预训练模型,模型均为由 Facebook 和微软推出的 ONNX (Open Neural Network Exchange) 格式,该格式可使模型在不同框架之间进行迁移。每个模型均有对应的 Jupyter Notebook,包含模型训练、运行推理、数据集和参考文献等信息。

项目链接

https://github.com/onnx/models

基于深度学习106点人脸标定算法

#良心级开源人脸标定算法

良心级开源人脸标定算法,包含人脸美颜、美妆、配合式活体检测和人脸校准的预处理步骤。该项目 Windows 工程基于传统的 SDM 算法,通过修改开源代码,精简保留测试部分代码,优化代码结构。Android 代码基于深度学习,我们设计了高效的网络模型,该模型鲁棒性较好,支持多人脸跟踪。目前深度学习算法在人脸标定方向取得了良好的效果,该项目旨在提供一种较为简单易用的实现方式。

▲ 演示GIF

项目特点:

  • 106 点,人脸轮廓描述更加细腻 

  • 准确度高,逆光、暗光情况下依然可以取得良好的标定效果 

  • 模型小,跟踪模型 2 MB 左右,非常适合移动端集成 

  • 速度快,Android 平台代码在 Qualcomm 820 (st),单张人脸 7ms

  • 增加多人脸跟踪

项目链接

https://github.com/zeusees/HyperLandmark

#基于PyTorch的深度学习API

MagNet 是一个基于 PyTorch 封装的高级深度学习 API,旨在减少开发者的模板代码、提高深度学习项目开发效率。

项目链接

https://github.com/MagNet-DL/magnet

NLP.js

#基于Node.js的通用NLP工具包

NLP.js 是一个基于 Node.js 的通用自然语言处理工具包,目前支持分词、词干抽取,情感分析,命名实体识别,文本分类,文本生成等多种任务。

项目链接

https://github.com/axa-group/nlp.js

#基于TensorFlow的文本生成工具包

Texar 是一个基于 TensorFlow 的文本生成工具包,支持机器翻译、对话系统、文本摘要、语言模型等任务Texar 专为研究人员和从业人员设计,用于快速原型设计和实验。

项目链接

https://github.com/asyml/texar

Evolute

#简单易用的进化算法框架

Evolute 是一个简单易用的进化算法框架,定义了个体、种群等基础结构体,并且实现了进化算法中常见的算子 Selection、Reproduction、Mutation、Update。

项目链接

https://github.com/csxeba/evolute

Task-Oriented Dialogue Dataset Survey

#任务驱动对话数据集合辑

本项目是一个任务驱动对话数据集合辑,汇集了包含 Dialog bAbI、Stanford Dialog、灵犀数据、DSTC-2、CamRest676 和 DSTC4 等多个经典任务驱动对话系统的研究数据集。

▲ 数据集列表

项目链接

https://github.com/AtmaHou/Task-Oriented-Dialogue-Dataset-Survey

PaperWeekly
PaperWeekly

推荐、解读、讨论和报道人工智能前沿论文成果的学术平台。

产业AIGitHub
122
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

文本分类技术

该技术可被用于理解、组织和分类结构化或非结构化文本文档。文本挖掘所使用的模型有词袋(BOW)模型、语言模型(ngram)和主题模型。隐马尔可夫模型通常用于词性标注(POS)。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。

TensorFlow技术

TensorFlow是一个开源软件库,用于各种感知和语言理解任务的机器学习。目前被50个团队用于研究和生产许多Google商业产品,如语音识别、Gmail、Google 相册和搜索,其中许多产品曾使用过其前任软件DistBelief。

张量技术

张量是一个可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。其坐标在 维空间内,有 个分量的一种量,其中每个分量都是坐标的函数,而在坐标变换时,这些分量也依照某些规则作线性变换。称为该张量的秩或阶(与矩阵的秩和阶均无关系)。 在数学里,张量是一种几何实体,或者说广义上的“数量”。张量概念包括标量、矢量和线性算子。张量可以用坐标系统来表达,记作标量的数组,但它是定义为“不依赖于参照系的选择的”。张量在物理和工程学中很重要。例如在扩散张量成像中,表达器官对于水的在各个方向的微分透性的张量可以用来产生大脑的扫描图。工程上最重要的例子可能就是应力张量和应变张量了,它们都是二阶张量,对于一般线性材料他们之间的关系由一个四阶弹性张量来决定。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

命名实体识别技术

命名实体识别(NER)是信息提取(Information Extraction)的一个子任务,主要涉及如何从文本中提取命名实体并将其分类至事先划定好的类别,如在招聘信息中提取具体招聘公司、岗位和工作地点的信息,并将其分别归纳至公司、岗位和地点的类别下。命名实体识别往往先将整句拆解为词语并对每个词语进行此行标注,根据习得的规则对词语进行判别。这项任务的关键在于对未知实体的识别。基于此,命名实体识别的主要思想在于根据现有实例的特征总结识别和分类规则。这些方法可以被分为有监督(supervised)、半监督(semi-supervised)和无监督(unsupervised)三类。有监督学习包括隐形马科夫模型(HMM)、决策树、最大熵模型(ME)、支持向量机(SVM)和条件随机场(CRF)。这些方法主要是读取注释语料库,记忆实例并进行学习,根据这些例子的特征生成针对某一种实例的识别规则。

MXNet技术

MXNet是开源的,用来训练部署深层神经网络的深度学习框架。它是可扩展的,允许快速模型训练,并灵活支持多种语言(C ++,Python,Julia,Matlab,JavaScript, Go,R,Scala,Perl,Wolfram语言)

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

推荐文章
mark
Webank・人工智能算法工程师
真 良心