对象推荐的方法、计算设备和计算机可读存储介质与流程

文档序号:23338457发布日期:2020-12-18 16:31阅读:86来源:国知局
本公开的实施例涉及信息推荐领域,并且更具体地,涉及对象推荐的对象推荐的方法、计算设备和计算机可读存储介质。
背景技术
::随着互联网地快速发展,人们接受到的信息也在爆炸式增长,推荐系统需要在信息超载的情况下,为用户推荐其感兴趣的资源、商品、从而提高用户体验并且提高资源的分发效率和商品的购买率。在传统的对象推荐的方案中,计算设备通常基于获取用户线上历史操作行为数据而进行目标对象的推荐。但是,当缺少用户的线上行为(例如线上购买记录和线上视频观看记录)时,或者存在大量的目标对象未被操作,则资源和商品往往不被适当地推荐给用户。因此,传统的对象推荐的方案的不足之处在于:当用户的线上操作行为数据非常稀疏,进而无法准确地向用户推荐目标对象。因此,需要一种高效、准确地向缺乏线上选择记录的用户推荐对象的方法。技术实现要素:根据本公开的实施例,提供了一种对象推荐的方法、计算设备和计算机可读存储介质,即便缺乏线上操作行为数据,也能够高效、准确地向用户推荐匹配的目标对象。在本公开的第一方面中,提供了一种对象推荐的方法,包括:基于目标用户和多个参考用户对多个线上对象和多个线下对象的历史选择记录,确定多个参考用户中的、与目标用户相关联的至少一个参考用户,历史选择记录至少指示针对对象的历史选择次数;基于历史选择记录,确定目标用户的第一特征、至少一个参考用户的第一特征、多个线上对象的第一特征和多个线下对象的第一特征;基于多个线上对象的第一特征和多个线下对象的第一特征,将至少一个线下对象与至少一个线上对象相关联;基于至少一个参考用户对至少一个线下对象的历史选择记录,更新至少一个参考用户对相关联的至少一个线上对象的历史选择记录;以及基于所更新的历史选择记录、目标用户的第一特征和至少一个参考用户的第一特征,确定用于向目标用户推荐的至少一个线上对象。在本公开的第二方面中,提供了一种对象推荐的装置,包括:基于目标用户和多个参考用户对多个线上对象和多个线下对象的历史选择记录,确定多个参考用户中的、与目标用户相关联的至少一个参考用户,历史选择记录至少指示针对对象的历史选择次数;基于历史选择记录,确定目标用户的第一特征、至少一个参考用户的第一特征、多个线上对象的第一特征和多个线下对象的第一特征;基于多个线上对象的第一特征和多个线下对象的第一特征,将至少一个线下对象与至少一个线上对象相关联;基于至少一个参考用户对至少一个线下对象的历史选择记录,更新至少一个参考用户对相关联的至少一个线上对象的历史选择记录;以及基于所更新的历史选择记录、目标用户的第一特征和至少一个参考用户的第一特征,确定用于向目标用户推荐的至少一个线上对象。在本公开的第三方面中,提供了一种计算设备,包括一个或多个处理器;以及存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现根据本公开的第一方面的方法。在本公开的第四方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现根据本公开的第一方面的方法。应当理解,
发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。附图说明结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素。图1示出了本公开的多个实施例能够在其中实现的示例环境的示意图。图2示出了根据本公开的一些实施例的对象推荐的过程的流程图。图3示出了根据本公开的一些实施例的更新历史选择记录的过程的流程图。图4示出了根据本公开的一些实施例的确定用于向用户推荐对象的过程的流程图。图5示出了能够实施本公开的多个实施例的计算设备的框图。具体实施方式下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。在本公开的实施例的描述中,术语“模型”可以从训练数据中学习到相应的输入与输出之间的关联,从而在训练完成后基于训练得到的参数集对给定的输入进行处理以生成对应的输出。“模型”有时也可以被称为“神经网络”、“学习模型”、“学习网络”或“网络”。这些术语在本文中可互换地使用。术语“特征”是值通过一个低维的向量表示对象或用户。该特征向量的性质使距离相近的向量对应的物体有相近的含义。例如,两个对象汽车和数码产品都属于科技类物品,则汽车的特征向量和数码产品的特征向量在空间上距离比较接近。又比如用户a和用户b同时选择娱乐类信息作为感兴趣的标签或者用户a和用户b同时在咖啡店进行过消费,则用户a和用户b的特征在空间上距离比较接近。利用“特征”概念能够用低维向量对物体进行编码还能保留其含义的特点非常适合深度学习。如以上提及的,需要一种正确表示对象和推荐对象的方法。在当前对象推荐方案中,主要存在如下模式:(1)通过用户的历史点展训练,去拟合点击信息,从而得到用户与对象的向量表示,然后通过用户与对象的向量的内积标识用户与对象件的匹配度,以将相应的对象推荐给用户。此方法的缺点在于当用户的线上历史点展信息比较稀疏时,模型无法很好地准确地表示用户和对象的向量表示。导致针对该用户的推送转化率较低。(2)向用户推荐和其过去感兴趣的对象相似的对象。首先建立用户点击的对象列表,通过点击对象来训对象的共现关系,从而得到对象向量表示。然后从用户已经看过的感兴趣对象中选择若干个对象。接着计算用户从点击过的对象与若干个对象的匹配度,根据匹配度排序,推荐给用户匹配度较高的对象。此方法的缺点在于当用户的线上点展信息较少时,无法找到用户感兴趣的足够多的对象,进而无法准确地向用户推荐其未点击过的对象。因此,需要一种高效、准确地向缺乏线上选择记录的用户推荐对象的方法。根据本公开的实施例,提出了一种对象推荐的方案。在该方案中,利用把用户实际对线上对象的选择和根据对应关系映射得到的对线上对象的选择合并作为用户最终的对线上对象的选择,并利用该合数据进行对象的推荐。在一些实施方式中,首先确定与目标用户相似的至少一个参考用户。然后确定该目标用户、参考用户和其选择的线上对象和线下对象的特征。接着建立线上对象和线下对象的对应关系以将参考用户对线下对象的选择记录转换为对线上对象的选择记录。之后将实际线上记录与所转换的线上记录合。最后通过目标用户和参考用户之间的匹配度以及该合并的记录来进行对象推荐。在用户对线上对象的选择记录稀疏的情况下,将用户对线下对象的选择记录转换为对线上对象的选择记录,从而可以更准确、高效地将线上对象推荐给用户,可以提高推送转化率,并且提升用户体验。以下参考附图来说明本公开的基本原理和若干示例实现。图1示出了本公开的多个实施例能够在其中实现的示例环境100的示意图。应当理解,图1所示出的环境100仅仅是示例性的,而不应当构成对本公开所描述的实现的功能和范围的任何限制。如图1所示,环境100包括目标用户110、计算设备140、多个参考用户150、线下对象120、线上对象160、以及多个参考用户150对线下对象120和线上对象160的历史选择130。目标用户110以及多个参考用户150可以是各种类型的应用的用户,该应用可以是包括推荐系统的应用,包括但不限于购物应用、短视频应用、音乐应用、婚恋交友应用、新闻应用、贴吧应用、云盘存储应用、搜索应用等。本公开在此不做限制。线上对象160可以是上述包括推荐系统的应用中的商品、直播间、短视频、图片、音乐、人物信息等,线下对象120可以线下的快餐店、咖啡店、书店、音像店、服装店等实体产业。目标用户110以及多个参考用户150在上述应用中接收被推荐的、与线上对象160、线下对象120相关的视频、图片、文字、语音或其组合。例如,用户进入购物应用后,在显示界面中收到推荐的产品的文字信息或视频信息。在一个实施例中,目标用户110和多个参考用户150对多个线上对象160的历史选择次数小于其对多个线下对象120的历史选择次数,也即目标用户对线下物品的选择记录多于对线上物品的选择记录。请注意,对于不同的线上对象160和线下对象120,参考用户和目标用户可以互换,图1中只是示例性的,可以存在一个或多个参考用户以及目标用户,本公开不旨在限制。计算设备140目标用户110和多个参考用户150对多个线上对象160和多个线下对象120的历史选择记录130,例如目标用户和参考用户点击、转发、发布不同样本对象160的行为,亦或是目标用户和参考用户在线下实体店中对不同物品的选择的行为,来得到目标用户110和多个参考用户150的特征。这将在下文详细描述。计算设备140可以基于目标用户110和多个参考用户150的特征,来选择与目标用户110最相似的至少一个参考用户150。计算设备140还可通过该目标用户110最相似的至少一个参考用户150对多个线上对象160和多个线下对象120的选择关系,确定其各自的特征。然后利用该最终特征来推荐目标对象120。虽然计算设备140被示出为包括历史选择记录130,计算设备140也可以从其他实体获取是历史选择记录130。计算设备140可以是任何具有计算能力的设备。作为非限制性示例,计算设备140可以是任意类型的固定计算设备、移动计算设备或便携式计算设备,包括但不限于台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、多媒体计算机、移动电话等;计算设备140的全部组件或一部分组件可以分布在云端。计算设备140至少包含处理器、存储器以及其他通常存在于通用计算机中的组件,以便实现计算、存储、通信、控制等功能。以下结合图2至图5来进一步描述详细的对象推荐的过程。图2图示了根据本公开的实施例的对象推荐的方法200的流程图。方法200可以由图1中的计算设备140来实施。为便于描述,将参照图1来描述方法200。在框210,计算设备140基于目标用户110和多个参考用户150对多个线上对象160和多个线下对象120的历史选择记录,确定多个参考用户150中的、与目标用户110相关联的至少一个参考用户,历史选择记录130至少指示针对所述对象的历史选择次数。例如,计算设备140通过用户在线上或线下对物品的购买记录、对视频的观看记录来确定目标用户110和与其相似的至少一个参考用户。计算设备140可以确定目标用户的第二特征和多个参考用户的第二特征,基于目标用户的第二特征和至少一个参考用户的第二特征,确定至少一个参考用户与目标用户之间的第四匹配度;以及如果第四匹配度大于第二匹配度阈值,将所确定的至少一个参考用户与目标用户相关联。计算设备140可以首先利用诸如word2vec原理将多个线上对象160和多个线下对象120转换为标示其特征的词向量vec。例如,计算设备140可以将“快餐”转化为vec(快餐),将“咖啡店”转化为vec(咖啡店),将“汽车”转换为vec(汽车)等。word2vec原理是将词映射到一个新的空间中,并以多维的连续实数向量进行表示,利用其可以挖掘词之间的关联属性,从而提高了向量语义上的准确度。这仅仅是一个示例,还可以用其他方式来表示用户和对象,本公开在此不做限制。在一个实施例中,上述词向量的向量维度(vec_dim)可以根据精准率、覆盖率和计算资源的情况调整。vec_dim越大,保留的用户信息越多,推荐结果越精准,但是需要的计算资源也越高,可以根据不同的推荐场景算则不同的向量表示维度,以灵活且准确地进行推荐。然后,计算设备140可以基于存储在其内部的或者存储在云服务器中的目标用户110和多个参考用户150对多个线上对象160和多个线下对象120的历史选择记录130来表示用户的特征。在一个示例中,计算设备140可以计算多个线上对象160和多个线下对象120所对应的特征的权重。在一个实施例中,计算设备140可以确定上述词向量的逆文档率(idf),idf用来表征某个词的普遍重要性程度,和词向量vec是一一对应关系,在计算用户的特征时作为词向量vec的权重加入计算。可以根据如下等式计算idf:逆文档率(idf)=log(待训练的用户数/(包含该词的用户数+1))(1)。接着,计算设备140可以基于历史选择记录130中某一用户对线下对象和/或线上对象的历史选择来确定该用户的特征(在下文也可以被称为第二特征)。以目标用户110作为示例,可以对与目标用户110相关联的所有词向量vec的idf加权平均,例如,该目标用户在快餐店和咖啡店选择过物品,则目标用户的特征表示为:(vec(快餐)*idf(快餐)+vec(咖啡店)*idf(咖啡店))/2。可以用类似的方式确定多个参考用户的第二特征,在此不做赘述。这仅仅是个示例,还可以应用其他的算法计算权重或者为了节约计算资源可以不计算权重,本公开对此不做限制。最后,计算设备140基于上述确定的用户的第二特征来确定与目标用户110相似的多个参考用户。在一个实施例中,可以使用faiss库,采用包含聚类的搜索方式来确定相似用户,计算设备140可以通过确定以下参数来确定相似用户:聚类中心个数nlist:根据训练数据情况确定,例如约为训练数据的20%;相似用户个数k:根据结果的覆盖率、精准率和计算资源调整。计算设备140最终得到用户和用户之间的相似度得分表(表1,如下所示)(user_similarity_table),表中包含"目标用户","相似用户","匹配度(在下文也可以被称为第四匹配度)"三列。在一个实施例中,计算设备140可以将所获取的第四匹配度与匹配度阈值(在下文也可以被称为第二匹配度阈值)进行比较,例如第二匹配度阈值为0.6,则计算设备将第四匹配度大于0.6的用户b、c和d作为a的参考用户。在一个备选实施例中,还可以将第四匹配度排名位于前百分之50的用户作为参考用户。请注意,上述用户的数目、匹配度和阈值仅仅是示例性的,不作为限制。可以采用任何合适的数字以及数目来确定相似的用户。此外,上述出现的用户的第二特征、用户间的第四匹配度以及第二匹配度阈值的名称仅仅是示例性的,其可以与前后文出现的其他特征(例如第一特征)、其他匹配度(例如第一、二、三、五匹配度)或者其他匹配度阈值(第一、三匹配度阈值)相同或者不同,本公开不旨在限制。在框220,计算设备140基于历史选择记录130,确定目标用户110的第一特征、至少一个参考用户的第一特征、多个线上对象160的第一特征和多个线下对象120的第一特征。例如,计算设备140可以在历史选择记录130中查找在210确定的目标用户和多个参考用户对线上对象和线下对象的历史选择。在一个实施例中,计算设备140基于目标用户110和多个参考用户150的历史选择记录来构建用户和对象的关系图,例如,图中有两种节点,即用户节点和对象节点,当用户对一个对象进行了选择后,即在两个节点之间建立一条边(例如用户a在咖啡店选择了咖啡、在电影院看了电影、在书店选择了教育类别的书籍,则在用户a和“咖啡店”、“电影院”、“书店”、“教育”节点间建立边)。以下为了简洁起见,通过字母表示用户,通过数字表示线上对象和线下对象,存在用户节点a、b、c、d和对象节点1、2、3、4,a选择过1、2,则分别在节点a和节点1、2之间连线,产生了节点a到节点1、2的边。然后计算设备140在上述图中分别从用户节点和对象节点出发遍历图中节点随机游走,以生成以用户为起点和以资源为起点的两种游走序列(例如,a1b2d4c3a、1c3d4b2a等)。然后计算设备将该序列输入skip-gram模型,从而得到用户和对象的特征。在一个示例中,可以通过调整上述随机游走权重的方法来更准确地得到参考用户150的特征。例如,在游走过程,计算设用户节点和对象节点之间的同质性(homophily)和结构性(structuralequivalence)对节点间的边设定不同权重。具体地说,节点的“同质性”指的是距离相近节点的特征应该尽量近似,“结构性”指的是结构上相似的节点的特征应该尽量接近。计算设备140可以基于设定了不同权重的边得到更准确的游走序列,从而优化所得到的用户和对象的特征,从而更准确地表示用户和对象。在一个实施例中,计算设备140可以在节点之间增加和选择频次相关的权重,来降低高频选择对结果的影响。例如,权重可以通过如下等式(2)计算:某条边的权重=用户在某个行业的消费次数/用户消费总次数(2)。在框230,计算设备140基于多个线上对象160的第一特征和多个线下对象120的第一特征,将至少一个线下对象与至少一个线上对象相关联。例如,计算设备可以根据在220确定的线下对象的特征和线上对象的特征来确定其之间的匹配度(下文也可以被称为第五匹配度)。计算设备140可以基于至少一个线下对象的第一特征和至少一个线上对象的第一特征,确定至少一个线下对象和至少一个线上对象之间的第五匹配度;以及如果第五匹配度大于第三匹配度阈值,将至少一个线下对象与至少一个线上对象相关联。在一个实施例中,计算设备140可以通过计算上述得到的特征向量之间的距离来获得至少一个线下对象与至少一个线上对象之间的第五匹配度。作为示例,线上对象的特征为向量a,线下对象的特征为向量b,则其之间的余弦距离(也即第五匹配度)可以根据如下等式(3)计算:(3)。在一个备选实施例中,计算设备140还可以通过欧氏距离来计算两个对象的特征之间的距离。本公开在此不作限制,可以利用现有的或者将来开发的技术来计算特征向量间的距离。在一个示例中,距离近可以指示匹配度高,距离远可以指示匹配度低。计算设备140基于上述距离计算得到线上对象和线下对象之间的关联关系表(表2)(mapping_table),表中包含"线上对象","线下对象","第五匹配度(即余弦距离)"三列。计算设备140可以将所获取的第五匹配度与第三匹配度阈值进行比较,例如第三匹配度阈值为0.8,则计算设备将第五匹配度大于0.8的线下对象b确定为与线上对象a相关联的对象。请注意,上述对象的数目、匹配度和阈值仅仅是示例性的,不作为限制。可以采用任何合适的数字以及数目来确定相关联的对象。在一个实施例中,计算设备140可以通过调整匹配度阈值、用户数目、等参数控制上述表2的输出参数和参数数目。在框240,计算设备140基于至少一个参考用户对至少一个线下对象的历史选择记录,更新至少一个参考用户对相关联的至少一个线上对象的历史选择记录。例如,计算设备140将用户较为密集的线下数据转化为线上数据以进行更准确地推荐。下面,将结合图3进行详细描述。图3示出了根据本公开的一些实施例的更新历史选择记录的过程的流程图。在框310,计算设备140基于至少一个线下对象的第一特征和至少一个线上对象的第一特征,确定至少一个线下对象和至少一个线上对象之间的第一匹配度。例如,计算设备140可以确定上述相关联的线上对象a和线下对象b之间的匹配度为0.8。该匹配度的计算方法可以参照上述内容和等式,在此不再赘述。在框320,计算设备140基于第一匹配度和所述至少一个参考用户对至少一个线下对象的第一历史选择次数,确定第二历史选择次数。例如,计算设备140可以获取参考用户150对线下对象b的第一历史选择次数为10次,然后将10乘以上述匹配度0.8,得出第二历史选择次数为8次,该8次指示通过关联的映射关系推算的参考用户150对线上对象a的历史选择次数。请注意,上述计算方法和数字仅仅是示例性的,还可以用过其他方式得出参考用户对线上对象a的选择次数或者频数。在框330,计算设备140基于第二历史选择次数,更新至少一个参考用户对相关联的至少一个线上对象的历史选择次数。在一个实施例中,该至少一个参考用户可能实际上在线上未选择过该线上对象a,则计算设备140直接将8次作为选择次数。或者该至少一个参考用户选择过线上对象a1次,则将9次作为选择次数。通过上述计算、计算设备140可以得出参考用户对线上对象的实际选择以及对线上对象的经映射的选择的合并数据表3。继续回到图2进行描述,在框250,计算设备140基于所更新的历史选择记录、目标用户110的第一特征和至少一个参考用户的第一特征,确定用于向目标用户110推荐的所述至少一个线上对象。将结合图4进一步描述该过程。图4示出了根据本公开的一些实施例的确定用于向用户推荐对象的过程的流程图。在框410,计算设备140基于目标用户110的第一特征和至少一个参考用户的第一特征,确定目标用户110和至少一个参考用户之间的第二匹配度。例如,计算设备140可以确定目标用户和参考用户之间的匹配度(similarity),具体过程可以参考上述等式和内容,在此不再赘述。在一个实施例中,计算设备140可以在表1中查找用户间的匹配度。在框420,计算设备140基于第二匹配度、至少一个参考用户对所述多个线下对象的历史选择次数的总和以及所更新的历史选择记录,确定目标用户110和至少一个线下对象之间的第三匹配度。在一个示例中,计算设备140可以从上述表3中确定参考用户对至少一个线上对象的选择次数(num),以及对所有线上对象的选择次数总和(sum),然后基于以下等式计算目标用户和线下对象之间的匹配度:匹配度=num*similarity/sum等式(4)。根据上述等式,计算设备140可以确定计算目标用户和线上对象之间的匹配度表(表4)。在框430,计算设备140确定第三匹配度是否大于第一匹配度阈值。例如,计算设备140可以预先确定第一匹配度阈值为0.5。则计算设备140可以确定目标用户110和线上对象a、b和c之间的第三匹配度大于0.5。在框440,计算设备140如果确定第三匹配度大于第一匹配度阈值,则确定用于向所述目标用户推荐的所述至少一个线上对象。例如,计算设备140可以确定向目标用户推荐线上对象a、b和c。在一个实施例中,如果目标用户选择所推荐的至少一个线上对象,则计算设备140可以基于至少一个线上对象的第一特征,更新目标用户的特征。例如,如果目标用户选择了所推荐的线上对象a、b或c,则可以通过线上对象a、b或c的特征更新该目标用户的特征表示。这可以进一步增加线上数据的稠密度,进而更准确地表示目标用户,增加推荐的准确度。在一个实施例中,目标用户对多个线上对象的历史选择次数小于目标用户对多个线下对象的历史选择次数。在一个实施例中,计算设备140还可以将所确定的至少一个线上对象发送给目标用户,线上对象包括视频、图像、文字和语音中的至少一种。在线上历史选择记录极为稀疏的情况下,通过线下历史选择记录和线上历史选择的映射来补充线上选择记录,从而在保证质量的前提下提高最终结果的覆盖度。通过上述方法确定线下对象和线上对象的对应关系,根据对应关系把部分线下对象记录映射为线上对象记录,达到合理增加线上对象的数据的目标,从而使算法在保证推荐质量的情况下能够覆盖到更多用户。图5示出了可以用来实现本公开的实施例的示例电子设备500的示意性框图。例如,电子设备500可被用于实现图1中所示的计算设备140。如图所示,电子设备500包括中央处理单元(cpu)501,其可以根据存储在只读存储器(rom)502中的计算机程序指令或者从存储单元508加载到随机存取存储器(ram)503中的计算机程序指令,来执行各种适当的动作和处理。在ram中,还可存储电子设备500操作所需的各种程序和数据。cpu、rom以及ram通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。电子设备500中的多个部件连接至i/o接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许电子设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。中央处理单元501执行上文所描述的各个方法和处理,例如方法200至400的任一个。例如,在一些实施例中,方法200至400中的任一个可以被实现为计算机软件程序或计算机程序产品,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom和/或通信单元509而被载入和/或安装到电子设备500上。当计算机程序加载到ram并由cpu执行时,可以执行上文描述的方法200至400中的任何方法中的一个或多个步骤。备选地,在其他实施例中,cpu可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行上述方法中的任一个。本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、任意的非暂时性存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体地例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。以上已经描述了本公开的各实施方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施方式。在不偏离所说明的各实施方式的范围和精神的情况下,对于本
技术领域
:的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施方式的原理、实际应用或对市场中的技术的改进,或者使本
技术领域
:的其他普通技术人员能理解本文披露的各实施方式。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1