21个必须知道的机器学习开源工具!

本文将介绍21种用于机器学习的开源工具。
以下为译文:
你肯定已经了解流行的开源工具,如R、Python、Jupyter笔记本等。但是,除了这些流行的工具之外还有一个世界——一个隐藏在机器学习工具下的地方。这些并不像他们的同行那样出色,但可以成为许多机器学习任务的救星。
在本文中,我们将介绍21种用于机器学习的开源工具。我强烈建议你花一些时间浏览我提到的每个类别。除了我们通常在课程和视频中学到的东西之外,还有很多需要学习的地方。
面向非程序员的开源机器学习工具
对于来自非编程和非技术背景的人来说,机器学习看起来很复杂。这是一个广阔的领域,我可以想象第一步可能会多么令人生畏。没有编程经验的人能否在机器学习中取得成功?
事实证明,你可以!这里有一些工具可以帮助你跨越鸿沟并进入著名的机器学习世界:
- 优步路德维希:路德维希允许我们训练和测试深度学习模型,而无需编写代码。您需要提供的只是一个包含数据的CSV文件,一个用作输入的列的列表,以及一个用作输出的列的列表——Ludwig将完成剩下的工作。
- KNIME:KNIME允许您使用拖放界面创建整个数据科学工作流程。这种可视化实现整个模型工作流的方法非常直观,在处理复杂的问题陈述时非常有用。

- Orange:您不必知道如何编码以便能够使用Orange挖掘数据,处理数据并获得洞察力。
- MLFlow:MLFlow被设计用于使用任何机器学习库或算法,并管理整个生命周期,包括实验、重现性和机器学习模型的部署。

- Apple的CoreML:CoreML是一个流行的框架,它可用于将机器学习模型集成到你的iOS / Apple Watch / Apple TV / MacOS应用程序中。关于CoreML的最好的部分是你不需要有关神经网络或机器学习的广泛知识,双赢!

- TensorFlow Lite:TensorFlow Lite是一组工具,可帮助开发人员在移动设备(Android和iOS),嵌入式和物联网设备上运行TensorFlow模型。
- TensorFlow.JS - TensorFlow.JS可以成为你在网络上部署机器学习模型的首选。它是一个开源库,可让你在浏览器中构建和训练机器学习模型。

- Hadoop:使用大数据最重要和最相关的工具之一是Hadoop项目。Hadoop是一个框架,它允许使用简单的编程模型跨计算机集群分布式处理大型数据集。

- Spark:Apache Spark被认为是Hadoop用于大数据应用程序的自然继承者。这个开源大数据工具的关键点在于它填补了Apache Hadoop在数据处理方面的空白。有趣的是,Spark可以处理批量数据和实时数据。
- Neo4j:对于所有与数据相关的大问题,Hadoop可能不是明智的选择。例如,当你需要处理大量网络数据或图形相关问题(如社交网络或人口统计模式)时,图形数据库可能是最佳选择。

- SimpleCV:如果你从事任何计算机视觉项目,必须使用OpenCV。但你有遇到过SimpleCV吗?SimpleCV可以访问几个高性能的计算机视觉库,如OpenCV——无需首先了解位深度、文件格式、色彩空间、缓冲区管理、特征值或矩阵与位图存储,这使计算机视觉变得简单。

- Tesseract OCR:你是否使用过创意应用程序,通过使用智能手机的相机扫描文档或购物账单,或者仅仅通过给支票拍照就可以把钱存入银行账户?所有这些应用程序都称之为OCR或光学字符识别软件。Tesseract就是这样一种OCR引擎,能够识别100多种语言,也可以训练识别其他语言。
- Detectron:Detectron是Facebook AI Research的软件系统,它实现了最先进的物体检测算法,包括Mask R-CNN。它是用Python编写的,由Caffe2深度学习框架提供支持。

- StanfordNLP:StanfordNLP是一个Python自然语言分析包,关于这个库的最好的部分就是它支持超过70种人类语言!

- BERT即服务:你们所有的NLP爱好者都会听说过BERT这一来自谷歌的突破性NLP架构,但你可能还没有遇到过这个非常有用的项目。Bert-as-a-service使用BERT作为句子编码器,并通过ZeroMQ将其作为服务托管,允许你仅用两行代码将句子映射到固定长度的表示形式。
- Google Magenta:此库提供了用于处理源数据(主要是音乐和图像)的实用程序,使用此数据来训练机器学习模型,最后从这些模型生成新内容。
- LibROSA:LibROSA是一个用于音乐和音频分析的Python包。它提供了创建音乐信息检索系统所需的构建块。当我们使用深度学习等语音到文本的应用程序时,它在音频信号预处理中被大量使用。
- 谷歌研究足球:谷歌研究足球环境是一个新颖的RL环境,代理商的目标是掌握世界上最受欢迎的运动——足球。这种环境为你提供了大量的控制来训练RL代理。
- OpenAI Gym:Gym是一个用于开发和比较强化学习算法的工具包。它支持教学代理从步行到玩乒乓球或弹球戏等游戏。在下面的gif图片中,你可以看到一个正在学习走路的机器人。

- Unity ML代理:Unity机器学习代理工具包(ML-Agents)是一个开放源码Unity插件,可以将游戏和模拟作为培训智能代理的环境。通过一个简单易用的Python API,可以使用强化学习、模仿学习、神经进化或其他机器学习方法来训练agent。

- Malmo项目:Malmo平台是一个基于Minecraft构建的复杂AI实验平台,旨在支持人工智能的基础研究,由Microsoft开发。
推荐阅读
Python微信远程控制摄像头-拍摄女朋友坐电脑前聊天时表情
5大必知的图算法,附Python代码实现
阿里云弹性计算负责人蒋林泉:亿级场景驱动的技术自研之路
40 岁身体死亡,11 年后成“硅谷霍金”,他用一块屏幕改变 100 万人!AI大神如何用区块链解决模型训练痛点, AI+区块链的正确玩法原来是这样…… | 人物志
Docker是啥?容器变革的火花?

相关文章:

eclipse中egit插件使用
2019独角兽企业重金招聘Python工程师标准>>> 这篇文章当时制作有点粗糙,建议阅读升级版:eclipse中egit插件使用--升级版 使用git作为项目的代码管理工具现在是越来越火,网上有各种各样的文章、博客、讨论,其中以命令行…
一维码EAN 8简介及其解码实现(zxing-cpp)
一维码EAN 8:属于国际标准条码,由8个数字组成,属EAN的简易编码形式(EAN缩短码)。当包装面积小于120平方公分以下无法使用标准码时,可以申请使用缩短码。依结构的不同,EAN条码可区分为:1. EAN 1…

三年、四大顶会,深度推荐系统18篇论文只有7个可以复现
作者 | 深度传送门来源 | 深度传送门(ID:gh_5faae7b50fc5)导读:本文是“深度推荐系统”专栏的第十篇文章,这个系列将介绍在深度学习的强力驱动下,给推荐系统工业界所带来的最前沿的变化。本文主要根据RecSys 2019中论文…

PHP教程中验证正整数is_int($value+0),为什么要这样?
2019独角兽企业重金招聘Python工程师标准>>> 最近学习PHP应用,其中有一段是要验证变量是否为正整数,除了is_numeric($value)外,还要加上is_int($value0)且($value0) > 0,为什么还要 0呢?直接验证$value不…

[给12306支招]取消车票预订-采用全额预售(充值)
为什么80%的码农都做不了架构师?>>> 取消车票预订 预订给车票销售带来的负面效应: 产生"占座", 如果用户不付款就会造成席位在支付期内无法销售.回收成本, 超过支付期需要回收车票.恶意占座, 如果恶意占座会造成大量真正要买票的客户无法购票…
一维码ITF 25简介及其解码实现(zxing-cpp)
一维码ITF 25又称交插25条码,常用在序号,外箱编号等应用。交插25码是一种条和空都表示信息的条码,交插25码有两种单元宽度,每一个条码字符由五个单元组成,其中二个宽单元,三个窄单元。在一个交插25码符号中…

微软云计算业务增长,或成全球最具价值上市公司
近日,有消息指出,微软公司在云计算业务上的豪赌正在取得回报,目前微软已超越苹果公司,成为全球市值最高的上市公司。就在几年前,这家软件制造商的市场前景还不被人看好,随着个人电脑销量的大幅度下滑&#…

激光雷达,马斯克看不上,却又无可替代?
作者 | Xingwei来源 | 辣笔小星(ID:XingweiSteven)【导读】最近Velodyne挑起的激光雷达LiDAR专利之战成为了业界热点。可以说在严苛的自动驾驶系统中激光雷达成为一种不可替代的传感器。今天让我们详细聊聊激光雷达LIDAR是怎么回事。什么是激光雷达LIDAR…

解决CSV文件中长数字以科学记数格式保存问题
今天因为需要做数据导入到数据表中,用xlxs文件做好了转化为csv文件,结果一看,傻眼了,全部变为科学记数了,在xlxs设置好的单元格格式为文本,可是转化为csv之后就变为了常规,而且也改变了。源文件…

假设检验怎么做?这次把方法+Python代码一并教给你
(图片付费下载于视觉中国)作者 | Jose Garcia译者 | 张睿毅校对 | 张一豪、林亦霖编辑 | 于腾凯来源 | 数据派THU(ID:DatapiTHU)【导读】本文中,作者给出了假设检验的解读与Python实现的详细的假设检验中的…
C++实现tar包解析
tar(tape archive)是Unix和类Unix系统上文件打包工具,可以将多个文件合并为一个文件,使用tar工具打出来的包称为tar包。一般打包后的文件名后缀为”.tar”,也可以为其它。tar代表未被压缩的tar文件,已被压缩的tar文件则追加压缩文…

HTML5的学习,各个标签的尝试
style标签的使用可以更好的改变各个标题风格 基本标签<p>,标题<h>,这里br是换行。 超链接的使用,属性href。 表格的使用table。 最后就是图片 img,和音频audio插入地址即可。 今天的学习就分享这些,谢谢大家。转载于:https://www…

Android获取内部和SDCard的存储空间
有时我们开Android项目开发时会用到文件存储或上传文件的一些操作,那么我们前提是要获取到该存储设备的大小,以方便于与我们需要操作的文件的大小做比较,如果操作的文件大小小于存储空间,那么就可以继续操作,反之则不能…

排序算法 Java实现
选择排序 核心思想 选择最小元素,与第一个元素交换位置;剩下的元素中选择最小元素,与当前剩余元素的最前边的元素交换位置。 分析 选择排序的比较次数与序列的初始排序无关,比较次数都是N(N-1)/2。 移动次数最多只有n-1次。 因此&…

正则表达式简介及在C++11中的简单使用
正则表达式(regular expression)是计算机科学中的一个概念,又称规则表达式,通常简写为regex、regexp、RE、regexps、regexes、regexen。 正则表达式是一种文本模式。正则表达式是强大、便捷、高效的文本处理工具。正则表达式本身,加上如同一…

经典再读 | NASNet:神经架构搜索网络在图像分类中的表现
(图片付费下载于视觉中国)作者 | Sik-Ho Tsang译者 | Rachel编辑 | Jane出品 | AI科技大本营(ID:rgznai100)【导读】从 AutoML 到 NAS,都是企业和开发者的热门关注技术,以往我们也分享了很多相关…

javascript面向对象技术基础(二)
数组我们已经提到过,对象是无序数据的集合,而数组则是有序数据的集合,数组中的数据(元素)通过索引(从0开始)来访问,数组中的数据可以是任何的数据类型.数组本身仍旧是对象,但是由于数组的很多特性,通常情况下把数组和对象区别开来分别对待(Throughout this book, objects and a…

MediaPipe:Google Research 开源的跨平台多媒体机器学习模型应用框架
作者 | MediaPipe 团队来源 | TensorFlow(ID:tensorflowers)【导读】我爱计算机视觉(aicvml)CV君推荐道:“虽然它是出自Google Research,但不是一个实验品,而是已经应用于谷歌多款产…

机器学习研究的七个迷思
作者 Oscar Chang 总结了机器学习研究中的七大迷思,每个问题都很有趣,也可能是你在研究机器学习的过程中曾经遇到过的“想当然”问题。AI 前线对这篇文章进行了编译,以飨读者。迷思之一:TensorFlow 是张量操作库 它实际上就是一个…
Caffe源码中common文件分析
Caffe源码(caffe version:09868ac , date: 2015.08.15)中的一些重要头文件如caffe.hpp、blob.hpp等或者外部调用Caffe库使用时,一般都会include<caffe/common.hpp>文件,下面分析此文件的内容:1. include的文件:boost中…
编程乐趣:C#彻底删除文件
经常用360的文件粉碎,删除隐私文件貌似还不错的。不过C#也可以实现彻底删除文件。试了下用360文件恢复恢复不了源文件了。代码如下:public class AbsoluteFile{public event EventHandler FinishDeleteFileEvent null;public event EventHandler Finish…

大数据工程师手册:全面系统的掌握必备知识与工具
作者 | Phoebe Wong译者 | 陆离编辑 | Jane出品 | AI科技大本营(ID:rgznai100)前言如何才能成为一名真正的“全栈(full-stack)”数据科学家?需要了解哪些知识?掌握哪些技能?概括来讲…

JSON.stringify()
写在前边 不言而喻,JSON.stringify() 是用来将合法的JSON数据字符串化的!然而在正常的工作中我们用到的只是最基础的功能;今天我们就探索不一样的JSON.stringify()。 基础用法 基本数据类型 JSON.stringify(2) // "2" JSON.stringi…

C++中前置声明介绍
前置声明是指对类、函数、模板或者结构体进行声明,仅仅是声明,不包含相关具体的定义。在很多场合我们可以用前置声明来代替#include语句。类的前置声明只是告诉编译器这是一个类型,但无法告知类型的大小,成员等具体内容。在未提供…

在Java SE中使用Hibernate处理数据
如今,Hibernate正在迅速成为非常流行的(如果不是最流行的)J2EE O/R映射程序/数据集成框架。它为开发人员提供了处理企业中的关系数据库的整洁、简明且强大的工具。但如果外部需要访问这些已被包装在J2EE Web应用程序中的实体又该怎么办&#…

利用OpenCV、Python和Ubidots构建行人计数器程序(附完整代码)
作者 | Jose Garcia译者 | 吴振东校对 | 张一豪、林亦霖,编辑 | 于腾凯来源 | 数据派(ID:datapi)导读:本文将利用OpenCV,Python和Ubidots来编写一个行人计数器程序,并对代码进行了较为详细的讲解…
开源软件License汇总
开源软件英文为Open Source Software,简称OSS,又称开放源代码软件,是一种源代码可以任意获取的计算机软件,这种软件的著作权持有人在软件协议的规定之下保留一部分权利并允许用户学习、修改以及以任何目的向任何人分发该软件。 某…

前深度学习时代CTR预估模型的演化之路:从LR到FFM\n
本文是王喆在 AI 前线 开设的原创技术专栏“深度学习 CTR 预估模型实践”的第二篇文章(以下“深度学习 CTR 预估模型实践”简称“深度 CTR 模型”)。专栏第一篇文章回顾:《深度学习CTR预估模型凭什么成为互联网增长的关键?》。重看…

神器与经典--sp_helpIndex
每每和那些NB的人学习技术的时候,往往都佩服他们对各个知识点都熟捻于心,更佩服的是可以在很短时间找出很多业界大师写的文章和开发的工具,就像机器猫的口袋,让人羡慕嫉妒恨啊!宋沄剑宋桑就是其中之一,打劫其硬盘的念头已计划很久,只待时机成…

评分9.7!这本Python书彻底玩大了?程序员:真香!
「超级星推官/每周分享」是一个围绕程序员生活、学习相关的推荐栏目。CSDN出品,每周发布,暂定5期。关键词:靠谱!优质!本期内容,我们将抽1人送出由我司程序员奉为“超级神作”的《疯狂Python讲义》1本&#…