CN113342981A - 一种基于机器学习的需求文档分类方法及装置 - Google Patents
一种基于机器学习的需求文档分类方法及装置 Download PDFInfo
- Publication number
- CN113342981A CN113342981A CN202110739627.9A CN202110739627A CN113342981A CN 113342981 A CN113342981 A CN 113342981A CN 202110739627 A CN202110739627 A CN 202110739627A CN 113342981 A CN113342981 A CN 113342981A
- Authority
- CN
- China
- Prior art keywords
- document
- word
- requirement
- classification
- demand
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000010801 machine learning Methods 0.000 title claims abstract description 46
- 239000013598 vector Substances 0.000 claims description 97
- 238000013145 classification model Methods 0.000 claims description 60
- 238000012545 processing Methods 0.000 claims description 30
- 238000007781 pre-processing Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 16
- 239000012634 fragment Substances 0.000 claims description 13
- 238000012549 training Methods 0.000 claims description 13
- 230000011218 segmentation Effects 0.000 claims description 3
- 238000011161 development Methods 0.000 abstract description 11
- 230000002035 prolonged effect Effects 0.000 abstract description 8
- 238000010276 construction Methods 0.000 abstract description 7
- 230000018109 developmental process Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 19
- 238000004458 analytical method Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 239000000872 buffer Substances 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供的一种基于机器学习的需求文档分类方法及装置,可用于金融技术领域,本发明通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率。
Description
技术领域
本发明涉及互联网金融技术领域,具体涉及一种基于机器学习的需求文档分类方法及装置。
背景技术
需求分析是软件开发中必不可少的一个环节.需求方案主要是用于明确业务的场景、流程等等。需求文档的分析和理解对于开发者来说至关重要,需求不明确会面临代码修改甚至重写的问题,随着业务逻辑复杂性的增加,对于需求文档流程图形化的需求也更加迫切。
但是目前对于需求文档的分类仍然处于人工分类阶段,由于软件开发过程中需求文档数量众多,复杂度的增加导致种类繁多,其中还涉及到诸如语义关系等,目前没有其他代替人工分类的方式,因此存在诸多不足。
发明内容
针对现有技术中的目前对于需求文档的分类仍然处于人工分类阶段,由于软件开发过程中需求文档数量众多,复杂度的增加导致种类繁多,其中还涉及到诸如语义关系等,目前没有其他代替人工分类的方式的问题,本发明提供一种基于机器学习的需求文档分类方法及装置,通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率。
为解决上述技术问题,本发明提供以下技术方案:
第一方面,本申请提供一种基于机器学习的需求文档分类方法,包括:
获取待分类的需求文档;
对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息;
将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
在优选的实施例中,所述对所述需求文档进行预处理,包括:
对所述需求文档进行句法解析,得到所述需求文档的词特征信息,所述词特征信息包括:句法结构、主题类型以及知识图谱;
对所述词特征信息进行切分,得到所述词向量和所述词特征信息;所述词特征信息包括:词性信息、词重要性程度、同近义词关系、需求词以及词与词的位置关系。
在优选的实施例中,所述历史词向量数据包括词向量以及词向量对应的所属分类,所述方法还包括:
建立分类模型;
将历史词向量数据输入至所述分类模型,以训练所述分类模型。
在优选的实施例中,所述分类模型为FastText模型,所述需求文档分类方法还包括:
设置分层分类器。
在优选的实施例中,所述分层分类器为层次softmax模型。
在优选的实施例中,根据每个词向量的所述类型和需求文档的文本内容确定所述需求文档的类型,包括:
利用N-Gram模型对所述需求文档的文本内容以设定字节长度的滑动窗口进行滑动操作,得到多个设定字节长度的字节片段;
对所有字节片段进行频度统计,形成关键gram列表;
结合所述分类模型输出的每个词向量的所属类型以及所述关键gram列表中各字节片段出现的频率确定所述需求文档的类型。
在优选的实施例中,还包括:
根据所述需求文档的类型匹配流程模板,生成所述需求文档处理流程图;
根据所述需求文档处理流程图处理所述需求文档。
第二方面,本发明提供一种基于机器学习的需求文档分类装置,包括:
获取模块,获取待分类的需求文档;
预处理模块,对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息;
模型输入模块,将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
确定模块,根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
在优选的实施例中,所述预处理模块,包括:
解析单元,对所述需求文档进行句法解析,得到所述需求文档的词特征信息,所述词特征信息包括:句法结构、主题类型以及知识图谱;
切分单元,对所述词特征信息进行切分,得到所述词向量和所述词特征信息;所述词特征信息包括:词性信息、词重要性程度、同近义词关系、需求词以及词与词的位置关系。
在优选的实施例中,所述历史词向量数据包括词向量以及词向量对应的所属分类,所述装置还包括:
模型建立模块,建立分类模型;
训练模块,将历史词向量数据输入至所述分类模型,以训练所述分类模型。
在优选的实施例中,所述分类模型为FastText模型,所述需求文档分类装置还包括:
分类器设置模块,设置分层分类器。
在优选的实施例中,所述分层分类器为层次softmax模型。
在优选的实施例中,所述确定模块,包括:
滑动单元,利用N-Gram模型对所述需求文档的文本内容以设定字节长度的滑动窗口进行滑动操作,得到多个设定字节长度的字节片段;
关键gram列表生成单元,对所有字节片段进行频度统计,形成关键gram列表;
确定单元,结合所述分类模型输出的每个词向量的所属类型以及所述关键gram列表中各字节片段出现的频率确定所述需求文档的类型。
在优选的实施例中,还包括:
匹配模块,根据所述需求文档的类型匹配流程模板,生成所述需求文档处理流程图;
处理模块,根据所述需求文档处理流程图处理所述需求文档。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的基于机器学习的需求文档分类方法。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的基于机器学习的需求文档分类方法。
由上述技术方案可知,本发明提供一种基于机器学习的需求文档分类方法及装置,通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率,提高处理交易数据的速度,增加数据吞吐量,减少用户等待时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的一种文本划分的结构框架图。
图2是本发明实施例中的FastTest模型的架构示意图。
图3是本发明实施例中的分层softmax的结构示意图。
图4是本发明实施例中的N-gram词袋解析示意图。
图5是本发明实施例中的关键词提取及排列示意图。
图6是本发明实施例中的系统流程操作图。
图7是本发明实施例中的执行的方法步骤流程示意图之一。
图8是本发明实施例中的执行的方法步骤流程示意图之二。
图9是本发明实施例中的执行的方法步骤流程示意图之三。
图10是本发明实施例中的一种基于机器学习的需求文档分类装置的结构示意图。
图11是本发明实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明公开的一种基于机器学习的需求文档分类方法及装置可用于金融领域,也可用于除金融领域之外的任意领域,本发明公开的一种基于机器学习的需求文档分类方法及装置的应用领域不做限定。
但是目前对于需求文档的分类仍然处于人工分类阶段,由于软件开发过程中需求文档数量众多,复杂度的增加导致种类繁多,其中还涉及到诸如语义关系等,目前没有其他代替人工分类的方式,因此存在诸多不足。
基于上述内容,针对以上问题,本发明将需求文档导入到系统中,对文本进行预处理,系统根据机器学习算法进行划分,匹配合适的流程模型,自动生成流程图。
本发明提供一种用于实现本发明一个或多个实施例中提供一种基于机器学习的需求文档分类方法及装置,具体的,包括:获取待分类的需求文档;对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息;将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。本发明通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率,提高处理交易数据的速度,增加数据吞吐量,减少用户等待时间。
可以理解的是,本发明的需求文档分类装置可以是服务器或者移动终端,例如可以包括智能手机、平板电子设备、便携式计算机、台式电脑、个人数字助理(PDA)、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
上述的需求文档分类装置具有通信模块,可以与开发终端进行通信连接,实现与所述开发终端的数据传输。
上述需求文档分类装置与开发终端之间可以使用任何合适的网络协议进行通信,包括在本发明提交日尚未开发出的网络协议。所述网络协议例如可以包括TCP/IP协议、UDP/IP协议、HTTP协议、HTTPS协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的RPC协议(Remote Procedure Call Protocol,远程过程调用协议)、REST协议(Representational State Transfer,表述性状态转移协议)等。
本发明提供一种基于机器学习的需求文档分类方法及装置,通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率,提高处理交易数据的速度,增加数据吞吐量,减少用户等待时间。
具体通过下述多个实施例及应用实例分别进行说明。
为了解决现有技术中的目前对于需求文档的分类仍然处于人工分类阶段,由于软件开发过程中需求文档数量众多,复杂度的增加导致种类繁多,其中还涉及到诸如语义关系等,目前没有其他代替人工分类的方式的问题,本发明提供一种基于机器学习的需求文档分类方法的实施例,参见图7,具体包含有如下内容:
步骤S101:获取待分类的需求文档。
本发明中,需求分析是软件开发中必不可少的一个环节.需求方案主要是用于明确业务的场景、流程等等。需求文档的分析和理解对于开发者来说至关重要,需求不明确会面临代码修改甚至重写的问题,随着业务逻辑复杂性的增加,对于需求文档流程图形化的需求也更加迫切。
步骤S102:对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息。
步骤S103:将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
步骤S104:根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
由上述技术方案可知,本发明提供的一种基于机器学习的需求文档分类方法,通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率。
为了提供一种预处理步骤的操作流程,在本发明的一个或多个实施例中,所述对所述需求文档进行预处理,如图8包括:
S201:对所述需求文档进行句法解析,得到所述需求文档的词特征信息,所述词特征信息包括:句法结构、主题类型以及知识图谱;
S202:对所述词特征信息进行切分,得到所述词向量和所述词特征信息;所述词特征信息包括:词性信息、词重要性程度、同近义词关系、需求词以及词与词的位置关系。
具体的,图1是一种文本划分的结构框架图,在文本预处理阶段对文本切分为篇章级,句法级,词汇级,篇章级包含了关键信息和文本语义理解,句法级包含了句法结构、主题模型、知识图谱、词向量分析、词汇级包含了中文文本、英文文本、中文分本的分析和英文文本的分析,针对文本进行词性识别、专有名词、词重要性、同近义词、需求词、位置关系进行区分。
在本申请实施例中,分类模型可以是预先建立,也可以是在本发明实施步骤过程中建立,同理,模型训练步骤亦如此,本发明不限于此,在一个或多个实施例中,本发明的所述历史词向量数据包括词向量以及词向量对应的所属分类,如图9所示,所述方法还包括:
S5:建立分类模型;
S6:将历史词向量数据输入至所述分类模型,以训练所述分类模型。
为了采用针对性的机器学习模型,在本发明的一个或多个实施例中,所述分类模型为FastText模型。
FastText模型针对本发明的文档格式的效果最佳,在文本分类阶段,本发明使用FastText分类模型对词向量和文本进行分类,FastText提供了简单而高效的文本分类进和表征学习的方法,适用于对海量的需求文档进行分类归纳工作。如图2,FastText就是将文档中所有词通过lookup table变成向量,取平均后直接用线性分类器取得分类结果。FastText模型架构中:其中x1,x2,…,xN-1,xN表示一个文本中的n-gram向量,每个特征是词向量的平均值。
为了加速运算过程,,所述需求文档分类方法还包括:设置分层分类器。
对于有大量类别的数据集,FastText使用了一个分层分类器(而非扁平式架构)来加速运算过程。不同的类别被整合进树形结构中。在某些文本分类任务中类别很多,计算线性分类器的复杂度高。如图3,为了改善运行时间,FastText模型使用了层次Softmax技巧。层次Softmax技巧建立在哈弗曼编码的基础上,对标签进行编码,能够极大地缩小模型预测目标的数量。FastText也利用了类别(class)不均衡这个事实(一些类别出现次数比其他的更多),通过使用Huffman算法建立用于表征类别的树形结构。因此,频繁出现类别的树形结构的深度要比不频繁出现类别的树形结构的深度要小,这也使得进一步的计算效率更高,可以将复杂度从N降低到logN。
在本发明的一个或多个实施例中,所述分层分类器为层次softmax模型。
在层次softmax模型中,叶子结点的词没有直接输出的向量,而非叶子节点都有响应的输在在模型的训练过程中,通过Huffman编码,构造了一颗庞大的Huffman树,同时会给非叶子结点赋予向量。我们要计算的是目标词w的概率,这个概率的具体含义,是指从root结点开始随机走,走到目标词w的概率。因此在途中路过非叶子结点(包括root)时,需要分别知道往左走和往右走的概率。
例如到达非叶子节点n的时候往左边走和往右边走的概率分别是:
p(n,left)=σ(θn T·h)
P(n,right)=1-σ(θn T·h)=σ(-θn T·h)
目标词为w的概率可以表示为:
其中θn(w,j)是非叶子结点n(w,j)的向量表示(即输出向量);h是隐藏层的输出值,从输入词的向量中计算得来;sign(x,j)是一个特殊函数定义
为了提供步骤根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型的具体实施方式,在本发明的一个或多个实施例中,根据每个词向量的所述类型和需求文档的文本内容确定所述需求文档的类型,包括:
利用N-Gram模型对所述需求文档的文本内容以设定字节长度的滑动窗口进行滑动操作,得到多个设定字节长度的字节片段;
对所有字节片段进行频度统计,形成关键gram列表;
结合所述分类模型输出的每个词向量的所属类型以及所述关键gram列表中各字节片段出现的频率确定所述需求文档的类型。
具体而言,由于需求文档的内容是连续的,所以使用N-Gram将文本里面的内容按照字节进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列。如图4和图5,每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是这个文本的向量特征空间,列表中的每一种gram就是一个特征向量维度。如“个人转对公”这句话的词袋模型特征是“个”,“人”,“转”,“对”,“公”,和“对公转个人”的特征是一样的,如果加入3-Ngram,第一句话的特征有“个-人-转”,“转-对-公”,这两句话“个人转对公”和“对公转个人”就能区分开来了。当然,为了提高效率,一些低频的N-gram需过滤。
进一步的,为了能够对分类后的需求文档进行处理,本申请针对此进行了进一步深化改进,具体的,还包括:
根据所述需求文档的类型匹配流程模板,生成所述需求文档处理流程图;
根据所述需求文档处理流程图处理所述需求文档。
具体而言,该实施例中,对需求文档进行分类后,抽取特定的文本,以规定的格式进行文本排列,选择合适的流程图模型,自动生成相应的流程图。如图5,获取需求文档中特定的章节文本,对该文本内的关键词进行提取,从段落前后及语义词解析,对文本中相应关键词按规定格式进行排列,再根据排列的顺序在系统中渲染出一个流程图。
以下根据图6系统操作流程图从整个流程进行说明:
步骤S1:用户首先一键将需求文档导入到系统中。
步骤S2:系统会针对特定的章节(用户可指定)进行文本预处理,根据段落及语言含义对文本进行拆分。
步骤S3:使用FastText分类模型对词向量和文本进行分类,标识该需求文档所属类型,并收纳于中心的文档库内。
步骤S4:文本格式化,将文本进行按特定格式排列,标识前后项。
步骤S5:根据格式化后的文本,适配模型生成流程图。
步骤S6:一键导出流程图。
由上述技术方案可知,本发明提供的一种基于机器学习的需求文档分类方法,通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率。
为了解决现有技术中的目前对于需求文档的分类仍然处于人工分类阶段,由于软件开发过程中需求文档数量众多,复杂度的增加导致种类繁多,其中还涉及到诸如语义关系等,目前没有其他代替人工分类的方式的问题,在本发明的一个或多个实施例中,本发明提供一种基于机器学习的需求文档分类方法装置,如图10所示,包括:
获取模块11,获取待分类的需求文档;
预处理模块12,对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息;
模型输入模块13,将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
确定模块14,根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
本发明中,需求分析是软件开发中必不可少的一个环节.需求方案主要是用于明确业务的场景、流程等等。需求文档的分析和理解对于开发者来说至关重要,需求不明确会面临代码修改甚至重写的问题,随着业务逻辑复杂性的增加,对于需求文档流程图形化的需求也更加迫切。
由上述技术方案可知,本发明提供的一种基于机器学习的需求文档分类方法装置,该装置通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率。
基于相同的发明构思,在优选的实施例中,所述预处理模块,包括:
解析单元,对所述需求文档进行句法解析,得到所述需求文档的词特征信息,所述词特征信息包括:句法结构、主题类型以及知识图谱;
切分单元,对所述词特征信息进行切分,得到所述词向量和所述词特征信息;所述词特征信息包括:词性信息、词重要性程度、同近义词关系、需求词以及词与词的位置关系。
基于相同的发明构思,在优选的实施例中,所述历史词向量数据包括词向量以及词向量对应的所属分类,所述装置还包括:
模型建立模块,建立分类模型;
训练模块,将历史词向量数据输入至所述分类模型,以训练所述分类模型。
基于相同的发明构思,在优选的实施例中,所述分类模型为FastText模型,所述需求文档分类装置还包括:
分类器设置模块,设置分层分类器。
基于相同的发明构思,在优选的实施例中,所述分层分类器为层次softmax模型。
基于相同的发明构思,在优选的实施例中,所述确定模块,包括:
滑动单元,利用N-Gram模型对所述需求文档的文本内容以设定字节长度的滑动窗口进行滑动操作,得到多个设定字节长度的字节片段;
关键gram列表生成单元,对所有字节片段进行频度统计,形成关键gram列表;
确定单元,结合所述分类模型输出的每个词向量的所属类型以及所述关键gram列表中各字节片段出现的频率确定所述需求文档的类型。
基于相同的发明构思,在优选的实施例中,还包括:
匹配模块,根据所述需求文档的类型匹配流程模板,生成所述需求文档处理流程图;
处理模块,根据所述需求文档处理流程图处理所述需求文档。
可以知晓,需求分析是软件开发中必不可少的一个环节.需求方案主要是用于明确业务的场景、流程等等。需求文档的分析和理解对于开发者来说至关重要,需求不明确会面临代码修改甚至重写的问题,随着业务逻辑复杂性的增加,对于需求文档流程图形化的需求也更加迫切。
本发明提供一种自动化的手段完成需求文档流程图的绘制,给开发者更直观的印象,方便让自己代入到具体的场景去体会和共情,解放开发者的双手,让开发人员提高创造力。
本发明主要是解决需求分析阶段,需求文字不够直观清晰,通过机器学习算法进行分类后,自动生成流程图。将这部分工作从人工绘制转换为机器绘制,降低开发人员的学习成本及时间成本。
与此同时,本发明满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间。本发明提供一种流程化自动构建流程图的系统,优点在于:
1.相同类别的需求文档能根据内容进行划分,归纳,以合适的流程图模型进行匹配。并作为样本,不断进行学习,提升分类的准确率。
2.从人工构画流程图变为自动化构图,通过对需求文档的文本预处理,解析,抽取关键词,根据特定格式,一键生成流程图,且能不断校正,有着一定地自主学习能力。
从硬件层面来说,为了解决现有技术中的目前对于需求文档的分类仍然处于人工分类阶段,由于软件开发过程中需求文档数量众多,复杂度的增加导致种类繁多,其中还涉及到诸如语义关系等,目前没有其他代替人工分类的方式的问题,本发明提供一种用于实现所述基于机器学习的需求文档分类方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
图11为本发明实施例的电子设备9600的装置构成的示意框图。如图11所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图11是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
在一实施例中,基于机器学习的需求文档分类方法功能可以被集成到中央处理器中。其中,中央处理器可以被配置为进行如下控制:
步骤S101:获取待分类的需求文档。
本发明中,需求分析是软件开发中必不可少的一个环节.需求方案主要是用于明确业务的场景、流程等等。需求文档的分析和理解对于开发者来说至关重要,需求不明确会面临代码修改甚至重写的问题,随着业务逻辑复杂性的增加,对于需求文档流程图形化的需求也更加迫切。
步骤S102:对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息。
步骤S103:将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
步骤S104:根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
由上述技术方案可知,本发明提供的一种电子设备,通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率。
在另一个实施方式中,服务器可以与中央处理器9100分开配置,例如可以将服务器为与中央处理器9100连接的芯片,通过中央处理器的控制来实现基于机器学习的需求文档分类方法功能。
如图11所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图11中所示的所有部件;此外,电子设备9600还可以包括图11中没有示出的部件,可以参考现有技术。
如图11所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本发明的实施例还提供能够实现上述实施例中的基于机器学习的需求文档分类方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的基于机器学习的需求文档分类方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤S101:获取待分类的需求文档。
本发明中,需求分析是软件开发中必不可少的一个环节.需求方案主要是用于明确业务的场景、流程等等。需求文档的分析和理解对于开发者来说至关重要,需求不明确会面临代码修改甚至重写的问题,随着业务逻辑复杂性的增加,对于需求文档流程图形化的需求也更加迫切。
步骤S102:对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息。
步骤S103:将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
步骤S104:根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
由上述技术方案可知,本发明提供的计算机存储介质,通过机器学习模型对需求文档进行分类,解决了目前需求文档需要人工分类的问题,满足了架构师、开发人员的需求,减少了架构师及开发人员对流程图构画的学习成本。将需求具象化,让架构更准确地表达需求,开发更清晰地理解需求,增加开发人员有效编码时间,通过不断进行学习,提升分类的准确率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (16)
1.一种基于机器学习的需求文档分类方法,其特征在于,包括:
获取待分类的需求文档;
对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息;
将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
2.根据权利要求1所述的基于机器学习的需求文档分类方法,其特征在于,所述对所述需求文档进行预处理,包括:
对所述需求文档进行句法解析,得到所述需求文档的词特征信息,所述词特征信息包括:句法结构、主题类型以及知识图谱;
对所述词特征信息进行切分,得到所述词向量和所述词特征信息;所述词特征信息包括:词性信息、词重要性程度、同近义词关系、需求词以及词与词的位置关系。
3.根据权利要求1所述的基于机器学习的需求文档分类方法,其特征在于,所述历史词向量数据包括词向量以及词向量对应的所属分类,所述方法还包括:
建立分类模型;
将历史词向量数据输入至所述分类模型,以训练所述分类模型。
4.根据权利要求3所述的基于机器学习的需求文档分类方法,其特征在于,所述分类模型为FastText模型,所述需求文档分类方法还包括:
设置分层分类器。
5.根据权利要求4所述的基于机器学习的需求文档分类方法,其特征在于,所述分层分类器为层次softmax模型。
6.根据权利要求1所述的基于机器学习的需求文档分类方法,其特征在于,根据每个词向量的所述类型和需求文档的文本内容确定所述需求文档的类型,包括:
利用N-Gram模型对所述需求文档的文本内容以设定字节长度的滑动窗口进行滑动操作,得到多个设定字节长度的字节片段;
对所有字节片段进行频度统计,形成关键gram列表;
结合所述分类模型输出的每个词向量的所属类型以及所述关键gram列表中各字节片段出现的频率确定所述需求文档的类型。
7.根据权利要求1所述的基于机器学习的需求文档分类方法,其特征在于,还包括:
根据所述需求文档的类型匹配流程模板,生成所述需求文档处理流程图;
根据所述需求文档处理流程图处理所述需求文档。
8.一种基于机器学习的需求文档分类装置,其特征在于,包括:
获取模块,获取待分类的需求文档;
预处理模块,对所述需求文档进行预处理,得到所述需求文档的词向量和词特征信息;
模型输入模块,将每个词向量和词特征信息输入至预设的分类模型,所述分类模型输出需求文档中每个词向量的所属类型;
确定模块,根据每个词向量的所述类型和所述需求文档的文本内容确定所述需求文档的类型;其中,所述分类模型是利用历史词向量数据训练得到。
9.根据权利要求8所述的基于机器学习的需求文档分类装置,其特征在于,所述预处理模块,包括:
解析单元,对所述需求文档进行句法解析,得到所述需求文档的词特征信息,所述词特征信息包括:句法结构、主题类型以及知识图谱;
切分单元,对所述词特征信息进行切分,得到所述词向量和所述词特征信息;所述词特征信息包括:词性信息、词重要性程度、同近义词关系、需求词以及词与词的位置关系。
10.根据权利要求8所述的基于机器学习的需求文档分类装置,其特征在于,所述历史词向量数据包括词向量以及词向量对应的所属分类,所述装置还包括:
模型建立模块,建立分类模型;
训练模块,将历史词向量数据输入至所述分类模型,以训练所述分类模型。
11.根据权利要求10所述的基于机器学习的需求文档分类装置,其特征在于,所述分类模型为FastText模型,所述需求文档分类装置还包括:
分类器设置模块,设置分层分类器。
12.根据权利要求11所述的基于机器学习的需求文档分类装置,其特征在于,所述分层分类器为层次softmax模型。
13.根据权利要求8所述的基于机器学习的需求文档分类装置,其特征在于,所述确定模块,包括:
滑动单元,利用N-Gram模型对所述需求文档的文本内容以设定字节长度的滑动窗口进行滑动操作,得到多个设定字节长度的字节片段;
关键gram列表生成单元,对所有字节片段进行频度统计,形成关键gram列表;
确定单元,结合所述分类模型输出的每个词向量的所属类型以及所述关键gram列表中各字节片段出现的频率确定所述需求文档的类型。
14.根据权利要求8所述的基于机器学习的需求文档分类装置,其特征在于,还包括:
匹配模块,根据所述需求文档的类型匹配流程模板,生成所述需求文档处理流程图;
处理模块,根据所述需求文档处理流程图处理所述需求文档。
15.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7任一项所述的方法。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110739627.9A CN113342981A (zh) | 2021-06-30 | 2021-06-30 | 一种基于机器学习的需求文档分类方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110739627.9A CN113342981A (zh) | 2021-06-30 | 2021-06-30 | 一种基于机器学习的需求文档分类方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113342981A true CN113342981A (zh) | 2021-09-03 |
Family
ID=77482015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110739627.9A Pending CN113342981A (zh) | 2021-06-30 | 2021-06-30 | 一种基于机器学习的需求文档分类方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113342981A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117034901A (zh) * | 2023-10-10 | 2023-11-10 | 北京睿企信息科技有限公司 | 一种基于文本生成模板的数据统计系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871443A (zh) * | 2018-12-25 | 2019-06-11 | 杭州茂财网络技术有限公司 | 一种基于记账场景的短文本分类方法及装置 |
CN110427486A (zh) * | 2019-07-25 | 2019-11-08 | 北京百度网讯科技有限公司 | 身体病况文本的分类方法、装置及设备 |
WO2020253043A1 (zh) * | 2019-06-20 | 2020-12-24 | 平安科技(深圳)有限公司 | 智能文本分类方法、装置及计算机可读存储介质 |
-
2021
- 2021-06-30 CN CN202110739627.9A patent/CN113342981A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871443A (zh) * | 2018-12-25 | 2019-06-11 | 杭州茂财网络技术有限公司 | 一种基于记账场景的短文本分类方法及装置 |
WO2020253043A1 (zh) * | 2019-06-20 | 2020-12-24 | 平安科技(深圳)有限公司 | 智能文本分类方法、装置及计算机可读存储介质 |
CN110427486A (zh) * | 2019-07-25 | 2019-11-08 | 北京百度网讯科技有限公司 | 身体病况文本的分类方法、装置及设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117034901A (zh) * | 2023-10-10 | 2023-11-10 | 北京睿企信息科技有限公司 | 一种基于文本生成模板的数据统计系统 |
CN117034901B (zh) * | 2023-10-10 | 2023-12-08 | 北京睿企信息科技有限公司 | 一种基于文本生成模板的数据统计系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170352347A1 (en) | Natural language generation in a spoken dialogue system | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
US20240185602A1 (en) | Cross-Modal Processing For Vision And Language | |
CN108959388B (zh) | 信息生成方法及装置 | |
WO2021063089A1 (zh) | 规则匹配方法、规则匹配装置、存储介质及电子设备 | |
JP7520246B2 (ja) | テキストを生成するための方法および装置 | |
US20240320441A1 (en) | Natural Language Processing Dialog Methods and Systems for Virtual Scenes | |
CN114841274B (zh) | 语言模型的训练方法、装置、电子设备和存储介质 | |
EP4057283A2 (en) | Method for detecting voice, method for training, apparatuses and smart speaker | |
CN113901836B (zh) | 基于上下文语义的词义消歧方法、装置及相关设备 | |
CN114021582B (zh) | 结合语音信息的口语理解方法、装置、设备及存储介质 | |
CN110222333A (zh) | 一种语音交互方法、装置以及相关设备 | |
CN112989041A (zh) | 基于bert的文本数据处理方法及装置 | |
CN113918031A (zh) | 使用子字符信息进行中文标点恢复的系统和方法 | |
CN115438149A (zh) | 一种端到端模型训练方法、装置、计算机设备及存储介质 | |
CN112199954A (zh) | 基于语音语义的疾病实体匹配方法、装置及计算机设备 | |
CN112434746B (zh) | 基于层次化迁移学习的预标注方法及其相关设备 | |
CN116913278B (zh) | 语音处理方法、装置、设备和存储介质 | |
CN112948584B (zh) | 短文本分类方法、装置、设备以及存储介质 | |
CN111581347B (zh) | 语句相似度匹配方法及装置 | |
CN113342981A (zh) | 一种基于机器学习的需求文档分类方法及装置 | |
US20240038223A1 (en) | Speech recognition method and apparatus | |
CN115496734A (zh) | 视频内容的质量评价方法、网络训练方法和装置 | |
CN114429629A (zh) | 图像处理方法、装置、可读存储介质及电子设备 | |
CN114519999A (zh) | 基于双模态模型的语音识别方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |