计算公式处理方法及装置与流程

文档序号:18894220发布日期:2019-10-15 22:38阅读:258来源:国知局
计算公式处理方法及装置与流程

本发明涉及计算机技术领域,具体而言,涉及一种计算公式处理方法及装置。



背景技术:

随着计算机技术与多个领域的结合,越来越多的作业可以通过计算机来完成。相关技术中,保险业务、银行业务、线上商品业务、知识社区的等级设定等业务中均涉及计算作业。在相关技术中,为减少人力资源的浪费,相关人员通过将计算公式写入计算软件的程序代码中,每个不同的计算方法需要单独部署一套计算系统。当定义了不同的计算方法时,需要根据新的计算方法对计算系统进行重新部署,以适应新的计算方法。采用上述方式对于开发资源造成了浪费。



技术实现要素:

为了解决现有技术中存在的上述问题,本发明提供一种计算公式处理方案。

根据本发明实施例其中一方面,提供一种计算公式处理方法,包括:分量计算公式获取步骤,基于公式配置,获取至少一个分量计算公式,分量计算公式包括分量变量、分量操作符、分量计算函数;计算公式存储步骤,保存分量计算公式;基础数据获取步骤,获取与分量变量匹配的基础数据;分量计算步骤,基于分量计算公式、基础数据进行计算,得到分量计算结果;总量计算步骤,基于分量计算结果进行计算,得到至少一个总量计算结果。

在一例中,上述方法还包括:计算因子确定步骤,基于分量变量,确定与分量变量匹配的至少一个计算因子;基础数据获取步骤,基于计算因子,调取与计算因子匹配的基础数据。

在一例中,上述方法还包括:计算结果显示步骤,显示分量计算结果和/或总量计算结果。

在一例中,上述方法还包括:总量计算公式获取步骤,基于公式配置,获取至少一个总量计算公式,总量计算公式包括总量变量、总量操作符、总量计算函数,其中,总量变量包括分量计算结果。

在一例中,上述方法还包括:计算函数扩展步骤,基于计算机语言,在计算服务中扩展分量计算函数和/或总量计算函数。

在一例中,上述方法还包括:计算函数保存步骤,保存分量计算函数和/或总量计算函数。

在一例中,上述方法还包括:计算公式解析步骤,遍历计算服务中的计算函数,基于计算服务中的计算函数对分量计算公式和/或总量计算公式进行解析。

在一例中,总量计算步骤包括:分量计算公式选择步骤,选择多个分量计算公式得到多个分量计算结果;分量计算结果对比步骤,多个分量计算结果进行对比,获得对比结果。

根据本发明实施例的另一方面,提供一种计算公式处理装置,包括:分量计算公式获取单元,用于基于公式配置,获取至少一个分量计算公式,分量计算公式包括分量变量、分量操作符、分量计算函数;计算公式存储单元,用于保存分量计算公式;基础数据获取单元,用于获取与分量变量匹配的基础数据;分量计算单元,用于基于分量计算公式、基础数据进行计算,得到分量计算结果;总量计算单元,用于基于分量计算结果进行计算,得到至少一个总量计算结果。

在一例中,装置还包括:计算因子确定单元,用于基于分量变量,确定与分量变量匹配的至少一个计算因子;基础数据获取单元,用于基于计算因子,调取与计算因子匹配的基础数据。

在一例中,装置还包括:计算结果显示单元,用于显示分量计算结果和/或总量计算结果。

在一例中,装置还包括:总量计算公式获取单元,用于基于公式配置,获取至少一个总量计算公式,总量计算公式包括总量变量、总量操作符、总量计算函数,其中,总量变量包括分量计算结果。

在一例中,装置还包括:计算函数扩展单元,用于基于计算机语言,在计算服务中扩展分量计算函数和/或总量计算函数。

在一例中,装置还包括:计算函数保存单元,用于保存分量计算函数和/或总量计算函数。

在一例中,装置还包括:计算公式解析单元,用于遍历计算服务中的计算函数,基于计算服务中的计算函数对分量计算公式和/或总量计算公式进行解析。

在一例中,总量计算单元包括:分量计算公式选择模块,用于选择多个分量计算公式得到多个分量计算结果;分量计算结果对比模块,用于多个分量计算结果进行对比,获得对比结果。

根据本发明实施例的另一方面,提供一种电子设备,其中,包括:

存储器,用于存储计算机程序;

处理器,用于执行存储器中存储的计算机程序,且计算机程序被执行时,实现上述任一实施例的计算公式处理方法。

根据本发明实施例的另一方面,提供一种计算机可读存储介质,存储有计算机程序,其中,计算机程序被处理器执行时,实现上述任一实施例的计算公式处理方法。

基于本发明的计算公式处理方法及装置、电子设备、计算机可读存储介质,配置多个分量的分量计算公式以及计算因子,计算因子调取与计算因子匹配的基础数据。不仅可以获得分量计算结果,还可以对分量计算公式进行重复使用于多个总量计算中,避免了不同的计算方法需要单独部署一套计算系统以及根据新的计算方法对计算系统进行重新部署的弊端,节约了计算系统的开发资源。

附图说明

通过参考附图阅读下文的详细描述,本发明实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

图1示出了本发明计算公式处理方法一个实施例的流程示意图;

图2示出了本发明计算公式处理方法另一实施例的流程示意图;

图3示出了本发明计算公式处理方法另一实施例的流程示意图;

图4示出了本发明计算公式处理方法另一实施例的流程示意图;

图5示出了本发明计算公式处理方法另一实施例的流程示意图;

图6示出了本发明计算公式处理方法另一实施例的流程示意图;

图7示出了本发明计算公式处理方法另一实施例的流程示意图;

图8示出了本发明计算公式处理方法另一实施例的流程示意图;

图9示出了本发明计算公式处理装置一个实施例的结构示意图;

图10示出了本发明计算公式处理装置另一实施例的结构示意图;

图11示出了本发明计算公式处理装置另一实施例的结构示意图;

图12示出了本发明计算公式处理装置另一实施例的结构示意图;

图13示出了本发明计算公式处理装置另一实施例的结构示意图;

图14示出了本发明计算公式处理装置另一实施例的结构示意图;

图15示出了本发明计算公式处理装置另一实施例的结构示意图;

图16示出了本发明计算公式处理装置另一实施例的结构示意图;

图17示出了本发明电子设备的一个实施例的结构示意图。

在附图中,相同或对应的标号表示相同或对应的部分。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。

需要注意,虽然本文中使用“第一”、“第二”等表述来描述本发明的实施方式的不同模块、步骤和数据等,但是“第一”、“第二”等表述仅是为了在不同的模块、步骤和数据等之间进行区分,而并不表示特定的顺序或者重要程度。实际上,“第一”、“第二”等表述完全可以互换使用。

本发明实施例可以应用于终端设备、计算机系统及服务器等电子设备,其可与众多其它通用或者专用的计算系统环境或者配置一起操作。适于与终端设备、计算机系统以及服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子,包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。

终端设备、计算机系统以及服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑以及数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

图1为本发明计算公式处理方法一个实施例的流程示意图。如图1所示,该实施例方法包括:分量计算公式获取步骤100、计算公式存储步骤200、基础数据获取步骤300、分量计算步骤400以及总量计算步骤500。下面对图1中的各步骤进行详细说明。

由于本发明的计算公式处理方法适用于多个领域进行公式处理,如线上商品综合质量得分、知识社区内的用户贡献度计算、银行/保险系统中绩效的核算等,以下实施例以线上商品综合质量得分为例对本发明的公式处理方法进行详细阐述。

分量计算公式获取步骤100,基于公式配置,获取至少一个分量计算公式,分量计算公式包括分量变量、分量操作符、分量计算函数。

线上商品的质量需要从商品的某一维度或者多个不同维度来进行对该线上商品综合质量得分的计算。不同维度的得分在不同程度上影响该商品的综合质量得分。其中的一个维度可以是商品的热销程度,另一个维度可以是商品的好坏。上述两个维度可以作为计算线上商品综合质量得分的两个分量分别进行计算,不同的分量由于分量的属性不同需要配置不同的计算公式进行计算。

每一维度所对应的分量计算公式包括分量变量、分量操作符、分量计算函数。本实施例的计算公式可以是在用于计算线上商品质量的计算系统之外进行配置编辑处理的,例如设置一计算服务来进行分量计算公式的配置。其中,计算服务可以是微服务的一个具体实现方式,微服务是一种将单应用程序作为一套小型服务开发的方法,每种应用程序都在其自己的进程中运行,并与轻量级机制(通常是http资源的api)进行通信。这些服务是围绕业务功能构建的,可以通过全自动部署机制进行独立部署。这些服务的集中化管理已经是最少的,它们可以用不同的编程语言编写,并使用不同的数据存储技术。采用计算服务对分量计算公式进行配置避免了直接配置计算公式,针对每一个计算公式配置一套计算系统造成的资源浪费问题,操作简单,方便灵活。在一例中,可以通过编程语言配置分量计算公式,能够识别并利用该计算公式对线上商品进行综合质量得分进行计算。

计算公式存储步骤200,保存分量计算公式。配置完成的分量计算公式可以被存储在计算服务中。被存储的分量计算公式可以单独用于线上商品综合质量的该维度得分,也可以用于其他综合得分的计算,随用随取,简单方便。避免了在计算该维度的得分时需要重新部署计算系统的弊端。

分量计算公式可以存储在计算系统中或者计算系统之外的存储介质中。再次使用上述分量计算公式时无需重新开发配置新的计算公式。提高了计算系统的迭代效率,降低了计算公式配置过程中造成的开发资源的投入。

基础数据获取步骤300,获取与分量变量匹配的基础数据。

在分量计算公式配置完成后,需要从基础数据库中调取与分量变量相匹配的基础数据。也就是说,分量计算公式获取步骤100确定了分量变量的数量以及上述分量变量所对应具体类型,用于计算商品某维度的、与分量变量具体类型匹配的具体数据需从基础数据库中进行调取。例如,分量变量可以对应的基础数据可以是销售数量10000或者1000,其他类型的分量变量类似,在此不再一一举例阐述。

本实施例中的基础数据可以是存储在基础数据库中的周期性数据,即基础数据库中固定时间间隔内存储的基础数据,例如,基础数据库中会临时存储七天内线上商品的基础数据,待到下一个周期结束时将先前存储的七天的数据删除,并在上述的“下一个周期”的数据存储在基础数据库中,在对线上商品进行商品质量评价时所调取的基础数据即为基础数据库中存储的周期性基础数据。

在另一些实施例中,基础数据可以是基础数据库中实时更新的基础数据。例如,线上商品的收藏量可以是在获取基础数据时的实时总量,线上商品的销售数量可以是在获取基础数据时的销售总量。

在一些实施例中,可以是选择用于计算线上商品的商品质量的计算因子的同时,自动向基础数据库发送基础数据请求。也可以是在确定计算因子之后再向基础数据库发送基础数据请求。基础数据为前述实施例中所涉及的基础数据,在此不再赘述。

基于基础数据的数据标识,识别基础数据。通过在基础数据库中的基础数据上设置数据标识,可以通过该数据标识快速找到基础数据,提高了数据传输以及计算效率。本实施例中基础数据请求中包括与基础数据的数据标识匹配的标签数据。本实施例中的数据标识与标签数据可以是关键字。数据标签匹配的数据标识,在基础数据库中找到基础数据。基础数据库将基础数据返回。基础数据与计算公式结合计算得出的值用于线上商品的商品综合质量得分计算。

在对线上商品进行综合质量得分计算时通过调用基础数据库中与分量变量匹配的基础数据,将基础数据进行独立设置,既可以获得准确的基础数据,还不影响其他操作对基础数据的处理。不仅降低了对系统的占用,而且可提高对分量变量对应的基础数据取用的灵活性,随用随取,简单方便,提高了计算公式处理的准确性以及时效性。

分量计算步骤400,基于分量计算公式、基础数据进行计算,得到分量计算结果;

基于分量计算公式以及基础数据进行线上商品各维度的得分计算,获得分量计算结果。可以了解线上商品的各维度的得分,使人能够直观了解该线上商品在哪一维度上对线上商品综合质量得分的贡献较大,以及直观了解该线上商品在哪一维度上对线上商品综合质量得分的贡献较低,以制定相应的应对方针政策以提高该维度对线上商品综合质量得分的贡献。

总量计算步骤500,基于分量计算结果进行计算,得到至少一个总量计算结果。

本实施例中的分量计算结果,不仅可以用于计算线上商品综合质量得分,还可以用于这对该线上商品其他方面的综合得分,或者其他需要进行计算的事物,例如一个集团公司的年收入可以采用各个分公司的年收入作为分量,而每一分公司的类型不同造成分公司不能采用同一分量计算公式进行计算。为此,集团公司可以采用一个以各个分公司的计算结果为总量变量的总量计算公式进行配置,而各个分公司采用根据其特色配置的分量计算公式进行年收入的计算。

本实施例通过对分量计算公式进行配置及存储,可以选择不同的计算公式进行计算。避免了每一计算公式需要单独配置一套计算系统使用的弊端。计算公式发生改变时无需对计算系统进行重新编辑,节约开发资源。在使用计算公式进行计算时,调用存储的分量计算公式进行分量计算或者总量计算。

以上本实施例提供的计算公式处理方法对于不同类型的商品,甚至在业务发展的不同时期,商品质量的计算方法可以采用同一套计算系统进行计算。避免了相关技术中,每个不同的计算方法需要单独部署一套计算系统造成的开发资源浪费。还可以避免定义不同商品质量计算方法后系统需要根据新的计算方法来重新部署,以及对于迭代效率造成的影响。

图2示出了本发明计算公式处理方法另一些实施例的流程示意图,如图2所示,本实施例的计算公式处理方法还包括计算因子确定步骤600,基于分量变量,确定与分量变量匹配的至少一个计算因子。基于计算因子确定步骤600,基础数据获取步骤300具体为,基于计算因子,调取与计算因子匹配的基础数据。

线上商品的不同维度的得分在不同程度上影响该商品的质量评价。例如,前述实施例中在计算商品综合质量得分的时候通常关注商品的热销程度以及商品的好坏两个维度,该两个维度的得分计算对应两个分量计算公式。一个商品的销量在一定程度上反映了该商品的热销程度。一个商品的用户收藏数(或者收藏人数)也在一定程度上反映了该商品的好坏。所以可以选择商品的销量和商品的收藏数分别是计算上述两个分量计算公式中对应的计算因子。在另一些实施例中,还可以通过其他的计算因子进行商品质量的评价,例如订单的转化量、线上商品的点击数量、好评数量等。

在一些实施例中,计算线上商品综合质量得分的分量计算公式中的计算因子的数量为至少两个。一个商品某一维度得分可以根据线上商品的多个不同计算因子来计算,不同计算因子的得分在不同程度上影响该商品的综合得分。例如,线上商品的销量和商品的收藏数分别是计算上述线上商品综合质量得分的两个不同维度的计算因子,计算上述线上商品综合得分有多个计算因子。在本实施例中,这两个计算因子在配置中可以为以下形式:

{"sold_number":"产品销量",

"favorite_number":"产品收藏数"}。

本实施例通过将计算线上商品综合质量得分的计算因子的数量为至少两个,避免了采用单一计算因子对线上商品综合得分进行计算造成的线上商品综合得分出现偏差的现象产生。通过采用两个或者两个以上的计算因子对线上商品的综合得分进行计算,可以提高线上商品综合质量得分的公平性,对线上商品的商品质量评价更加全面均衡。

本实施例中,根据商品的属性可以在计算系统中存储相关可用于评价商品质量的计算因子。不同商品的计算因子可以存在一定差异,如服务型商品可以根据“服务态度”这一计算因子对线上商品的质量进行评价,而实物商品由于其自身的属性原因,不能用“服务态度”这一计算因子进行商品质量的评价。同样,对于实物商品可以根据“物流质量”这一计算因子对线上商品的质量进行评价,而服务型商品由于其自身的属性原因,不能用“物流质量”这一计算因子进行商品质量的评价。总而言之,用于评价线上商品质量可以是一种,也可以是多种;不同类型的线上商品用于商品质量评价所选取的计算因子不同。

通过选定用于计算线上商品质量的计算因子,可避免在计算过程中对计算因子进行现场编辑造成工作效率低的缺陷;同时采用一种或者多种计算因子对线上商品的质量进行评价,在一定程度上提高了计算公式处理的客观性及准确性,使计算公式处理更能符合多数消费者的消费意愿。

本实施例的计算因子可以在系统中进行添加和删除操作,方便使用者在对线上商品质量进行评价时可以采用不同组合的计算因子分别进行计算,以得到不同的计算公式处理结果,通过评价结果最终确定用于之后计算该线上商品质量的计算因子。

在对线上商品进行综合质量得分计算时通过调用基础数据库中与计算因子匹配的基础数据,将基础数据进行独立设置,既可以获得准确的基础数据,还不影响其他操作对基础数据的处理。不仅降低了对系统的占用,而且可提高计算因子的灵活性,随用随取,简单方便,提高了计算公式处理的准确性以及时效性。

在一些实施例中,计算因子与分量计算公式的存储格式包括protocol-buffer、json、xml中的一种。其中,protocol-buffer是google公司开发的一种数据描述语言,能够将结构化数据序列化,可用于数据存储、通信协议等方面。支持c++、java、python三种编程语言,可以找到大量的几乎涵盖所有语言的第三方扩展包。可以定义你的数据的结构,并生成基于各种语言的代码。这些定义的数据流可以传递并不破坏已有的程序。并且也可以更新这些数据而现有的程序也不会受到任何的影响。json(javascriptobjectnotation,js对象简谱)是一种轻量级的数据交换格式。它基于ecmascript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得json成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。xml可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。在电子计算机中,标记语言指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。是internet环境中跨平台的、依赖于内容的技术,也是当今处理分布式结构信息的有效工具。

本实施例的计算公式处理方法通过采用上述格式中的一种或多种对计算公式以及计算因子进行存储,可使计算系统与存储计算因子、计算公式的部分单独设置并且不影响数据的使用,进一步地,还可以对计算因子以及计算公式进行重复使用,提高计算公式与计算因子的重复利用率,避免重新配置计算公式与计算因子造成的开发资源浪费。

图3示出了本发明计算公式处理方法另一些实施例的流程示意图,如图3所示,本实施例的计算公式处理方法还包括计算结果显示步骤700,显示分量计算结果和/或总量计算结果。

本实施例可以采用不同的分量计算公式所得的多个分量计算结果以及多个总量计算结果进行显示,可以使人能够直观了解在不同维度下进行计算所得的总量计算结果以及所对应的分量计算公式,方便人对不同的维度针对线上商品进行相应的策略计划,以提高线上商品综合质量得分。

在一些实施例中,还可以对线上商品更新线上商品综合得分。其中,预设周期可以是根据市场的线上商品更新换代率,即新商品上线的周期设定的。例如在某电商平台上,某一线上商品更换新产品的时间为两个月,那么可以根据该周期定时进行综合得分更新,通过消费者对该线上商品的反馈得知新型商品的商品综合质量,从而使商家了解以后的新产品的研发方向。本实施也可以是对同一线上商品的不同时期进行定期的商品综合质量得分,通过线上商品综合得分使商家了解在不同时期消费者对该商品的质量评价,从而使商家调整生产任务,避免该商品由于生产过多造成的货品积压,或者生产不足造成的潜在消费者流失的现象产生。

本实施例通过线上商品综合质量得分更新,为线上商品的生产厂家调整生产任务提供强有力的市场数据,使生产厂家能够合理利用资源,避免资源浪费或者供不应求。

图4示出了本发明计算公式处理方法另一些实施例的流程示意图,如图4所示,本实施例的计算公式处理方法还包括总量计算公式获取步骤800,基于公式配置,获取至少一个总量计算公式,总量计算公式包括总量变量、总量操作符、总量计算函数,其中,总量变量包括分量计算结果。

图5示出了本发明计算公式处理方法另一些实施例的流程示意图,如图5所示,本实施例的计算公式处理方法还包括计算函数扩展步骤900,基于计算机语言,在计算服务中扩展分量计算函数和/或总量计算函数。

在一些实施例中,由于在配置分量计算公式和/或总量计算公式的过程中可能会使用一些技术人员自定义的计算函数,所以,需要对这些技术人员自定义的计算函数进行扩展,使计算机能够识别该计算函数并能够使计算机识别出其正确的计算逻辑。在配置计算配置分量计算公式和/或总量计算公式完成后,在计算服务中扩展分量计算公式以及总量计算公式中的计算函数。在一具体实施例中可以将上述计算函数扩展到计算服务的一个计算函数组中,使计算服务可以正确地识别该计算函数并且进行正确的数学计算。

通过计算函数扩展步骤900可以将计算语言不能支持的计算函数转换为与计算机语言可以支持的格式,用于多个计算公式进行自动化计算,避免了计算系统与计算公式一一对应配置造成的计算系统开发资源的浪费。对于分量计算公式和/或总量计算公式中包含计算机语言不支持的计算函数的情况,在计算服务配置了计算机语言不支持的计算函数之后,可对分量计算公式以及总量计算公式进行解析,使得字符串配置的分量计算公式以及总量计算公式能够解析成计算公式进行数学计算。

图6示出了本发明计算公式处理方法另一些实施例的流程示意图,如图6所示,本实施例的计算公式处理方法还包括计算函数保存步骤1000,保存分量计算函数和/或总量计算函数。

在一些实施例中,将分量计算公式和/或总量计算公式转换为与计算系统匹配的格式,得到转换后的计算公式;分量计算公式和/或总量计算公式可以不是计算机语言直接支持的一个数学函数,此时需要将计算函数扩展到计算系统的计算服务中,使计算服务可以正确的识别计算公式并且可以进行正确的数学计算。扩展一次之后,计算服务对该计算函数进行保存,后续的计算再使用到该计算函数时,无需再次扩展。该计算函数保存在计算服务中,可直接进行再次调用的操作。以下以一具体例对本实例的计算函数扩展步骤进行说明。调用计算函数扩展模块的addfunction方法。

把函数名lt(addfunction方法的第一个参数)和它对应的处理逻辑方法(addfunction方法的第二个参数)对应起来,并指出lt函数需要几个参数(addfunction方法的第3个参数)。lt函数的意义为,如果$arg4的值小于$arg3,则表达式最终结果为$arg2,否则表达式最终结果为$arg1,各个参数也可以是一个正确的计算公式。

图7示出了本发明计算公式处理方法另一些实施例的流程示意图,如图7所示,本实施例的计算公式处理方法还包括计算公式解析步骤1100,遍历计算服务中的计算函数,基于计算服务中的计算函数对分量计算公式和/或总量计算公式进行解析。

在一具体实施例中,分量计算公式与总量计算公式在编程方法中的实现形式为字符串,或者以protocol-buffer、json、xml等格式进行存储的,需要对上述字符串进行解析,得到可以直接用于计算的分量计算公式以及总量计算公式。在一具体实例中,分量计算公式与总量计算公式配置如下:

上述计算公式中的$sold_number和$favorite_number表示计算因子,也就是分量变量,min、log10、sqrt和lt是计算函数。total_score即是该线上商品综合质量得分,可以看出其是由线上商品的sold_score和favorite_score这两个分量的得分按不同权重组成,对应的分量计算公式分别为min(log10($sold_number+1)*60,100)与lt($favorite_number,10,0,log10(sqrt($favorite_number+1))),总量计算公式为$sold_score*2+$favorite_score。

本实施例中,计算权重是指某一计算在整体计算公式处理中的相对重要程度。本实施例对不同的计算因子分配计算权重,是线上商品的不同计算因子的重要程度的定量分配,对各计算因子在总体的商品质量评价进行区别对待。某一计算因子的权重是指该指标在整体评价中的相对重要程度。确定计算因子之后需要确定各计算因子在计算公式处理中所发挥影响的大小,即各指标的权重。在一例中,可以将线上商品的销量这一计算因子的计算权重设置为大于该线上商品收藏量这一计算因子的计算权重,则表明对该线上商品的商品质量评价中侧重线上商品的销量。同理,上述两计算因子的计算权重调换,则表明对该线上商品的商品质量评价中注重潜在的消费者。

通过对计算因子设置计算权重,权重值可以相同,也可以不同,可以从不同的侧重方面对线上商品进行综合评定,确保商品质量评价的公平合理性。

在进行计算公式解析的过程中,可以利用正则表达式,匹配出分量计算公式和总量计算公式的变量(以$符开头的为变量)、计算函数(以字母开头且只由字母和数字组成的为计算函数)、操作符(加减乘除等)、逗号、左右括号。经过正则解析出的每一个变量、计算函数、操作符、逗号、左右括号都是一个token(操作命令),不同的token有不同的token类型,以token类型作为判断依据来决定对该token应该执行什么操作。例如对于变量类型的token,会使用商品基础数据参数把对应变量转为具体的数值(如$sold_number替换为1000,$favorite_number替换为2000)。

再利用调度场算法(shuntingyardalgorithm)把中缀表达式转换为逆波兰表达式,然后对逆波兰表达式求值即为该字符串公式的最终计算结果。对逆波兰表达式求值时,遍历整个逆波兰表达式中的各个token,对于操作符类token,会直接调用系统的操作。其中,token在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思。对于函数类token,会检查计算公式,如果函数类token的名称(即函数名)存在于计算公式,比如扩展的lt函数,则会调用lt对应的function来处理计算。sold_score字段计算完成后,可以用来作为后续计算的变量,如计算total_score时,变量$sold_score可以直接取sold_score计算的结果。最终计算得到的total_score即作为该商品的综合得分,存入数据存储媒介(如mysql,elasticsearch等)并在显示装置中进行显示。

图8示出了本发明计算公式处理方法另一些实施例的流程示意图,如图8所示,本实施例的总量计算步骤500包括分量计算公式选择步骤510,选择多个分量计算公式得到多个分量计算结果;分量计算结果对比步骤520,多个分量计算结果进行对比,获得对比结果。

在一些实施例中,基于不同分量计算公式计算得出不同的线上商品综合质量得分,即总量计算结果。将不同的线上商品综合质量得分应用于线上商品排序时的流量分配规则。依据不同的线上商品综合质量得分对线上商品配置不同的流量分配规则。不同计算公式计算得到的total_score作为该商品的两个不同字段存入elasticsearch。其中,elasticsearch是一个基于lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于restfulweb接口。elasticsearch是用java开发的,并作为apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

计算方法a的total_score字段存储为strategy_a.total_score,计算方法b的total_score字段存储为strategy_b.total_score。当流量规则配置为50%用户使用计算方法a的商品综合得分排序,另外50%用户使用计算方法b的商品综合得分排序时,则线上用户的搜索结果将有50%的流量使用strateg_a.total_score字段排序,50%的流量使用strategy_b.total_score字段排序,达到了可以灵活配置不同计算方法之间的a/btest的效果。其中,a/btest,简单来说,就是为同一个产品目标制定两个方案,让一部分用户使用a方案,另一部分用户使用b方案,然后通过日志记录用户的使用情况,并通过结构化的日志数据分析相关指标,如点击率、转化率等,从而得出那个方案更符合预期设计目标,并最终将全部流量切换至符合目标的方案。

本发明实施例的第二方面还提供一种计算公式处理装置,图9示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图9所示,本实施例的计算公式处理装置,包括分量计算公式获取单元10,用于基于公式配置,获取至少一个分量计算公式,分量计算公式包括分量变量、分量操作符、分量计算函数;计算公式存储单元20,用于保存分量计算公式;基础数据获取单元30,用于获取与分量变量匹配的基础数据;分量计算单元40,用于基于分量计算公式、基础数据进行计算,得到分量计算结果;总量计算单元50,用于基于分量计算结果进行计算,得到至少一个总量计算结果。

由于本发明的计算公式处理装置适用于多个领域进行公式处理,如线上商品综合质量得分、知识社区内的用户贡献度计算、银行/保险系统中绩效的核算等,以下实施例以线上商品综合质量得分为例对本发明的公式处理装置进行详细阐述。

线上商品的质量需要从商品的某一维度或者多个不同维度来进行对该线上商品综合质量得分的计算。不同维度的得分在不同程度上影响该商品的综合质量得分。每一维度所对应的分量计算公式包括分量变量、分量操作符、分量计算函数。本实施例的计算公式可以是在用于计算线上商品质量的计算系统之外进行配置编辑处理的,例如设置一计算服务来进行分量计算公式的配置。其中,计算服务为微服务的一个具体实现方式,配置完成的分量计算公式可以被存储在计算服务中。被存储的分量计算公式可以单独用于线上商品综合质量的该维度得分,也可以用于其他综合得分的计算,随用随取,简单方便。避免了在计算该维度的得分时需要重新部署计算系统的弊端。分量计算公式可以存储在计算系统中或者计算系统之外的存储介质中。再次使用上述分量计算公式时无需重新开发配置新的计算公式。提高了计算系统的迭代效率,降低了计算公式配置过程中造成的开发资源的投入。

在对线上商品进行综合质量得分计算时通过调用基础数据库中与分量变量匹配的基础数据,将基础数据进行独立设置,既可以获得准确的基础数据,还不影响其他操作对基础数据的处理。不仅降低了对系统的占用,而且可提高对分量变量对应的基础数据取用的灵活性,随用随取,简单方便,提高了计算公式处理的准确性以及时效性。

基于分量计算公式以及基础数据进行线上商品各维度的得分计算,获得分量计算结果。可以了解线上商品的各维度的得分,使人能够直观了解该线上商品在哪一维度上对线上商品综合质量得分的贡献较大,以及直观了解该线上商品在哪一维度上对线上商品综合质量得分的贡献较低,以制定相应的应对方针政策以提高该维度对线上商品综合质量得分的贡献。

图10示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图10所示,本实施例的计算公式处理装置还包括计算因子确定单元60,用于基于分量变量,确定与分量变量匹配的至少一个计算因子;基础数据获取单元30,具体用于基于计算因子,调取与计算因子匹配的基础数据。

在一些实施例中,计算线上商品综合质量得分的分量计算公式中的计算因子的数量为至少两个。一个商品某一维度得分可以根据线上商品的多个不同计算因子来计算,不同计算因子的得分在不同程度上影响该商品的综合得分。例如,线上商品的销量和商品的收藏数分别是计算上述线上商品综合质量得分的两个不同维度的计算因子,计算上述线上商品综合得分有多个计算因子。

本实施例通过将计算线上商品综合质量得分的计算因子的数量为至少两个,避免了采用单一计算因子对线上商品综合得分进行计算造成的线上商品综合得分出现偏差的现象产生。通过采用两个或者两个以上的计算因子对线上商品的综合得分进行计算,可以提高线上商品综合质量得分的公平性,对线上商品的商品质量评价更加全面均衡。

通过选定用于计算线上商品质量的计算因子,可避免在计算过程中对计算因子进行现场编辑造成工作效率低的缺陷;同时采用一种或者多种计算因子对线上商品的质量进行评价,在一定程度上提高了计算公式处理的客观性及准确性,使计算公式处理更能符合多数消费者的消费意愿。

在对线上商品进行综合质量得分计算时通过调用基础数据库中与计算因子匹配的基础数据,将基础数据进行独立设置,既可以获得准确的基础数据,还不影响其他操作对基础数据的处理。不仅降低了对系统的占用,而且可提高计算因子的灵活性,随用随取,简单方便,提高了计算公式处理的准确性以及时效性。

在一些实施例中,计算因子与分量计算公式的存储格式包括protocol-buffer、json、xml中的一种。

本实施例的计算公式处理装置通过采用上述格式中的一种或多种对计算公式以及计算因子进行存储,可使计算系统与存储计算因子、计算公式的部分单独设置并且不影响数据的使用,进一步地,还可以对计算因子以及计算公式进行重复使用,提高计算公式与计算因子的重复利用率,避免重新配置计算公式与计算因子造成的开发资源浪费。

图11示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图11所示,本实施例的计算公式处理装置还包括计算结果显示单元70,用于显示分量计算结果和/或总量计算结果。

本实施例可以采用不同的分量计算公式所得的多个分量计算结果以及多个总量计算结果进行显示,可以使人能够直观了解在不同维度下进行计算所得的总量计算结果以及所对应的分量计算公式,方便人对不同的维度针对线上商品进行相应的策略计划,以提高线上商品综合质量得分。

图12示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图12所示,本实施例的计算公式处理装置还包括总量计算公式获取单元80,用于基于公式配置,获取至少一个总量计算公式,总量计算公式包括总量变量、总量操作符、总量计算函数,其中,总量变量包括分量计算结果。

图13示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图13所示,本实施例的计算公式处理装置还包括:计算函数扩展单元90,用于基于计算机语言,在计算服务中扩展分量计算函数和/或总量计算函数。

在一些实施例中,配置分量计算公式和/或总量计算公式完成后,计算函数扩展单元90在计算服务中扩展分量计算公式以及总量计算公式中的计算函数。在一具体实施例中可以将上述计算函数扩展到计算服务的一个计算函数组中,使计算服务可以正确地识别该计算函数并且进行正确的数学计算。

通过计算函数扩展单元90在计算服务中扩展分量计算公式以及总量计算公式中的计算函数,可以将计算语言不能支持的计算函数转换为与计算机语言可以支持的格式,用于多个计算公式进行自动化计算,避免了计算系统与计算公式一一对应配置造成的计算系统开发资源的浪费。对于分量计算公式和/或总量计算公式中包含计算机语言不支持的计算函数的情况,在计算服务配置了计算机语言不支持的计算函数之后,可对分量计算公式以及总量计算公式进行解析,使得字符串配置的分量计算公式以及总量计算公式能够解析成计算公式进行数学计算。

图14示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图14所示,本实施例的计算公式处理装置还包括计算函数保存单元1,用于保存分量计算函数和/或总量计算函数。

在一些实施例中,将分量计算公式和/或总量计算公式转换为与计算系统匹配的格式,得到转换后的计算公式;分量计算公式和/或总量计算公式可以不是计算机语言直接支持的一个数学函数,此时需要将计算函数扩展到计算系统的计算服务中,使计算服务可以正确的识别计算公式并且可以进行正确的数学计算。扩展一次之后,后续的计算再使用到该计算函数时,无需再次扩展。该计算函数保存在计算服务中,可直接进行再次调用的操作。

图15示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图15所示,本实施例的计算公式处理装置还包括装置还包括:计算公式解析单元11,用于遍历计算服务中的计算函数,基于计算服务中的计算函数对分量计算公式和/或总量计算公式进行解析。

在一具体实施例中,分量计算公式与总量计算公式在编程方法中的实现形式为字符串,或者以protocol-buffer、json、xml等格式进行存储的,需要对上述字符串进行解析,得到可以直接用于计算的分量计算公式以及总量计算公式。

在进行计算公式解析的过程中,可以利用正则表达式,匹配出分量计算公式和总量计算公式的变量(以$符开头的为变量)、计算函数(以字母开头且只由字母和数字组成的为计算函数)、操作符(加减乘除等)、逗号、左右括号。经过正则解析出的每一个变量、计算函数、操作符、逗号、左右括号都是一个token(操作命令),不同的token有不同的token类型,以token类型作为判断依据来决定对该token应该执行什么操作。例如对于变量类型的token,会使用商品基础数据参数把对应变量转为具体的数值(如$sold_number替换为1000,$favorite_number替换为2000)。

再利用调度场算法(shuntingyardalgorithm)把中缀表达式转换为逆波兰表达式,然后对逆波兰表达式求值即为该字符串公式的最终计算结果。对逆波兰表达式求值时,遍历整个逆波兰表达式中的各个token,对于操作符类token,会直接调用系统的操作。对于函数类token,会检查计算公式,如果函数类token的名称(即函数名)存在于计算公式,比如扩展的lt函数,则会调用lt对应的function来处理计算。

图16示出了本发明的计算公式处理装置的一个实施例的结构示意图,如图16所示,本实施例的总量计算单元50包括:分量计算公式选择模块51,用于选择多个分量计算公式得到多个分量计算结果;分量计算结果对比模块52,用于多个分量计算结果进行对比,获得对比结果。

在一些实施例中,总量计算单元50基于不同分量计算公式计算得出不同的线上商品综合质量得分,即总量计算结果。将不同的线上商品综合质量得分应用于线上商品排序时的流量分配规则。依据不同的线上商品综合质量得分对线上商品配置不同的流量分配规则。不同计算公式计算得到的total_score作为该商品的两个不同字段存入elasticsearch。

计算方法a的total_score字段存储为strategy_a.total_score,计算方法b的total_score字段存储为strategy_b.total_score。当流量规则配置为50%用户使用计算方法a的商品综合得分排序,另外50%用户使用计算方法b的商品综合得分排序时,则线上用户的搜索结果将有50%的流量使用strateg_a.total_score字段排序,50%的流量使用strategy_b.total_score字段排序,达到了可以灵活配置不同计算方法之间的a/btest的效果。其中,a/btest,简单来说,就是为同一个产品目标制定两个方案,让一部分用户使用a方案,另一部分用户使用b方案,然后通过日志记录用户的使用情况,并通过结构化的日志数据分析相关指标,如点击率、转化率等,从而得出那个方案更符合预期设计目标,并最终将全部流量切换至符合目标的方案。

图17示出了本发明的电子设备的一个实施例的结构示意图。下面参考图17,其示出了适于用来实现本申请实施例的终端设备或服务器的电子设备的结构示意图。如图17所示,该电子设备该电子设备包括处理器和存储器。电子设备也可以包括输入输出装置。存储器、输入输出装置均通过总线与处理器连接。其中,存储器,用于存储处理器执行的指令;处理器,用于调用存储器存储的指令,并执行上述实施例涉及的方法。

本发明实施例中处理器可调用存储器存储的指令,进行基于公式配置,获取至少一个分量计算公式,分量计算公式包括分量变量、分量操作符、分量计算函数;保存分量计算公式;获取与分量变量匹配的基础数据;基于分量计算公式、基础数据进行计算,得到分量计算结果;基于分量计算结果进行计算,得到至少一个总量计算结果。其中,电子设备执行出行信息处理的过程,可参阅上述实施例描述的计算公式处理的实施过程,在此不再赘述。

本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在计算机上运行时,执行上述实施例涉及的计算公式处理方法。

本发明实施例还提供一种包含指令的计算机程序产品,当包含指令的计算机程序产品在计算机上运行时,使得计算机执行上述实施例涉及的计算公式处理方法。

在一个或多个可选实施方式中,本公开实施例还提供了一种计算机可读存储介质,用于存储计算机可读指令,该指令被执行时使得计算机执行上述任一可能的实现方式中的计算公式处理方法。在另一个可选例子中,该计算机程序产品具体体现为软件产品,例如软件开发包(softwaredevelopmentkit,sdk)等等。

尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。

本发明的方法和装置能够利用标准编程技术来完成,利用基于规则的逻辑或者其他逻辑来实现各方法步骤。还应当注意的是,此处以及权利要求书中使用的词语“装置”和“模块”意在包括使用一行或者多行软件代码的实现和/或硬件实现和/或用于接收输入的设备。

此处描述的任何步骤、操作或程序可以使用单独的或与其他设备组合的一个或多个硬件或软件模块来执行或实现。在一个实施方式中,软件模块使用包括包含计算机程序代码的计算机可读介质的计算机程序产品实现,其能够由计算机处理器执行用于执行任何或全部的所描述的步骤、操作或程序。

出于示例和描述的目的,已经给出了本发明实施的前述说明。前述说明并非是穷举性的也并非要将本发明限制到所公开的确切形式,根据上述教导还可能存在各种变形和修改,或者是可能从本发明的实践中得到各种变形和修改。选择和描述这些实施例是为了说明本发明的原理及其实际应用,以使得本领域的技术人员能够以适合于构思的特定用途来以各种实施方式和各种修改而利用本发明。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1