CN112346736B - 一种数据处理方法和系统 - Google Patents

一种数据处理方法和系统 Download PDF

Info

Publication number
CN112346736B
CN112346736B CN202011285706.9A CN202011285706A CN112346736B CN 112346736 B CN112346736 B CN 112346736B CN 202011285706 A CN202011285706 A CN 202011285706A CN 112346736 B CN112346736 B CN 112346736B
Authority
CN
China
Prior art keywords
operator
code
data processing
preset format
workflow
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
Application number
CN202011285706.9A
Other languages
English (en)
Other versions
CN112346736A (zh
Inventor
李维
李学锋
杨健
方磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zetyun Tech Co ltd
Original Assignee
Beijing Zetyun Tech Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Zetyun Tech Co ltd filed Critical Beijing Zetyun Tech Co ltd
Priority to CN202011285706.9A priority Critical patent/CN112346736B/zh
Publication of CN112346736A publication Critical patent/CN112346736A/zh
Application granted granted Critical
Publication of CN112346736B publication Critical patent/CN112346736B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/51Source to source
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种数据处理方法和系统,该方法包括:获取与算子预设格式对应的模型探索代码;根据算子预设格式将所述模型探索代码转化为工程化对应的工作流。本发明实施例通过算子预设格式直接将代码转化模型工程对应的工作流,不需要对模型探索过程中的代码进行重新编码、调试和发布,从而降低了转化成本,提供模型探索效率。

Description

一种数据处理方法和系统
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理方法和系统。
背景技术
现有的数据处理模型通常需要数据科学家通过不断的模型探索而生成。而数据科学家在进行模型探索过程中,需要通过编写代码进行模型验证,而现有模型探索过程中直接编写的代码无法在生产环境中运行,需要将这些代码拆开成多个算子,然后进行重新编码、调试以及发布,得到可运行的算子,进而生成工作流。因此,现有的模型探索过程到模型工程化转换成本高,效率低。
发明内容
本发明实施例提供一种数据处理方法和系统,解决现有的模型探索过程到模型工程化转换成本高,效率低。
为解决上述技术问题,本发明提供一种数据处理方法,所述方法包括:
获取与算子预设格式对应的模型探索代码;
根据算子预设格式将所述模型探索代码转化为工程化对应的工作流。
可选的,上述方法中,所述根据算子预设格式将所述模型探索代码转化为工程化对应的工作流的步骤包括:
根据所述算子预设格式识别所述模型探索代码包含的各个算子;
基于识别出的所述算子生成工程化对应的工作流。
可选的,上述方法中,所述算子预设格式包括:算子开始标记、算子有效代码部分和算子结尾标记。
可选的,上述方法中,所述根据算子预设格式识别所述模型探索代码包含的各个算子的步骤包括:
基于所述算子开始标记和算子结尾标记,确定所述算子开始标记和算子结尾标记对应的算子。
可选的,上述方法中,所述获取与算子预设格式对应的模型探索代码的步骤包括:
显示所述算子预设格式,基于所述算子预设格式编写模型探索代码;或者,
获取导入的代码文件,基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整。
可选的,上述方法中,所述基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整的步骤包括:
识别所述模型探索代码包含的各算子代码;
为所述各算子代码分别配置算子开始标记和算子结尾标记;
确定所述各算子代码的算子有效代码部分。
可选的,上述方法中,所述方法应用于包含编辑器的数据处理系统中,在根据算子预设格式将所述模型探索代码转化为工程化对应的工作流的步骤之前,所述数据处理方法还包括:
基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试。
可选的,上述方法中,所述基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试的步骤包括:
基于算子的开始标记和结尾标记,获取上下文;
根据所述上下文和所述模型探索代码,生成虚拟算子;
根据所述虚拟算子,进行运行调试。
可选的,上述方法中,所述上下文包括:编辑器上下文和算子上下文,所述基于算子的开始标记和结尾标记,获取上下文的步骤包括:
若识别到所述算子开始标记,获取算子上下文;
若识别到所述算子结尾标记,获取编辑器上下文。
可选的,上述方法中,所述根据所述上下文和所述模型探索代码,生成虚拟算子的步骤包括:
根据所述算子开始标记和所述算子结尾标记,获取算子有效代码对应的代码片段;
根据获取到的所述算子上下文和所述算子有效代码对应的代码片段,形成虚拟算子。
可选的,上述方法中,在所述编辑器中显示所述工作流的元信息。
可选的,上述方法中,在所述对所述算子进行运行和/或调试的步骤之后,所述方法还包括:
判断所述算子是否为可发布的算子;
若所述算子为可发布的算子,发布所述算子。
可选的,上述方法中,在所述对所述算子进行运行和/或调试的步骤之后,所述方法还包括:
判断所述工作流是否为可发布的工作流;
若所述工作流为可发布的工作流,发布所述工作流。
可选的,所述方法中还包括:基于所述算子预设格式将已发布的工作流转换为与算子预设格式对应的模型探索代码。
本发明还提供一种数据处理系统,所述数据处理系统包括:
获取模块,用于获取与算子预设格式对应的模型探索代码;
第一转换模块,用于根据算子预设格式将所述模型探索代码转化为工程化对应的工作流。
可选的,上述数据处理系统中,所述第一转换模块包括:
识别子模块,用于根据所述算子预设格式识别所述模型探索代码包含的各个算子;
生成子模块,用于基于识别出的所述算子生成工程化对应的工作流。
可选的,上述数据处理系统中,所述算子预设格式包括:算子开始标记、算子有效代码部分和算子结尾标记。
可选的,上述数据处理系统中,所述识别子模块具体用于:
基于所述算子开始标记和算子结尾标记,确定所述算子开始标记和算子结尾标记对应的算子。
可选的,上述数据处理系统中,所述获取模块具体用于:
显示所述算子预设格式,基于所述算子预设格式编写模型探索代码;或者,
获取导入的代码文件,基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整。
可选的,上述数据处理系统中,所述基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整包括:
识别所述模型探索代码包含的各算子代码;
为所述各算子代码分别配置算子开始标记和算子结尾标记;
确定所述各算子代码的算子有效代码部分。
可选的,上述数据处理系统中,所述数据处理系统包含编辑器;所述数据处理系统还包括:
运行调试模块,用于基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试。
可选的,上述数据处理系统中,所述运行调试模块具体用于:
基于算子的开始标记和结尾标记,获取上下文;
根据所述上下文和所述模型探索代码,生成虚拟算子;
根据所述虚拟算子,进行运行调试。
可选的,上述数据处理系统中,所述上下文包括:编辑器上下文和算子上下文,所述基于算子的开始标记和结尾标记,获取上下文包括:
若识别到所述算子开始标记,获取算子上下文;
若识别到所述算子结尾标记,获取编辑器上下文。
可选的,上述数据处理系统中,所述根据所述上下文和所述模型探索代码,生成虚拟算子包括:
根据所述算子开始标记和所述算子结尾标记,获取算子有效代码对应的代码片段;
根据获取到的所述算子上下文和所述算子有效代码对应的代码片段,形成虚拟算子。
可选的,上述数据处理系统中,所述数据处理系统还包括:
显示模块,用于在所述编辑器中显示所述工作流的元信息。
可选的,上述数据处理系统中,所述数据处理系统还包括:
判断模块,用于判断各个算子是否为可发布的算子;
发布模块,用于若所述算子为可发布的算子,发布所述算子。
可选的,上述数据处理系统中,所述判断模块还用于判断所述工作流是否为可发布的工作流;
所述发布模块,还用于若所述工作流为可发布的工作流,发布所述工作流。
可选的,所述数据处理系统还包括:
第二转换模块,用于基于所述算子预设格式将已发布的工作流转换为与算子预设格式对应的模型探索代码。
本发明还提供一种数据处理系统,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述的数据处理方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上述数据处理方法的步骤。
本发明的上述技术方案的有益效果如下:
本发明实施例利用算子预设格式直接将模型探索过程对应的代码转化模型工程对应的工作流,不需要对模型探索过程中的代码进行重新编码、调试和发布,从而降低了转化成本,提供模型探索效率。
本发明实施例可以基于用户构建的工作流反向生成对应的代码(编辑器文件),从而方便数据科学家对用户构建的工作流进行优化。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获取其他的附图。
图1是本发明实施例提供的一种数据处理方法的流程图;
图2是本发明实施例提供的数据分析处理系统的用于发布算子的用户界面的示意图;
图3是本发明实施例提供的数据分析处理系统的预览工作流的用户界面的示意图;
图4是本发明实施例提供的一种数据处理系统的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。
参见图1,图1是本发明实施例提供的数据处理方法的流程图,所述数据处理方法应用于数据分析处理系统,如图1所示,所述数据处理方法包括以下步骤:
步骤101,获取与算子预设格式对应的模型探索代码。
其中,模型探索代码是模型探索过程编写的代码。
其中,数据处理系统中设置了一套算子预设格式,所述算子预设格式包括:算子开始标记、算子有效代码部分和算子结尾标记。算子开始标记表示在此之后算子结束之前的部分都属于此算子,算子结尾标记表示算子开始之后在此之前的部分都属于此算子,算子开始标记和算子结尾标记均属于占位符一类,用于分割算子;算子有效代码部分则为算子开始标记和算子结尾标记之间的部分,此部分对应该算子的主体,包括算子的输入数据、输出数据、算子参数等基础定义以及算子处理逻辑等算子的属性信息。其中,所述算子有效代码部分包括算子基础定义部分和算子处理逻辑部分。算子基础定义主要包括:算子输入数据信息、输出数据信息和算子参数等,其主要作用是:使得模型探索代码中定义的算子可以转化为数据处理系统生产环境可用的算子(即工程化对应的算子)。算子处理逻辑部分主要为算子处理逻辑对应的代码。在算子定义完成后,该算子的处理逻辑也就固定下来不会改变了,而算子的基础定义会随着该算子应用的场景和/或上下游算子的数据要求等不同而随着改变,即算子的基础定义是一种动态变量。
所述获取与算子预设格式对应的模型探索代码的步骤101包括:
方式一:显示算子预设格式,基于所述算子预设格式编写模型探索代码。
方式二:获取导入的代码文件,基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整。
本发明针对于方式一提供了一种可行的实现方案,显示算子预设格式的模板,该模板包括算子开头标记、算子有效代码部分和算子结尾标记,其中算子开头和算子结尾标记已编写,而算子有效代码部分为空缺的,用户在该算子有效代码部分的空缺部分编写代码,完成一个算子的定义,若需还定义算子,可以显示该算子预设格式的模板,以便用户继续定义算子,如此重复,直到用户编写完模型探索代码。
具体的,数据处理系统集成了编辑器,例如jupyter,或者,其他编辑器。在编辑器显示该算子预设格式的模板,用户可以根据显示的算子预设格式的模板直接在编辑器中编写模型探索代码。用户在编辑器中编辑代码定义算子时,需要针对各个算子编写,算子的开头,算子的主体(算子的主体主要是算子的属性信息,包括输入数据、输出数据,参数以及算子的处理逻辑等),算子的结尾。其中,用户在编辑器中编辑代码定义算子时,在完成一个算子的定义后,如需要增加新的算子,点击编辑器界面中的添加按钮,在定义完成该算子之后,显示算子预设格式,用户基于该算子预设格式,编写第二个算子。另外,用户在编写算子有效代码对应的代码片段时,将前一算子的输出作为当前算子的输入,即设置该当前算子为上一个算子的下游算子。
另外,也可以从数据处理器中导入外部代码文件,编辑器获取外部导入的代码文件的模型探索代码,并根据所述算子预设格式对导入的代码文件中的模型探索代码进行调整。
所述基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整的步骤包括:
识别所述模型探索代码包含的各算子代码;
为所述各算子代码分别配置算子开始标记和算子结尾标记。
确定所述各算子代码的算子有效代码部分。
其中,所述算子有效代码部分包括算子基础定义部分和算子处理逻辑部分。模型探索代码中包含一个或一个以上的算子定义,也即模型探索代码包含一个或一个以上算子对应的代码,通过对模型探索代码中的各个算子代码配置算子开始标记和算子结尾标记区分出模型探索代码中包含的各个算子对应的代码片段。
步骤102,根据算子预设格式将所述模型探索代码转化为工程化对应的工作流。
可选的,所述根据算子预设格式将所述模型探索代码转化为工程化对应的工作流的步骤102包括:
根据所述算子预设格式识别所述模型探索代码包含的各个算子;
基于识别出的所述算子生成工程化对应的工作流。
具体的,根据算子开始标记和算子结尾标记识别所述模型探索代码包含的各个算子,基于获得各个算子以及各个算子之间的关联关系,生成工程化对应的工作流。
本发明实施例通过算子预设格式直接将模型探索代码转化模型工程对应的工作流,不需要对模型探索过程中的代码进行重新编码,从而降低了转化成本,提供模型探索效率。
为了确保发布到数据处理系统中的工作流能够满足用户需求,在将模型探索代码落地成可运行的工作流之前,可以先对模型探索代码进行验证,在确定满足一定条件后再进行发布。基于此,本发明提出在数据处理系统中可以集成编辑器,可以先在编辑器中进行在线运行和调试,在确定满足一定条件后在将模型探索代码转化模型工程对应的工作流。在此思想的引导下,本发明进一步给出一种可行的实施方式,在根据算子预设格式将所述模型探索代码转化为工程化对应的工作流的步骤之前,所述数据处理方法还包括:
基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试。
具体的,系统可以基于算子的开始标记和结尾标记确定出模型探索代码中各个算子对应的代码,因此,在运行调试过程中,用户可以选择编写完一个算子后就进行一次运行和调试,验证当前编写的全部算子;或者,也可以选择全部编写完成之后进行运行和调试。当然,用户还可以对用户还可以选择任意一个算子进行运行调试,对该算子进行验证。
所述基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试的步骤包括:
基于算子的开始标记和结尾标记,获取上下文;
根据所述上下文和所述模型探索代码,生成虚拟算子;
根据所述虚拟算子,进行运行调试。
其中,该上下文包括:运行环境以及所述运行环境对应的运行条件,基于运行环境不同,该上下文包括编辑器上下文和算子上下文。编辑器上下文包括:运行环境为编辑器以及该运行环境下对应的运行条件,编辑器上下文用于指示在编辑器环境下运行;算子上下文包括算子运行环境及该运行环境下对应的运行条件,算子上下文用于指示在算子环境下运行。
进一步的,所述基于算子的开始标记和结尾标记,获取上下文的步骤包括:
若识别到所述算子开始标记,获取算子上下文;
若识别到所述算子结尾标记,获取编辑器上下文。
其中,算子的有效代码部分包括基础定义部分和算子处理逻辑部分。算子基础定义主要包括:算子输入数据信息、输出数据信息和算子参数等,在获取算子上下文包括:识别到算子开始标记后,获取算子基础定义部分,从而基于基础定义部分获取算子上下文。
所述根据所述上下文和所述模型探索代码,生成虚拟算子的步骤包括:
根据所述算子开始标记和所述算子结尾标记,获取算子有效代码对应的代码片段;根据获取到的所述算子上下文和所述算子有效代码对应的代码片段,形成虚拟算子。
其中,虚拟算子是一种模拟的算子。在获取到算子上下文信息后,可以基于算子上下包含的运行环境和对应的运行条件,将当前运行环境模拟为算子运行环境,在当前模拟的算子运行环境中运行此段算子有效代码对应的代码片段,就等同于以算子形式运行。
具体的,在编辑器中进行在线运行和调试的过程为:运行开始,获取编辑器上下文,然后基于编辑器运行环境进行运行;当识别到算子开始标记后,读取算子基础定义部分,并且基于算子的基础定义部分,获取算子上下文。基于获取到的算子上下文和算子有效代码对应的代码片段,形成虚拟算子(即基于算子上下文,将当前运行环境模拟为算子运行环境,运行此段算子有效代码对应的代码片段,就等同于以算子形式运行),基于生成的虚拟算子进行运行和调试;当识别到算子结尾标记后,切换到编辑器上下文;如此重复循序上述过程,直到运行结束。
由于算子的基础定义部分是动态变量,在每次运行时,都需要调整算子有效代码部分的基础定义以及算子处理逻辑中对应的参数,而为了能够统一适配,通过算子上下文将算子的基础定义以静态变量的形式引入到算子的处理逻辑中。如此,在运行时,只需要实例化算子上下文,便可以运行该算子,而不需要每次都对算子处理逻辑中对应的参数进行赋值。
可选的,在所述对所述模型探索代码进行运行和/或调试的步骤之后,可以对模型探索代码进行发布,其中,该发布包括对模型探索代码中包含的各个算子进行发布,模型探索代码对应的工作流进行发布。为保证能够发布成功,在运行和/或调试后,在发布之前可以先进行验证,即在所述对所述模型探索代码进行运行和/或调试的步骤之后,所述数据处理方法还包括:判断各个算子是否为可发布的算子,若所述算子为可发布的算子,发布所述算子;
和/或,在所述对所述算子进行运行和/或调试的步骤之后,所述数据处理方法还包括:判断所述工作流是否为可发布的工作流,若所述工作流为可发布的工作流,发布所述工作流。
发布算子的用户界面示意图如图2所示。具体的,发布所述算子包括:数据处理系统基于算子开始标识和结尾标识,识别出各个算子,然后确定系统中是否已存在对应算子,若存在对应算子,则不需要在发布该算子;若不存在对应算子,则将该算子发布到数据处理系统中,便于后续直接复用算子。
其中,基于编辑器(例如jupyter)提供的接口扩展方式和插件扩展模式,建立编辑器与数据处理系统之间的交互关系。具体包括:在数据处理系统中承载编辑器的资源,即数据处理系统使用k8s集群资源为每个编辑器以pod形式创建资源,以启动编辑器,在启动编辑器时,默认加载数据处理系统的运行时程序,使得编辑器中可直接使用数据处理系统的运行时接口,依托编辑器的第三方扩展插件,将数据处理系统的算子、数据集、工作流以默认插件的形式,加入到编辑器中,使得编辑器可以直接使用。或者,还可以依托编辑器的扩展接口方式,实现数据处理系统扩展,从而将数据处理系统的功能直接植入到编辑器中使用。
具体的,以编辑器jupyter为例,基于编辑器jupyter提供的接口扩展方式和插件扩展模式,建立编辑器jupyter与数据处理器之间的交互关系,在编辑器中jupyter运行和调试完成,用户点击发布按钮触发发布操作或者,数据处理系统中确定满足一定发布条件自动触发发布,数据处理系统从编辑器jupyter中获取代码文件,并且系统基于该代码文件中的所述算子预设格式,即各个算子的开头标记和结尾标记,识别各个算子,基于识别出各个算子构建工作流,已完成探索成果到模型化工程化的转化。可选的,所述数据处理方法还包括:
在所述编辑器中显示所述工作流的元信息;
其中,用户可以基于预览编辑器中的元信息,确定所述算子和/或是否为可发布的算子和/或工作流。
如图3所示,编辑器中显示工作流用户界面示意图。
具体的,在模型探索代码在编辑器中运行后,用户可以在编辑器中预览模型探索代码对应的工作流的元信息,其中,该元信息包括:模型探索代码对应的工作流的拓扑图、运行结果信息(是否正确、以及运行错误的原因等)等,从而便于用户基于该元信息,确定所述算子和/或工作流是否满足发布要求。
本发明实施例中支持调用已发布的算子运行,该已发布算子的算子包括同语言算子或不同语言算子。具体的,用户在编辑器中进行探索时,可以直接编写已发布算子的标识,从而在运行时,在数据处理系统中提供一个远程调用运行算子方式,基于该算子标识直接调用对应的算子。
在实现远程调用运行算子方式时,数据处理系统需要额外申请与该运行算子对应的运行环境资源,并把远程运行的算子结果通过磁盘共享或者通过远程访问的方式映射到当前运行环境中,以便在当前环境中依托远程结果可继续运行。
可选的,所述数据处理方法还包括:
基于所述算子预设格式将已发布的工作流转换为与所述预设算子格式对应的模型探索代码。
具体的,用户可以利用图像化构建需求的工作流,然后数据处理系统可以基于用户构建的工作流反向生成对应的模型探索代码(编辑器文件),从而方便数据科学家对用户构建的工作流进行优化。
另外,数据处理系统向编辑器提供类库、第三方扩展接口(即提供一些功能方式,将数据处理系统中的算子、数据集、工作流等提供给编辑器),从而编辑器可以通过该类库、第三方扩展接口获取数据处理系统中的算子、数据集、工作流等。
数据处理系统会将用户选择的已发布工作流的算子按照工作流的运行时序,逐个反写到编辑器中,即基于算子预设格式,将该已发布工作流转转成代码文件。具体的,对于不同的配置算子和连线,对应不同的代码的语法含义,翻译出对应的代码片段(算子有效代码),并且为每个代码片段添加算子开始标记和算子结尾标记,按照工作流的运行时序,将该工作流中的各个算子逐个循环生成到编辑器中,完成反向生成的过程。
本发明实施例通过算子预设格式直接将模型探索过程中的代码转化模型工程对应的算子和工作流,不需要对模型探索过程中的代码进行重新编码、调试和发布,从而降低了转化成本,提高模型探索结果的转化和应用效率。
本发明实施例完成了编辑器和数据处理系统之间的转化,使得从探索过程到工程化过程之间的衔接更加无缝,减少了两者之间的过渡的很多事情,从而大大减轻了数据科学家的工作,也可以使得数据科学家可以不用去过多学习数据处理系统就能将探索过程转化成工程化。且使得工程化工作流可以分成调度和细节分别对待,有人更关注整体调度,有人更关注算法实现,两者之间可以以不同的视角关注自己需要关注的问题,同时都拥有整体过程,不会造成更关注细节而丢失整体的问题。
基于以上实施例提供的数据处理方法,本发明实施例还提供了实施上述方法的数据处理系统,请参照图4,本发明实施例提供的数据分析处理系统400包括:
获取模块401,用于获取与算子预设格式对应的模型探索代码;
第一转换模块402,用于根据算子预设格式将所述模型探索代码转化为工程化对应的工作流。
可选的第一转换模块402包括:
识别子模块,用于根据所述算子预设格式识别所述模型探索代码包含的各个算子;
生成子模块,用于基于识别出的所述算子生成工程化对应的工作流。
可选的,所述算子预设格式包括:算子开始标记、算子有效代码部分和算子结尾标记。
可选的,所述识别子模块具体用于:
基于所述算子开始标记和算子结尾标记,确定所述算子开始标记和算子结尾标记对应的算子。
可选的,所述获取模块401具体用于:
显示所述算子预设格式,基于所述算子预设格式编写模型探索代码;或者,
获取导入的代码文件,基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整。
可选的,所述基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整包括:
识别所述模型探索代码包含的各算子代码;
为所述各算子代码分别配置算子开始标记和算子结尾标记。
确定所述各算子代码的算子有效代码部分。
可选的,所述数据处理系统包含编辑器;所述数据处理系统还包括:
运行调试模块,用于基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试。
可选的,所述运行调试模块具体用于:
基于算子的开始标记和结尾标记,获取上下文;
根据所述上下文和所述模型探索代码,生成虚拟算子;
根据所述虚拟算子,进行运行调试。
可选的,所述上下文包括:编辑器上下文和算子上下文,所述基于算子的开始标记和结尾标记,获取上下文包括:
若识别到所述算子开始标记,获取算子上下文;
若识别到所述算子结尾标记,获取编辑器上下文。
可选的,所述根据所述上下文和所述模型探索代码,生成虚拟算子包括:
根据所述算子开始标记和所述算子结尾标记,获取算子有效代码对应的代码片段;
根据获取到的所述算子上下文和所述算子有效代码对应的代码片段,形成虚拟算子。
可选的,所述数据处理系统还包括:
显示模块,用于在所述编辑器中显示所述工作流的元信息。
可选的,所述数据处理系统还包括:
判断模块,用于判断各个算子是否为可发布的算子,
发布模块,用于若所述算子为可发布的算子,发布所述算子。
可选的,所述判断模块还用于判断所述工作流是否为可发布的工作流;
所述发布模块,还用于若所述工作流为可发布的工作流,发布所述工作流。
可选的,所述数据处理系统还包括:
第二转换模块,用于基于所述算子预设格式将已发布的工作流转换为与所述预设算子格式对应的模型探索代码。
本发明实施例通过预设算子格式直接将模型探索代码转化模型工程对应的工作流,不需要对模型探索过程中的代码进行重新编码、调试和发布,从而降低了转化成本,提供模型探索效率。
本发明实施例提供一种数据分析处理系统,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述实施例所述的数据处理方法的步骤。
本发明实施例还提供一种可读存储介质,可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (24)

1.一种数据处理方法,其特征在于,包括:
在编辑器中显示算子预设格式的模板,根据显示的算子预设格式的模板直接在编辑器中编写模型探索代码,定义算子;
获取与算子预设格式对应的模型探索代码;其中,所述模型探索代码是模型探索过程编写的代码;
根据算子预设格式将所述模型探索代码转化为工程化对应的工作流;
所述根据算子预设格式将所述模型探索代码转化为工程化对应的工作流的步骤包括:
根据所述算子预设格式识别所述模型探索代码包含的各个算子;
基于识别出的所述算子生成工程化对应的工作流;
所述算子预设格式包括:算子开始标记、算子有效代码部分和算子结尾标记;
所述根据算子预设格式识别所述模型探索代码包含的各个算子的步骤包括:
基于所述算子开始标记和算子结尾标记,确定所述算子开始标记和算子结尾标记对应的算子。
2.根据权利要求1所述的数据处理方法,其特征在于,所述获取与算子预设格式对应的模型探索代码的步骤包括:
显示所述算子预设格式,基于所述算子预设格式编写模型探索代码;或者,
获取导入的代码文件,基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整。
3.根据权利要求2所述的数据处理方法,其特征在于,所述基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整的步骤包括:
识别所述模型探索代码包含的各算子代码;
为所述各算子代码分别配置算子开始标记和算子结尾标记;
确定所述各算子代码的算子有效代码部分。
4.根据权利要求1-3任一项所述的数据处理方法,其特征在于,所述方法应用于包含编辑器的数据处理系统中,在根据算子预设格式将所述模型探索代码转化为工程化对应的工作流的步骤之前,所述数据处理方法还包括:
基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试。
5.根据权利要求4所述的数据处理方法,其特征在于,所述基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试的步骤包括:
基于算子的开始标记和结尾标记,获取上下文;
根据所述上下文和所述模型探索代码,生成虚拟算子;
根据所述虚拟算子,进行运行调试。
6.根据权利要求5所述的数据处理方法,其特征在于,所述上下文包括:编辑器上下文和算子上下文,所述基于算子的开始标记和结尾标记,获取上下文的步骤包括:
若识别到所述算子开始标记,获取算子上下文;
若识别到所述算子结尾标记,获取编辑器上下文。
7.根据权利要求6所述的数据处理方法,其特征在于,所述根据所述上下文和所述模型探索代码,生成虚拟算子的步骤包括:
根据所述算子开始标记和所述算子结尾标记,获取算子有效代码对应的代码片段;
根据获取到的所述算子上下文和所述算子有效代码对应的代码片段,形成虚拟算子。
8.根据权利要求4所述的数据处理方法,其特征在于,所述方法还包括:
在所述编辑器中显示所述工作流的元信息。
9.根据权利要求4所述的数据处理方法,其特征在于,在所述对所述算子进行运行和/或调试的步骤之后,所述方法还包括:
判断所述算子是否为可发布的算子;
若所述算子为可发布的算子,发布所述算子。
10.根据权利要求4所述的数据处理方法,其特征在于,在所述对所述算子进行运行和/或调试的步骤之后,所述方法还包括:
判断所述工作流是否为可发布的工作流,
若所述工作流为可发布的工作流,发布所述工作流。
11.根据权利要求1所述的数据处理方法,其特征在于,所述方法还包括:
基于所述算子预设格式将已发布的工作流转换为与所述算子预设格式对应的模型探索代码。
12.一种数据处理系统,其特征在于,所述数据处理系统包括:
在编辑器中显示算子预设格式的模板,根据显示的算子预设格式的模板直接在编辑器中编写模型探索代码,定义算子;
获取模块,用于获取与算子预设格式对应的模型探索代码;其中,所述模型探索代码是模型探索过程编写的代码;
第一转换模块,用于根据算子预设格式将所述代码转化为工程化对应的工作流;
所述第一转换模块包括:
识别子模块,用于根据所述算子预设格式识别所述模型探索代码包含的各个算子;
生成子模块,用于基于识别出的所述算子生成工程化对应的工作流;
所述算子预设格式包括:算子开始标记、算子有效代码部分和算子结尾标记;
所述识别子模块具体用于:
基于所述算子开始标记和算子结尾标记,确定所述算子开始标记和算子结尾标记对应的算子。
13.根据权利要求12所述的数据处理系统,其特征在于,所述获取模块具体用于:
显示所述算子预设格式,基于所述算子预设格式编写模型探索代码;或者,
获取导入的代码文件,基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整。
14.根据权利要求13所述的数据处理系统,其特征在于,所述基于所述算子预设格式对导入的代码文件中的模型探索代码进行调整包括:
识别所述模型探索代码包含的各算子代码;
为所述各算子代码分别配置算子开始标记和算子结尾标记;
确定所述各算子代码的算子有效代码部分。
15.根据权利要求12-13任一项所述的数据处理系统,其特征在于,所述数据处理系统包含编辑器,所述数据处理系统还包括:
运行调试模块,用于基于所述算子预设格式,在所述编辑器中对所述模型探索代码进行在线运行和/或调试。
16.根据权利要求15所述的数据处理系统,其特征在于,所述运行调试模块具体用于:
基于算子的开始标记和结尾标记,获取上下文;
根据所述上下文和所述模型探索代码,生成虚拟算子;
根据所述虚拟算子,进行运行调试。
17.根据权利要求16所述的数据处理系统,其特征在于,所述上下文包括:编辑器上下文和算子上下文,所述基于算子的开始标记和结尾标记,获取上下文包括:
若识别到所述算子开始标记,获取算子上下文;
若识别到所述算子结尾标记,获取编辑器上下文。
18.根据权利要求17所述的数据处理系统,其特征在于,所述根据所述上下文和所述模型探索代码,生成虚拟算子包括:
根据所述算子开始标记和所述算子结尾标记,获取算子有效代码对应的代码片段;
根据获取到的所述算子上下文和所述算子有效代码对应的代码片段,形成虚拟算子。
19.根据权利要求15所述的数据处理系统,其特征在于,所述数据处理系统还包括:
显示模块,用于在所述编辑器中显示所述工作流的元信息。
20.根据权利要求15所述的数据处理系统,其特征在于,所述数据处理系统还包括:
判断模块,用于判断各个算子是否为可发布的算子;
发布模块,用于若所述算子为可发布的算子,发布所述算子。
21.根据权利要求15所述的数据处理系统,其特征在于,判断模块还用于判断所述工作流是否为可发布的工作流;
发布模块,还用于若所述工作流为可发布的工作流,发布所述工作流。
22.根据权利要求12所述的数据处理系统,其特征在于,所述数据处理系统还包括:
第二转换模块,用于基于所述算子预设格式将已发布的工作流转换为与所述算子预设格式对应的模型探索代码。
23.一种数据处理系统,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至11中任一项所述的数据处理方法的步骤。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至11中任一项所述的数据处理方法的步骤。
CN202011285706.9A 2020-11-17 2020-11-17 一种数据处理方法和系统 Active CN112346736B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011285706.9A CN112346736B (zh) 2020-11-17 2020-11-17 一种数据处理方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011285706.9A CN112346736B (zh) 2020-11-17 2020-11-17 一种数据处理方法和系统

Publications (2)

Publication Number Publication Date
CN112346736A CN112346736A (zh) 2021-02-09
CN112346736B true CN112346736B (zh) 2022-02-01

Family

ID=74363979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011285706.9A Active CN112346736B (zh) 2020-11-17 2020-11-17 一种数据处理方法和系统

Country Status (1)

Country Link
CN (1) CN112346736B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115981610B (zh) * 2023-03-17 2023-06-02 科大国创软件股份有限公司 一种基于Lua脚本实现的光伏储能系统的综合运算平台

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678750A (zh) * 2017-10-27 2018-02-09 北京腾云天下科技有限公司 一种sdk打包方法、计算设备及sdk打包系统
CN111104214A (zh) * 2019-12-26 2020-05-05 北京九章云极科技有限公司 一种工作流应用方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10395181B2 (en) * 2015-06-05 2019-08-27 Facebook, Inc. Machine learning system flow processing
US10101995B2 (en) * 2016-07-15 2018-10-16 Microsoft Technology Licensing, Llc Transforming data manipulation code into data workflow
CN107621934B (zh) * 2017-07-28 2020-11-03 中国人民解放军国防信息学院 基于组件化、图形化算子的评估指标计算方法及装置
CN110941467A (zh) * 2019-11-06 2020-03-31 第四范式(北京)技术有限公司 数据处理方法、装置及系统
CN111459820B (zh) * 2020-03-31 2021-01-05 北京九章云极科技有限公司 一种模型应用方法、装置及数据分析处理系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678750A (zh) * 2017-10-27 2018-02-09 北京腾云天下科技有限公司 一种sdk打包方法、计算设备及sdk打包系统
CN111104214A (zh) * 2019-12-26 2020-05-05 北京九章云极科技有限公司 一种工作流应用方法及装置

Also Published As

Publication number Publication date
CN112346736A (zh) 2021-02-09

Similar Documents

Publication Publication Date Title
CN109002510B (zh) 一种对话处理方法、装置、设备和介质
CN110166650B (zh) 视频集的生成方法及装置、计算机设备与可读介质
CN108959257A (zh) 一种自然语言解析方法、装置、服务器及存储介质
CN112558824A (zh) 一种页面显示方法、装置、以及计算机存储介质
CN111240669B (zh) 界面生成方法、装置、电子设备及计算机存储介质
CN113505082B (zh) 应用程序测试方法及装置
JP2021009665A (ja) ファイル生成方法、装置、デバイス及び記憶媒体
CN106709985B (zh) 一种虚拟祭祀三维场景的生成方法及装置
CN112035630A (zh) 结合rpa和ai的对话交互方法、装置、设备及存储介质
WO2023142451A1 (zh) 工作流生成方法、装置、电子设备
CN113407284A (zh) 导航界面的生成方法、装置、存储介质及电子设备
CN112346736B (zh) 一种数据处理方法和系统
CN115423936A (zh) Ai虚拟人物和影像处理方法、系统、电子设备及存储介质
US20130007697A1 (en) Program creation support apparatus, program, and information system
CN112784024B (zh) 一种人机对话的方法、装置、设备以及存储介质
CN117765132A (zh) 图像生成方法、装置、设备与存储介质
CN110928995B (zh) 一种交互信息处理方法、装置、设备及存储介质
CN110765610B (zh) Pdm集成方法、装置、计算机设备及存储介质
CN115469849B (zh) 一种业务处理系统、方法、电子设备和存储介质
Olmedo et al. Multimodal interaction with virtual worlds XMMVR: eXtensible language for MultiModal interaction with virtual reality worlds
US20070226706A1 (en) Method and system for generating multiple path application simulations
CN114968741B (zh) 一种基于场景平台化的性能测试方法、系统、设备和介质
CN110083351A (zh) 用于生成代码的方法和装置
Schuler et al. Rule-based generation of mobile user interfaces
CN113296759B (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
GR01 Patent grant
GR01 Patent grant