文档
  • PyCaret 3.0
  • 开始
    • 💻安装
    • 🚀快速入门
    • ⭐教程
    • 📶模块
    • ⚙️数据预处理
      • 数据准备
      • 缩放和转换
      • 特征工程
      • 特征选择
      • 其他设置参数
    • 💡函数
      • 初始化
      • 训练
      • 优化
      • 分析
      • 部署
      • 其他
  • 学习 PYCARET
    • 📖博客
      • 宣布 PyCaret 1.0
      • 宣布 PyCaret 2.0
      • 关于 PyCaret 你不知道的 5 件事
      • 构建并部署你的第一个机器学习 Web 应用
      • 使用 PyCaret 在 Power BI 中构建你自己的 AutoML
      • 在 Google Kubernetes 上部署 ML Pipeline
      • 在 AWS Fargate 上部署 PyCaret 和 Streamlit
      • 使用 PyCaret 在 Power BI 中进行异常检测
      • 在 Google Kubernetes 上部署 ML 应用
      • 在 GKE 上部署机器学习 Pipeline
      • 在 AWS Fargate 上部署机器学习 Pipeline
      • 使用 Docker 在云上部署 ML Pipeline
      • 使用 PyCaret 在 Power BI 中进行聚类分析
      • 使用 ONNX Runtime 在边缘设备上部署 PyCaret 模型
      • GitHub 是你需要的最佳 AutoML
      • 在 AWS Fargate 上部署 PyCaret 和 Streamlit
      • 使用 PyCaret 和 MLflow 实现简单的 MLOps
      • 使用 PyCaret 在 Power BI 中进行聚类分析
      • 使用 PyCaret 在 Alteryx 中进行机器学习
      • 使用 PyCaret 在 KNIME 中进行机器学习
      • 使用 PyCaret 在 SQL 中进行机器学习 第 I 部分
      • 使用 PyCaret 在 Power BI 中进行机器学习
      • 使用 PyCaret 在 Tableau 中进行机器学习
      • 使用 PyCaret 进行多个时间序列预测
      • 使用 PyCaret 预测客户流失
      • 使用 PyCaret(正确方式)预测潜在客户评分
      • 使用 PyCaret 在 Python 中进行 NLP 文本分类
      • 使用 PyCaret(正确方式)预测潜在客户评分
      • 使用 PyCaret 预测金价暴跌
      • 使用机器学习预测金价
      • PyCaret 2.1 功能摘要
      • 使用 PyCaret 将 ML 模型部署到 SQL Server
      • 使用 PyCaret 和 Gradio 加速你的 ML
      • 时间序列 101 - 基础入门
      • 使用 PyCaret 进行时间序列异常检测
      • 使用 PyCaret 回归进行时间序列预测
      • 使用 PyCaret 在 Power BI 中进行主题建模
      • 使用 PyCaret 编写和训练自定义 ML 模型
      • 使用 PyCaret 和 Streamlit 构建并部署 ML 应用
      • PyCaret 2.3.6 来了!了解新功能?
    • 📺视频
    • 🛩️速查表
    • ❓常见问题
    • 👩‍💻示例
  • 重要链接
    • 🛠️发行说明
    • ⚙️API 参考
    • 🙋 讨论
    • 📤问题
    • 👮 许可
  • 媒体
    • 💻Slack
    • 📺YouTube
    • 🔗LinkedIn
    • 😾GitHub
    • 🔅Stack Overflow
由 GitBook 提供支持
本页内容
  • 使用 PyCaret 在 Power BI 中进行主题建模
  • 本教程的学习目标
  • 开始之前
  • 环境设置
  • 什么是自然语言处理?
  • 什么是主题建模?
  • 用于主题建模的文本预处理
  • 设置业务背景
  • 👉 让我们开始吧
  • 1. 获取数据
  • 2. 模型训练
  • 3. 仪表盘
  • 重要链接
  • 想了解特定模块吗?
  • 另请参阅
  • 您想贡献吗?

这有帮助吗?

  1. 学习 PYCARET
  2. 博客

使用 PyCaret 在 Power BI 中进行主题建模

上一个使用 PyCaret 回归进行时间序列预测下一个使用 PyCaret 编写和训练自定义 ML 模型

最后更新于 2 年前

这有帮助吗?

使用 PyCaret 在 Power BI 中进行主题建模

作者 Moez Ali

Power BI 中的 NLP 仪表盘

本教程的学习目标

  • 什么是自然语言处理?

  • 什么是主题建模?

  • 在 Power BI 中训练并实现潜在狄利克雷分布模型。

  • 分析结果并在仪表盘中可视化信息。

开始之前

环境设置

在我们开始在 Power BI 中使用 PyCaret 的机器学习功能之前,我们必须创建一个虚拟环境并安装 pycaret。这是一个四步过程。

从开始菜单打开 Anaconda Prompt 并执行以下代码。

conda create --name **powerbi **python=3.7

“powerbi” 是我们选择的环境名称。你可以随意命名。

在 Anaconda Prompt 中执行以下代码。

pip install **pycaret**

创建的虚拟环境必须与 Power BI 链接。这可以通过 Power BI Desktop 中的全局设置 (文件 → 选项 → 全局 → Python 脚本) 来完成。Anaconda 环境默认安装在以下路径:

C:\Users*username*\Anaconda3\envs\

为了执行 NLP 任务,你必须在 Anaconda Prompt 中执行以下代码来下载语言模型。

首先在 Anaconda Prompt 中激活你的 conda 环境。

conda activate **powerbi**

下载英语语言模型。

python -m spacy download en_core_web_sm
python -m textblob.download_corpora

什么是自然语言处理?

自然语言处理 (NLP) 是计算机科学和人工智能的一个子领域,它关注计算机与人类语言之间的交互。特别是,NLP 涵盖了如何编程计算机来处理和分析大量自然语言数据的广泛技术。

NLP 驱动的软件在我们的日常生活中以各种方式帮助我们,你很可能在不知不觉中一直在使用它。一些示例包括:

  • 个人助手:Siri、Cortana、Alexa。

  • 自动完成:在搜索引擎中(例如:Google、Bing、百度、Yahoo)。

  • 拼写检查:几乎无处不在,在你的浏览器、你的 IDE(例如:Visual Studio)、桌面应用(例如:Microsoft Word)中。

  • 机器翻译:Google Translate。

  • 文档摘要软件:Text compactor、Autosummarizer。

主题建模是一种统计模型,用于发现文本数据中的抽象主题。它是 NLP 中的众多实际应用之一。

什么是主题建模?

主题模型是一种属于无监督机器学习的统计模型,用于发现文本数据中的抽象主题。主题建模的目标是自动在一组文档中找到主题/议题。

主题建模的一些常见用例包括:

  • 摘要:通过将文档分类到主题来总结大量文本数据(其思想与聚类非常相似)。

  • 探索性数据分析:用于了解客户反馈表、亚马逊评论、调查结果等数据。

  • 特征工程:为监督机器学习实验(如分类或回归)创建特征。

有几种用于主题建模的算法。一些常见的算法包括潜在狄利克雷分布 (LDA)、潜在语义分析 (LSA) 和非负矩阵分解 (NMF)。每种算法都有其数学细节,本教程不会涵盖。我们将使用 PyCaret 的 NLP 模块在 Power BI 中实现潜在狄利克雷分布 (LDA) 模型。

用于主题建模的文本预处理

为了从主题建模中获得有意义的结果,文本数据在输入算法之前必须经过处理。这在几乎所有 NLP 任务中都很常见。文本预处理与机器学习中处理结构化数据(行和列中的数据)时常用的经典预处理技术不同。

设置业务背景

Kiva 是一家国际非营利组织,于 2005 年在旧金山成立。其使命是扩大对服务不足社区的金融服务,以帮助他们发展。

在本教程中,我们将使用来自 Kiva 的开放数据集,该数据集包含 6,818 名已批准贷款申请人的贷款信息。该数据集包括贷款金额、国家/地区、性别以及借款人提交的一些文本数据(即申请)。

我们的目标是分析“en”列中的文本数据,以找到抽象主题,然后使用这些主题评估特定主题(或特定类型的贷款)对违约率的影响。

👉 让我们开始吧

现在你已经设置了 Anaconda 环境,了解了主题建模,并掌握了本教程的业务背景,让我们开始吧。

1. 获取数据

第一步是将数据集导入 Power BI Desktop。你可以使用 Web 连接器加载数据。(Power BI Desktop → 获取数据 → 从 Web)。

2. 模型训练

为了在 Power BI 中训练主题模型,我们需要在 Power Query 编辑器中执行 Python 脚本(Power Query 编辑器 → 转换 → 运行 Python 脚本)。将以下代码作为 Python 脚本运行。

from **pycaret.nlp **import *
dataset = **get_topics**(dataset, text='en')

PyCaret 中有 5 个现成可用的主题模型。

默认情况下,PyCaret 会训练一个包含 4 个主题的 潜在狄利克雷分布 (LDA) 模型。默认值可以轻松更改。

  • 要更改模型类型,请使用 get_topics() 函数中的 model 参数。

  • 要更改主题数量,请使用 num_topics 参数。

查看包含 6 个主题的非负矩阵分解模型示例代码。

from **pycaret.nlp **import *
dataset = **get_topics**(dataset, text='en', model='nmf', num_topics=6)

输出

包含主题权重的列会附加到原始数据集。应用查询后,Power BI 中的最终输出如下所示。

3. 仪表盘

一旦你在 Power BI 中获得了主题权重,这里有一个如何在仪表盘中将其可视化以生成洞察的示例。

如果你想了解更多关于使用 PyCaret 在 Jupyter notebook 中实现主题建模的信息,请观看这个 2 分钟的视频教程。

重要链接

想了解特定模块吗?

从第一个版本 1.0.0 开始,PyCaret 提供了以下模块供使用。点击下方链接查看文档和 Python 工作示例。

另请参阅

PyCaret Notebook 入门教程

您想贡献吗?

在我们的中,我们演示了如何通过将 PyCaret 集成到 Power BI 中来实现聚类分析,从而使分析师和数据科学家能够在无需额外许可成本的情况下为其报告和仪表盘添加机器学习层。

在这篇文章中,我们将看到如何使用 PyCaret 在 Power BI 中实现主题建模。如果你之前没有听说过 PyCaret,请阅读这篇以了解更多信息。

如果你以前使用过 Python,你的计算机上很可能已经安装了 Anaconda Distribution。如果没有,下载 Python 3.7 或更高版本的 Anaconda Distribution。

https://anaconda.net.cn/products/individual

步骤 1 — 创建一个 anaconda 环境

步骤 2 — 安装 PyCaret

安装可能需要 15-20 分钟。如果你在安装过程中遇到问题,请参阅我们的页面,了解已知问题和解决方法。

步骤 3 — 在 Power BI 中设置 Python 目录

文件 → 选项 → 全局 → Python 脚本

步骤 4 — 安装语言模型

python -m spacy download en_core_web_sm
python -m textblob.download_corpora
来源:https://clevertap.com/blog/natural-language-processing

如果你对 LDA 算法的技术细节感兴趣,可以阅读.

来源:https://springerplus.springeropen.com/articles/10.1186/s40064-016-3252-8

PyCaret 通过应用超过 15 种技术自动预处理文本数据,例如停用词移除、分词、词形还原、二元/三元词提取等。如果你想了解 PyCaret 中所有可用的文本预处理功能,.

来源:https://www.kiva.org/about
样本数据点
Power BI Desktop → 获取数据 → 其他 → Web

csv 文件链接

Power Query 编辑器 (转换 → 运行 Python 脚本)
主题建模结果(执行 Python 代码后)
最终输出(点击表格后)
Power BI Desktop 中的结果(应用查询后)
仪表盘摘要页
仪表盘详细信息页

你可以从我们的.

如果你对学习更多关于主题建模的知识感兴趣,你还可以查看我们的 NLP 101基础入门教程。

关注我们的并订阅我们的频道,了解更多关于 PyCaret 的信息。

PyCaret 是一个开源项目。欢迎大家贡献。如果你想贡献,请随时参与。接受 dev-1.0.1 分支上带有单元测试的拉取请求 (Pull requests)。

请在我们的给我们 ⭐️。

Medium

LinkedIn

Twitter

📖
最新文章
公告
点击这里
✅
✅
GitHub
✅
✅
这篇论文
点击这里
https://raw.githubusercontent.com/pycaret/pycaret/master/datasets/kiva.csv
GitHub
Notebook 教程
LinkedIn
Youtube
用户指南 / 文档
GitHub 仓库
安装 PyCaret
Notebook 教程
为 PyCaret 做贡献
分类
回归
聚类
异常检测
自然语言处理
关联规则挖掘
聚类
异常检测
自然语言处理
关联规则挖掘
回归
分类
未解决的问题
GitHub 仓库
https://medium.com/@moez_62905/
https://www.linkedin.com/in/profile-moez/
https://twitter.com/moezpycaretorg1