RAM DEWANI作者陈汉青、林亦霖校对王菁编辑欧阳锦翻译

2020年22个广泛使用的数据科学与机器学习工具(附链接)

本文为大家从两个方面——大数据和数据科学,介绍了本年度的22个被广泛使用的数据科学和机器学习工具。结合了大数据的3V特征,数据科学与其各个领域的关系特征较为完整的阐述了各种工具的使用背景、情况和各自特点。

概述

  • 数据科学的工具数不胜数——你应该选择哪一个?

  • 这里列出了超过20种的数据科学工具,满足数据科学生命周期不同阶段的需求。

引言

执行数据科学任务的最佳工具有哪些?作为数据科学新手,你应该选择哪些工具?

我相信在你的数据科学之旅的某些时刻中你已经问过(或搜索过)这些问题。这些问题是合理的!虽然在这个行业中并不缺乏数据科学工具,但是为你的数据科学旅程和生涯做出一个选择可能是一个棘手的决定。

我们得承认——数据科学的范围庞杂,每一个领域要求处理数据的方式各有不同,这让许多分析家/数据库科学家陷入困惑。而如果你是一位商业领袖,你将要选择你和你的公司所使用的工具,这很关键,因为这些工具会产生长期的影响。

同样地,问题是你应该选择哪种数据科学工具呢?

在本文中,我将通过罗列出数据科学领域广泛使用的工具并细分它们的用途和优势,来帮你解决这些困惑。所以,让我们开始吧!

目录

  • 深入大数据 – 处理大数据的工具

体量

种类

速度

  • 数据科学的工具

报告和商业智能

预测建模和机器学习

人工智能

大数据的数据科学工具

为了真正了解大数据背后的深刻意义,我们需要了解给大数据下定义所的基本原理。他们被称为大数据的3V而广为人知。
  • 体量

  • 种类

  • 速度

处理大数据体量的工具

顾名思义,体量是指数据的规模和数量。要了解我在说的数据规模,你需要知道,世界上超过90%的数据是在最近两年内创建的!

十年来,随着数据量的增加,该技术也变得越来越好。计算和存储成本的降低使收集和存储大量数据变得更加容易。

数据体量定义了它是否符合大数据的条件。

当我们的数据范围在1Gb到10Gb左右时,传统的数据科学工具就可以很好地工作。那么这些工具有哪些呢?

Microsoft Excel–Excel是处理少量数据的最简单,最受欢迎的工具。它支持的最大行数只刚刚超过一百万,一张表一次最多只能处理16,380列。当数据量很大时,这些根本不够用。

Microsoft Excel:

https://www.analyticsvidhya.com/blog/category/excel/?utm_source=blog&utm_medium=22-tools-data-science-machine-learning


  • Microsoft Access –它是Microsoft流行的用于数据存储的工具。使用此工具可以平稳顺畅地处理高达2Gb的较小数据库,但超过这个数字,Access会开始崩溃。

  • SQL – SQL是自1970年代以来最流行的数据管理系统之一。几十年来,它一直是主要的数据库解决方案。SQL仍然很流行,但有一个缺点——随着数据库的不断增长,很难对其进行扩展。

到目前为止我们已经介绍了一些基本工具。现在该放大招了!如果你的数据大于10Gb,甚至超过1Tb+,那么需要使用我在下面提到的工具:
  • Hadoop –它是一个开源的分布式框架,用于管理大数据的数据处理和存储。当你从零开始构建机器学习项目时,很可能会使用此工具。

  • Hive –它是建立在Hadoop之上的数据仓库。Hive提供了一个类似于SQL的接口来查询存储在与Hadoop集成的各种数据库和文件系统中的数据。

处理大数据种类的工具

数据种类是指存在的不同类型的数据。数据类型可以是以下之一:结构化和非结构化数据。

让我们看一下不同数据类型的示例:

花一点时间去观察这些示例,并且将它们与你的真实数据关联起来。

你可能在结构化数据中观察到,这种类型的数据有固定的顺序和结构,而非结构化数据相反,这些示例并不遵循任何趋势或者模式。例如,顾客反馈在长度、情感和其他方面有所不同。另外,这类数据巨大并且种类繁多。

处理这类数据可能非常具有挑战性,那么市场上用于管理和处理这些不同数据类型的数据科学工具有哪些呢?

两个最常见的数据库是SQL和NoSQL。在NoSQL出现前,SQL多年来一直是市场主导者。

SQL的一些例子是Oracle,MySQL,SQLite,而NoSQL由诸如MongoDB,Cassandra等流行的数据库组成。这些NoSQL数据库由于具有扩展和处理动态数据的能力而被广泛地应用。

处理大数据速度的工具

第三个,也是最后一个V代表了速度。这是捕获数据时的速度,包括实时和非实时数据。我们在这里将主要讨论实时数据。

我们周围有许多捕获和处理实时数据的示例。最复杂的是自动驾驶汽车收集的传感器数据。想象一下,在自动驾驶汽车中,汽车必须同时动态地收集和处理有关车道、与其他车辆的距离等数据!

其他正在收集的实时数据的例子包括:
  • 闭路电视

  • 股票交易

  • 信用卡交易欺诈检测

  • 网络数据——社交媒体(Facebook、Twitter等)

 “你知道吗?

在纽约证券交易所的每个交易时段中,都会生成超过1TB的数据!”
 
现在,让我们来看看处理实时数据的一些常用数据科学工具:
  • Apache Kafka – Kafka是Apache的开源工具。它用于创建实时数据管道。Kafka的一些优点在于——它具有容错性、速度很快,并且被大量机构投入生产使用。

  • Apache Storm – Apache的该工具几乎可用于所有编程语言。它每秒可处理多达100万个元组,并具有高度的可扩展性。对于高数据速率来说,这是个好工具。

  • Amazon Kinesis – 亚马逊提供的此工具类似于Kafka,但需要付费。然而,它提供的是开箱即用的解决方案,这使其成为组织机构的强势的备选方案。

  • Apache Flink – Flink是Apache另一种可用于实时数据的工具。Flink的优点在于它的高性能、容错能力和有效的内存管理。

现在,我们已经掌握了通常用于处理大数据的各种工具,接下来将介绍使用高级机器学习技术和算法来利用数据的部分。

广泛使用的数据科学工具

如果你要建立一个全新的数据科学项目,那么脑海中会浮现很多问题,这与你的水平无关——无论你是数据科学家,数据分析师,项目经理还是高级数据科学主管,都是如此。

你将面对的一些问题是:

• 在数据科学的不同领域中应该使用哪些工具?
• 应该购买这些工具的许可证还是选择开源工具?等等。

在本节中,我们将根据不同领域讨论行业中使用的一些受欢迎的数据科学工具。

数据科学本身就是一个广义术语,它由各种不同的领域组成,每个领域都有它自己的业务重要性和复杂性,正如下图所示:

数据科学的范围包含了各种领域,上图表示了这些领域的相对复杂性和它们提供的业务价值。让我们讨论一下以上频谱中显示的每一个点。

报告和商业智能

让我们从这个范围的底端开始。报告和商业智能使一个机构能够识别出数据的趋势和模式,从而制定关键的战略决策。这种分析的类型包括MIS、数据分析和仪表板。

这些领域中常用的工具有:
  • Excel – 它提供了多种选择,包括了数据透视表和图表,使你可以快速分析数据。简而言之,它是数据科学/分析工具中的“瑞士军刀”。

  • QlikView – 您只需单击几下即可合并,搜索,可视化和分析所有数据资源。这是一种易于学习的直观的工具,因此非常受欢迎。

  • Tableau – 它是当今市场上最受欢迎的数据可视化工具之一。它能够处理大量数据,甚至提供类似于Excel的计算功能和参数。Tableau因其整洁的仪表板和故事界面而倍受赞誉.

https://courses.analyticsvidhya.com/courses/tableau-2-0?utm_source=blog&utm_medium=22-tools-data-science-machine-learning

  • Microstrategy – 它是另一个BI工具,支持仪表板、自动分发和其他关键数据分析任务。

  • PowerBI – 它是商业智能(BI)领域中的Microsoft产品。PowerBI旨在与Microsoft技术进行集成。因此,如果你的组织有Sharepoint或SQL数据库用户,那么你和你的团队将会喜欢这个工具。

  • Google Analytics – 想知道Google Analytics如何进入此名单的吗?嗯……数字营销在业务转型中起着重要作用,没有比它更好的工具可以用来分析你的数字化工作。

预测分析和机器学习工具

顺着前面那个图再往上走,其复杂性和商业价值也变高了!这是大多数数据科学家赖以生存的领域。你将要解决的问题类型是统计建模,预测,神经网络深度学习

让我们了解一些该领域的常用工具:
  • Python – 由于其易用性,灵活性和开源特性,Python是当今行业数据科学中最主要的语言之一。它已经在ML社区中迅速普及并被广泛接受。

https://courses.analyticsvidhya.com/courses/introduction-to-data-science?utm_source=blog&utm_medium=22-tools-data-science-machine-learning

  •  R – 它是数据科学中另一种非常常用且受人尊敬的语言。R有一个蓬勃发展且被极大支持的社区,附带了许多软件包和库,支持大多数的机器学习任务。

  • Apache Spark – Spark由加州大学伯克利分校于2010年开源,此后已成为最大的大数据社区之一。它被称为大数据分析的“瑞士军刀”,因为它具有多种优势,例如灵活性、速度、计算能力等。

  • Julia – 它是一种即将到来的语言,被捧为Python的继承者。目前它仍处于起步阶段,观察其在未来的表现将会是一件有趣的事。

  • Jupyter Notebooks – 这些笔记本广泛用于Python编程。尽管它主要用于Python,但它也支持其他语言,例如Julia,R等。

到目前为止,我们讨论的工具都是真正的开源工具。你无需支付费用或购买任何额外的许可证。它们拥有活跃的社区,可以定期维护和发布更新。

现在,我们将看一些在某些特定行业中通用的收费工具:
  • SAS – 这是一个非常受欢迎且功能强大的工具。在银行和金融部门中被普遍使用。它的使用在美国运通,摩根大通,西格玛,苏格兰皇家银行等私人组织中占有很高的份额。

  • SPSS – SPSS是“社会科学统计软件包”的缩写,在2009年被IBM收购。它提供高级统计分析、庞大的机器学习算法库、文本分析等。

  • Matlab – Matlab在组织机构的领域里确实被低估了,但在学术界和研究部门中得到了广泛的使用。最近相较于Python,R和SAS,Matlab已经阵地失守,但是大学(尤其在美国)仍在使用Matlab教授许多本科课程。

深度学习的通用框架

深度学习需要大量的计算资源,并且需要特殊的框架才能有效地利用这些资源。因此,你很可能需要GPU或TPU。

让我们看看本节中用于深度学习的一些框架。

  • TensorFlow – 它很容易成为当今行业中使用最广泛的工具。Google可能与此有关!

  • PyTorch – 这种超级灵活的深度学习框架正在成为TensorFlow的强势竞争对手。PyTorch最近受到一些关注,它的开发者是Facebook的研究人员。

  • Keras和Caffe是广泛用于构建深度学习应用程序的其他框架。

人工智能工具

AutoML的时代就在这里。如果还没有听说过这些工具,那么这是一个自我学习的好机会!作为数据科学家,你很可能会在不久的将来与他们合作。

列举一些最受欢迎的AutoML工具,包括AutoKeras,Google Cloud AutoML,IBM Watson,DataRobot,H20的无人驾驶AI和亚马逊的Lex。AutoML有望成为AI / ML社区中的下一个大事件。它旨在消除或减少技术性,以便商业领导者可以使用它来制定战略决策。

这些工具将推动整个数据分析流程自动化!

尾注

我们已经讨论了数据收集引擎以及完成检索、处理和存储,这一整个流水线所需的工具。数据科学的众多领域中每个领域都有自己的一套工具和框架。

选择数据科学工具通常取决于你的个人选择、你的领域或项目,当然也取决于你的机构。

在评论中让我知道你喜欢使用的最喜欢的数据科学工具或框架!

原文标题:

22 Widely Used Data Science and Machine Learning Tools in 2020

原文链接:

https://www.analyticsvidhya.com/blog/2020/06/22-tools-data-science-machine-learning/

译者简介

欧阳锦,我是一名即将去埃因霍芬理工大学继续攻读数据科学专业的硕士生。本科毕业于华北电力大学,自己喜欢的科研方向是隐私安全中的数据科学算法。有很多爱好和兴趣(摄影、运动、音乐),对生活中的事情充满兴趣,是个热爱钻研、开朗乐观的人。为了更好地学习自己喜欢的专业领域,希望能够接触到更多相关的事物以开拓自己的眼界和思路。

THU数据派
THU数据派

THU数据派"基于清华,放眼世界",以扎实的理工功底闯荡“数据江湖”。发布全球大数据资讯,定期组织线下活动,分享前沿产业动态。了解清华大数据,敬请关注姐妹号“数据派THU”。

入门实用工具机器学习数据科学
3
相关数据
Amazon机构

亚马逊(英语:Amazon.com Inc.,NASDAQ:AMZN)是一家总部位于美国西雅图的跨国电子商务企业,业务起始于线上书店,不久之后商品走向多元化。目前是全球最大的互联网线上零售商之一,也是美国《财富》杂志2016年评选的全球最大500家公司的排行榜中的第44名。

https://www.amazon.com/
相关技术
Microsoft机构

微软是美国一家跨国计算机科技公司,以研发、制造、授权和提供广泛的计算机软件服务为主。总部位于美国华盛顿州的雷德蒙德,最为著名和畅销的产品为Microsoft Windows操作系统和Microsoft Office办公室软件,以及Xbox的游戏业务。微软是美国《财富》杂志2015年评选的世界500强企业排行榜中的第95名。

https://www.microsoft.com/en-us/about
IBM机构

是美国一家跨国科技公司及咨询公司,总部位于纽约州阿蒙克市。IBM主要客户是政府和企业。IBM生产并销售计算机硬件及软件,并且为系统架构和网络托管提供咨询服务。截止2013年,IBM已在全球拥有12个研究实验室和大量的软件开发基地。IBM虽然是一家商业公司,但在材料、化学、物理等科学领域却也有很高的成就,利用这些学术研究为基础,发明很多产品。比较有名的IBM发明的产品包括硬盘、自动柜员机、通用产品代码、SQL、关系数据库管理系统、DRAM及沃森。

https://www.ibm.com/us-en/
相关技术
深度学习技术

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

数据分析技术

数据分析是一类统计方法,其主要特点是多维性和描述性。有些几何方法有助于揭示不同的数据之间存在的关系,并绘制出统计信息图,以更简洁的解释这些数据中包含的主要信息。其他一些用于收集数据,以便弄清哪些是同质的,从而更好地了解数据。 数据分析可以处理大量数据,并确定这些数据最有用的部分。

机器学习技术

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

Julia技术

Julia 是MIT设计的一个面向科学计算的高性能动态高级程序设计语言,项目大约于2009年中开始,2018年8月JuliaCon2018 发布会上发布Julia 1.0。据介绍,Julia 目前下载量已经达到了 200 万次,且 Julia 社区开发了超过 1900 多个扩展包。这些扩展包包含各种各样的数学库、数学运算工具和用于通用计算的库。除此之外,Julia 语言还可以轻松使用 Python、R、C/C++ 和 Java 中的库,这极大地扩展了 Julia 语言的使用范围。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

数据科学技术

数据科学,又称资料科学,是一门利用数据学习知识的学科,其目标是通过从数据中提取出有价值的部分来生产数据产品。它结合了诸多领域中的理论和技术,包括应用数学、统计、模式识别、机器学习、数据可视化、数据仓库以及高性能计算。数据科学通过运用各种相关的数据来帮助非专业人士理解问题。

Apache Spark技术

Apache Spark是一款快速、灵活且对开发者友好的工具,也是大型SQL、批处理、流处理和机器学习的领先平台。它是一个围绕速度、易用性和复杂分析构建的大数据处理框架,提供了一个全面、统一的框架用于管理各种不同性质(文本数据、图表数据等)数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。

自动驾驶汽车技术

自动驾驶汽车,又称为无人驾驶汽车、电脑驾驶汽车或轮式移动机器人,是自动化载具的一种,具有传统汽车的运输能力。作为自动化载具,自动驾驶汽车不需要人为操作即能感测其环境及导航。

商业智能技术

商业智能(Business Intelligence,BI),又称商业智慧或商务智能,指用现代数据仓库技术、线上分析处理技术、数据挖掘和数据展现技术进行数据分析以实现商业价值。

TensorFlow技术

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

数据管理技术

数据管理是利用计算机硬件和软件技术对数据进行有效的收集、存储、处理和应用的过程,其目的在于充分有效地发挥数据的作用。

数据库技术

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 所谓“数据库”系以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

神经网络技术

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

文本分析技术

文本分析是指对文本的表示及其特征项的选取;文本分析是文本挖掘、信息检索的一个基本问题,它把从文本中抽取出的特征词进行量化来表示文本信息。

查询技术

一般来说,查询是询问的一种形式。它在不同的学科里涵义有所不同。在信息检索领域,查询指的是数据库和信息系统对信息检索的精确要求

数据仓库技术

DataRobot机构

DataRobot 是一家位于美国波士顿的机器学习平台公司,其提供的机器学习平台可让任何水平的数据科学家「只需一点时间就能开发和部署准确的预测模型」。该公司于2017年3月完成了 C 轮融资,获得了由 New Enterprise Associates 领投的 5400 万美元资金。据 Crunchbase 统计,截至目前该公司已经完成了 5 轮融资,共获得了 1.11 亿美元投资。 DataRobot 由数据科学家 Jeremy Achin 和 Thomas DeGodoy 于 2012 年创立。据报道,DataRobot 平台上有数百个开源机器学习算法,能帮助数据科学家将原本需要数周乃至数月的开发过程大幅缩短。该公司的 COO Chris Devaney 介绍说:「数据科学家可以带着他们已有的模型,进入有很多开源模型的 DataRobot,看他们的模型的排名。因为只需要几分钟就能找到最佳的模型,你可以运行和重新运行这样的比较,从而每天或每周都能找到最准确的模型,这依赖于你自己的业务变化。」到目前为止,DataRobot 已经创造了超过 1.5 亿个预测模型,客户范围涵盖体育、银行、保险和医疗等领域。

http://datarobot.com/
相关技术
数据可视化技术

数据可视化被许多学科视为现代视觉传达的等价物。为了清晰有效地传递信息,数据可视化使用统计图形、图表、信息图和其他工具。数字数据可以使用点、线或条编码,以视觉传达定量消息。有效的可视化帮助用户对数据进行分析和推理。它使复杂的数据更容易理解和使用。用户可以根据特定的分析任务进行数据可视化,例如进行比较或理解因果关系,并且图形的设计原则(即,显示比较或显示因果关系)来进行可视化。表通常用于用户查找特定测量的地方,而各种类型的图表用于显示一个或多个变量的数据中的模式或关系。

推荐文章
暂无评论
暂无评论~