使用 AI 进行试运行:利用 MindsDB 使机器学习大众化
机器学习已成为数据管理战略的一个重要组成部分,尤其是在物联网设备数据大量涌入的今天,但筛选所有这些信息是很有挑战性的。另一个挑战是缺乏可用的机器学习 (ML) 专家。但有一些企业正在致力于使复杂的机器学习模型大众化,让任何人都可以更轻松、更高效地部署它们。
机器学习解决方案提供商 MindsDB 就是其中之一,其业务拓展副总裁 Erik Bovee 希望鼓励机器学习社区的新成员自信起步。他与我们探讨了机器学习采用过程中的挑战、学习信任模型,以及将机器学习引入数据而不是反过来。
目前的机器学习采用情况如何?
数据的数量和复杂性增长得非常迅速,超过了人类分析的速度。机器学习很难,所以难以找到合适的人来做这项工作。但就市场状况而言,有几个有趣的角度。首先,技术本身的状况令人惊叹,仅在过去五到十年就取得了非常惊人的进步,而且尖端的机器学习模型可以解决非常困难的现实问题。看看 OpenAI 利用其可以生成类人文本的 GPT-3 大型语言模型所做的工作。还有 Midjourney,基于几个关键字就可以生成非常复杂、非凡的画作。
不过,从实施的角度来看,我认为市场尚未从这一切中广泛受益。即使是自动驾驶,也差不多仍处于试验阶段。让这些能力适应消费科技是一个过程,在这个过程中需要解决各种各样的问题。其中一个是信任问题。不仅仅像是“我能安全地乘坐这辆自动驾驶汽车吗?”还有“我如何相信这个模型是准确的?我能把我企业的命运放在这个预测模型上吗?”所以我认为这些要素能让人们更广泛地实施机器学习。
但是有几个领域的商业推广速度非常快,我认为它们是市场走向的好风向标。金融服务是一个很好的例子 – 大银行、投资公司、对冲基金。预测和算法交易等业务优势对于他们的利润率非常重要,而且他们有足够的预算并使用传统方法来征求好的量化策略。但很多情况是朝问题砸钱,并在内部解决这些 MLOps 问题,这不一定适用于更广泛的市场。
我还看到在工业用例方面有许多进展,特别是在制造业。例如,获取大量高速传感器数据并进行预测性维护之类的工作:以后会发生什么?这台服务器什么时候会过热?我认为这些领域、市场参与者,显然正迅速成长。
大众化 AI 如何给予企业利益相关者更多信心?
很多是从数据开始 – 真正理解数据,确保没有偏差。在过去几年,可解释的 AI 已成为一个有趣的主题。让业务决策者参与进来并准确理解模型运作方式的最有力的方法之一是提供反事实解释,即,以微妙的方式更改数据以获得不同的决策。这会告诉你是什么真正触发了对模型的决策或预测,以及哪些列或特征真正重要。
除了技能组合,还有哪些机器学习挑战?
我认为技能组合是随着时间的推移而减少的挑战。经常具有挑战性的是一些简单的工作,即短期内实施方面的一些简单操作事项。数据科学家工具集通常基于 Python,而有证据表明,该语言不太适合数据转换。经常会有这种由数据科学家编写的定制 Python 代码,但如果数据库表发生变化,会出现什么情况?全部依赖一名工程师随着时间的推移来更新所有内容。那么,如何做到高效且可重复,并且能够预测随时间累积的成本和开销?这是我们正在努力解决的问题。
我们的方法背后的理论之一是让机器学习更接近数据,并使用非常适合数据转换和操作数据的 SQL 等现有工具。为什么不找到一种通过数据库连接直接应用机器学习的方法呢?这样就可以使用现有工具,而不必构建任何新的基础设施了。我认为这是一大痛点。
这对数据科学家有什么好处?
我们的目标之一是为数据科学家提供更广泛的工具集,为他们节省大量清理和操作任务的时间,让他们真正专注于核心的机器学习。数据库中已经有数据,同样,为什么不将机器学习模型带入数据库呢?而且我们也没有消耗数据库资源;只需将 MindsDB 连接到数据库。我们从数据库中读取数据,然后将机器学习预测以表的形式传回数据库,你可以像读取任何其他表一样读取这些表。不需要构建特殊的 Python 应用程序或连接到其他服务;简单明了。这样可以大大减少定制开发,从长远来看非常容易维护,而且可以使用现有工具。
这与传统的机器学习模型部署方法相比如何?
传统上,使用 TensorFlow 或 PyTorch 之类的现有框架编写模型,通常是用 Python 编写。还需要将它托管在某个地方。然后,你想要应用的数据可能是在数据湖、Snowflake 或 MongoDB 中。你需要编写流水线来提取数据并进行转换。你经常需要进行一些清理工作,然后进行数据转换和编码。模型会输出一些预测,然后你可能需要将这些预测传回到其他数据库,或提供给正在做出决策的应用程序。这就是过去的做法。
另一方面,MindsDB 有两个组成部分。一个是适应不同问题集的机器学习模型的核心套件。MindsDB 可以查看你的数据并决定哪个模型最适用,然后选择该模型。这个部分的另一种可能性是你可以引入自己的模型。如果你有特别喜欢的东西,可以使用声明性框架将其添加到 MindsDB 机器学习内核中。
MindsDB 的另一个部分是数据库连接器,这是围绕这些机器学习模型构建的包装器,提供与任何数据源的连接。数据源可以是流媒体代理,可以是数据湖,也可以是基于 SQL 的数据库,MindsDB 将连接到其中的数据库。然后,可以使用本机查询语言告诉 MindsDB,“读取这些数据,并根据这个视图或这些表或这个数据分类训练一个预测器。”
使用 MindsDB 的好处是什么?
我认为必须明确一点:这项工作不会取代任何人。对于内部机器学习工程师或数据科学家来说,MindsDB 只是节省了大量数据整理、清理、转换和编码工作。这样他们可以真正专注于核心模型,选择他们希望用于训练的数据,然后构建最好的模型。所以一切都是为了节省数据科学家的时间。
从长远来看,如果直接连接到数据库,就不必维护大量机器学习基础设施。如果数据库表发生变化,只需更改一点 SQL 即可。你可以设置自己的重新训练模式。这都会为数据科学家节省大量时间,并为他们提供更丰富的工具集。这就是我们的目标。
您能提供一些使用案例吗?
我们非常专注于商业预测,通常针对的是时间序列数据。假设你有一家连锁店,其中有数千个 SKU – 数千个产品 ID 遍布在数百家零售商店中。也许某个 SKU 在威奇托很畅销,但在底特律却滞销。你怎么预测这种情况?这是一个难以解决的问题,但也往往是商业预测中一种非常常见的数据集类型。
一个非常典型的使用案例是一家大型云服务提供商,我们为其进行客户转化预测。它有一个慷慨的免费试用层级,我们可以非常准确地判断出谁可能转化到付费层级以及何时转化。我们还与一家大型基础设施公司合作进行网络规划和容量规划。我们可以相当准确地预测网络流量的去向、不同地方的网络流量大小,以及该公司需要在何处增加基础设施。
我们最有乐趣的项目之一,也是让我非常用心的一个,是与一家大型电子竞技特许经营公司合作,为辅导专业视频游戏团队构建预测工具。例如,预测其他团队将为内部对抗和内部训练做什么。或者在《英雄联盟》或《刀塔 2》等 MOBA 游戏中,特定情况下的最佳策略是什么?这种案例现在还比较罕见,但我保证将来会越来越多。
企业使用机器学习的最佳起点是哪里?
超级简单:Cloud.mindsdb.com。我们有一个免费试用层级,而且设置非常容易。无论你的数据在何处,都可以简单地接入 MindsDB,并开始运行一些预测 – 进行一些测试,看看它是如何运作的。你可以立即将其用于试运行。另外一点是加入我们的社区。在 MindsDB.com,我们提供了我们社区的 Slack 和 GitHub 链接,这个社区非常活跃,你可以在那里找到支持和提示。
您与英特尔® 的合作如何,这种合作关系的价值是什么?
英特尔在许多方面都给予了极大支持。显然,它有一个出色的硬件平台,而且我们实现了他们的 OpenVINO™ 框架。通过这种方式,我们取得了巨大的性能提升。最重要的是,英特尔提供了大量技术和进入市场的机会。
最后还有什么想法或重要信息与我们分享吗?
去试一下吧。MindsDB 真的非常好玩 – 这也是我参与其中的原因。如果你将其用于试运行,请在社区的 Slack 上提供反馈。我们一直在寻找产品改进和愿意加入社区的人。
相关内容
要了解有关大众化 AI 的更多信息,请收听播客简化机器学习:使用 MindsDB。有关 MindsDB 的最新创新,请在 Twitter 和 LinkedIn 上关注 @MindsDB。