为成功推出人工智能(AI)项目,许多公司正在转向采用外部数据集。当今时代,寻找数据集比以往任何时候都要容易,数据集对机器学习模型的性能也日益重要。有许多站点都托管数据存储库,涵盖主题广泛,从稀有青蛙的图像到笔迹样本,应有尽有。无论您的机器学习(ML)项目是什么,您都可以找到相关的数据集作为起点。 在本文中,我们收集了现有的40多个高质量ML数据存储库和数据集的链接。为了便于使用,我们已按照项目类型和行业对它们进行分类。值得注意的是,虽然这些数据集通常是很好的起点,但您的用例可能需要在现成可能的基础上进行额外标注。
我需要怎样的数据?
在开始搜索正确的数据集之前,先回答几个关键问题大有裨益:
- 我想用AI项目达成什么目标?
- 我是否有足够的内部数据可以用于此项目?
- 我希望拥有哪些数据?
- 我需要数据涵盖哪些用例?
- 我需要数据涵盖哪些边缘用例?
这些初步问题只是帮助您更清楚地了解您所需数据的特定类型。如果您要处理受保护类别(即具有特定种族、性别、性取向或其他因素的群体),则需付出更多努力确保您的数据集能够恰当地代表这些群体。任何情况下,在搜索数据时都要目标明确;机器学习项目很容易因为使用低质量的数据而偏离正轨。
为什么选择现成数据集?
您的团队可能最终决定使用现成数据集训练您的模型。这样的选择在AI领域越来越普遍,原因只有一个:构建AI非常困难。大多数AI项目由于种种因素无法实现部署,其中包括:
- 预算低。投资AI项目通常需要大量资金。
- 缺少人才。技能差距不仅存在于技术领域,AI和ML领域尤是如此。业界缺乏高技能人才,现有的AI计划况且无法启动,未来的计划更是遥遥无期。随着行业的发展,这种差距可能会越来越大。
- 尚处于AI发展早期。企业必须建立适当的组织机构方可构建AI。这意味着他们需要适当的内部流程、战略与合作,才有可能成功构建AI。
- 数据质量低或数据不足。事实证明,最后一个因素是构建AI的最大障碍。ML模型通常需要大量数据才能准确执行。用例不同,获取数据就会面临不同的挑战。此外,将低质量的数据转换为高质量的标注数据可能既耗时,又低效。
对于许多企业而言,也很难部署数据标注,因此他们转而求助于第三方也就不足为奇了。为了解决数据瓶颈问题,企业纷纷设法购买或利用免费的现成数据集。事实证明,这些数据集是构建ML模型的良好起点,或者在某些情况下,它们足以充分覆盖所有用例。我们来谈谈现成数据集的优点:
- 合规性。客户和监管当局对数据安全的要求越来越高,这就使企业使用内部数据越来越难。一些企业在工作中自然可以访问大量数据,但这并不意味着他们能将这些数据用于ML模型,尤其是这样做可能会侵犯客户隐私。
- 减少偏见。随着企业认识到减少模型偏见的重要性,构建负责任的AI成为前所未有的热点话题。企业依赖内部数据时,很难发现和减少偏见。但使用现成数据集,您就可以研究数据来源,了解数据在创建时是否已纳入偏见检查。受信任的数据提供商将能提供多样化、高质量的数据集。
- 加快进入市场。收集和准备数据非常耗时,在项目工作中,数据科学家的大部分时间都投入其中。利用现成数据集,大部分工作已经完成(尽管显然您需要自己检查数据集的质量)。在一个速度至关重要的行业,这样做将能加快进入市场。
- 具成本效益。聚合、审查和准备内部数据的过程可能代价高昂。许多现成的在线数据集可免费或低价获得。如果您的AI预算不是很高,利用现成数据集可能是正确的选择。
现成数据集的种种优点能帮助解决AI开发中的许多常见问题。在ML模型实现中,使用现成数据集无疑是可以考虑的一项有益策略。
查找数据集的最佳起点
互联网上到处都是高质量的现成数据集。下面列出的是在线搜索和发现数据集的许多最佳位置,前后没有特定顺序。我们从数据存储库开始,然后列出特定用例的最佳数据集。
数据存储库
数据存储库收集来自整个网络的数据集。
Kaggle
Kaggle是规模最大的在线数据集存储库之一,涵盖体育、医学和政府等一系列主题。它的平台由社区主导,这意味着用户可以上传自己的数据集。鉴于Kaggle的数据来源多种多样,彻底检查您取自其中的数据集的质量非常重要。此外,Kaggle还提供关于机器学习主题的讨论以及关于关键流程的教程。
Google数据集
Google提供一个数据集搜索引擎,您可以在其中按名称搜索数据集。该引擎允许您按多种功能对数据集进行排序,例如文件类型、主题、最新更新和相关性。它还可以从互联网上的数千个数据库中获取数据集,因此您可以真正地通过广泛的选项进行搜索。数据集的上传者包括众多国际组织,如哈佛大学和世界卫生组织。
Papers with Code
Papers with Code现有超过四千个数据集(还在不断增加)。这些数据集由社区上传。您可以按模态、任务和语言轻松地筛选这些数据集。数据库中还包含指向其他数据库的链接,后者也提供多种数据集。
DataFlair
DataFlair链接到70多个机器学习数据集,还包括源代码和项目思路等有用信息。例如,在包含手写数字的数据集列表中,DataFlair建议创建图像分类算法来识别纸张中的手写数字。利用该网站可以启发新思路。
EliteDataScience
EliteDataScience包括免费数据集和最热门的聚合器的精选列表。这些数据集按用例组织,其中包括可用于深度学习、自然语言处理、网络抓取等的数据集。
UCI机器学习库
UCI拥有500多个机器学习数据集,可按文件类型、任务、应用领域和主题进行排序。其中许多数据集都包含可用于基准测试的学术论文链接。
Github出色的公开数据集
Github提供公共数据集的开源集合。您可以在其中查看目录,选择一个主题,主题涵盖农业、交通等领域。Github还包括一般机器学习模型的集合。大多数链接的数据集都是免费的。
Azure公共数据集
Microsoft Azure拥有一个公共数据集数据库,开发人员可将其用于原型设计和测试。数据库类别包括美国政府和机构数据、其他统计和科学数据以及在线服务数据。此外,您还可以在其中阅读有关SQL以及如何构建移动和Web应用程序的文档。
Snowflake数据集市
Snowflake包括超过175家第三方数据提供商和数据服务提供商的650多个实时和随时可查询的数据集,为数据科学家、商业智能和分析专业人士以及所有希望数据驱动决策的人士提供了便利。
AWS上的开放数据注册
AWS有一个注册表,其中包含可通过AWS资源获得的数据集。用户可以分享自己的数据集或添加如何使用特定数据集的示例。注册表中有超过280个可搜索的数据集。
KDNuggets
KDNuggets具有全面的数据存储库列表,其中包括各种各样的数据集。列表中包括超过75个数据存储库,其中一些是国际数据存储库。
澳鹏
澳鹏提供各种现成训练数据集。我们的目录包括80多种语言的250多个可授权数据集,涵盖多种方言。这些数据集包括许多机器学习用例,如语音识别和自然语言处理等,涵盖一系列文件类型(文本、图像、视频、语音和音频)。例如:
- 用于广播、呼叫中心、车载和电话应用程序的完全转录语音数据集;
- 发音词典,包括通用词汇和特定领域的词汇(例如名称、地点、自然数);
- 带有词性标记的词典和词库;
- 带有词法信息和名称实体符号的文本语料库。
我们只提供最高质量的数据集为您的AI需求提供支持。
计算机视觉数据集
这些数据库和数据集包括为您的计算机视觉项目服务的图像数据。
ImageNet
ImageNet是根据WordNet层次结构组织的一组名词,其中每个节点都有数千个相关联的图像。该存储库中的数据供研究人员免费使用。
MNIST数据库
MNIST以手写数字图像为特色。其中包括60,000个示例的训练集和10,000个示例的测试集。
IMDB-Wiki数据集
IMDB-Wiki数据集提供最大的人脸图像集合,拥有超过500,000张图像。许多图像来自名人和维基百科。每张图像都附有性别和年龄标签。
LabelMe数据集
LabelMe Dataset使用LabelMe标注工具构建。该工具使用户能够勾勒出对象的轮廓,并为对象添加标签。这个数据集可用于图像识别项目。
MS COCO数据集
MS COCO全称为“Microsoft Common Objects in Context Dataset”,即Microsoft上下文中的常见对象数据集,为解决“上下文中的常见对象”问题而发布。它包含超过120,000张图像,每张图像都有多个与目标检测、分割等图像标注技术相关的标签。数据集中的图像分为91个类别。
Chars74K
Chars74K,顾名思义,它包括74,000张图像。数据包括自然图像中的字符识别(例如,餐厅标志的图像)。
Kinetics-700
Kinetics-700包含一系列主要标注为人类行为的YouTube视频链接。其中有超过65万个视频片段,涵盖700种人类行为。
Places2 Database
Places2 Database是麻省理工学院发布的数据集,包含超过1,000万张图像,涵盖400多个场景。它对场景分类和场景解析等项目很有帮助。
Open Images
Open Images数据集是具有对象位置标注功能的最大数据集之一。它拥有超过900万张图像,每张图像都带有对象边界框、分割和其他标注。总共有1600万个边界框,涵盖600个类别。
MPII人体姿态数据集
MPII人体姿态数据集包括约25,000张涉及410个人体姿态的图像。图像中包含大约40,000个不同的人,每张图像都标注了人体关节。这些图像收集自YouTube视频。
自然语言处理数据集
以下数据集具有跨文本和音频的自然语言示例,可用于您的自然语言处理项目。这些示例包括情感分析、语音识别、转录等等。
Google Blogger Corpus
Google Blogger Corpus包括来自blogger.com的近700,000篇博客文章。每一篇文章至少有200个英语单词。总体而言,这些博客文章包含许多常见的英语单词。
Yelp Reviews
Yelp Reviews数据集涵盖餐厅的排名和评论,包含与此主题相关的丰富信息。该数据集中的评论可用于情感分析项目。
WikiQA语料库
WikiQA语料库是一个问答数据集,由Bing搜索数据编译而成。它包括3,000多个问题,提供29,000个回答句,其中1,500个标注为回答句。
M-AI Labs语音数据集
M-AI Labs语音数据集包括近1,000小时的音频与转录。包括使用多种语言的男性和女性语音。
LibriSpeech
LibriSpeech包括大约1000小时的语音数据,这些数据已经被分段和对齐。这些数据编译自LibriVox项目的有声读物。
WordNet
WordNet是一个按词义分组的英语单词数据库。共有117,000个同义词集(根据同义词配对的单词),然后链接到相关的同义词集。您在下一个文本分类项目就可以使用它。
OpinRank数据集
OpinRank数据集包含来自Edmunds和TripAdvisor的300,000条评论。它们根据旅游目的地、酒店和其他相关因素分类。
多域情感数据集
多域情感数据集包括Amazon.com四个领域的产品评论:DVD、书籍、厨房和电子产品。每个领域都有几千条评论,附有1-5星评级。顾名思义,这个数据集对情感分析项目很有用。
Twitter情感分析
Twitter情感分析数据集包括超过150万条分类推文。数据集的每一行都有一个排名:1表示正面情绪,0表示负面情绪。
20 Newsgroups
20 Newsgroups包含20,000个文档,顾名思义,它来自20多个不同的新闻组。它包含的主题很多,其中一些主题相对相似。该数据集包括三个版本:一个是初始版本,一个是删除日期的版本,还有一个是删除重复的版本。
按行业划分的数据集
值得一提的是,有几种宝贵的资源可用于获取特定行业的数据。
美国政府数据门户
美国政府数据门户包括美国承诺提供的所有政府数据。通过访问门户,您可以搜索超过300,000多个数据集(例如,学生贷款数据和医疗机构收费数据)。行业:政府
欧盟开放数据门户
欧盟开放数据门户提供一种搜索欧盟机构数据的方法,如人口数据、教育数据等。行业:政府
世界卫生组织
世界卫生组织提供涵盖世界饥饿、医疗保健和疾病等重要主题的数据。行业:医疗
博德研究所
博德研究所提供许多涉及癌症的数据集,涵盖从排序到分类等相关主题。行业:医疗
Google金融
Google金融包括超过40年的股票市场数据,并连续实时更新。行业:金融
Berkeley DeepDrive
Berkeley DeepDrive由加州大学伯克利分校创建,包括超过100,000个不同地理分布、环境和天气情况的视频剪辑。这些剪辑使用边界框进行标注,以检测对象、车道标线和各种形式的分割。该数据集可以用来帮助训练自动驾驶汽车。行业:汽车业
Level5
Level5由拼车公司Lyft创建。该数据集包括原始传感器摄像头和激光雷达数据,由众多自动驾驶汽车在特定的地理区域捕获。该数据集使用特定目标对象的三维边界框进行标注。行业:汽车业
USDA开放数据目录
USDA开放数据目录包括美国农业部捕获的数据。主题涵盖从美国农业的测量生产率到食源性疾病的成本估算等领域。行业:农业
Fashion-MNIST
Fashion-MNIST包括时装业产品的近60,000张图像和10,000张测试图像,分为10个类别。这些数据对产品分类项目很有用。行业:零售
电子商务搜索相关性
电子商务搜索相关性数据集包括各种产品的功能链接、这些产品在页面上的排名,提供结果的搜索查询以及其他相关属性。其中的数据来自5大英语电子商务网站。行业:零售 要查找此处未提及的行业数据集,只需使用适当的行业标签搜索上述数据存储库即可。
首席数据科学家Monchu Chen的专家见解
数据库选择考虑事项
在开始一个新项目时,最好不要立即急于获取任何现有数据集。后退一步,仔细考虑您的应用程序或服务需要满足的用户需求。有时,相同的产品设计可以通过不同的AI驱动功能来实现。您确定的潜在解决方案可以依赖于在截然不同的ML模型中进行选择,这些模型的开发和构建的价位以及训练数据的方法可能各不相同。在您准备好继续推进时,还有一些技巧可以帮助您选择现有的公开数据集,以便在您无法获得自行采集数据的专门预算时也能启动模型开发。
选择数据集的子集
在选择数据集时,不要被整个数据集的复杂性所吓倒。有时,您可以提取整体数据集的一个子集,这可能正是您的ML项目所需要的。
组合使用多个数据集
有时,您选择的数据集可能与开发模型所需的数据不完全匹配。您可以考虑组合使用多个数据集(或子集),以构建一个与您要处理用例的总数量更为相似的训练集。
现有的API
许多数据集都带有API或库,以方便数据访问和转换。这可以在初期为您节约宝贵的时间。
现有的示例项目
您还可以设法寻找从事过使用流行数据集的项目的人员,他们通过Github等存储库将其工作公开。在进行数据选择时,使用他们的源代码、模型甚至预训练模型作为基础或仅作为参考。
许可证问题
就像软件一样,数据集也有不同类型的许可证。有些许可证可能需要您分享您在该特定数据集上的工作。还有的可能会将您的应用程序仅限于非商业用途。通常的策略是尽可能将代码与数据集分开。确保安全的最佳方法是,在选择用于应用程序的数据集前寻求法律建议。
短期/长期考虑
在做短期决定时(例如选择您的第一个数据集),最好考虑它的长期影响。从全局来看,当您需要从公共域数据集过渡到自己策划的数据集时,您可能会发现,一开始的次优选择可能会为您节省大量时间、精力和预算。