CN112100370B - 一种基于文本卷积和相似度算法的图审专家组合推荐方法 - Google Patents
一种基于文本卷积和相似度算法的图审专家组合推荐方法 Download PDFInfo
- Publication number
- CN112100370B CN112100370B CN202010793623.4A CN202010793623A CN112100370B CN 112100370 B CN112100370 B CN 112100370B CN 202010793623 A CN202010793623 A CN 202010793623A CN 112100370 B CN112100370 B CN 112100370B
- Authority
- CN
- China
- Prior art keywords
- data
- expert
- similarity
- defining
- project
- 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.)
- Active
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000012549 training Methods 0.000 claims abstract description 33
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 18
- 238000000605 extraction Methods 0.000 claims abstract description 12
- 238000010276 construction Methods 0.000 claims abstract description 10
- 238000012552 review Methods 0.000 claims abstract description 10
- 238000007781 pre-processing Methods 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims description 29
- 230000011218 segmentation Effects 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 9
- 238000013528 artificial neural network Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 239000013598 vector Substances 0.000 claims description 3
- 238000013135 deep learning Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 229920006328 Styrofoam Polymers 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
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/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9014—Indexing; Data structures therefor; Storage structures hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
发明公开了一种基于文本卷积和相似度算法的图审专家组合推荐方法,包括:首先对建筑图纸审查问题集Data进行预处理得到审查问题集ProblemData和问题所属专业数据集LabelData;利用数据集ProblemData通过TextRank算法抽取问题中的关键词得到审查关键词问题集ImpProblemData和所属专业数据集ImpLabelData;然后训练文本卷积分类网络进行问题专业分类的网络训练;用户将项目问题输入训练好的文本卷积神经网络得到问题所属专业Profession,之后通过多种相似度算法比较用户传入项目属性集合ProjectProperties与原项目属性集合OralProperties的相似度得出相似的项目集合SimiProjects,最后通过Eclat频繁项集抽取算法找出与Profession一致专业的专家并通过Web推荐给用户。本发明相比传统人工设定能更有效地进行图审专家的推荐。
Description
技术领域
本发明属于知识图谱和深度学习技术领域,特别涉及一种基于文本卷积和相似度算法的图审专家组合推荐方法。
背景技术
传统机器学习推荐算法在对图审专家做推荐时未能考虑到用户对所需要专家的具体需求。在基于知识图谱的基础上,通过TextRank算法对用户图审项目中存在的具体问题进行专业分类。然后,通过多种相似度算法比较得到相似的历史项目,抽取参与项目专家通过频繁项集算法进行组合推荐。
冯万利,朱全银等人已有的研究基础包括:Wanli Feng.Research of themestatement extraction for chinese literature based on lexicalchain.International Journal of Multimedia and Ubiquitous Engineering,Vol.11,No.6(2016),pp.379-388;Wanli Feng,Ying Li,Shangbing Gao,Yunyang Yan,JianxunXue.A novel flame edge detection algorithm via a novel active contourmodel.International Journal of Hybrid Information Technology,Vol.9,No.9(2016),pp.275-282;刘金岭,冯万利.基于属性依赖关系的模式匹配方法[J].微电子学与计算机,2011,28(12):167-170;刘金岭,冯万利,张亚红.初始化簇类中心和重构标度函数的文本聚类[J].计算机应用研究,2011,28(11):4115-4117;刘金岭,冯万利,张亚红.基于重新标度的中文短信文本聚类方法[J].计算机工程与应用,2012,48(21):146-150.;朱全银,潘禄,刘文儒,等.Web科技新闻分类抽取算法[J].淮阴工学院学报,2015,24(5):18-24;李翔,朱全银.联合聚类和评分矩阵共享的协同过滤推荐[J].计算机科学与探索,2014,8(6):751-759;Quanyin Zhu,Sunqun Cao.A Novel Classifier-independent FeatureSelection Algorithm for Imbalanced Datasets.2009,p:77-82;Quanyin Zhu,YunyangYan,Jin Ding,Jin Qian.The Case Study for Price Extracting of Mobile PhoneSell Online.2011,p:282-285;Quanyin Zhu,Suqun Cao,Pei Zhou,Yunyang Yan,HongZhou.Integrated Price Forecast based on Dichotomy Backfilling and DisturbanceFactor Algorithm.International Review on Computers and Software,2011,Vol.6(6):1089-1093;朱全银,冯万利等人申请、公开与授权的相关专利:冯万利,邵鹤帅,庄军.一种智能冷藏车状态监测无线网络终端装置:CN203616634U[P].2014;朱全银,胡蓉静,何苏群,周培等.一种基于线性插补与自适应滑动窗口的商品价格预测方法.中国专利:ZL2011 1 0423015.5,2015.07.01;朱全银,曹苏群,严云洋,胡蓉静等,一种基于二分数据修补与扰乱因子的商品价格预测方法.中国专利:ZL 2011 1 0422274.6,2013.01.02;李翔,朱全银,胡荣林,周泓.一种基于谱聚类的冷链物流配载智能推荐方法.中国专利公开号:CN105654267A,2016.06.08。
知识图谱:
知识图谱是专家系统、语言学、语义网、数据库等多领域融合的产物,知识图谱描述各种实体及其之间的关系。其中的核心为实体和关系并过关系将所有实体链接,构建语义网络图。对于国内高校教师数据。从中抽取出教师实体和研究领域实体,构建实体间关系,搭建知识图谱。
深度学习
深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
在个性化推荐领域,对用户和推荐物品的画像分析依赖于标签数据的优劣。并且目前多数基于知识图谱的个性化推荐系统依然无法精确实现实体间隐藏关联挖掘的功能。对于向量化实体并进行实体间隐藏关联挖掘的工作缺乏研究。且实体间关系维度的发散缺乏随机性。
如:肖仰华等人提出一种基于中文知识图谱的个性化推荐方法与系统,利用知识图谱中实体间超链接关系度量出任意两个词条间语义关联,并通过语义分析模型来刻画用户和推荐物品之间的关联以实现精准推荐,依赖于标签数据对用户和推荐物品的刻画以实现较高的准确率,中国专利公开号:CN103593792A,2014.02.19;晋松等人通过知识图谱在可视化方面的相关优势,提出了一种基于知识图谱的人物关系搜索方法和装置,从用户搜索词条中解析出人物名称和人物关系属性数据,在知识图谱中匹配人物名称或者关系属性数据以查找人物数据,最终将所述关系属性赋值作为结果提供给所述用户,中国专利公开号:CN104462508A,2015.03.25;张晓婧等人提出一种基于知识图谱的论文关联信息推荐方法及装置通过对用户的查询内容进行解析,对所述查询内容进行检索,得到包含查询内容的多篇论文,并通过知识库中边属性的相关数据,得到相关联的论文数据从而提高用户获取相关论文的信息的效率,中国专利公开号:CN104346446A,2015.02.11。
发明内容
发明目的:针对现有技术中存在的问题,本发明提出一种基于文本卷积和相似度算法的图审专家组合推荐方法,能够解决图审专家推荐算法对项目现存问题未考虑的情况。
技术方案:为解决上述技术问题,本发明提供一种基于文本卷积和相似度算法的图审专家组合推荐方法,具体步骤如下:
(1)设建筑图纸审查问题数据集为Data,对问题数据进行去重和专业分类数据预处理后得到处理后的审查问题集ProblemData,处理后的问题标签数据集为LabelData;
(2)对审查问题集ProblemData运用TextRank算法进行关键词抽取得到审查关键词问题集ImpProblemData,对应的问题标签数据集为ImpLabelData;
(3)搭建文本卷积神经网络用以训练网络进行问题所属专业分类分类;
(4)设用户问题为Problem,用户传入的项目属性集合为ProjectProperties传入文本卷积分类神经网络后得到问题所属专业Profession,通过相似度算法比较用户传入的项目属性集合与原始项目属性集合OralProperties的相似度;
(5)设通过上一步比较后得到的相似度集合为Similarities,排序取相似的项目得到相似项目集合SimiProjects,利用Eclat频繁项集抽取算法寻找频繁出现的专家并比较其专业与Profession是否一致;
(6)开放图审专家推荐知识图谱使用接口根据用户输入的专业问题及项目属性推荐适合的专家集合Experts并通过Web返回给用户。
进一步的,所述步骤(1)中得到处理后的问题标签数据集LabelData的具体步骤如下:
(1.1)设建筑图纸审查问题数据集为Data={data1,data2,…,dataN},其中N为建筑图纸审查问题数据集大小;
(1.2)声明哈希表ProblemHashMap用于对问题数据进行去重;
(1.3)定义循环变量i1遍历数据集Data,i1赋初值0,对哈希表ProblemHashMap赋初值为空;
(1.4)如果i1<len(Data),则进入步骤(1.6),否则进入步骤(1.9),其中,len()是返回数据集长度值的函数;
(1.5)对i1执行加1操作;
(1.6)设当前遍历到的问题数据为datai1Oral,去除datai1Oral中含有的标点符号如“,”,”。”,“!”等得到数据datai1Sign;
(1.7)对数据datai1Sign,根据停用词表去除无实际意义的停用词得到数据ProblemDatai1;
(1.8)将ProblemDatai1与问题对应的专业LabelDatai1组合存入哈希表ProbelmHashMap,哈希表会对原先存在的相同数据进行覆盖处理;
(1.9)取出ProblemHashMap中存储的数据取得审查问题集ProblemData,问题标签数据集LabelData。
进一步的,所述步骤(2)中得到审查关键词问题集ImpProblemData和对应的问题标签数据集ImpLabelData的具体步骤如下:
(2.1)定义循环变量i2遍历ProblemData,i2赋初值0;
(2.2)如果i2<size(Problem),则进入步骤(2.3),否则进入步骤(2.12),其中,size()是返回数据集大小的函数;
(2.3)运用jieba分词算法将遍历到的ProblemDatai2进行分词和词性标注处理,得到分词后的词数据集VacList{vac1,vac2,…,vacVn},其中Vn为词数量;
(2.4)定义TextRank窗口范围为4,定义tempHashMap用以存储边集,定义循环变量i3遍历词数据集VacList,i3赋初值0;
(2.5)如果i3<len(VacList),则进入步骤(2.6),否则进入步骤(2.11),其中,len()是返回数据集长度值的函数;
(2.6)定义循环变量i4遍历当前词vaci3及之后的词语,i4赋初值0;
(2.7)如果i4<4,则进入步骤(2.8),否则进入步骤(2.10),其中,len()是返回数据集长度值的函数;
(2.8)将当前词语vaci3及vaci4组成集合{vaci3,vaci4}存储tempHashMap,若先前存在此集合则将存储值加一;
(2.9)对i4执行加1操作;
(2.10)对i3执行加1操作;
(2.11)对i2执行加1操作;
(2.12)根据tempHashMap中每一个集合的存储值进行排序,取出对应原数据集ProblemData中每一句存储值最大的三个关键词vac1,vac2,vac3;
(2.13)将上一步取得的关键词组成集合{vac1,vac2,vac3}加入到集合ImpProblemData中,将该句对应的标签加入到集合ImpLabelData中。
进一步的,所述步骤(3)中搭建文本卷积神经网络用以训练网络进行问题所属专业分类分类的具体步骤如下:
(3.1)根据训练需要将关键词问题数据集ImpProblemData划分,分别定义训练集比例为TrainRate、验证集比例为ValidRate和测试集比例为TestRate;
(3.2)定义按照TrainRate:ValidRate:TestRate=8:1:1的比例划分已标注的关键词问题数据集ImpProblemData为训练数据集ImpPro_Train、测试数据集ImpPro_Test和验证数据集ImpPro_Valid;
(3.3)设定网络层数net_layers、每层单元数batch_size、训练轮次epoch、最大训练次数MaxTime、训练优化器optimizer和每次训练的数据长度data_length用以网格搜索最优化参数,定义循环变量TrainFlag判断训练轮次;
(3.4)若TrainFlag≤MaxTime,则进入步骤(3.18),否则进入步骤(3.5);
(3.5)定义ImpDataNum为关键词问题数据集ImpProblemData中数据的个数,对关键词问题数据进行Embedding;
(3.6)定义循环变量i5用以遍历ImpProblemData,i5赋初值为0;
(3.7)如果i5<ImpDataNum,则进入步骤(3.8),否则进入步骤(3.10),其中,len()是返回数据集长度值的函数;
(3.8)建立word2vec词典,给予每个字id,并通过当前句子所有字的id平均值将句子转换成词向量。定义每条数据的最大序列长度为MaxLength;
(3.9)对i5执行加1操作;
(3.10)将训练集ImpPro_Train的数据特征输入预测网络,定义变量MinLoss用于保存模型参数的最低loss值,定义计数器flags,令flags初始值为1;每经过一个epoch利用验证集ImpPro_Valid进行参数调整,更新最低loss值;
(3.11)如果flags≤epoch,则进入步骤(3.12),否则进入步骤(3.17);
(3.12)如果loss≥MinLoss,则进入步骤(3.13),否则进入步骤(3.15);
(3.13)利用梯度下降法将误差反向传播回网络,对预测网络的参数net_layers、batch_size、optimizer和data_length进行修正调参;
(3.14)更新net_layers、batch_size、optimizer和data_length的参数值;
(3.15)更新MinLoss;
(3.16)对flags执行加1操作;
(3.17)选取在验证集上loss值最低的即MinLoss的模型参数并保存模型Model,对TrainFlag执行加1操作;
(3.18)训练完成,得到最优参数的图审问题专业分类文本卷积神经网络模型Model。
进一步的,所述步骤(4)中通过相似度算法比较用户传入的项目属性集合与原始项目属性集合OralProperties的相似度的具体步骤如下:
(4.1)通过先前训练的文本卷积神经网络模型Model对用户用户输入问题语句进行专业分类获取对应专业Profession;
(4.2)定义循环变量i6遍历用户输入的项目属性集合ProjectProperties;
(4.3)如果i6<len(ProjectProperties),则进入步骤(4.5),否则进入步骤(4.10),其中,len()是返回数据集长度值的函数;
(4.4)对i6执行加1操作;
(4.5)计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的皮尔逊相似度,记为perSimi;
(4.6)计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的切比雪夫相似度,记为chebySimi;
(4.7)计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的余弦相似度,记为cosSimi;
(4.8)计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的曼哈顿相似度,记为manhamSimi;
(4.9)将上述计算出的相似度组合成集合{perSimi,chebySimi,cosSimi,manhamSimi},比较其离散程度,取离散程度最高即区分度最好的相似度算法算出的相似度作为相似度集合Similarities;
(4.10)相似度计算结束。
进一步的,所述步骤(5)中利用Eclat频繁项集抽取算法寻找频繁出现的专家并比较其专业与Profession是否一致的具体步骤如下:
(5.1)通过将上一步得到的相似度集合Similarities从水平数据格式转变为垂直数据格式,新的相似度集合定义为VerticalSimilarities;
(5.2)定义循环变量i7用以遍历相似度集合VerticalSimilarities,i7赋初值为0,定义哈希表ExpertHashMap用以存储频繁出现的专家;
(5.3)如果i7<len(VerticalSimilarities),则进入步骤(5.4),否则进入步骤(5.8),其中,len()是返回数据集长度值的函数;
(5.4)定义设当前遍历到的垂直相似度集合元素为Experti7,将其与其他专家进行并集处理,设该专家Experti7在相似度项目集合中次数为ExpertTime;
(5.5)如果ExpertTime>3,则进入步骤(5.6),否则进入步骤(5.7);
(5.6)定义将该专家加入到频繁出现专家哈希表ExpertHashMap,若该专家已存在则做覆盖处理,不会同时存储两个相同专家;
(5.7)对i7执行加1操作;
(5.8)定义循环变量i8遍历ExpertHashMap,i8赋初值0,定义哈希表simiHashMap用以存储专家及专家对应相似项目数量;
(5.9)如果i8<size(ExpertHashMap),则进入步骤(5.10),否则进入步骤(5.19),
其中,size()是返回哈希表大小值的函数;
(5.10)运用jieba分词算法将遍历到的Experti8参加过的项目进行分词和词性标注处理,得到分词后的词数据集ExpertVacList{expvac1,expvac2,…,expvaceVn},其中eVn为词数量;
(5.11)定义窗口范围为4,定义tempExpertHashMap用以存储边集,定义循环变量i9遍历专家项目词数据集ExpertList,i9赋初值0;
(5.12)如果i9<len(ExpertList),则进入步骤(5.13),否则进入步骤(5.18),
其中,len()是返回数据集长度值的函数;
(5.13)定义循环变量i10遍历当前词expvaci9及之后的词语,i10赋初值0;
(5.14)如果i10<4,则进入步骤(5.15),否则进入步骤(5.17);
(5.15)将当前词语expvaci9及expi10组成集合{expvaci9,expvaci10}存储tempExpertHashMap,若先前存在此集合则将存储值加一;
(5.16)对i10执行加1操作;
(5.17)对i9执行加1操作;
(5.18)对i8执行加1操作;
(5.19)根据tempExpertHashMap中每一个集合的存储值进行排序,取出对应原数据集ExpertHashMap中每一句存储值最大的三个关键词expvac1,expvac2,expvac3;
(5.20)将上一步取得的关键词组成集合{expvac1,expvac2,expvac3}传入到先前训练的专业分类文本卷积神经网络模型Model中;
(5.21)比较模型输出的预测专业ExpertProfession与先前预测的用户所需要的专家专业Profession相比较,若一致则存入simiHashMap;
(5.22)将simiHashMap按照相似项目数量进行排序推荐给用户进行选择。
进一步的,所述步骤(6)中开放图审专家推荐知识图谱使用接口根据用户输入的专业问题及项目属性推荐适合的专家集合Experts并通过Web返回给用户的具体步骤如下:
(6.1)开放专家组合推荐知识图谱使用接口;
(6.2)用户登录,创建线程池ThreadPool;
(6.3)检测ThreadPool是否还有任务存在,若有则进入步骤(6.4),否则进入步骤(6.9);
(6.4)用户通过Web平台输入项目当前存在的问题及项目的一系列属性;
(6.5)子线程ChildThread获取任务处理;
(6.6)通过文本卷积算法获取项目问题所属专业,并通过一系列属性计算该项目与当前库中其他项目的相似度;
(6.7)按照相似程度得到专家推荐数据集Expert={expert1,expert2,…,expertn};
(6.8)结束该子进程;
(6.9)关闭线程池ThreadPool;
(6.10)写入日志文件DateLog;
(6.11)将符合要求的专家推荐数据集Expert通过Web返回给用户。
本发明采用上述技术方案,具有以下有益效果:
本发明改变了现有图审专家组合推荐中未考虑当前项目现存问题的情况,使用深度学习算法构建文本卷积神经网络进行用户项目问题的专业分类,同时使用多种相似度算法比较组合推荐对应专业专家,提高准确率的同时实现个性化推荐。
附图说明
图1为本发明的总体流程图;
图2为具体实施例中图审数据预处理的流程图;
图3为具体实施例中通过TextRank算法对图审问题进行关键词抽取的流程图;
图4为具体实施例中通过文本卷积神经网络训练用以对问题专业进行分类的模型的流程图;
图5为具体实施例中通过相似度算法比较当前项目与原始项目相似度的流程图;
图6为具体实施例中通过Eclat频繁项集推荐算法进行专家组合推荐的流程图;
图7为具体实施例中将知识图谱应用于图审专家推荐流程图。
具体实施方式
下面结合工程国家标准的具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1-7所示,本发明所述的一种基于文本卷积和相似度算法的图审专家组合推荐方法,包括如下步骤:
步骤1:设建筑图纸审查问题数据集为Data,对问题数据进行去重和专业分类数据预处理后得到处理后的审查问题集ProblemData,处理后的问题标签数据集为LabelData;
步骤1.1:设建筑图纸审查问题数据集为Data={data1,data2,…,dataN},其中N为建筑图纸审查问题数据集大小;
步骤1.2:声明哈希表ProblemHashMap用于对问题数据进行去重;
步骤1.3:定义循环变量i1遍历数据集Data,i1赋初值0,对哈希表ProblemHashMap赋初值为空;
步骤1.4:如果i1<len(Data),则进入步骤1.6,否则进入步骤1.9,其中,len()是返回数据集长度值的函数;
步骤1.5:对i1执行加1操作;
步骤1.6:设当前遍历到的问题数据为datai1Oral,去除datai1Oral中含有的标点符号如“,”,”。”,“!”等得到数据datai1Sign;
步骤1.7:对数据datai1Sign,根据停用词表去除无实际意义的停用词得到数据ProblemDatai1;
步骤1.8:将ProblemDatai1与问题对应的专业LabelDatai1组合存入哈希表ProbelmHashMap,哈希表会对原先存在的相同数据进行覆盖处理;
步骤1.9:取出ProblemHashMap中存储的数据取得审查问题集ProblemData,问题标签数据集LabelData。
步骤2:对审查问题集ProblemData运用TextRank算法进行关键词抽取得到审查关键词问题集ImpProblemData,对应的问题标签数据集为ImpLabelData;
步骤2.1:定义循环变量i2遍历ProblemData,i2赋初值0;
步骤2.2:如果i2<size(Problem),则进入步骤2.3,否则进入步骤2.12,其中,size()是返回数据集大小的函数;
步骤2.3:运用jieba分词算法将遍历到的ProblemDatai2进行分词和词性标注处理,得到分词后的词数据集VacList{vac1,vac2,…,vacVn},其中Vn为词数量;
步骤2.4:定义TextRank窗口范围为4,定义tempHashMap用以存储边集,定义循环变量i3遍历词数据集VacList,i3赋初值0;
步骤2.5:如果i3<len(VacList),则进入步骤2.6,否则进入步骤2.11,其中,len()是返回数据集长度值的函数;
步骤2.6:定义循环变量i4遍历当前词vaci3及之后的词语,i4赋初值0;
步骤2.7:如果i4<4,则进入步骤2.8,否则进入步骤2.10,其中,len()是返回数据集长度值的函数;
步骤2.8:将当前词语vaci3及vaci4组成集合{vaci3,vaci4}存储tempHashMap,若先前存在此集合则将存储值加一;
步骤2.9:对i4执行加1操作;
步骤2.10:对i3执行加1操作;
步骤2.11:对i2执行加1操作;
步骤2.12:根据tempHashMap中每一个集合的存储值进行排序,取出对应原数据集ProblemData中每一句存储值最大的三个关键词vac1,vac2,vac3;
步骤2.13:将上一步取得的关键词组成集合{vac1,vac2,vac3}加入到集合ImpProblemData中,将该句对应的标签加入到集合ImpLabelData中。
步骤3:搭建文本卷积神经网络用以训练网络进行问题所属专业分类分类;
步骤3.1:根据训练需要将关键词问题数据集ImpProblemData划分,分别定义训练集比例为TrainRate、验证集比例为ValidRate和测试集比例为TestRate;
步骤3.2:定义按照TrainRate:ValidRate:TestRate=8:1:1的比例划分已标注的关键词问题数据集ImpProblemData为训练数据集ImpPro_Train、测试数据集ImpPro_Test和验证数据集ImpPro_Valid;
步骤3.3:设定网络层数net_layers、每层单元数batch_size、训练轮次epoch、最大训练次数MaxTime、训练优化器optimizer和每次训练的数据长度data_length用以网格搜索最优化参数,定义循环变量TrainFlag判断训练轮次;
步骤3.4:若TrainFlag≤MaxTime,则进入步骤3.18,否则进入步骤3.5;
步骤3.5:定义ImpDataNum为关键词问题数据集ImpProblemData中数据的个数,对关键词问题数据进行Embedding;
步骤3.6:定义循环变量i5用以遍历ImpProblemData,i5赋初值为0;
步骤3.7:如果i5<ImpDataNum,则进入步骤3.8,否则进入步骤3.10,其中,len()是返回数据集长度值的函数;
步骤3.8:建立word2vec词典,给予每个字id,并通过当前句子所有字的id平均值将句子转换成词向量。定义每条数据的最大序列长度为MaxLength;
步骤3.9:对i5执行加1操作;
步骤3.10:将训练集ImpPro_Train的数据特征输入预测网络,定义变量MinLoss用于保存模型参数的最低loss值,定义计数器flags,令flags初始值为1;每经过一个epoch利用验证集ImpPro_Valid进行参数调整,更新最低loss值;
步骤3.11:如果flags≤epoch,则进入步骤3.12,否则进入步骤3.17;
步骤3.12:如果loss≥MinLoss,则进入步骤3.13,否则进入步骤3.15;
步骤3.13:利用梯度下降法将误差反向传播回网络,对预测网络的参数net_layers、batch_size、optimizer和data_length进行修正调参;
步骤3.14:更新net_layers、batch_size、optimizer和data_length的参数值;
步骤3.15:更新MinLoss;
步骤3.16:对flags执行加1操作;
步骤3.17:选取在验证集上loss值最低的即MinLoss的模型参数并保存模型Model,对TrainFlag执行加1操作;
步骤3.18:训练完成,得到最优参数的图审问题专业分类文本卷积神经网络模型Model。
步骤4:设用户问题为Problem,用户传入的项目属性集合为ProjectProperties传入文本卷积分类神经网络后得到问题所属专业Profession,通过相似度算法比较用户传入的项目属性集合与原始项目属性集合OralProperties的相似度;
步骤4.1:通过先前训练的文本卷积神经网络模型Model对用户用户输入问题语句进行专业分类获取对应专业Profession;
步骤4.2:定义循环变量i6遍历用户输入的项目属性集合ProjectProperties;
步骤4.3:如果i6<len(ProjectProperties),则进入步骤4.5,否则进入步骤4.10,其中,len()是返回数据集长度值的函数;
步骤4.4:对i6执行加1操作;
步骤4.5:计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的皮尔逊相似度,记为perSimi;
步骤4.6:计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的切比雪夫相似度,记为chebySimi;
步骤4.7:计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的余弦相似度,记为cosSimi;
步骤4.8:计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的曼哈顿相似度,记为manhamSimi;
步骤4.9:将上述计算出的相似度组合成集合
{perSimi,chebySimi,cosSimi,manhamSimi},比较其离散程度,取离散程度最高即区分度最好的相似度算法算出的相似度作为相似度集合Similarities;
步骤4.10:相似度计算结束。
步骤5:设通过上一步比较后得到的相似度集合为Similarities,排序取相似的项目得到相似项目集合SimiProjects,利用Eclat频繁项集抽取算法寻找频繁出现的专家并比较其专业与Profession是否一致;
步骤5.1:通过将上一步得到的相似度集合Similarities从水平数据格式转变为垂直数据格式,新的相似度集合定义为VerticalSimilarities;
步骤5.2:定义循环变量i7用以遍历相似度集合VerticalSimilarities,i7赋初值为0,定义哈希表ExpertHashMap用以存储频繁出现的专家;
步骤5.3:如果i7<len(VerticalSimilarities),则进入步骤5.4,否则进入步骤5.8,其中,len()是返回数据集长度值的函数;
步骤5.4:定义设当前遍历到的垂直相似度集合元素为Experti7,将其与其他专家进行并集处理,设该专家Experti7在相似度项目集合中次数为ExpertTime;
步骤5.5:如果ExpertTime>3,则进入步骤5.6,否则进入步骤5.7;
步骤5.6:定义将该专家加入到频繁出现专家哈希表ExpertHashMap,若该专家已存在则做覆盖处理,不会同时存储两个相同专家;
步骤5.7:对i7执行加1操作。
步骤5.8:定义循环变量i8遍历ExpertHashMap,i8赋初值0,定义哈希表simiHashMap用以存储专家及专家对应相似项目数量;
步骤5.9:如果i8<size(ExpertHashMap),则进入步骤5.10,否则进入步骤5.19,其中,size()是返回哈希表大小值的函数;
步骤5.10:运用jieba分词算法将遍历到的Experti8参加过的项目进行分词和词性标注处理,得到分词后的词数据集ExpertVacList{expvac1,expvac2,…,expvaceVn},其中eVn为词数量;
步骤5.11:定义窗口范围为4,定义tempExpertHashMap用以存储边集,定义循环变量i9遍历专家项目词数据集ExpertList,i9赋初值0;
步骤5.12:如果i9<len(ExpertList),则进入步骤5.13,否则进入步骤5.18,
其中,len()是返回数据集长度值的函数;
步骤5.13:定义循环变量i10遍历当前词expvaci9及之后的词语,i10赋初值0;
步骤5.14:如果i10<4,则进入步骤5.15,否则进入步骤5.17;
步骤5.15:将当前词语expvaci9及expi10组成集合{expvaci9,expvaci10}存储tempExpertHashMap,若先前存在此集合则将存储值加一;
步骤5.16:对i10执行加1操作;
步骤5.17:对i9执行加1操作;
步骤5.18:对i8执行加1操作;
步骤5.19:根据tempExpertHashMap中每一个集合的存储值进行排序,取出对应原数据集ExpertHashMap中每一句存储值最大的三个关键词expvac1,expvac2,expvac3;
步骤5.20:将上一步取得的关键词组成集合{expvac1,expvac2,expvac3}传入到先前训练的专业分类文本卷积神经网络模型Model中;
步骤5.21:比较模型输出的预测专业ExpertProfession与先前预测的用户所需要的专家专业Profession相比较,若一致则存入simiHashMap;
步骤5.22:将simiHashMap按照相似项目数量进行排序推荐给用户进行选择。
步骤6:开放图审专家推荐知识图谱使用接口根据用户输入的专业问题及项目属性推荐适合的专家集合Experts并通过Web返回给用户;
步骤6.1:开放专家组合推荐知识图谱使用接口;
步骤6.2:用户登录,创建线程池ThreadPool;
步骤6.3:检测ThreadPool是否还有任务存在,若有则进入步骤6.4,否则进入步骤6.9;
步骤6.4:用户通过Web平台输入项目当前存在的问题及项目的一系列属性;
步骤6.5:子线程ChildThread获取任务处理;
步骤6.6:通过文本卷积算法获取项目问题所属专业,并通过一系列属性计算该项目与当前库中其他项目的相似度;
步骤6.7:按照相似程度得到专家推荐数据集Expert={expert1,expert2,…,expertn};
步骤6.8:结束该子进程;
步骤6.9:关闭线程池ThreadPool;
步骤6.10:写入日志文件DateLog;
步骤6.11:将符合要求的专家推荐数据集Expert通过Web返回给用户。
具体上述变量参数如下表所述:
为了更好的说明本方法的有效性,通过对115421条数据进行处理,从信息中抽取出图审专家及图审专家项目等数据构建图审专家及项目知识库。通过文本卷积神经网络算法对用户问题进行专业分类,然后通过相似度算法比较寻找历史相似的项目进行组合推荐。开放专家组合推荐知识图谱使用接口API供用户查询相关图审专家及图审项目信息,通过ECharts展示对应的专家及其参与的一系列项目,提供专家实体可视化方案。
本发明创造性的提出了一种基于文本卷积和相似度算法的图审专家组合推荐方法及系统,本方法改变了现有图审专家组合推荐中未考虑当前项目现存问题的情况,使用深度学习算法构建文本卷积神经网络进行用户项目问题的专业分类,同时使用多种相似度算法比较组合推荐对应专业专家,提高准确率的同时实现个性化推荐。
Claims (4)
1.一种基于文本卷积和相似度算法的图审专家组合推荐方法,其特征在于,具体步骤如下:
(1)设建筑图纸审查问题数据集为Data,对问题数据进行去重和专业分类数据预处理后得到处理后的审查问题集ProblemData,处理后的问题标签数据集为LabelData;
(2)对审查问题集ProblemData运用TextRank算法进行关键词抽取得到审查关键词问题集ImpProblemData,对应的问题标签数据集为ImpLabelData;
(3)搭建文本卷积神经网络用以训练网络进行问题所属专业分类;
(4)设用户问题为Problem,用户传入的项目属性集合为ProjectProperties,将Problem传入文本卷积分类神经网络后得到问题所属专业Profession,通过相似度算法比较用户传入的项目属性集合与原始项目属性集合OralProperties的相似度;
(5)设通过上一步比较后得到的相似度集合为Similarities,排序取相似的项目得到相似项目集合SimiProjects,利用Eclat频繁项集抽取算法寻找频繁出现的专家并比较其专业与Profession是否一致;
(6)开放图审专家推荐知识图谱使用接口根据用户输入的专业问题及项目属性推荐适合的专家集合Experts并通过Web返回给用户;
所述步骤(2)中得到审查关键词问题集ImpProblemData和对应的问题标签数据集ImpLabelData的具体步骤如下:
(2.1) 定义循环变量i2遍历ProblemData,i2赋初值0;
(2.2) 如果i2<size(ProblemData),则进入步骤(2.3),否则进入步骤(2.12),其中,size ()是返回数据集大小的函数;
(2.3) 运用jieba分词算法将遍历到的ProblemDatai2进行分词和词性标注处理,得到分词后的词数据集VacList{vac1,vac2,…,vacVn},其中Vn为词数量;
(2.4) 定义TextRank窗口范围为4,定义tempHashMap用以存储边集,定义循环变量i3遍历词数据集VacList,i3赋初值0;
(2.5) 如果i3<len(VacList),则进入步骤(2.6),否则进入步骤(2.11),其中,len()是返回数据集长度值的函数;
(2.6) 定义循环变量i4遍历当前词vaci3及之后的词语,i4赋初值0;
(2.7) 如果i4<4,则进入步骤(2.8),否则进入步骤(2.10),其中,len()是返回数据集长度值的函数;
(2.8) 将当前词语vaci3及vaci4组成集合{vaci3,vaci4}存储tempHashMap,若先前存在此集合则将存储值加一;
(2.9) 对i4执行加1操作;
(2.10) 对i3执行加1操作;
(2.11) 对i2执行加1操作;
(2.12) 根据tempHashMap中每一个集合的存储值进行排序,取出对应原数据集ProblemData中每一句存储值最大的三个关键词vac1,vac2,vac3;
(2.13) 将上一步取得的关键词组成集合{vac1,vac2,vac3}加入到集合ImpProblemData中,将该句对应的标签加入到集合ImpLabelData中;
所述步骤(3)中搭建文本卷积神经网络用以训练网络进行问题所属专业分类的具体步骤如下:
(3.1) 根据训练需要将关键词问题数据集ImpProblemData划分,分别定义训练集比例为TrainRate、验证集比例为ValidRate和测试集比例为TestRate;
(3.2) 定义按照TrainRate: ValidRate: TestRate =8:1:1的比例划分已标注的关键词问题数据集ImpProblemData为训练数据集ImpPro_Train、测试数据集ImpPro_Test和验证数据集ImpPro_Valid;
(3.3) 设定网络层数net_layers、 每层单元数batch_size、训练轮次epoch、最大训练次数MaxTime、训练优化器optimizer和每次训练的数据长度data_length用以网格搜索最优化参数,定义循环变量TrainFlag判断训练轮次;
(3.4) 若TrainFlag≤MaxTime,则进入步骤(3.5),否则进入步骤(3.18);
(3.5) 定义ImpDataNum为关键词问题数据集ImpProblemData中数据的个数,
对关键词问题数据进行Embedding;
(3.6) 定义循环变量i5用以遍历ImpProblemData,i5赋初值为0;
(3.7) 如果i5<ImpDataNum,则进入步骤(3.8),否则进入步骤(3.10),其中,len()是返回数据集长度值的函数;
(3.8) 建立word2vec词典,给予每个字id,并通过当前句子所有字的id平均值将句子转换成词向量,定义每条数据的最大序列长度为MaxLength;
(3.9) 对i5执行加1操作;
(3.10) 将训练集ImpPro_Train的数据特征输入预测网络,定义变量MinLoss 用于保存模型参数的最低loss值,定义计数器flags,令flags初始值为1; 每经过一个epoch利用验证集ImpPro_Valid进行参数调整,更新最低loss值;
(3.11) 如果flags≤epoch,则进入步骤(3.12),否则进入步骤(3.17);
(3.12) 如果loss≥MinLoss,则进入步骤(3.13),否则进入步骤(3.15);
(3.13) 利用梯度下降法将误差反向传播回网络,对预测网络的参数net_layers、batch_size、optimizer和data_length进行修正调参;
(3.14) 更新net_layers、batch_size、optimizer和data_length的参数值;
(3.15) 更新MinLoss;
(3.16) 对flags执行加1操作;
(3.17) 选取在验证集上loss值最低的即MinLoss的模型参数并保存模型Model,对TrainFlag执行加1操作;
(3.18) 训练完成,得到最优参数的图审问题专业分类文本卷积神经网络模型Model;
所述步骤(5)中利用Eclat频繁项集抽取算法寻找频繁出现的专家并比较其专业与Profession是否一致的具体步骤如下:
(5.1) 通过将上一步得到的相似度集合Similarities从水平数据格式转变为垂直数据格式,新的相似度集合定义为VerticalSimilarities;
(5.2) 定义循环变量i7用以遍历相似度集合VerticalSimilarities,i7赋初值为0,定义哈希表ExpertHashMap用以存储频繁出现的专家;
(5.3) 如果i7<len(VerticalSimilarities),则进入步骤(5.4),否则进入步骤(5.8),其中,len()是返回数据集长度值的函数;
(5.4) 定义设当前遍历到的垂直相似度集合元素为Experti7,将其与其他专家进行并集处理,设该专家Experti7在相似度项目集合中出现次数为ExpertTime;
(5.5) 如果ExpertTime>3,则进入步骤(5.6),否则进入步骤(5.7);
(5.6) 定义将该专家加入到频繁出现专家哈希表ExpertHashMap,若该专家已存在则做覆盖处理,不会同时存储两个相同专家;
(5.7) 对i7执行加1操作;
(5.8) 定义循环变量i8遍历ExpertHashMap,i8赋初值0,定义哈希表simiHashMap用以存储专家及专家对应相似项目数量;
(5.9) 如果i8<size(ExpertHashMap),则进入步骤(5.10),否则进入步骤(5.19),
其中,size()是返回哈希表大小值的函数;
(5.10) 运用jieba分词算法将遍历到的Experti8参加过的项目进行分词和词性标注处理,得到分词后的词数据集ExpertVacList{expvac1,expvac2,…,expvaceVn},其中eVn为词数量;
(5.11) 定义窗口范围为4,定义tempExpertHashMap用以存储边集,定义循环变量i9遍历专家项目词数据集ExpertList,i9赋初值0;
(5.12) 如果i9<len(ExpertList),则进入步骤(5.13),否则进入步骤(5.18),
其中,len()是返回数据集长度值的函数;
(5.13) 定义循环变量i10遍历当前词expvaci9及之后的词语,i10赋初值0;
(5.14) 如果i10<4,则进入步骤(5.15),否则进入步骤(5.17);
(5.15) 将当前词语expvaci9及expvaci10组成集合{expvaci9,expvaci10}存储tempExpertHashMap,若先前存在此集合则将存储值加一;
(5.16) 对i10执行加1操作;
(5.17) 对i9执行加1操作;
(5.18) 对i8执行加1操作;
(5.19) 根据tempExpertHashMap中每一个集合的存储值进行排序,取出对应原数据集ExpertHashMap中每一句存储值最大的三个关键词expvac1,expvac2,expvac3;
(5.20) 将上一步取得的关键词组成集合{expvac1,expvac2,expvac3}传入到先前训练的专业分类文本卷积神经网络模型Model中;
(5.21) 比较模型输出的预测专业ExpertProfession与先前预测的用户所需要的专家专业Profession,若一致则存入simiHashMap;
(5.22) 将simiHashMap按照相似项目数量进行排序推荐给用户进行选择。
2.根据权利要求1所述的一种基于文本卷积和相似度算法的图审专家组合推荐方法,其特征在于,所述步骤(1)中得到处理后的问题标签数据集LabelData的具体步骤如下:
(1.1)设建筑图纸审查问题数据集为Data={data1,data2,…,dataN},其中N为建筑图纸审查问题数据集大小;
(1.2)声明哈希表ProblemHashMap用于对问题数据进行去重;
(1.3)定义循环变量i1遍历数据集Data,i1赋初值0,对哈希表ProblemHashMap赋初值为空;
(1.4)如果i1<len(Data),则进入步骤(1.5),否则进入步骤(1.9),其中,len()是返回数据集长度值的函数;
(1.5)对i1执行加1操作;
(1.6)设当前遍历到的问题数据为datai1Oral,去除datai1Oral中含有的标点符号如“,”,”。”,“!”得到数据datai1Sign;
(1.7)对数据datai1Sign,根据停用词表去除无实际意义的停用词得到数据ProblemDatai1;
(1.8) 将ProblemDatai1与问题对应的专业LabelDatai1组合存入哈希表ProbelmHashMap,哈希表会对原先存在的相同数据进行覆盖处理;
(1.9) 取出ProblemHashMap中存储的数据取得审查问题集ProblemData,问题标签数据集LabelData。
3.根据权利要求1所述的一种基于文本卷积和相似度算法的图审专家组合推荐方法,其特征在于,所述步骤(4)中通过相似度算法比较用户传入的项目属性集合与原始项目属性集合OralProperties的相似度的具体步骤如下:
(4.1) 通过先前训练的文本卷积神经网络模型Model对用户输入问题语句进行专业分类获取对应专业Profession;
(4.2) 定义循环变量i6遍历用户输入的项目属性集合ProjectProperties;
(4.3) 如果i6<len(ProjectProperties),则进入步骤(4.4),否则进入步骤(4.10),其中,len()是返回数据集长度值的函数;
(4.4) 计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的皮尔逊相似度,记为perSimi;
(4.5) 计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的切比雪夫相似度,记为chebySimi;
(4.6) 计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的余弦相似度,记为cosSimi;
(4.7) 计算用户输入的项目属性集合ProjectProperties与原始项目集合OralProperties之间的曼哈顿相似度,记为manhamSimi;
(4.8) 将上述计算出的相似度组合成集合{perSimi,chebySimi,cosSimi,manhamSimi},比较其离散程度,取离散程度最高即区分度最好的相似度算法算出的相似度作为相似度集合Similarities;
(4.9) 对i6执行加1操作;
(4.10)相似度计算结束。
4.根据权利要求1所述的一种基于文本卷积和相似度算法的图审专家组合推荐方法,其特征在于,所述步骤(6)中开放图审专家推荐知识图谱使用接口根据用户输入的专业问题及项目属性推荐适合的专家集合Experts并通过Web返回给用户的具体步骤如下:
(6.1) 开放专家组合推荐知识图谱使用接口;
(6.2) 用户登录,创建线程池ThreadPool;
(6.3) 检测ThreadPool是否还有任务存在,若有则进入步骤(6.4),否则进入步骤(6.9);
(6.4) 用户通过Web平台输入项目当前存在的问题及项目的一系列属性;
(6.5) 子线程ChildThread获取任务处理;
(6.6) 通过文本卷积算法获取项目问题所属专业,并通过一系列属性计算该项 目与当前库中其他项目的相似度;
(6.7) 按照相似程度得到专家推荐数据集Expert={expert1,expert2,…,expertn};
(6.8) 结束该子线程;
(6.9) 关闭线程池ThreadPool;
(6.10) 写入日志文件DateLog;
(6.11) 将符合要求的专家推荐数据集Expert通过Web返回给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010793623.4A CN112100370B (zh) | 2020-08-10 | 2020-08-10 | 一种基于文本卷积和相似度算法的图审专家组合推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010793623.4A CN112100370B (zh) | 2020-08-10 | 2020-08-10 | 一种基于文本卷积和相似度算法的图审专家组合推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112100370A CN112100370A (zh) | 2020-12-18 |
CN112100370B true CN112100370B (zh) | 2023-07-25 |
Family
ID=73752648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010793623.4A Active CN112100370B (zh) | 2020-08-10 | 2020-08-10 | 一种基于文本卷积和相似度算法的图审专家组合推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112100370B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103631859A (zh) * | 2013-10-24 | 2014-03-12 | 杭州电子科技大学 | 一种面向科技项目的评审专家智能推荐方法 |
JP2014164618A (ja) * | 2013-02-26 | 2014-09-08 | Canon Inc | 頻出パターン抽出装置、頻出パターン抽出方法及びプログラム |
AU2015218497A1 (en) * | 2012-07-09 | 2015-09-24 | Ringit, Inc. | Personal taste assessment method and system |
CN106897370A (zh) * | 2017-01-18 | 2017-06-27 | 淮阴工学院 | 一种基于皮尔逊相似度和FP‑Growth的图审专家推荐方法 |
CN108595711A (zh) * | 2018-05-11 | 2018-09-28 | 成都华数天成科技有限公司 | 一种分布式环境下图模式关联规则挖掘方法 |
CN109062961A (zh) * | 2018-06-27 | 2018-12-21 | 淮阴工学院 | 一种基于知识图谱的专家组合推荐方法 |
CN109753579A (zh) * | 2018-12-12 | 2019-05-14 | 河海大学 | 一种基于频繁项目集的图片标注推荐方法 |
CN109919699A (zh) * | 2017-12-12 | 2019-06-21 | 北京京东尚科信息技术有限公司 | 项目推荐方法、项目推荐系统以及计算机可读介质 |
CN110442618A (zh) * | 2019-07-25 | 2019-11-12 | 昆明理工大学 | 融合专家信息关联关系的卷积神经网络评审专家推荐方法 |
CN111078873A (zh) * | 2019-11-22 | 2020-04-28 | 北京市科学技术情报研究所 | 一种基于引文网络与科研合作网络的领域专家遴选方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013010024A1 (en) * | 2011-07-12 | 2013-01-17 | Thomas Pinckney | Recommendations in a computing advice facility |
RU2731659C2 (ru) * | 2016-09-09 | 2020-09-07 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и устройство для обучения алгоритма машинного обучения (MLA) по созданию рекомендаций содержимого в системе рекомендаций и способ и устройство для создания рекомендуемого содержимого с помощью алгоритма машинного обучения |
-
2020
- 2020-08-10 CN CN202010793623.4A patent/CN112100370B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2015218497A1 (en) * | 2012-07-09 | 2015-09-24 | Ringit, Inc. | Personal taste assessment method and system |
JP2014164618A (ja) * | 2013-02-26 | 2014-09-08 | Canon Inc | 頻出パターン抽出装置、頻出パターン抽出方法及びプログラム |
CN103631859A (zh) * | 2013-10-24 | 2014-03-12 | 杭州电子科技大学 | 一种面向科技项目的评审专家智能推荐方法 |
CN106897370A (zh) * | 2017-01-18 | 2017-06-27 | 淮阴工学院 | 一种基于皮尔逊相似度和FP‑Growth的图审专家推荐方法 |
CN109919699A (zh) * | 2017-12-12 | 2019-06-21 | 北京京东尚科信息技术有限公司 | 项目推荐方法、项目推荐系统以及计算机可读介质 |
CN108595711A (zh) * | 2018-05-11 | 2018-09-28 | 成都华数天成科技有限公司 | 一种分布式环境下图模式关联规则挖掘方法 |
CN109062961A (zh) * | 2018-06-27 | 2018-12-21 | 淮阴工学院 | 一种基于知识图谱的专家组合推荐方法 |
CN109753579A (zh) * | 2018-12-12 | 2019-05-14 | 河海大学 | 一种基于频繁项目集的图片标注推荐方法 |
CN110442618A (zh) * | 2019-07-25 | 2019-11-12 | 昆明理工大学 | 融合专家信息关联关系的卷积神经网络评审专家推荐方法 |
CN111078873A (zh) * | 2019-11-22 | 2020-04-28 | 北京市科学技术情报研究所 | 一种基于引文网络与科研合作网络的领域专家遴选方法 |
Non-Patent Citations (6)
Title |
---|
An expert recommendation algorithm based on Pearson correlation coefficient and FP-growth;Feng, W 等;Cluster Computing;第22卷;7401–7412 * |
专家多源信息融合算法研究;方强强 等;江苏海洋大学学报(自然科学版);第29卷(第04期);16-23 * |
基于关联规则的图书智能推荐系统研究;丁雪;;图书情报论坛(第04期);50-54+78 * |
基于图计算的论文审稿自动推荐系统;谢玮;沈一;马永征;;计算机应用研究;第33卷(第03期);164-167 * |
科技项目评审专家推荐系统模型;胡斌;徐小良;;电子科技(第07期);5-9 * |
面向复杂产品系统项目评价专家遴选方法研究;运筹与管理;第33卷(第3期);122-131 * |
Also Published As
Publication number | Publication date |
---|---|
CN112100370A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112100344B (zh) | 一种基于知识图谱的金融领域知识问答方法 | |
Aligon et al. | A collaborative filtering approach for recommending OLAP sessions | |
US10783451B2 (en) | Ensemble machine learning for structured and unstructured data | |
CN112632228A (zh) | 一种基于文本挖掘的辅助评标方法及系统 | |
CN106708929B (zh) | 视频节目的搜索方法和装置 | |
CN107844533A (zh) | 一种智能问答系统及分析方法 | |
US9400826B2 (en) | Method and system for aggregate content modeling | |
CN112883229B (zh) | 基于多特征图注意网络模型的视频-文本跨模态检索方法和装置 | |
CN112101029B (zh) | 一种基于bert模型的高校导师推荐管理方法 | |
CN118245564B (zh) | 一种支持语义查重查新的特征比对库构建方法及装置 | |
CN118132719A (zh) | 一种基于自然语言处理的智能对话方法及系统 | |
Lee et al. | A hierarchical document clustering approach with frequent itemsets | |
Wei et al. | Online education recommendation model based on user behavior data analysis | |
CN117933249A (zh) | 一种装备故障知识的智能交互方法及系统 | |
WO2023246849A1 (zh) | 回馈数据图谱生成方法及冰箱 | |
CN116049376B (zh) | 一种信创知识检索回复的方法、装置和系统 | |
CN112100370B (zh) | 一种基于文本卷积和相似度算法的图审专家组合推荐方法 | |
CN114298020B (zh) | 一种基于主题语义信息的关键词向量化方法及其应用 | |
CN112100323A (zh) | 一种基于表示学习的隐藏关联挖掘方法 | |
Wehnert et al. | ERST: leveraging topic features for context-aware legal reference linking | |
Huang et al. | Rough-set-based approach to manufacturing process document retrieval | |
CN116720517B (zh) | 搜索词成分识别模型构建方法以及搜索词成分识别方法 | |
CN114416947B (zh) | 关系感知相似问题识别评估方法、系统、设备及存储介质 | |
US12001467B1 (en) | Feature engineering based on semantic types | |
Yang et al. | Construction and analysis of scientific and technological personnel relational graph for group recognition |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231218 Address after: Floor 12, 102-3, Qingcheng Creative Valley Industrial Park, No. 67 Xiyuan Street, Qingjiangpu District, Huai'an City, Jiangsu Province, 223001 Patentee after: HUAIAN FUN SOFWARE CO.,LTD. Address before: 223005 Jiangsu Huaian economic and Technological Development Zone, 1 East Road. Patentee before: HUAIYIN INSTITUTE OF TECHNOLOGY |
|
TR01 | Transfer of patent right |