一种基于ai的程序语言间转换的方法技术

技术编号:32854455 阅读:10 留言:0更新日期:2022-03-30 19:22
本发明专利技术公开了一种基于ai的程序语言间转换的方法,主要包括以下步骤:1.数据爬虫,根据几个特定语言学习网站进行学习语言基本内容,得到基本训练数据,2.爬取数据后,数据预处理,训练得到两个基本的程序生产模型;3.根据程序规则和nlp训练程序长文本分段模型;4.使用程序文本分段模型对原代码文本进行分段处理5.分段之后使用from模型进行逻辑抽取,得到程序逻辑标准文件;5.根据代码逻辑标准文件和to模型的程序生产,进行代码文件转换。本发明专利技术解决了不同语言间转换规则的问题,可扩展其他语言,减少了琐碎且重复性的开发;节省了大量人力来开发转换器,能够根据配置进行语言之间的转换,以达到高效率高扩展高准确率的目的。以达到高效率高扩展高准确率的目的。以达到高效率高扩展高准确率的目的。

【技术实现步骤摘要】
一种基于ai的程序语言间转换的方法


[0001]本专利技术涉及深度学习,机器学习领域,特别涉及一种基于ai的程序语言间转换的方法。

技术介绍

[0002]在从汇编

低级

高级程序语言处理高速的发展阶段中,越来越多的语言使用在各种企业中,但一些企业信息系统上是使用相对比较旧的语言进行开发的,而企业信息化的改造在不停发展,一些企业随着业务发展,规模不断扩大,有着跨语言信息化系统升级或者重构的需求,但大多数做法是使用大量人力来进行系统改造。也一些也有使用转换器/翻译器进行改造。
[0003]很多企业使用人力的方式来进行信息系统跨语言改造,这耗费了大量的人力和财力以及工期,也有部分企业使用转换器来做升级,但转换器需要人们进行编写,而且限制了两端语言针对性强不易扩展,当换语言时也需要重新编写。因此为了提高效率和扩展性有必要使用新的技术进行实现,ai在科技发展中越来越重要。

技术实现思路

[0004]本专利技术要解决的技术问题是克服现有技术的缺陷,提供一种基于ai的程序语言间转换的方法,能够根据配置进行语言之间的转换,具体的转换根据配置选择不同模型实现代码转换,以达到高效率高扩展高准确率的目的。
[0005]本专利技术提供了如下的技术方案:
[0006]本专利技术提供一种基于ai的程序语言间转换的方法,具体包括以下步骤:
[0007]S1.配置训练的语言类型,Form COBOL,To JAVA;
[0008]S2.选择程序语言基础网站:菜鸟教学,W3CSchool,CSDN,设定爬虫程序的四个基本信息,数据定义成分,程序控制成分,数据传输成分,函数成分;其中数据定义成分划分为基本数据和高级数据;程序控制成分划分为顺序,选择,循环;数据传输成分定为输入和输出;函数成分主要为函数逇定义和执行,单模型相同类型的数据集合需大于80份数据,单量大于400份数据,两个语言类型总量大于800数据集;
[0009]S3.根据S1获得数据后进行数据预处理;划分训练数据集,验证数据集和测试数据集,为了防止模型过拟合,这里测试数据进行重排,乱序,重采样及复制数据加上随机噪声处理;
[0010]S4.得到From和To模型训练集,验证集和测试集合后,选择分类模型进行训练,选择分类模型;使用训练集多次训练,验证集合进行验证来评估模型,后利用测试集合进行模型优化,后得到两个From和To程序语言识别和生成模型;
[0011]S5.由于程序语言基本为英文,这相比中文来说NLP文本处理方便很多;利用NLP自然语言处理和规则程序文本分段模型,这里以数据定义,逻辑分支,函数,单挑语句等规则进行段落划分标准,对程序文本进行分段处理,方便后续进行代码逻辑识别;
[0012]S6.得到程序的分段后,利用From进行逻辑识别提取,提取后进行逻辑组合得到本方法所需要的逻辑标准文件;
[0013]S7.得到逻辑标准文件,验证其文档格式是否是谓词组合;
[0014]S8.利用To模型和逻辑标准文件,生成需要转换的代码;
[0015]S9.得到转换后的代码后,这里依然要使用人工来验证准确,防止实际项出现问题。
[0016]与现有技术相比,本专利技术的有益效果如下:
[0017]本专利技术根据网站模型训练的设计方法很好的解决了不同语言间转换规则的问题,也为其他语言需求提供了良好的扩展,减少了琐碎且重复性的开发;
[0018]在某些领域会有系统跨语言改造的需求,使用ai程序转换相比人工转换大大提高了效率,且相比针对语言之间的转换器来说,节省了大量人力来开发转换器,能够根据配置进行语言之间的转换,具体的转换根据配置选择不同模型实现代码转换,以达到高效率高扩展高准确率的目的。
附图说明
[0019]附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中:
[0020]图1是本方法专利技术的一种自基于强化学习代码基于贝叶斯识别模型训练流程示意图;
[0021]图2是本方法专利技术的一种基于ai的程序转换的流程示意图;
[0022]图3是本专利技术的实施例示意图之一;
[0023]图4是本专利技术的实施例示意图之二;
[0024]图5是本专利技术的实施例示意图之三;
[0025]图6是本专利技术的实施例示意图之四。
具体实施方式
[0026]以下结合附图对本专利技术的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本专利技术,并不用于限定本专利技术。其中附图中相同的标号全部指的是相同的部件。
[0027]实施例1
[0028]在程序语言处理高速的发展阶段中,语言之间的差别也慢慢变大。但语言始终是信息的载体,不论怎么发展不同的语言本身所传达的信息是一致的。如何进行有效的语言之间的转换慢慢也开始引人思考。本专利技术主要包括以下步骤:1.数据爬虫,根据几个特定语言学习网站进行学习语言基本内容,数据成分,预算成分,控制成分,传输成分等得到基本训练数据,2.爬取数据后,数据预处理,训练得到两个基本的程序生产模型(from,to);3.根据程序规则和nlp训练程序长文本分段模型;4.使用程序文本分段模型对原代码文本进行分段处理5.分段之后使用from模型进行逻辑抽取,得到程序逻辑标准文件;5.根据代码逻辑标准文件和to模型的程序生产,进行代码文件转换。6.转换验证,对结果进行准确率验证;7.根据上一步对涉及模型进行优化。
[0029]如图1

6,本专利技术提供一种基于ai的程序语言间转换的方法,具体包括以下步骤:
[0030]S1.配置训练的语言类型,Form COBOL,To JAVA;
[0031]S2.选择程序语言基础网站:菜鸟教学,W3CSchool,CSDN,设定爬虫程序的四个基本信息,数据定义成分,程序控制成分,数据传输成分,函数成分;其中数据定义成分划分为基本数据和高级数据;程序控制成分划分为顺序,选择,循环;数据传输成分定为输入和输出;函数成分主要为函数逇定义和执行,单模型相同类型的数据集合需大于80份数据,单量大于400份数据,两个语言类型总量大于800数据集;
[0032]S3.根据S1获得数据后进行数据预处理;划分训练数据集,验证数据集和测试数据集,为了防止模型过拟合,这里测试数据进行重排,乱序,重采样及复制数据加上随机噪声处理;
[0033]S4.得到From和To模型训练集,验证集和测试集合后,选择分类模型进行训练,选择分类模型;使用训练集多次训练,验证集合进行验证来评估模型,后利用测试集合进行模型优化,后得到两个From和To程序语言识别和生成模型;
[0034]S5.由于程序语言基本为英文,这相比中文来说NLP文本处理方便很多;利用NLP自然语言处理和规则程序文本分段模型,这里以数据定义,逻辑分支,函数,单挑语句等规则进行段落划分标准,对程序文本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于ai的程序语言间转换的方法,其特征在于,具体包括以下步骤:S1.配置训练的语言类型,Form COBOL,To JAVA;S2.选择程序语言基础网站:菜鸟教学,W3CSchool,CSDN,设定爬虫程序的四个基本信息,数据定义成分,程序控制成分,数据传输成分,函数成分;其中数据定义成分划分为基本数据和高级数据;程序控制成分划分为顺序,选择,循环;数据传输成分定为输入和输出;函数成分主要为函数逇定义和执行,单模型相同类型的数据集合需大于80份数据,单量大于400份数据,两个语言类型总量大于800数据集;S3.根据S1获得数据后进行数据预处理;划分训练数据集,验证数据集和测试数据集,为了防止模型过拟合,这里测试数据进行重排,乱序,重采样及复制数据加上随机噪声处理;S4.得到From和To模型训练...

【专利技术属性】
技术研发人员:李想
申请(专利权)人:上海赛可出行科技服务有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1