掌桥专利:专业的专利平台
掌桥专利
首页

更新产品列表的方法和装置

文献发布时间:2023-06-19 11:35:49


更新产品列表的方法和装置

技术领域

本公开涉及人工智能领域,尤其涉及知识图谱领域,具体涉及一种更新产品列表的方法、装置、电子设备、存储有计算机指令的非瞬时计算机可读存储介质、以及计算机程序产品。

背景技术

企业中通常存在大量的产品。产品列表的构建需求始终存在。目前,常规的构建/更新产品列表的方法为:通过调查问卷的形式收集开展/进行中的产品线或者业务的名称;然后,人工将调查问卷上的产品的名称登记到产品列表中。但是这种构建/更新产品列表的方法需要消耗大量的人力且容易出错。

发明内容

本公开提供了一种更新产品列表的方法、装置、电子设备存储有计算机指令的非瞬时计算机可读存储介质、以及计算机程序产品。

根据本公开的一方面,提供了一种更新产品列表的方法,包括:

在关于产品的第一候选词集合中,确定关于非产品名称的候选词和关于过时产品的候选词;

从所述第一候选词集合中,去除所述关于非产品名称的候选词和所述关于过时产品的候选词,得到第二候选词集合;以及

利用所述第二候选词集合来更新产品列表。

根据本公开的另一方面,提供了一种用于更新产品列表的装置,所述装置包括:

确定单元,被配置为在关于产品的第一候选词集合中,确定关于非产品名称的候选词和关于过时产品的候选词;

获得单元,被配置为从所述第一候选词集合中,去除所述关于非产品名称的候选词和所述关于过时产品的候选词,得到第二候选词集合;以及

更新单元,被配置为利用所述第二候选词集合来更新产品列表。

根据本公开的另一方面,提供了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述更新产品列表的方法。

根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述更新产品列表的方法。

根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述更新产品列表的方法。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本公开的限定。其中:

图1是根据本公开实施例的更新产品列表的系统架构的示意图;

图2是根据本公开实施例的更新产品列表的方法的示意流程图;

图3是根据本公开实施例的确定关于非产品名称的候选词和关于过时产品的候选词以去除这样的候选词的示意流程图;

图4是根据本公开实施例的生成第一候选词集合的示意流程图;

图5是根据本公开实施例的获得候选词作为产品名称名称的概率值的过程图;

图6是根据本公开的第一实施例的确定指示候选词涉及的产品是否为过时产品的指标的示意流程图;

图7是根据本公开的第二实施例的确定指示候选词涉及的产品是否为过时产品的指标的示意流程图;

图8是根据本公开的实施例的初始对预训练模型进行训练的过程的示意图;

图9是根据本公开的实施例的用于对候选词进行评估的预训练模型的结构图;

图10是用来实现本公开实施例的更新产品列表的方法的装置的框图;

图11是用来实现本公开实施例的更新产品列表的方法的电子设备的框图。

具体实施方式

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“使、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“系、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。

本公开的实施例提供了一种总体上能够更全面的获得产品名称、更及时地添加新的产品并去除过时产品以防止“脏”数据的更新产品列表的方法以及能够实现该方法的装置。该方法可以包括:在关于产品的第一候选词集合中,确定关于非产品名称的候选词和关于过时产品的候选词;从所述第一候选词集合中,去除所述关于非产品名称的候选词和所述关于过时产品的候选词,得到第二候选词集合;以及利用所述第二候选词集合来更新产品列表。

以下将参考附图并结合具体实施例详细阐述本公开。

图1是根据本公开实施例的可以执行更新产品列表的方法的系统架构100的示意图。

需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。

如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如用户反馈应用、企业办公软件、企业内通信软件等。

终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器105可以是提供各种服务的服务器。

需要说明的是,本公开实施例所提供的更新产品列表的方法一般可以由服务器105执行。相应地,本公开实施例所提供的更新产品列表的单元或模块可以设置于服务器105中。本公开实施例所提供的更新产品列表的方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的更新产品列表的单元或模块也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

本公开的实施例通过从候选词集合中去除不是真实产品名称的候选词以及过时产品的候选词,使得不仅能把新出现的产品名称添加到产品列表中,还能删除掉已经过时的产品,防止“脏(无用)”产品存在,增加产品列表的实时性和准确性。

图2是根据本公开实施例的更新产品列表的方法的示意流程图200。

如图2所示,流程图200例如可以包括如下操作。

在操作S210中,可以在关于产品的第一候选词集合中,确定关于非产品名称的候选词和关于过时产品的候选词。

第一候选词集合可以通过各种合适的方式来获得。例如可以采集关于企业的产品的候选词,并基于采集的候选词生成第一候选词集合。候选词可以来自于预先存储的各种信息资料、经由各种通信平台获得的交流信息等。预先存储的各种信息资料可以是为了研究某一产品而预先存储在文本数据库中的相关文本、文章等。经由各种通信平台获得的交流信息可以是其他用户在反馈平台上提供的任何反馈信息、在企业内的技术交流平台上发布的内容、在企业办公软件上产生的信息等。

在一些实施例中,可以针对关于产品的第一候选词集合中的每一次候选词进行评估,以确定该候选词是否是关于非产品名称的候选词和/或关于过时产品的候选词。例如可以利用预训练模型对候选词进行评估。预训练模型包括但不限于诸如ERNIE模型、BERT-CHINESE模型、WM-BERT-CHINESE模型之类的模型。可以针对每个候选词,评估该候选词为产品名称的概率,以及在该候选词为产品名称的情况下,评估该候选词所涉及的产品是否为过时/不再研究的产品。评估该候选词所涉及的产品是否为过时/不再研究的产品可以包括:通过生成指示该候选词所涉及的产品是过时产品的指标。可以输出并显示针对每个候选词的评估结果。在示例性实施例中,针对每个候选词的评估结果可以包括:该候选词、该候选词为产品名称的概率、以及指示该候选词所涉及的产品是过时产品的指标。

在操作S220中,可以从第一候选词集合中,去除关于非产品名称的候选词和关于过时产品的候选词,得到第二候选词集合。

在操作S230中,可以利用第二候选词集合来更新产品列表。

在一些实施例中,可以将第二候选词集合中的各个候选词与现有产品列表中的产品名称进行比较,将第二候选词集合中的没有在现有产品列表中出现的候选词添加到现有产品列表中,并且将第二候选词集合中没有的但是在现有产品列表中存在的产品名称删除,从而得到一个新的产品列表。

在另一些实施例中,可以利用第二候选词集合中的各个候选词生成一个新的产品列表。

本公开的实施例通过从候选词集合中去除不是真实产品名称的候选词以及过时产品的候选词,使得不仅能把新出现的产品名称添加到产品列表中,还能删除掉已经过时的产品,防止“脏(无用)”产品存在,增加产品列表的实时性和准确性。

图3是根据本公开实施例的确定关于非产品名称的候选词和关于过时产品的候选词以去除这样的候选词的示意流程图300。

如图3所示,流程图300例如可以包括如下操作。

在操作310中,针对第一候选词集合中的每一个候选词,确定该候选词作为产品名称的概率值。

在操作320中,确定候选词作为产品名称的概率值是否大于等于第一预定阈值。

在示例性实施例中,第一预定阈值可以是80%、85%、90%、95%或者更高。

在示例性实施例中,第一预定阈值可以是根据用户需求而设置的。

在示例性实施例中,当候选词作为产品名称的概率值大于等于第一预定阈值时,指明该候选词为产品名称;以及,当候选词作为产品名称的概率值小于第一预定阈值时,指明该候选词不是产品名称。

在操作S320中的确定结果为“是”的情况下,处理前进到操作S330。

在操作S320中的确定结果为“否”的情况下,处理前进到操作S350。

在操作S350中,将该不是产品名称的候选词从第一候选词集合中去除。

在操作S330中,生成指示候选词涉及的产品是否是过时/不再研究的产品的指标。

在示例性实施例中,指标可以通过自然数“0”或“1”来指示。

如果候选词涉及的产品是过时/不再研究的产品,则指标的数值为0;并且,如果候选词涉及的产品不是过时/不再研究的产品,则指标的数值为1。

在示例性实施例中,指标可以通过诸如“a”、“b”之类的字母来表示。例如,如果候选词涉及的产品是过时/不再研究的产品,则指标被设置为“a”;并且,如果候选词涉及的产品不是过时/不再研究的产品,则指标被设置为“b”。

在示例性实施例中,指标可以通过任何可区分的参数来表示。

在操作S340中,确定指标是否指示候选词涉及的产品是过时/不再研究的产品。

在操作S340中确定结果为“是”情况下,处理前进到操作S350。

在操作S350中,将该涉及过时产品的候选词从第一候选词集合中去除。

在操作S340中确定结果为“否”的情况下,处理前进到操作S360。

在操作S360中,将该作为产品名称且不是过时产品的候选词添加到第二候选词集合中。

本公开的实施例通过确定出关于非产品名称的候选词和关于过时产品的候选词,能够将这两种候选词作为“脏”数据从第一候选词集合中去除,从而提高了更新的效率和准确性。

图4是根据本公开实施例的生成候选词集合的示意流程图400。

如图4所示,流程图400例如可以包括如下操作。

在操作S410中,从预先存储在文本数据库中的文本的标题中抽取候选词。

在示例性实施例中,文本数据库可以存储有与企业内的已经开发的、正在开发/使用、将要开发的任一产品有关的文章。

在示例性实施例中,可以首先确定文章的标题,然后从文章的标题中抽取出涉及产品的候选词。

在操作S420中,从预先存储在产品数据库中的产品名单解析出候选词。

在操作S430中,通过用户反馈来获得候选词。

在示例性实施例中,当其他用户在现有的产品列表中找不到想要的产品时,可以通过反馈平台反馈应添加该期望的产品。

在操作S440中,利用在操作S410中抽取的候选词、在操作S420中解析出的候选词和在操作S430中通过用户反馈而获得的候选词,生成第一候选词集合。

通过利用抽取、解析、用户反馈这多种手段来获得候选词,可以实现更全面地采集。

图5是根据本公开实施例的获得候选词作为产品名称的概率值的过程图500。

如图5所示,通过上述方法获得的第一候选词集合510中包含候选词1、候选词2、...、候选词n。可以针对各个候选词来设置候选词条目520。候选词条目520可以包括候选词、与该候选词相关的全部标题、该候选词在文本数据库中被抽取的次数、以及该候选词的来源中的至少之一。通过设置候选词条目520,有利于后续更准确地识别出候选词是否是产品名称。

例如候选词条目520可以为:候选词+全部标题+频次(即,被抽取的次数)+来源。

在一些实施例中,来源可以是上述从标题中抽取、从产品名单解析或来自用户反馈。

在另一些实施例中,来源可以具有用于表示从标题中抽取的参数A、用于表示从产品名单解析的参数B、以及用于表示来自用户反馈的参数C。参数A、B和C的数值可以是0或1。

在参数A的数值为1的情况下,指明候选词的来源有从标题中抽取;在参数A的数值为0的情况下,指明候选词的来源没有从标题中抽取。

在参数B的数值为1的情况下,指明候选词的来源有从产品名单解析;在参数B的数值为0的情况下,指明候选词的来源没有从产品名单解析。

在参数C的数值为1的情况下,指明候选词的来源有来自用户反馈;在参数C的数值为0的情况下,指明候选词的来源没有来自用户反馈。

在示例性实施例中,来源也可以通过其他方式来体现。

如上所述,候选词条目520为:候选词+全部标题+频次(即,被抽取的次数)+来源。可以基于该候选词条目520生成候选词的输入样本530,例如候选词1的输入样本530包括样本1、样本2、...、样本n,以此类推。

在一些实施例中,候选词的输入样本530可以为:候选词+标题1/标题2/.../标题m+频次+来源。标题1/标题2/.../标题m是从与该候选词相关的全部标题中随机选择的m个标题。m可以是大于1且小于与该候选词相关的全部标题的数量的自然数。

在一个示例中,假设文本数据库中总共存在100篇文章,与候选词A相关的全部标题的数量是4(标题1、标题2、标题3、标题4),m是3,从产品名单中也解析出候选词A,但是没有用户反馈候选词A,则涉及候选词A的输入样本如下:

样本1.候选词A+标题1/标题2/标题3+4+(1,1,0)

样本2.候选词A+标题1/标题2/标题4+4+(1,1,0)

样本3.候选词A+标题1/标题3/标题4+4+(1,1,0)

样本4.候选词A+标题2/标题3/标题4+4+(1,1,0)

采用这种样式的输入样本,可以具有如下优点:

(1)基于候选词所提供的特征来区分该候选词所涉及的是否为一个词组,例如“redisl.4.1”这种带“.”符号的名字不是单纯的词组。

(2)标题可以提供上下文信息,可以辅助进一步判断,例如标题“安全月已成为每年举办一次的活动”,根据其中的“活动”一词可以确定“安全月”并不是一个产品名称。

(3)通过将多种标题进行组合以综合地评估一个候选词,可以利用不同上下文的组合来更精确地评估。

如图5所示,将针对每个候选词获得的输入样本530输入到预训练模型540中,从预训练模型输出540的结果550可以包括候选词以及候选词作为产品名称的概率值。

本公开的实施例基于候选词条目生成多个输入样本,可以借助于不同标题的上下文结合来更精确地识别出候选词是否是产品名称。

图6是根据本公开的第一实施例的确定指示候选词涉及的产品是否为过时产品的指标的示意流程图600。

如图6所示,流程图600例如可以包括如下操作。

在操作S610中,查看用户的反馈。

在操作S620中,确定用户的反馈是要增加产品还是要删除产品。

在操作S620中,如果确定结果为“是”,处理进行到操作S630。

在操作S620中,如果确定结果为“是”,处理进行到操作S640。

在操作S630中,将指标确定为指示候选词涉及的产品不是过时产品/不再研究的产品。

在操作S640中,将指标确定为指示候选词涉及的产品是过时产品/不再研究的产品。

本公开的实施例通过用户反馈,可以更直观地确定候选词涉及的产品是否是过时产品/不再研究的产品。

图7是根据本公开的第二实施例的确定指示候选词涉及的产品是否为过时产品的指标的示意流程图700。

如图7所示,流程图700例如可以包括如下操作。

在操作S710中,针对候选词,从文本数据库中获得与该候选词相关的文本的登记时间戳之中的最新登记时间戳。

在示例性实施例中,当将文本/文章存储到文本数据库中时,给该文本/文章添加时间戳以表明该文本被存入文本数据库时的时间。

在示例性实施例中,针对同一产品的文本/文章,以前被存储到文本数据库的文本的登记时间戳可以被更新为与最新添加到文本数据库中的文章的登记时间戳一致。

具体地,响应于新的文本被添加到文本数据库中,将文本数据库中与新的文本的标题有关的文本的时间戳更新为新的文本的时间戳。

在示例性实施例中,当前时间为获得最新登记时间戳的时间。

在操作S720中,确定在操作S710中获得的登记时间戳所指示的时间与当前时间之间的差值是否大于第二预定阈值。

在操作S720中的确定结果为“是”的情况下,处理进行到操作S730。

在操作S720中的确定结果为“是”的情况下,处理进行到操作S740。

在操作S730中,将指标确定为指示候选词涉及的产品不是过时产品/不再研究的产品。

在操作S740中,将指标确定为指示候选词涉及的产品是过时产品/不再研究的产品。

在示例性实施例中,例如,第二预定阈值可以是10年,当关于产品A的最新的登记时间戳B所指示的时间距离当前时间超过10年时,表明近10年来企业内没有再录入关于产品A的任何文本,此时认为产品A已被放弃,即,产品A是过时的/不再研究的产品。

在本公开中,为了提高识别候选词是否是产品名称的精度,可以预先对预训练模型进行训练。

在示例性实施例中,最初可以利用企业内部现有的信息资料对预训练模型进行训练,从而得到训练后的预训练模型。

在示例性实施例中,在信息资料中存在产品名称以及大量非产品名称。为了防止对预训练模型的训练受正负样本不均衡的影响,采用欠采样的方法使正负样本平衡。然后基于平衡后的正负样本来对预训练模型进行训练。

本公开的实施例利用登记时间戳,可以更精确地确定指示候选词涉及的产品是否为过时产品,而不会引起由于人员误判而误删除候选词的问题。

图8是根据本公开的实施例的初始对预训练模型进行训练的过程的示意图。以下将以ERNIE模型为例阐述对初始ERNIE模型进行训练的过程。

方框810示出了对初始ERNIE模型进行粗略训练的过程。在该过程中,利用企业内的信息资料对初始ERNIE模型810-1进行粗略训练,得到获得粗略训练后的ERNIE模型810-2。在一些实施例中,企业内的信息资料可以是如上所述的文本数据库中的标题。在另一些实施例中,企业内的信息资料可以是关于产品的概述等。

方框820示出了获得用于进行精细训练的训练集的过程,所述训练集例如是下文所述的正负平衡训练集。

如方框820所示,获得原始训练集820-1。在示例性实施例中,原始训练集820-1可以是最初从企业内的信息资料中提取出来的候选词。由于企业内存在大量的信息,而产品关键词仅占很少的一部分,因此,在由最初从企业内的信息资料中提取出来的候选词所构成的原始训练集中,作为正样本的产品词的数量远远少于作为负样本的非产品词的数量。因此,为了避免正负样本数量不均衡影响对预训练模型的训练,在此需要对正负样本的数量进行均衡。

从原始训练集820-1中提取正样本820-2和负样本820-3。在示例性实施例中,如上所述,关于产品名称的样本为正样本,不是关于产品名称的样本为负样本。例如,包含“redis1.4.1”的样本是一个负样本。

可以对正样本820-2执行样本增强操作以增加正样本的数量。在示例性实施例中,样本增强操作可以是:如上所述,基于一个正样本条目(候选词+全部标题+频次(即,被抽取的次数)+来源)获得多个输入样本。

例如,如上所述,假设文本数据库中总共存在100篇文章,与候选词A相关的全部标题的数量是4(标题1、标题2、标题3、标题4),m是3,从产品名单中也解析出候选词A,但是没有用户反馈候选词A,则一个正样本条目为:候选词A+标题1/标题2/标题3/标题4+4+(1,1,0),基于该一个正样本条目获得的正输入样本如下:

样本1.候选词A+标题1/标题2/标题3+4+(1,1,0)

样本2.候选词A+标题1/标题2/标题4+4+(1,1,0)

样本3.候选词A+标题1/标题3/标题4+4+(1,1,0)

样本4.候选词A+标题2/标题3/标题4+4+(1,1,0)

通过这样的样本增强操作,可以增大正样本的数量。

可以对负样本820-3执行欠采样操作。例如可以从负样本820-3中获得与样本增强后的正样本的数量相同或者实质上相同的数量个负样本。

基于数量大致相等的正样本和负样本,生成正负平衡训练集820-4。

利用正负平衡训练集820-4对粗略训练后的ERNIE模型810-2进行精细训练,获得精细训练后的ERNIE模型840。

本公开的实施例通过对预训练模型进行粗略训练和精细训练,可以使得预训练模型的识别精度更高。

图9是根据本公开的实施例的用于对候选词进行评估的预训练模型900的结构图。

如图9所示,预训练模型900的结构包括预训练层910和全连接层920。

在示例性实施例中,预训练层910可以包括前向反馈神经网络层910-1和多头注意力层910-2。

在示例性实施例中,当将例如候选词A的一条输入样本(例如,候选词A+标题1/标题2/标题3+4+(1,1,0))输入到预训练模型900中时,将候选词A、标题1、标题2、标题3输入到预训练层中,然后获得一个关于候选词A的语义向量,然后该语义向量连同频次(例如,4)和来源(例如,(1,1,0))一起输入到全连接层920中,以获得评估结果:候选词A+概率值。

在示例性实施例中,预训练模型在对候选词进行评估时,可以基于候选词的评估结果再次进行学习,从而如此循环往复地训练,使得预训练模型能够越来越精确地识别候选词。

在示例性实施例中,利用本公开提供的更新产品列表的方法获得的产品列表可以应用于以下场景中的至少之一。

1.在搜索应用上的应用:

由于可以从文本数据库中的文本中抽取出产品名称,因此,在抽取的过程中自动将产品名称与相关文本相关联。基于此,当利用本公开提供的更新产品列表的方法获得了更新后的产品列表之后,可以通过搜索产品列表中的某一产品而直接返回与其相关联的全部文章。

2.在推荐应用方面:

当用户曾经搜索过某一产品A时,会自动将用户与该产品A相关联,从而在用户与产品A之间形成关联关系。由此,可以基于用户与产品A之间的关联关系以及以上所述的产品A与相关文本之间的关系,将与产品A相关的文章推荐给该用户。

3.“以事找人”项目里的应用:

有时用户需要根据产品的名字找到相关的负责人,以开展合作或者技术咨询等沟通。可以将产品列表中的各个产品关联到相关负责人。因此,当搜索产品时,即可获得该产品的负责人。

本公开的实施例在不同的层次获得候选词条目中的不同信息,以分阶段地、更精确地对候选词进行评估。

图10是用来实现本公开实施例的更新产品列表的方法的装置的框图。

如图10所示,用于更新产品列表的装置1000可以包括确定单元1001、获得单元1002以及更新单元1003。

确定单元1001可以被配置为在关于产品的第一候选词集合中,确定关于非产品名称的候选词和关于过时产品的候选词。

获得单元1002可以被配置为从第一候选词集合中,去除关于非产品名称的候选词和关于过时产品的候选词,得到第二候选词集合。

更新单元1003可以被配置为利用第二候选词集合来更新产品列表。

除了以上确定单元1001、获得单元1002以及更新单元1003之外,用于更新产品列表的装置还可以包括其他单元、模块和子模块,用于对应地执行上述各种操作。

以下将就其他单元、模块和子模块进行描述。

用于更新产品列表的装置1000还可以包括抽取单元、解析单元、获得单元和生成单元。

抽取单元可以被配置为从预先存储在文本数据库中的文本的标题中抽取候选词。

解析单元可以被配置为从预先存储在产品数据库中的产品名单解析出候选词。

获得单元可以被配置为通过用户反馈来获得候选词。

生成单元可以被配置为利用所抽取的候选词、所解析出的候选词和通过用户反馈而获得的候选词,生成所述第一候选词集合。

确定单元1001可以包括第一确定模块、第二确定模块和第三确定模块。

第一确定模块可以被配置为针对第一候选词集合中的每一个候选词,确定候选词作为产品名称的概率值,并且确定指示候选词涉及的产品是否为过时产品的指标。

第二确定模块可以被配置为在第一候选词集合中,确定具有小于第一预定阈值的概率值的候选词,作为关于非产品名称的候选词。

第三确定模块可以被配置为在第一候选词集合中,确定具有指示是过时产品的指标的候选词,作为关于过时产品的候选词。

第一确定模块还可以包括输入样本生成子模块和概率值生成子模块。

输入样本生成子模块可以被配置为针对第一候选词集合中的每个候选词生成至少一个输入样本。

概率值生成子模块可以被配置为基于预训练模型对候选词的输入样本进行评估,得到候选词作为产品名称的概率值。

如上所述,每个候选词的输入样本可以包括以下内容:

候选词;

与候选词相关联的文本标题;

候选词在抽取操作、解析操作和用户反馈操作中出现的次数;以及

候选词的来源。

第一确定模块还可以包括第一指标确定子模块和第二指标确定子模块。

第一指标确定子模块可以被配置为在用户反馈指示增加候选词的情况下,将指标确定为指示候选词涉及的产品是非过时产品。

第二指标确定子模块可以被配置为在用户反馈指示删除候选词的情况下,将指标确定为指示候选词涉及的产品是过时产品。

第一确定模块还可以包括最新登记时间戳获得子模块和过时产品指标生成子模块。

最新登记时间戳获得子模块可以被配置为针对候选词,从文本数据库中获得与候选词相关的文本的登记时间戳之中的最新登记时间戳,其中登记时间戳是在文本被存储到文本数据库中时添加到文本的时间戳。

过时产品指标生成子模块可以被配置为在最新登记时间戳所指示的时间与当前时间之间的差值大于第二预定阈值的情况下,将候选词涉及的产品确定为过时产品,并且生成指示候选词涉及的产品为过时产品的指标,其中当前时间为获得最新登记时间戳的时间。

用于更新产品列表的装置1000还可以包括时间戳更新单元。

时间戳更新单元可以被配置为响应于新的文本被添加到所述文本数据库中,将文本数据库中与新的文本的标题有关的文本的时间戳更新为新的文本的时间戳。

本公开的实施例通过从候选词集合中去除不是真实产品名称的候选词以及过时产品的候选词,使得不仅能把新出现的产品名称添加到产品列表中,还能删除掉已经过时的产品,防止“脏(无用)”产品存在。

根据本公开的实施例的模块中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

例如,确定单元1001、获得单元1002以及更新单元1003中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,确定单元1001、获得单元1002以及更新单元1003的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,确定单元1001、获得单元1002以及更新单元1003中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

需要说明的是,本公开的实施例中装置部分实施方式与本公开的实施例中方法部分实施方式对应相同或类似,装置部分实施方式的描述具体请参考方法部分实施方式的描述,在此不再赘述。

根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。

本公开的实施例通过从候选词集合中去除不是真实产品名称的候选词以及过时产品的候选词,使得不仅能把新出现的产品名称添加到产品列表中,还能删除掉已经过时的产品,防止“脏(无用)”产品存在,增加产品列表的实时性和准确性。

图11示出了可以用来实施本公开的实施例的示例电子设备1100的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图11所示,设备1100包括计算单元1101,其可以根据存储在只读存储器(ROM)1102中的计算机程序或者从存储单元1108加载到随机访问存储器(RAM)1103中的计算机程序,来执行各种适当的动作和处理。在RAM 1103中,还可存储设备900操作所需的各种程序和数据。计算单元1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。

设备1100中的多个部件连接至I/O接口1105,包括:输入单元1106,例如键盘、鼠标等;输出单元1107,例如各种类型的显示器、扬声器等;存储单元1108,例如磁盘、光盘等;以及通信单元1109,例如网卡、调制解调器、无线通信收发机等。通信单元1109允许设备1100通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元1101可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1101的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法、处理和操作,例如方法200。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1108。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1102和/或通信单元1109而被载入和/或安装到设备1100上。当计算机程序加载到RAM 1103并由计算单元1101执行时,可以执行上文描述的方法200的一个或多个步骤。备选地,在其他实施例中,计算单元1101可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法200。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

相关技术
  • 车载无线通信装置、漫游列表更新系统和更新列表的方法
  • 更新产品列表的方法和装置
技术分类

06120112986148