被配置为使用教学编程语言进行工作以训练经训练的人工智能模型的人工智能引擎制造技术

技术编号:20759020 阅读:20 留言:0更新日期:2019-04-03 13:03
在一些实施例中提供了一种被配置为使用教学编程语言进行工作的人工智能(“AI”)引擎,教学编程语言被配置为使得作者能够1)定义要由AI模型学习的心智模型,心智模型包括输入、一个或多个概念节点、一个或多个流节点、和输出,以及2)定义用于分别在一个或多个概念节点上训练AI模型的一个或多个课程。编译器可以被配置为从用教学编程语言编写的源代码生成汇编代码。架构师模块可以被配置为从汇编代码提出神经网络布局。学习者模块可以被配置为从神经网络布局构建AI模型。讲师模块可以被配置为使用一个或多个课程分别在一个或多个概念节点上训练AI模型。

【技术实现步骤摘要】
【国外来华专利技术】被配置为使用教学编程语言进行工作以训练经训练的人工智能模型的人工智能引擎相关申请的交叉引用本申请要求于2017年1月26日提交的美国专利申请号15/416,904和于2016年1月27日提交的题为“BONSAIPLATFORM,LANGUAGE,ANDTOOLING”的临时专利申请号US62/287,861的优先权,其全部内容通过引用并入本文中。版权声明本公开的一部分包含受版权保护的材料。版权所有者不反对任何人对美国专利商标局专利文件或记录中出现的受版权保护的材料进行传真复制,但在其他方面保留所有版权。
本文中提供的设计的实施例总体上涉及人工智能系统及其方法。
技术介绍
人工智能(“AI”)有可能成为21世纪及以后的最具影响力的技术之一。不幸的是,目前希望使用AI进行工作的软件开发者必须学习复杂的工具包,使用有限的应用编程接口(“API”),使用用于AI的受限制的黑盒解决方案或其某种组合。必须克服上述限制以用于软件开发者和企业使用AI解决实际问题。此外,在不到20,000名能够在AI的最低级别构建AI的数据科学专家的情况下,需要使软件开发社区的2000万或更多软件开发者更容易使用AI进行工作。本文中提供了解决前述问题的AI系统和方法。
技术实现思路
本文中在一些实施例中提供了一种被配置为使用教学编程语言进行工作的AI引擎,AI引擎模块包括编译器和一个或多个AI引擎模块,一个或多个AI引擎模块包括架构师模块、讲师模块和学习者模块。编译器可以被配置为从用教学编程语言编写的源代码生成汇编代码。教学编程语言可以被配置为使得作者能够定义要由AI模型学习的心智模型,心智模型包括输入、一个或多个概念节点、一个或多个流节点、和输出。教学编程语言还可以被配置为使得作者能够定义用于分别在一个或多个概念节点上训练AI模型的一个或多个课程。架构师模块可以被配置为从汇编代码提出具有一个或多个神经网络层的神经网络布局。学习者模块可以被配置为使用来自由架构师模块提出的神经网络布局的一个或多个神经网络层来构建AI模型。讲师模块可以被配置为使用一个或多个课程分别在一个或多个概念节点上训练由学习者模块构建的AI模型。本文中在一些实施例中还提供了一种AI系统,其包括一个或多个远程服务器和一个或多个本地客户端。一个或多个远程服务器可以包括编译器;包括架构师模块、讲师模块和学习者模块的一个或多个AI引擎模块;被配置为启用与AI引擎的客户端交互的一个或多个服务器侧客户端服务器接口。编译器可以被配置为从用教学编程语言编写的源代码生成汇编代码。教学编程语言可以被配置为使得作者能够定义要由AI模型学习的心智模型,心智模型包括输入、一个或多个概念节点、一个或多个流节点、和输出。教学编程语言还可以被配置为使得作者能够定义用于分别在一个或多个概念节点上训练AI模型的一个或多个课程。架构师模块可以被配置为从汇编代码提出具有一个或多个神经网络层的神经网络布局。学习者模块可以被配置为使用来自由架构师模块提出的神经网络布局的一个或多个神经网络层来构建AI模型。讲师模块可以被配置为使用一个或多个课程分别在一个或多个概念节点上训练由学习者模块构建的AI模型。一个或多个本地客户端可以包括被配置为使得作者能够生成用教学编程语言编写的源代码的编码器。一个或多个本地客户端还可以包括被配置为在一个或多个客户端交互中启用与AI引擎的客户端交互的一个或多个客户端侧客户端服务器接口。一个或多个客户端交互可以包括提交用于训练AI模型的源代码以及基于训练数据针对一个或多个预测使用经训练的AI模型。AI系统可以包括至少一个服务器侧训练数据源或至少一个客户端侧训练数据源。本文中在一些实施例中还提供了一种用于被配置为使用教学编程语言进行工作的AI引擎的方法,该方法包括使得作者能够使用教学编程语言来定义要由AI模型来学习的心智模型,心智模型包括输入、一个或多个概念节点、一个或多个流节点、和输出;使得作者能够使用教学编程语言定义用于分别在一个或多个概念节点上训练AI模型的一个或多个课程;执行编译器以从用教学编程语言编写的源代码生成汇编代码;并且执行包括架构师模块、讲师模块和学习者模块的一个或多个AI引擎模块以处理汇编代码。在执行架构师模块时,架构师模块可以被配置为从汇编代码提出具有一个或多个神经网络层的神经网络布局。在执行学习者模块时,学习者模块可以被配置为使用来自由架构师模块提出的神经网络布局的一个或多个神经网络层来构建AI模型。在执行讲师模块时,讲师模块可以被配置为使用一个或多个课程分别在一个或多个概念节点上训练由学习者模块构建的AI模型。参考构成本专利申请的公开的附图、说明书和权利要求,可以更好地理解本文中提供的设计的这些和其他特征。附图说明附图涉及本文中提供的设计的一些实施例,在附图中:图1A提供了示出简单的人工神经网络的示意图。图1B提供了示出根据一些实施例的构建、训练和部署经训练的AI模型的示意图。图2A提供了示出根据一些实施例的AI系统的示意图。图2B提供了示出根据一些实施例的与AI系统相关联的方法的示意图。图3A提供了示出根据一些实施例的AI系统的示意图。图3B提供了示出根据一些实施例的与AI系统相关联的方法的示意图。图4A提供了示出根据一些实施例的包括一个概念的心智模型的示意图。图4B提供了示出根据一些实施例的包括多个概念的心智模型的示意图。图5提供了示出根据一些实施例的AI系统的示意图。图6A提供了示出根据一些实施例的AI系统的示意图。图6B提供了示出根据一些实施例的AI系统的示意图。图7A提供了示出根据一些实施例的用于与AI系统一起使用教学编程语言的方法的示意图。图7B提供了示出根据一些实施例的用于与AI系统一起使用教学编程语言的方法的示意图。图8提供了根据一些实施例的一个或多个网络。图9提供了根据一些实施例的一个或多个计算系统。虽然设计经受各种修改、等同物和替代形式,但是其特定实施例在附图中通过示例的方式示出,并且现在详细描述。应当理解,设计不限于所公开的特定实施例,而是相反,意图在于使用特定实施例覆盖所有修改、等同物和替代形式。具体实施方式在以下描述中,阐述了很多具体细节,诸如设备中的特定数据信号、命名组件、存储器等的示例,以便提供对本设计的透彻理解。然而,对于本领域普通技术人员很清楚的是,可以在没有这些具体细节的情况下实践本设计。在其他情况下,公知的组件或方法没有被详细描述,而是在框图中被描述,以避免不必要地模糊本设计。此外,可以进行诸如第一驱动器等特定数字引用。但是,特定数字引用不应当被解释为文字顺序,而是被解释为第一通知与第二通知不同。因此,所阐述的具体细节仅仅是示例性的。具体细节可以在本设计的精神和范围内变化,并且仍然被认为是在本设计的精神和范围内。术语“耦合”被定义为表示直接连接到组件或通过另一组件间接连接到组件。本文中使用的“AI模型”包括但不限于神经网络,诸如循环(recurrent)神经网络、递归(recursive)神经网络、前馈神经网络、卷积神经网络、深度信念网络和卷积深度信念网络;多层感知器;自组织映射;深玻尔兹曼机器;以及堆叠式去噪自动编码器。本文中使用的“人工神经网络”或简称为“神经网络”可以包括高度互连的处理元件网络,每个处理元件可选本文档来自技高网...

【技术保护点】
1.一种被配置为使用教学编程语言进行工作的人工智能(“AI”)引擎,包括:在存储器中的编译器,被配置用于由一个或多个处理器执行以从用所述教学编程语言编写的源代码生成汇编代码,其中所述教学编程语言被配置为使得作者能够定义要由AI模型学习的心智模型,所述心智模型包括输入、一个或多个概念节点、和输出,以及其中所述教学编程语言还被配置为使得作者能够定义用于分别在所述一个或多个概念节点上训练所述AI模型的一个或多个课程;以及在所述存储器中的一个或多个AI引擎模块,包括架构师模块、讲师模块和学习者模块,其中在由所述一个或多个处理器执行所述架构师模块时,所述架构师模块被配置为从所述汇编代码提出具有一个或多个神经网络层的神经网络布局,其中在由所述一个或多个处理器执行所述学习者模块时,所述学习者模块被配置为使用来自由所述架构师模块提出的所述神经网络布局的所述一个或多个神经网络层来构建所述AI模型,其中在由所述一个或多个处理器执行所述讲师模块时,所述讲师模块被配置为使用所述一个或多个课程分别在所述一个或多个概念节点上训练由所述学习者模块构建的所述AI模型,以及其中利用所述教学编程语言通过就如何教导所述AI引擎找到问题的解决方案在脚本代码中表达所述解决方案来改进所述AI引擎的训练和功能,而不是使用针对需要直接计算所述AI模型的所述解决方案、并且针对其进行训练的低级别机制的另一种编程语言,这通过进行如何教导所述AI引擎找到所述解决方案的一系列特别关注的训练会话、而不是试图产生在一个会话中计算整个解决方案的算法的训练会话而节省了错误的训练周期。...

【技术特征摘要】
【国外来华专利技术】2016.01.27 US 62/287,861;2017.01.26 US 15/417,0561.一种被配置为使用教学编程语言进行工作的人工智能(“AI”)引擎,包括:在存储器中的编译器,被配置用于由一个或多个处理器执行以从用所述教学编程语言编写的源代码生成汇编代码,其中所述教学编程语言被配置为使得作者能够定义要由AI模型学习的心智模型,所述心智模型包括输入、一个或多个概念节点、和输出,以及其中所述教学编程语言还被配置为使得作者能够定义用于分别在所述一个或多个概念节点上训练所述AI模型的一个或多个课程;以及在所述存储器中的一个或多个AI引擎模块,包括架构师模块、讲师模块和学习者模块,其中在由所述一个或多个处理器执行所述架构师模块时,所述架构师模块被配置为从所述汇编代码提出具有一个或多个神经网络层的神经网络布局,其中在由所述一个或多个处理器执行所述学习者模块时,所述学习者模块被配置为使用来自由所述架构师模块提出的所述神经网络布局的所述一个或多个神经网络层来构建所述AI模型,其中在由所述一个或多个处理器执行所述讲师模块时,所述讲师模块被配置为使用所述一个或多个课程分别在所述一个或多个概念节点上训练由所述学习者模块构建的所述AI模型,以及其中利用所述教学编程语言通过就如何教导所述AI引擎找到问题的解决方案在脚本代码中表达所述解决方案来改进所述AI引擎的训练和功能,而不是使用针对需要直接计算所述AI模型的所述解决方案、并且针对其进行训练的低级别机制的另一种编程语言,这通过进行如何教导所述AI引擎找到所述解决方案的一系列特别关注的训练会话、而不是试图产生在一个会话中计算整个解决方案的算法的训练会话而节省了错误的训练周期。2.根据权利要求1所述的AI引擎,其中所述架构师模块还被配置为解析以所述教学编程语言的脚本代码,以便在所述AI模型的所述一个或多个网络层上映射所述心智模型的所述一个或多个概念节点,以及其中所述讲师模块还被配置为分析以所述教学编程语言的所述脚本代码,以便在所述一个或多个概念节点和用于训练所述AI模型的对应的所述一个或多个课程中找到起始点。3.根据权利要求1所述的AI引擎,其中所述讲师模块还被配置为在一个或多个训练周期中,基于所述教学编程语言的训练参数,使用来自选自模拟器、训练数据生成器、训练数据数据库或其组合的一个或多个训练数据源的训练数据来训练所述AI模型,以及其中所述讲师模块还被配置为在讲师模块确定的终止条件下终止神经网络训练。4.根据权利要求1所述的AI引擎,其中所述教学编程语言还被配置为使得作者能够定义描述要通过所述心智模型进行流式传输的一个或多个数据类型的模式,所述心智模型包括所述心智模型中的所述一个或多个概念节点和一个或多个流节点。5.根据权利要求4所述的AI引擎,其中所述编译器还被配置为匹配检查所述模式,并且如果预期匹配的所述模式不匹配,则报告一个或多个错误,以及其中所述匹配检查是结构性的,因为如果具有不同模式名称的任何一对模式以相同的顺序定义相同的字段类型列表,则所述一对模式匹配。6.根据权利要求4所述的AI引擎,其中所述数据类型包括选自字符串、整数、浮点数和布尔值的原始数据类型;结构化数据类型;约束数据类型,具有限制所述约束数据类型的数据的范围表达式;及其组合。7.根据权利要求1所述的AI引擎,其中所述教学编程语言还被配置为使得作者能够按名称、预测类型、输出、以及包括前导输入提供概念节点和后续输出接受概念节点的所述心智模型中的一个或多个连接概念节点,来定义所述一个或多个概念节点中的每个概念节点。8.根据权利要求1所述的AI引擎,其中所述教学编程语言还被配置为使得作者能够按名称、要训练的所述概念节点、训练数据源类型、训练数据源名称、针对要训练的所述概念节点的所述课程的一个或多个功课、以及包括针对要训练的所述概念节点的终止条件的目标,来定义所述一个或多个课程中的每个课程。9.根据权利要求8所述的AI引擎,其中所述教学编程语言还被配置为使得作者能够按名称、要跟随的前导功课、针对所述功课的数据配置、以及针对要训练的所述概念节点的所述目标的所述终止条件,来定义所述一个或多个功课中的每个功课。10.根据权利要求1所述的AI引擎,其中所述教学编程语言还被配置为使得作者能够使用和重用所述心智模型中的一个或多个块,其中所述一个或多个块中的每个块包括一个或多个块封装的概念节点、可选的一个或多个块封装的流节点、以及一个或多个块封装的模式,而没有用于训练所述AI模型的任何课程,以及其中所述一个或多个块中的每个块被配置为:从所述心智模型的所述一个或多个概念节点或所述一个或多个流节点中的任何一个或多个节点接受输入,以及向所述心智模型的所述一个或多个概念节点或所述一个或多个流节点中的任何其他节点提供输出。11.一种被配置为使用教学编程语言进行工作的人工智能(“AI”)系统,包括:a)一个或多个远程服务器,包括:i)在服务器存储器中的编译器,被配置用于由一个或多个服务器处理器执行以从用所述教学编程语言编写的源代码生成汇编代码,其中所述教学编程语言被配置为使得作者能够定义要由AI模型学习的心智模型,所述心智模型包括输入、一个或多个概念节点、和输出,以及其中所述教学编程语言还被配置使得作者能够定义用于分...

【专利技术属性】
技术研发人员:M·I·哈蒙德K·M·布朗M·亚当斯
申请(专利权)人:伯尼塞艾公司
类型:发明
国别省市:美国,US

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

1