System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机科学和水土保持,尤其涉及一种利用sbert模型、faiss(fastai similarity search and retrieval system)向量化检索工具和apriori算法进行生产建设项目水土保持措施推荐的方法。
技术介绍
1、水土保持是指在保护土地资源和防止土壤侵蚀的同时,通过合理利用水土资源,保障农业生产和生态环境的一系列措施。随着全球气候变化和人类活动的不断加剧,水土流失问题愈发严重,对农业生产、生态环境和人类生活造成了严重的影响。因此,研究和实施有效的水土保持措施,对于促进可持续发展具有重要意义。
2、传统的水土保持措施主要依靠经验和定性分析,这些方法在一定程度上能够解决水土流失问题,但由于缺乏系统性和科学性,往往难以应对复杂多变的自然环境。此外,随着技术的进步和数据的积累,如何利用大数据和智能算法进行水土保持措施的科学决策,成为当前研究的热点和难点。
技术实现思路
1、本专利技术的目的是提供一种基于自然语言处理模型sbert、faiss向量化检索工具和关联规则挖掘算法apriori的水土保持措施推荐方法,通过高效的相似性搜索和关联规则挖掘,为不同区域推荐最适合的水土保持措施,克服传统方法的局限性。
2、本专利技术对上述目的通过以下技术方案实现:
3、一种基于自然语言处理和apriori算法的生产建设项目水土保持措施推荐方法,包括以下步骤:
4、搜集已取得水行政主管部门批复的生产建设项目水土保
5、使用自然语言处理模型生成每份报告文本的第一嵌入向量;
6、针对当前需要推荐水土保持措施的生产建设项目,使用自然语言处理模型生成描述其项目类型和所在区域自然地理条件文本的第二嵌入向量,所述自然地理条件包括地形、气候、土壤以及植被;
7、使用向量化检索工具对所有报告文本的第一嵌入向量进行索引,通过与第二嵌入向量进行匹配,找到与当前需要推荐水土保持措施的生产建设项目的项目类型和所在区域自然地理条件描述文本最相似的若干报告文本;
8、使用apriori算法从最相似的若干报告文本中挖掘水土保持措施与自然地理条件之间的关联规则;
9、基于挖掘出的关联规则,从相似报告文本中筛选出最匹配当前区域自然地理条件的水土保持措施。
10、进一步的,根据《生产建设项目水土流失防治标准》(gb/t50434-2018),通过计算水土流失防治指标,评估筛选出的水土保持措施对防治水土流失的效果;所述水土流失防治指标包括水土流失治理度、土壤流失控制比、渣土防护率、表土保护率、林草植被恢复率和林草覆盖率。
11、进一步的,所述自然语言处理模型为sbert模型,sbert模型针对句子级别的任务进行训练,生成表示句子或单词的上下文信息的词嵌入,所述句子级别的任务包括语义相似度计算。
12、进一步的,所述向量化检索工具采用faiss进行相似性搜索索引。
13、进一步的,所述对水土保持方案报告资料进行文本预处理,包括:分词、去除停用词和词干提取,其中分词是将文本分解成单词序列,去除停用词是删除文本中无意义的常见词语,词干提取是将单词还原为词干形式,得到的报告文本为si={w1,w2,...,wn},其中wi为报告文本中的第i个单词,将预处理得到的报告文本si存储在关系型数据库中。
14、进一步的,所述使用自然语言处理模型生成每份报告文本的第一嵌入向量,包括:
15、步骤21:词嵌入层:将输入文本分词后的序列转化为机器学习模型接受的格式,每个词映射为一个定长的嵌入向量ei:
16、ei=sbert(wi)
17、步骤22:位置编码:将位置编码向量pi添加到每个嵌入向量ei上,得到词向量xi,以包含单词在句子中的位置信息:
18、xi=ei+pi
19、步骤23:生成第一嵌入向量μi:将加上位置编码后的词向量序列{x1,x2,...,xn}输入到transformer编码器中,transformer编码器由多个自注意力层和前馈神经网络层组成,词向量序列经过transformer编码器输出为第一嵌入向量μi:
20、μi=transformer(x1,x2,...,xn)。
21、进一步的,所述使用向量化检索工具对所有报告文本的第一嵌入向量进行索引,通过与第二嵌入向量进行匹配,找到与当前需要推荐水土保持措施的生产建设项目的项目类型和所在区域自然地理条件描述文本最相似的若干报告文本,包括:
22、步骤41:选择索引类型:选择内存映射索引作为相似性搜索索引类型,内存映射索引通过分区来加速搜索,每个分区有一个代表向量;
23、步骤42:相似性搜索,通过计算第二嵌入向量u2和第一嵌入向量质心μi之间的余弦相似度进行相似性搜索,找到第二嵌入向量的最相似向量,从而找到与当前区域描述最相似的若干报告。
24、进一步的,所述余弦相似度为向量u2和μi之间夹角θ的余弦值cos(θ),计算公式如下:
25、
26、式中,cos(θ)表示向量u2和μi之间夹角θ的余弦值,余弦值越接近1,表示两个向量越相似;余弦值越接近0,表示两个向量越不相似。
27、进一步的,所述使用apriori算法从最相似的若干报告文本中挖掘水土保持措施与自然地理条件之间的关联规则,包括:
28、步骤51:生成频繁项集
29、(1)从单个项开始,生成大小为1的候选项集c1;
30、(2)扫描数据库,计算每个候选项集的支持度,找出支持度大于或等于最小支持度阈值的频繁项集f1;
31、(3)通过频繁项集生成候选项集:利用频繁项集fk生成大小为k+1的候选项集ck+1;
32、(4)扫描数据库,计算每个候选项集ck+1的支持度,找出支持度大于或等于最小支持度阈值的频繁项集fk+1;
33、(5)重复步骤(3)和步骤(4),直到无法生成新的频繁项集为止。
34、步骤52:生成关联规则
35、(2)对于每个频繁项集fk,生成所有可能的关联规则x→y,其中和y=fk\x;
36、(2)对于每个关联规则,计算支持度和置信度:
37、(3)对于每个频繁项集,生成所有可能的关联规则x→y,并计算其支持度和置信度,记录每个规则的支持度和置信度,设置最小支持度和置信度阈值,只保留支持度和置信度都满足最小支持度和最小置信度阈值的规则,以筛选出强关联规则。
38、进一步的,步骤52具体包括:
39、步骤521:计算支持度
40、定义:支持度是指一个项集在所有事务中出现的频率;
41、公式:
42、
43、步骤522:计算置信度
...【技术保护点】
1.一种基于自然语言处理和Apriori算法的生产建设项目水土保持措施推荐方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求1所述的方法,其特征在于,所述自然语言处理模型为SBERT模型,SBERT模型针对句子级别的任务进行训练,生成表示句子或单词的上下文信息的词嵌入,所述句子级别的任务包括语义相似度计算。
4.根据权利要求1所述的方法,其特征在于,所述向量化检索工具采用Faiss进行相似性搜索索引。
5.根据权利要求4所述的方法,其特征在于,所述对水土保持方案报告资料进行文本预处理,包括:分词、去除停用词和词干提取,其中分词是将文本分解成单词序列,去除停用词是删除文本中无意义的常见词语,词干提取是将单词还原为词干形式,得到的报告文本为Si={w1,w2,...,wn},其中wi为报告文本中的第i个单词,将预处理得到的报告文本Si存储在关系型数据库中。
6.根据权利要求5所述的方法,其特征在于,所述使用自然语言处理模型生成每份报告文本的第一嵌入向量,包括:
8.根据权利要求7所述的方法,其特征在于,所述余弦相似度为向量u2和μi之间夹角θ的余弦值cos(θ),计算公式如下:
9.根据权利要求1所述的方法,其特征在于,所述第一嵌入向量生成公式如下:所述使用Apriori算法从最相似的若干报告文本中挖掘水土保持措施与自然地理条件之间的关联规则,包括:
10.根据权利要求9所述的方法,其特征在于,步骤52具体包括:
...【技术特征摘要】
1.一种基于自然语言处理和apriori算法的生产建设项目水土保持措施推荐方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求1所述的方法,其特征在于,所述自然语言处理模型为sbert模型,sbert模型针对句子级别的任务进行训练,生成表示句子或单词的上下文信息的词嵌入,所述句子级别的任务包括语义相似度计算。
4.根据权利要求1所述的方法,其特征在于,所述向量化检索工具采用faiss进行相似性搜索索引。
5.根据权利要求4所述的方法,其特征在于,所述对水土保持方案报告资料进行文本预处理,包括:分词、去除停用词和词干提取,其中分词是将文本分解成单词序列,去除停用词是删除文本中无意义的常见词语,词干提取是将单词还原为词干形式,得到的报告文本为si={w1,w2,...,wn},其中wi为报告文本中的第i个单词,将...
【专利技术属性】
技术研发人员:刘纪根,王家乐,杨海明,王志刚,张长伟,任洪玉,蒲坚,王可,陈兰,熊怡,
申请(专利权)人:长江水利委员会长江科学院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。