在当今数据驱动的世界中,每位研究人员和分析师都需要能够从原始数据中提取快速信息,并将其以可视化形式呈现。这正是微软全新 AI 工具 Data Formulator 能够助您一臂之力的地方。它通过将数据呈现为引人入胜的图表和图形,简化了数据可视化,尤其适合那些对数据操作和可视化工具不太了解的人。在本文中,我们将深入探讨微软的 Data Formulator 工具并学习如何使用它。
什么是Data Formulator?
Data Formulator 是由微软研究院开发的一款开源应用程序,它使用 LLM 作为一种手段来转换数据并促进更快的数据可视化。Data Formulator 与传统的基于聊天的 AI 工具的不同之处在于其混合交互。它拥有直观的用户界面,补充了自然语言输入和简单的拖放交互。
Source: Microsoft
该工具的核心设计旨在弥合可视化创意与实际创建之间的巨大差距。传统的工具要么迫使用户编写复杂的代码,要么从层出不穷的菜单选项中进行选择,以直观地呈现数据。相比之下,Data Formulator 提供与用户的即时交互,以表达可视化意图,而繁重的转换工作则由 AI 在后台完成。
Microsoft Data Formulator的主要功能
Data Formulator 的一些主要功能如下:
- 混合交互模型:它兼具两者的优势:通过直接操作(拖放)实现精确性,并通过自然语言对话提示实现灵活性。这可以帮助用户直接添加图表类型的可视化,然后通过文本阐明难以表达的需求。
- AI 驱动的数据转换:当用户请求数据集中不存在的字段时,AI 将创建新的计算字段。它还会聚合数据或应用筛选器以满足可视化规范。
- 多数据源支持:Data Formulator 支持多种数据源,例如 CSV 文件、数据库(MySQL、DuckDB)以及 Azure Data Explorer 等云服务。外部数据加载器可以轻松集成,即使是昂贵的企业数据源也是如此。
- 大型数据集处理:自 0.2 版以来,Data Formulator 通过将数据上传到本地 DuckDB 来高效处理大型数据集。然后,它会开始获取可视化所需的数据,从而大大缩短等待时间。
- 数据线程和锚定:该工具将所有可视化尝试记录在“数据线程”下,允许用户在探索过程中回溯其路径。它可以将中间数据集保存为锚点,以便进一步进行分析,从而消除不必要的混乱并提高效率。
Data Formulator的架构
Data Formulator 的模块化架构通过以下几个层级提供灵活性和可扩展性:
- 前端层:前端采用 TypeScript 和 React 等现代 Web 技术构建,允许用户上传或预览数据集。它允许用户通过拖放操作添加可视化编码、输入自然语言提示以及查看生成的可视化效果和代码。
- 后端处理引擎:后端系统的这个基于 Python 的部分负责加载和预处理数据,并与各种 LLM 提供程序进行通信。然后,它会相应地生成用于转换数据的代码,并通过 Altair/Vega-Lite 库渲染可视化效果。
- AI 集成层:该框架的这一层负责 LLM 提示工程、响应处理、代码验证和执行。它还负责处理错误和调试协助,以及迭代对话的上下文管理。
- 数据管理层:它负责将工具连接到多个数据源并在本地数据库 (DuckDB) 上进行操作。它允许缓存并最终优化数据和外部数据加载器的实现。
Source: Microsoft
Data Formulator如何运作?
Data Formulator 将用户交互与 AI 驱动的数据处理功能相结合,具体流程如下:
步骤 1:意图规范
用户选择图表类型,并将数据字段拖放到可视化属性(X 轴、Y 轴、颜色、大小等)中。如果原始数据集中不存在引用字段,则这些字段将被视为需要进行数据转换的提示。
步骤 2:AI解释
系统会遵循用户对可视化编码的规范以及任何自由文本的自然语言提示。它会尝试通过分析数据类型和字段之间的关系来准确理解用户想要可视化的内容。
步骤 3:代码生成
解释完成后,Data Formulator 会生成所需的数据转换代码。在大多数情况下,它会使用 Python 语言和 Pandas 或 Polars 来构建必要的派生字段、聚合和过滤操作。
步骤 4:执行和验证
生成的代码随后将使用数据集执行,并利用内置的错误处理功能查找和修复常见错误。如果无法执行,AI 会返回并迭代地重新编写代码。
步骤 5:可视化创建
数据正确转换后,系统会生成可视化规范,并据此生成最终图表。
步骤 6:迭代优化
用户可以提供反馈、提出后续问题或迭代地更改编码,从而随着时间的推移不断优化可视化,从而创建自然的迭代工作流程。
Source: Microsoft
Data Formulator入门
开始使用 Data Formulator 有三种方法。
方法 1:通过Python安装
开始使用 Data Formulator 最简单的方法之一是通过 PIP 安装。具体方法如下:
- 在虚拟环境中安装 Data Formulator。
pip install data_formulator
- 您可以使用以下任意命令启动该应用程序:
data_formulator
或者
python -m data_formulator
- 如果需要,您还可以指定自定义端口。
python -m data_formulator --port 8080
方法 2:通过GitHub Codespaces
Data Formulator 工具可以在 GitHub Codespaces 中完全零设置环境下运行:
- 访问 Data Formulator GitHub 代码库。
- 点击“Open in GitHub Codespaces”。
- 等待环境初始化(约 5 分钟)。
- 您可以立即开始使用 Data Formulator。
方法 3:通过开发者模式
对于希望掌控整个开发环境的用户,可以按照以下步骤操作:
- 创建代码库的 git 克隆:https://github.com/microsoft/data-formulator。
- 按照 DEVELOPMENT.md 中的说明进行完整设置。
- 设置您喜欢的开发环境。
- 通过选择输入您首选 LLM 的 API 密钥的策略来配置 AI 模型。
- 以 CSV 文件的形式上传数据,或将其连接到数据源。
- 开始从用户界面进行可视化。
Data Formulator的实际应用
现在,让我们尝试使用数据公式器 (Data Formulator) 构建一个销售绩效仪表板。为此,我们将使用 GitHub CodeSpaces 启动一个专用的开发环境。
步骤 1:打开 GitHub CodeSpaces,然后点击 GitHub 代码库上的绿色按钮,这将为您创建一个单独的工作区。
步骤 2:初始化 CodeSpace,通常需要 2-5 分钟。Github CodeSpace 创建完成后,它将如下所示:
步骤 3:在 Codespace 的终端中,运行以下命令:
python3 -m data_formulator
这将显示如下输出:
Starting server on port 3000 ... Open http://localhost:3000
步骤 4:在 CodeSpaces 工具栏中,点击“Port”。这将在单独的浏览器窗口中打开您的界面。
步骤 5:在这里,您可以选择您喜欢的密钥类型、模型名称,并设置用于创建仪表板的密钥。
步骤 6:上传数据集。在我们的示例中,我上传的是 supermarket_sales.csv 数据进行分析。
步骤 7:对于基本可视化,您可以从所有选项中选择条形图,然后指定 x 轴和 y 轴的值。为了便于分析,我将分店指定为 x 轴,将总计指定为 y 轴。以下是数据公式器为我创建的图表。
步骤 8:对于其他 AI 计算,您可以选择 x 轴和 y 轴上的其他字段。然后添加提示并计算公式。例如,我将在提示框中输入“Sum the total sales for each city(汇总每个城市的总销售额)”,然后点击“Formulate”。
步骤 9:您可以使用自定义仪表板创建各种其他类型的图表和可视化效果,并对数据进行出色的分析。
Data Formulator的用例
微软的 Data Formulator 在各个领域都拥有极高的实用性,因为它支持 AI 驱动的探索和可视化。其一些最突出的用例包括:
- 商业智能和报告:Data Formulator 凭借其强大的执行仪表板和运营报告脱颖而出。业务分析师无需任何技术专业知识,即可立即将销售数据、财务指标或运营 KPI 转换为可视化和展示形式。
- 学术研究和分析:在研究领域,Data Formulator 可协助研究复杂的数据集并生成可用于发布的可视化效果。由于其迭代特性,该工具支持学术研究中常见的探索性数据分析工作流程。
- 营销分析:借助 Data Formulator,营销专业人员可以分析营销活动的效果、客户细分和转化漏斗。计算字段使指标计算变得简单。例如,无需任何复杂的公式即可计算客户生命周期价值、留存率和营销活动投资回报率。
- 财务分析:财务分析师可以构建复杂的模型,用于风险衡量、投资组合分析和绩效跟踪。它可以处理大型数据集并连接到实时数据。因此,它可以用于分析市场数据、交易模式和财务预测。
Data Formulator的优势
Data Formulator 致力于最大限度地提高数据的可访问性、速度和智能数据处理能力。
- 数据分析的大众化:Data Formulator 最大的优势在于它让非技术用户也能真正使用高级数据可视化。它无需编程技能即可直接分析数据,无需借助技术资源。
- 快速原型设计和迭代:对话式界面让用户可以快速考虑各种可视化方法。用户可以简要分析想法,对图表进行最后的润色,并查看其他数据查看方式。该工具显著缩短了从问题到洞察所需的时间。
- 智能数据转换:普通工具需要用户自行准备数据,而 Data Formulator 可以处理复杂的转换和聚合操作。它会自动根据用户的指令进行计算,从而节省原本用于手动数据整理的时间。
- 透明性和可解释性:该系统为所有转换操作生成易于理解的代码。它使用户能够更轻松地安全地确定可视化的逻辑,从而建立信任并进行学习。
- 经济高效的解决方案:作为一款开源工具,Data Formulator 提供企业级功能,且无需任何许可成本。组织还可以内部部署该工具,从而完全控制数据和任何自定义设置。
Data Formulator的局限性
尽管 Data Formulator 正在克服一些重大挑战,但它也存在一些局限性,例如:
- AI 模型依赖性:Data Formulator 的效率取决于 AI 模型的特定能力。复杂的分析任务可能需要昂贵的高端模型,甚至可能需要最优秀的模型。
- 可视化类型有限:它支持标准图表类型和专用可视化,例如网络分析、地理空间映射和其他统计绘图。
- 在大型数据集上的可操作性:虽然它在大型数据集上表现更佳,但使用 DuckDB 的实现在处理超大型数据集时仍然面临瓶颈。在数据加载的早期阶段,这些数据集通常以 TB 为单位。
- 自然语言的歧义性:复杂的分析请求可能会被 AI 错误地解释,从而导致错误的转换。用户应该给出清晰、准确的提示,这对于缺乏技术技能的用户来说通常是一项艰巨的任务。
- 隐私和安全注意事项:云端 AI 模型可能存在将敏感数据传输至外部服务的风险。具有严格数据治理政策的组织可能更倾向于部署本地模型或采取必要的安全措施。
小结
微软通过 Data Formulator 工具,在提升数据分析和数据可视化的可访问性方面树立了里程碑。通过将人工智能与直观的用户界面相结合,该研究团队开发出一款能够弥合数据复杂性与分析洞察之间差距的工具。通过代码生成自动完成复杂的数据转换,该工具能够满足所有用户的需求。
Data Formulator 为希望自行进行数据分析和可视化的组织提供了一个极具吸引力且经济高效的解决方案。随着人工智能的发展,像 Data Formulator 这样的工具将进一步缩短从提出数据问题到获得答案的时间。
评论留言