这25个开源机器学习项目,一般人我不告诉Ta

标签: 开源 机器学习 项目 | 发表时间:2018-11-22 22:30 | 作者:
出处:http://news.cnblogs.com/

本文为 AI 研习社编译的技术博客,原标题 :

25 Open-Source Machine Learning Repos to Inspire Your Next Project

作者  Khoa Pham

翻译  狒狒   校对  姚秀清 整理  菠萝妹

很有启发性的 25 个开源机器学习项目

这 25 个开源机器学习项目,一般人我不告诉 Ta

在过去几年中,机器学习开辟了很多新的领域,出现了很多高级应用案例:Facebook 的脸部识别、Netflix 的电影推荐、PrimaAI 的图像风格转移、Siri 的语音识别、Google Allo 的自然语言处理等等。

除了这些用例之外,GitHub 上还有大量优秀的开源机器学习项目。以下列出了目前最受欢迎的项目。希望读者能从中学到新东西,并受到启发。 

   TensorFlow

这 25 个开源机器学习项目,一般人我不告诉 Ta

TensorFlow 是一个用于研究和生产的开源机器学习库。TensorFlow 为初学者和专家提供了用于桌面、移动、web 和云开发的 API 接口。

这 25 个开源机器学习项目,一般人我不告诉 Ta

TensorFlow 最初由谷歌大脑团队开发,用于内部使用,2015 年 11 月 9 日 TensorFlow 根据 Apache 2.0 开源许可协议进行正式对外发布。 

最新版本的 TensorFlow 支持 Keras,这是一种高级神经网络 API,用 Python 编写,能够基于 TensorFlow、CNTK 或 Theano 运行。还有支持 Javascript 和 Swift 的接口。  

   scikit-learn

这 25 个开源机器学习项目,一般人我不告诉 Ta

这 25 个开源机器学习项目,一般人我不告诉 Ta

Scikit-learn 最初是由 David Cournapeau 在夏季谷歌代码活动上编写的。它的名字或多或少参考了 SciPy 工具包。Scikit-learn 拥有基于 NumPy、SciPy 和 Matplotlib 的简单高效的数据挖掘和数据分析工具。因为它简单易用,所以经常与 TensorFlow 一起配合使用。  

   MXNet

这 25 个开源机器学习项目,一般人我不告诉 Ta

除了 TensorFlow、Keras 和 Scikit-learn 之外,还有来自 Apache 的 MXNet 深度学习框架。 它是为效率和灵活性而设计的——它允许您混合使用符号和指令式编程来最大化效率和生产力。可以访问它的模型社区获取更多采用 MXNet 的模型。

这 25 个开源机器学习项目,一般人我不告诉 Ta

   PyTorch

这 25 个开源机器学习项目,一般人我不告诉 Ta

如果没有提到 PyTorch,这个列表就不完整了,PyTorch 是机器学习爱好者的另一个流行选择。  PyTorch 基于 Torch,由 Facebook 作为机器学习的框架而分发。 PyTorch 是一个 Python 包,它提供了两个高级特性:带强 GPU 加速的张量计算(比如 NumPy)和基于 tape 的 autograd 系统的深层神经网络。 

这 25 个开源机器学习项目,一般人我不告诉 Ta

https://twitter.com/pytorch/status/966324198758006784

   magenta

这 25 个开源机器学习项目,一般人我不告诉 Ta

Magenta  是一个研究项目,探索机器学习在艺术和音乐创作过程中的作用。 这主要涉及开发新的深度学习和增强学习算法,以生成歌曲、图像、绘图和其他材料。 但这也是在构建智能工具和接口方面的探索,这些工具和接口允许艺术家和音乐家使用这些模型扩展(而不是替换!)他们的创作过程。 

主要的 repo 采用 Python 语言,但针对 Javascript 语言也有 magenta.js。 在展示先进的机器学习应用方面,Magenta 是一个完美的项目。我们大多数人从未想到过。若对  Magenta 感兴趣,可以使用声音和绘图生成器来查看一些演示。 

   style2paints

这个项目旨在给线条艺术着色。人工智能可以根据给定的颜色风格在草图上作画,创建自己的颜色风格并在草图上作画,或者转移另一个插图的风格。  

这 25 个开源机器学习项目,一般人我不告诉 Ta

有一些新的功能,如图像锚和图像转换,值得一看。

   Image-to-image translation in PyTorch

这个项目有两个组件——cyclegan 和 pix2pix,它们包含用于非成对和成对图像到图像转换的 PyTorch 实现。一开始,它看起来像另一个相当普通的风格转换的解决方案,但它可以做一些不同的事情,比如把一匹马转换成斑马,或者把现场照片转换成莫奈风格的画作。这个过程足够快,可以在视频直播中使用。

这 25 个开源机器学习项目,一般人我不告诉 Ta

   Deep voice conversion

我们有一些用于图像和视频的样式转换工具,那么声音呢?深度语音对话就是这种能力的一个完美案例。  

如果你能模仿一位名人的声音或者像一位著名歌手那样唱歌呢?这个项目一开始的目标是将某人的声音转换为特定的目标声音。这就是所谓的语音风格转换。我们致力于这个项目,旨在将某人的声音转换为著名的英国女演员凯特温斯莱特的声音。我们实现了一个深度神经网络来实现这一点,并且使用了超过 2 小时的由 Kate Winslet 朗读的有声书读物作为数据集。  

这 25 个开源机器学习项目,一般人我不告诉 Ta

如果你还不相信,那就去 SoundCloud,有很多 Kate Winslet 声音的 Demo。

   StarGAN in PyTorch

StarGAN 是这篇论文的一个 PyTorch 实现: 多区域图像到图像转换的统一生成对抗性网络。  

它超越了样式转换,通过应用不同的发型、皮肤类型、年龄、性别和不同的情绪来转换源图像。非常棒。  

这 25 个开源机器学习项目,一般人我不告诉 Ta

   Face detection

这听起来可能并不有趣,因为现在我们可以很容易地在 iOS 和 Android 上使用 Core ML 或 ML Kit。但更深入的观察显示这是多么的棒。它不仅能识别人脸,还能识别情绪和性别。  

实时人脸检测和情感/性别分类使用 fer2013/IMDB 数据集与 Keras CNN 模型和 OpenCV。

这 25 个开源机器学习项目,一般人我不告诉 Ta

   Deep universal probabilistic programming

这 25 个开源机器学习项目,一般人我不告诉 Ta

Uber AI Labs 建立了这个深度概率软件库,以帮助简化其交通服务的预测和优化。这个库对于任何处理概率建模的人来说都很有兴趣。

机会范围从匹配乘客与司机,建议最佳路线,并到找到合理的资源池组合,甚至是创造下一代智能汽车。为了解决这些挑战,我们将最先进的人工智能(AI)技术与拥有丰富专业知识的数据科学家、工程师和其他用户相结合。我们正在探索一种工具优先的方法,使我们和其他人能够创造出下一代人工智能解决方案。 

   ParlAI

这 25 个开源机器学习项目,一般人我不告诉 Ta

作为 Facebook 研究项目的一部分,ParlAI 是一个框架,用于训练和评估各种基于公开可用对话数据集的人工智能模型。ParlAI 使得研究人员可以访问许多流行的数据集,同时拥有一个统一的框架来共享和测试对话模型。你可以在这里阅读更多关于 ParlAI 的内容。

这 25 个开源机器学习项目,一般人我不告诉 Ta

   facets

facet 是可视化机器学习数据集的工具。  

可视化实现为 Polymer  web 组件,由 Typescript 代码支持,可以很容易地嵌入到 Jupyter 笔记本或网页中。  

可视化的关键方面是跨多个数据集的离群点检测和分布比较。有趣的值(例如高比例的缺失数据,或者跨多个数据集的不同特性分布)用红色突出显示。  

这 25 个开源机器学习项目,一般人我不告诉 Ta

    ELF with AlphaGoZero

这 25 个开源机器学习项目,一般人我不告诉 Ta

ELF 是一个使用 AlphaGoZero/AlphaZero 重新实现的游戏研究平台。ELF 为游戏研究提供了端到端解决方案。它包括小型实时战略游戏环境、并发模拟、基于数千台机器的分布式训练、直观的 api、基于 web 的可视化以及一个由 PyTorch 提供支持的强化学习框架。 

   Detectron

Detectron 是 Facebook AI 研究部门的软件系统,它实现了最先进的目标检测算法,包括 Mask R-CNN。它是用 Python 编写的,并由 Caffe2 深度学习框架提供支持。  

这 25 个开源机器学习项目,一般人我不告诉 Ta

   Fast Style Transfer

采用 TensorFlow CNN 实现,这可能是图像风格转换的最好例子之一,正如它的名字所暗示的,它的运行非常快。实现了基于 Gatys 艺术风格的神经算法,Johnson 对实时风格转换和超分辨率的感知损失,以及 Ulyanov 的实例规范化。

这 25 个开源机器学习项目,一般人我不告诉 Ta

   Face recognition

这 25 个开源机器学习项目,一般人我不告诉 Ta

这个工具为面部识别提供了简单的 api。它能发现面部特征,并能猜出照片中的人是谁。  

使用 dlib 最先进的面部识别技术进行深度学习。该模型对自然环境中被标记的人脸的测试准确率为 99.38%。  也提供了一个简单的命令来进行执行面部识别。

face_recognition 

命令行工具,允许您从命令行对图像文件夹进行面部识别!

    Deep photo style transfer

另一个极好的风格转换项目。这个 repo 包含代码和一篇研究论文:深度照片风格变换。它提供了简单的 api 来处理合并样式和源图像。令人印象非常深刻的照片风格变换。  

这 25 个开源机器学习项目,一般人我不告诉 Ta

   Fast Text

这 25 个开源机器学习项目,一般人我不告诉 Ta

fastText  是一种高效学习词汇表示和句子分类的库。 

为了更好地了解这个项目,可以查看他们的文本分类教程,该教程展示了如何在监督学习中使用这个库。文本分类的目的是将文档(如电子邮件、帖子、短信、产品评论等)分配给一个或多个类别。

   AirSim

AirSim 是一个基于虚幻引擎来模拟无人机、汽车的应用。它是开源的,跨平台的,它支持流行的飞行控制器硬件,如 PX4 用于物理和视觉的仿真。它是一个虚拟插件,可以简单地放到任何你想要的不真实的环境中。 

这 25 个开源机器学习项目,一般人我不告诉 Ta

    Image restoration

机器学习能做的比我们想象的更多。 Deep Image Prior ,它采用神经网络修复图像——但不需要学习。  

这 25 个开源机器学习项目,一般人我不告诉 Ta

这个工具可以恢复带有刮痕,坏点,或不需要的文本标记损坏的图像。

   Open Pose

这 25 个开源机器学习项目,一般人我不告诉 Ta

Open Pose  是第一个实时多人系统,可以在单个图像上同时检测人体、手、面部和脚的关键点(总共 135 个关键点)。它能探测到脚、身体、脸和手。

   pirateAT

PirateAI 在模拟环境(岛屿)中训练自主个体(海盗)。  这个程序运行一个训练管道,在游戏(寻找宝藏)和模型训练(Keras + hyperopt)之间交替进行。

这 25 个开源机器学习项目,一般人我不告诉 Ta

   EmojiIntelligence

与这个列表中的许多项目相比,这是相当简单的,但是它是学习神经网络如何工作的一个很好的起点。  这个实现是纯 Swift 的,没有使用任何库,而且很容易模仿。 

这 25 个开源机器学习项目,一般人我不告诉 Ta

   Deep Exemplar-Based Colorization

Deep Exemplar-Based Colorization  是基于范例进行局部着色的第一个深度学习方法。 给定一个参考的彩色图像,我们的卷积神经网络直接将灰度图像转换成彩色图像输出。 这是论文“基于深度范例的色彩化”的应用。 

这 25 个开源机器学习项目,一般人我不告诉 Ta

谢谢你浏览这个列表。我希望你已经找到了一些能激励和吸引你的东西。相对而言,机器学习刚刚起步,所以未来肯定会有更多有趣的新项目。这里有更多的资源供进一步探索:

  • GitHub Machine Learning Collection: 每天都能发现热门机器学习项目

  • Awesome machine learning: 有一个关于所有事情的“令人惊讶的列表”——这个列表以机器学习为中心,它的管理令人印象深刻。

  • Fantastic machine learning: 这个列表主要是关于 ML 相关的核心项目。

本文链接

相关 [开源 机器学习 项目] 推荐:

10个关于人工智能和机器学习的有趣开源项目

- - 极客521 | 极客521
本文简要介绍了10款    Quora上网友推荐的 人工智能和机器学习领域方面的开源项目. GraphLab是一种新的面向机器学习的并行框架. GraphLab提供了一个完整的平台,让机构可以使用可扩展的机器学习系统建立大数据以分析产品,该公司客户包括Zillow、Adobe、Zynga、Pandora、Bosch、ExxonMobil等,它们从别的应用程序或者服务中抓取数据,通过推荐系统、欺诈监测系统、情感及社交网络分析系统等系统模式将大数据理念转换为生产环境下可以使用的预测应用程序.

10款人工智能和机器学习领域方面的开源项目

- - 灯火阑珊
GraphLab是一种新的面向机器学习的并行框架. GraphLab提供了一个完整的平台,让机构可以使用可扩展的机器学习系统建立大数据以分析产品,该公司客户包括Zillow、Adobe、Zynga、Pandora、Bosch、ExxonMobil等,它们从别的应用程序或者服务中抓取数据,通过推荐系统、欺诈监测系统、情感及社交网络分析系统等系统模式将大数据理念转换为生产环境下可以使用的预测应用程序.

这25个开源机器学习项目,一般人我不告诉Ta

- - 博客园_新闻
本文为 AI 研习社编译的技术博客,原标题 :. 作者  Khoa Pham. 翻译  狒狒   校对  姚秀清 整理  菠萝妹. 很有启发性的 25 个开源机器学习项目. 在过去几年中,机器学习开辟了很多新的领域,出现了很多高级应用案例:Facebook 的脸部识别、Netflix 的电影推荐、PrimaAI 的图像风格转移、Siri 的语音识别、Google Allo 的自然语言处理等等.

Ruby的机器学习项目

- - 阳志平的网志-技术类
作者是辉瑞公司的小牛,可惜烂尾了. 我在改啊改啊,可惜现在是商业项目,暂时不能放出改掉的部分. 对了,顺便做个小广告,去年组织翻译的一本小书:社会网络分析:方法与实践. 已经上市了,感兴趣的可以翻翻:. 社会网络分析:探索关系背后的科学与技术. treat:自然语言处理. 类似于igraph,也是桥接处理nlp.

机器学习实战之一:一个完整的机器学习项目

- - IT瘾-jianshu
一个机器学习项目主要步骤为:. 使用Pandas加载数据,并返回一个包含所有数据的Pandas. head()方法查看该数据集的前5行:. describe()方法展示数值属性的概括:. 创建测试集(根据收入,进行分层采样):. corr()方法计算出每对属性间的标准相关系数(standard correlation coefficient,也称作皮尔逊相关系数):.

机器学习项目如何管理:现状

- - 透明思考
Atlassian今年4月的一篇博客提出,到2020年有87%的Jira用户认为他们的工作会被AI改变. 具体到项目管理上,Atlassian的观点是,AI首先会作为项目管理助手进入我们的视野,然后透过数据拓展我们对项目的理解,更进一步还能通过主动猜测、倡导优秀实践、创造新的元数据层等方式弥补数据的缺失,最终对项目提出有益的建议.

机器学习项目如何管理:设置期望

- - 透明思考
我在之前的一篇文章中提到, 机器学习项目如何管理,目前在行业内是一个普遍存在的难题. 具体而言,对于这类项目,我们需要一套行之有效的工作办法,帮助一线工作者:(1)知道什么时候该做什么事;(2)知道什么时候该看什么指标;(3)知道什么时候可能有什么风险. 这样一套工作办法的第一步,就是对一个机器学习项目设置合理的期望.

机器学习项目如何管理:工作内容

- - 透明思考
前一篇文章介绍了机器学习的基本过程,然后讨论了如何对机器学习项目设置期望的问题. 我们了解到,度量准确率的指标可以有多种,需要根据应用场景来选择. 一旦选好了度量指标,接下来就可以围绕这个指标来划分任务、监控进度、管理风险. 站在非常宏观的角度,机器学习系统工作的方式是:你有一个模型,你把一堆数据输入给它,然后你以某种方式使用它提供给你的输出.

机器学习项目如何管理:看板

- - 透明思考
在前面的文章中我们看到,涉及机器学习、人工智能的项目,普遍地存在 项目管理的困难. 然后我介绍了针对这类项目 如何设置合理的期望,并且深入分析了 机器学习项目的工作内容. 既然已经知道如何设置客户的期望、又知道可以做哪些事来逼近这个期望,那么围绕期望和动作进行任务的拆解、管理和可视化应该是顺理成章的.

Google 开源机器学习数据集可视化工具 Facets

- - 开源中国社区最新新闻
ML 数据集可以包含数亿个数据点,每个数据点由数百(甚至数千)的特征组成,几乎不可能以直观的方式了解整个数据集. 为帮助理解、分析和调试 ML 数据集,谷歌开源了 Facets,一款可视化工具. Facets 包含两个部分 —— Facets Overview 和 Facets Dive ,允许用户以不同的粒度查看其数据的整体图像.