第7章 基于TipDM大数据挖掘建模平台实现文本生成_第1页
第7章 基于TipDM大数据挖掘建模平台实现文本生成_第2页
第7章 基于TipDM大数据挖掘建模平台实现文本生成_第3页
第7章 基于TipDM大数据挖掘建模平台实现文本生成_第4页
第7章 基于TipDM大数据挖掘建模平台实现文本生成_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于TipDM大数据挖掘建模平台实现文本生成1实现文本生成目录平台简介2TipDM大数据挖掘建模平台是由广东泰迪智能科技股份有限公司自主研发的面向大数据挖掘项目的工具。该平台使用Java语言开发,采用浏览器/服务器(Browser/Server,B/S)结构,用户不需要下载客户端,可通过浏览器进行访问。该平台具有支持多种语言、操作简单、无须编程语言基础等特点,以流程化的方式对数据输入/输出、统计与分析、数据预处理、挖掘与建模等环节进行连接,从而达成大数据挖掘的目的。读者可通过访问该平台查看具体的界面情况,访问平台的具体步骤如下。微信搜索公众号“泰迪学社”或“TipDataMining”,并关注公众号。关注公众号后,回复“建模平台”,获取平台的访问方式。平台简介平台界面如右图所示。平台简介本章将以文本生成为例,介绍使用平台实现案例的流程。在介绍之前,需要引入平台的几个概念。组件:对建模过程涉及的输入与输出、数据探索、数据预处理、建模、模型评估等算法分别进行封装,每一个封装好的模块被称为组件。组件分为系统组件和个人组件。系统组件可供所有用户使用,个人组件由个人用户编辑,仅供个人账号使用。工程:为实现某一数据挖掘目标,将各组件通过流程化的方式进行连接,整个数据挖掘流程被称为工程。参数:每个组件都给用户提供了需设置的内容,这部分内容称为参数。共享库:用户可以将配置好的工程、数据集,分别公开到模型库、数据集库中作为模板,分享给其他用户,其他用户可以使用共享库中的模板,创建无须配置组件便可运行的工程。平台简介TipDM大数据挖掘建模平台主要有以下几个特点。平台组件基于Python、R以及Spark分布式引擎,进行数据分析。Python、R以及Spark是目前常见的用于数据分析的语言或工具,高度契合行业需求。用户可在没有Python、R或者Hadoop/Spark编程基础的情况下,使用直观的拖曳式图形界面构建数据分析流程,无须编程。提供公开可用的数据分析示例工程,一键创建、快速运行。支持挖掘流程每个节点的结果在线预览。平台包含Python、R、Spark这3种工具的组件包,用户可以根据实际需求,灵活选择不同的工具进行数据挖掘建模。平台简介登录平台后,用户即可看到“共享库”模块系统提供的示例工程(模板),如下图所示。共享库“共享库”模块主要用于标准大数据挖掘建模案例的快速创建和展示。通过“共享库”模块,用户可以创建无须导入数据及配置参数就能够快速运行的工程。用户也可以将自己搭建的工程生成为模板,公开到“共享库”模块,供其他用户一键创建实训。同时,每一个模板的创建者都具有模板的所有权,能够对模板进行管理共享库“

数据连接”模块支持从DB2、SQLServer、MySQL、Oracle、PostgreSQL等常用关系数据库导入数据。导入数据时的“新建连接”对话框如下图所示。在输入了连接名、连接地址、用户名、密码后单击测试连接,成功新建数据库连接。数据连接新建数据库连接后,“数据集”模块主要用于数据挖掘建模工程中数据的导入与管理,支持从本地导入任意类型的数据。导入数据时的“新增数据集”对话框如下图所示。数据连接“我的工程”模块主要用于数据挖掘建模流程化的创建与管理,工程示例流程如下图所示。我的工程通过单击“工程”栏下的

(新建工程)按钮,用户可以创建空白工程并通过“组件”栏下的组件进行工程的配置,将数据输入输出、数据预处理、挖掘建模、模型评估等环节通过流程化的方式进行连接,达到数据挖掘的目的。对于完成度优秀的工程,可以将其公开到“共享库”中,让其他使用者学习和借鉴。我的工程在“组件”栏下,平台提供了输入/输出组件、Python组件、R组件、Spark组件等相同组件,如下图所示。输入/输出组件提供工程输出与输出组件。包括对象存储输入源、输出源、hive输入源、输出到数据库、hdfs输入源、输入源、数据库输入源、http输入源等。我的工程Python算法包可分为13类,具体如下。“Python脚本”类提供一个Python代码编辑框。用户可以在代码编辑框中粘贴已经写好的程序代码并直接运行,无须额外配置算法。“预处理”类提供对数据进行清洗的组件,包括数据标准化、缺失值处理、表堆叠、数据筛选、行列转置、修改列名、衍生变量、数据拆分、主键合并、新增序列、数据排序、记录去重和分组聚合等。“统计分析”类提供对数据整体情况进行统计的常用组件,包括因子分析、全表统计、正态性检验、相关性分析、卡方检验、主成分分析和频数统计等。“时间序列”类提供常用的时间序列组件,包括ARIMA等。“分类”类提供常用的分类组件,包括朴素贝叶斯、支持向量机、CART分类树、逻辑回归、神经网络和K最近邻等。我的工程“模型评估”类提供用于模型评估的组件,包括模型评估。“模型预测”类提供用于模型预测的组件,包括模型预测“回归”类提供常用的回归算法,包括CART回归树、线性回归、支持向量回归和K最近邻回归等。“聚类”类提供聚类组件,包括层次聚类、DBSCAN密度聚类和K-Means等。“关联规则”类提供常用的关联规则算法,包括Apriori和FP-Growth等。“文本分析”类提供对文本数据进行清洗、特征提取与分析的常用算法,包括情感分析、文本过滤、文本分词、TF-IDF、Word2Vec等。“深度学习”类提供常用的深度学习组件,包括循环神经网络、卷积神经网络等。“绘图”类提供常用的画图组件,包括柱形图、折线图、散点图、饼图和词云图。我的工程R语言组件包含8类,具体如下。“R语言脚本”类提供一个R语言代码编辑框。用户可以在代码编辑框中粘贴已经写好的程序代码并直接运行,无须额外配置组件。“预处理”类提供对数据进行预处理的组件,包括缺失值处理、异常值处理、表连接、表合并、数据标准化、记录去重、数据离散化、排序、数据拆分、频数统计、新增序列、字符串拆分、字符串拼接、修改列名和衍生变量等。“统计分析”类提供对数据整体情况进行统计的常用组件,包括卡方检验、因子分析、主成分分析、相关性分析、正态性检验和全表统计等。“分类”类提供常用的分类组件,包括朴素贝叶斯、CART分类树、C4.5分类树、BP神经网络、KNN、SVM和逻辑回归等。“时间序列”类提供常用的时间序列组件,包括ARIMA和指数平滑等我的工程“聚类”类提供常用的聚类组件,包括K-Means、DBSCAN和系统聚类等。“回归”类提供常用的回归组件,包括CART回归树、C4.5回归树、线性回归、岭回归和KNN回归等。“关联分析”类提供常用的关联规则组件,包括Apriori等。我的工程Spark算法包可分为8类,具体如下。“预处理”类提供对数据进行清洗的组件,包括数据去重、数据过滤、数据映射、数据反映射、数据拆分、数据排序、缺失值处理、数据标准化、衍生变量、表连接、表堆叠和数据离散化等。“统计分析”类提供对数据整体情况进行统计分析的常用算法,包括行列统计、全表统计、相关性分析和重复值缺失值探索等。“分类”类提供常用的分类算法,包括逻辑回归、决策树、梯度提升树、朴素贝叶斯、随机森林、线性支持向量机和多层感知神经网络等。我的工程“聚类”类提供常用的聚类算法,包括K-Means聚类、二分K-Means聚类和混合高斯模型等。“回归”类提供常用的回归算法,包括线性回归、广义线性回归、决策树回归、梯度提升树回归、随机森林回归和保序回归等。“降维”类提供常用的数据降维组件,包括PCA降维。“协同过滤”类提供常用的智能推荐算法,包括ALS算法等。“频繁模式挖掘”类提供常用的频繁项集挖掘组件,包括FP-Growth。我的工程“个人组件”模块主要满足用户的个性化需求。在用户使用过程中,可根据自己的需求定制组件,方便使用。目前该模块支持通过Python和R语言进行个人组件的定制,单击

(添加组件)按钮,用户可控制个人组件,如下图所示。个人算法1实现文本生成目录平台简介2以文本生成案例为例,在TipDM数据挖掘建模平台上配置对应实训,展示流程的配置过程。详细流程的配置过程,可访问平台进行查看。在TipDM数据挖掘建模平台上配置文本生成实训的总体流程如图所示。实现文本生成在TipDM数据挖掘建模平台上配置文本生成实训,主要包括以下4个步骤。文本预处理,包括数据处理,字典创建以及序列生成。定义文本生成类的构造函数,权重初始化以及构造网络。设置配置项,执行训练并定义文本生成器用于生成文本。调用主函数生成文本,观察并分析生成的文本。实现文本生成本章所使用的数据为一份英文文本(txt文件)。使用TipDM数据挖掘建模平台导入数据,步骤如下。新增数据集。单击【实训数据】模块,选择【新增数据集】,如图所示。配置数据源设置新增数据集参数。在【封面图片】中随意选择一张封面图片。在【名称】中填入“文本数据集”。【有效期(天)】项选择【永久】。在【描述】中填入“文本生成”。【访问权限】项选择【私有】。单击【点击上传】选择需要上传的文件。等待显示成功后,单击【确定】按钮,即可上传数据,如图所示。配置数据源数据上传完成后,新建一个命名为【文本生成】的空白实训,配置一个【输入源】算法,步骤如下。拖曳【输入源】算法。在【实训】栏下方的【算法】栏中,找到【系统算法】模块中【内置算法】下的【输入/输出】类。拖曳【输入/输出】类中的【输入源】算法至画布中。配置数据源配置【输入源】算法。单击画布中的【输入源】算法,然后单击画布右侧【参数配置】栏中的【数据集】框,输入“文本数据集”。在弹出的下拉框中选择【文本数据集】,在【名称】框中勾选【book.txt】。右键单击【输入源】算法,选择【重命名】并输入“文本数据集”,如图所示。配置数据源1.数据处理对于原始的文本数据,含有大量的标点符号以及存在大小写并存的情况,因此需先对文本数据检查处理,并生成一个字符列表,具体步骤如下。文本预处理本章数据预处理主要包括数据处理,字典创建,序列生成。创建【数据处理】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“数据处理”,将数据处理的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。文本预处理连接【数据处理】算法。拖曳【数据处理】算法至画布中,并与【文本数据集】算法相连接,如图所示。文本预处理对于生成的字符列表,还需创建字典用于字符的编码和解码,具体步骤如下。创建【字典创建】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“字典创建”。将字典创建的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。文本预处理2.字典创建

连接【字典创建】算法。拖曳【字典创建】算法至画布中,并与【数据处理】算法相连接,如图所示。文本预处理对于网络,需要形成一个给定长度的序列,每个序列将由窗口中包含的字符组成,具体步骤如下。创建【序列生成】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“序列生成”。将序列生成的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。文本预处理3.序列生成连接【序列生成】算法。拖曳【序列生成】算法至画布中,并与【字典创建】算法相连接,如图所示。文本预处理1.文本生成类的构造函数定义用于初始化神经网络每一层的参数,具体步骤如下。构建网络在网络的构建中,需要创建文本生成类的构造函数以及构建网络。创建【文本生成类的构造函数】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“文本生成类的构造函数”,将文本生成类的构造函数的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。构建网络连接【文本生成类的构造函数】算法。拖曳【文本生成类的构造函数】算法至画布中,并与【序列生成】算法相连接,如图所示。构建网络完成了包含隐藏状态和单元状态的张量的定义后,即可开始整个体系结构的组装,具体步骤如下。创建【构建网络】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“构建网络”。将构建网络的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。构建网络2.构建网络连接【构建网络】。拖曳【构建网络】算法至画布中,并与【文本生成类的构造函数】算法相连接,如图所示。构建网络1.设置配置项在设置配置项中,需要设置循环次数和输入数据的批量大小,具体步骤如下。训练网络网络的训练主要分为设置配置项、执行效率、文本生成3个步骤。创建【设置配置项】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“设置配置项”,将设置配置项的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。训练网络连接【设置配置项】算法。拖曳【设置配置项】算法至画布中,并与【构建网络】算法相连接,如图所示。训练网络为了执行训练,需要初始化网络和优化器,一旦网络被训练,将需要保存神经网络的权重,以便以后使用它们来生成文本,具体步骤如下。创建【执行训练】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“执行训练”。将执行训练的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。训练网络2.执行训练连接【执行训练】算法。拖曳【执行训练】算法至画布中,并与【设置配置项】算法相连接,如图所示。训练网络在文本的生成中,需要先加载训练好的权重,然后从序列集合中随机抽取一个样本作为模式,开始生成下一个字符,定义文本生成器的具体步骤如下。创建【文本生成器】算法。进入【个人算法】模块,单击【个人算法】栏的加号新增个人算法,在【算法名称】框中输入算法名“文本生成器”。将文本生成器的代码放入【算法代码】中,并在【#<editable>】行和【#</editable>】行之间插入输入配置和输出配置,如图所示。训练网络3.文本生成器连接【文本生成器】算法。拖曳【文本生成器】算法至画布中,并与【执行训练】算法相连接,如图所示。训练网络在完成了文本预处理、构建网络、训练网络的函数定义后,需要通过主函数进行调用,得到文本生成的结果,并对结果进行分析,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论