一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于高效数据协同聚类的协同信息生成对抗网络的制作方法

2022-05-18 19:47:25 来源:中国专利 TAG:


1.本公开总体上涉及数据协同聚类(co-clustering),并且更具体地,涉及用于高效数据协同聚类的协同信息生成对抗网络(co-informatic generative adversarial networks,ci-gan)。


背景技术:

2.推荐系统典型地包括通常以准个性化的方式促进用户定位用于消费的感兴趣的项目的应用。某一类型的推荐系统可以包括电视(tv)推荐系统,该系统可以用于对例如特定用户可能感兴趣观看的某些电影、tv连续剧、新闻节目、体育电视广播等提供推荐。此外,随着过多的节目流派、节目频道、视频共享平台发布者频道和其他特征越来越多地可用于用户,深度学习技术可以应用于推荐系统以改进用户观看推荐。具体地,虽然传统的推荐系统可能适用于建模,例如,顺序和结构化的tv节目数据,但用户的实际tv节目观看习惯在许多情况下可能包括非顺序和/或非结构化数据(例如,由于用户查看偏好随时间变化或演进)。提供一个或多个数据协同聚类技术来改进推荐系统可能是有用的。近年来,人工智能系统被用在各种领域。具体而言,人工智能系统是电子设备自身训练、确定并变得有智慧的系统。随着人工智能系统的使用,识别率被改进,用户的偏好可以被更准确的理解,因此,现有的基于规则的系统正在逐渐被基于深度学习的人工智能系统所取代。


技术实现要素:

3.问题的解决方案
4.根据本公开的一个方面,提供了一种方法。一种方法包括,由一个或多个计算系统:访问包括多个行数据和多个列数据的第一数据矩阵,向第一生成对抗网络(gan)提供包括与来自第一数据矩阵的多个行数据对应的多个行向量的第一数据输入,向第二gan提供包括与来自第一数据矩阵的多个列数据对应的多个列向量的第二数据输入,以及通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成至少部分地基于多个行向量和多个列向量的协同聚类相关性矩阵,其中,该协同聚类相关性矩阵包括第一数据矩阵的多个行数据和多个列数据之间的协同聚类关联。
5.第一gan和第二gan可以是协同信息生成对抗网络(ci-gan)组合器模型架构的一部分,其中,该ci-gan组合器模型架构还可以包括分布函数,该分布函数被配置为重构作为第三数据输入被提供给第一gan和第二gan的一个或多个协同聚类标记。
6.第一gan和第二gan可以是协同信息生成对抗网络(ci-gan)自动编码器模型架构的一部分,其中,该ci-gan自动编码器模型架构还可以包括分布函数,该分布函数被配置为基于由第一gan生成的多个输出行数据和由第二gan生成的多个输出列数据来重构多个行数据和多个列数据。
7.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵可以包括至少部分地基于互信息成本函数来确定第一数据矩阵的多个行数据
和多个列数据之间的一个或多个潜在的相互关系。
8.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵可以包括确定下界,该下界定义与协同聚类关联和第一数据矩阵的多个行数据和多个列数据之间的互信息(mutual information)对应的目标函数。
9.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵可以包括最大化协同聚类关联和第一数据矩阵的多个行数据和多个列数据之间的互信息。
10.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵可以包括单独地确定多个行数据和多个列数据的一个或多个解纠缠(disentangled)表示。
11.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵可以包括同时确定多个行数据和多个列数据的一个或多个解纠缠表示。
12.同时确定多个行数据和多个列数据的一个或多个解纠缠表示可以包括确定用于解密协同聚类相关性矩阵中的相互作用(interplay)数据结构的联合解缠结表示。
13.第一数据矩阵可以包括以下中的一个或多个:作为多个行数据的用户行为数据和作为多个列数据的用户内容查看数据、作为多个行数据的视频数据和作为多个列数据的视频描述(video-caption)数据、作为多个行数据的生物遗传数据和作为多个列数据的生物条件数据、作为多个行数据的电影数据和作为多个列数据的音乐数据、或作为多个行数据的图像数据和作为多个列数据的可听数据。
14.根据本公开的一个方面,提供了一种系统。一种系统,包括一个或多个非暂时性计算机可读存储介质,该一个或多个非暂时性计算机可读存储介质包括指令;以及耦合到存储介质的一个或多个处理器,该一个或多个处理器被配置为执行指令以访问包括多个行数据和多个列数据的第一数据矩阵,向第一生成对抗网络(gan)提供包括与来自第一数据矩阵的多个行数据对应的多个行向量的第一数据输入,向第二gan提供包括与来自第一数据矩阵的多个列数据对应的多个列向量的第二数据输入,以及通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成至少部分地基于多个行向量和多个列向量的协同聚类相关性矩阵,其中,该协同聚类相关性矩阵包括第一数据矩阵的多个行数据和多个列数据之间的协同聚类关联。
15.第一gan和第二gan可以是协同信息生成对抗网络(ci-gan)组合器模型架构的一部分,其中,该ci-gan组合器模型架构还包括分布函数,该分布函数被配置为重构作为第三数据输入被提供给第一gan和第二gan的一个或多个协同聚类标记。
16.第一gan和第二gan可以是协同信息生成对抗网络(ci-gan)自动编码器模型架构的一部分,其中,该ci-gan自动编码器模型架构还包括分布函数,该分布函数被配置为基于由第一gan生成的多个输出行数据和由第二gan生成的多个输出列数据来重构多个行数据和多个列数据。
17.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵的指令可以包括至少部分地基于互信息成本函数来确定第一数据矩阵的多个行数据和多个列数据之间的一个或多个潜在的相互关系的指令。
18.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类
相关性矩阵的指令可以包括确定下界的指令,该下界定义与协同聚类关联和第一数据矩阵的多个行数据和多个列数据之间的互信息对应的目标函数。
19.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵的指令可以包括最大化协同聚类关联和第一数据矩阵的多个行数据和多个列数据之间的互信息的指令。
20.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵的指令可以包括单独地确定多个行数据和多个列数据的一个或多个解纠缠表示的指令。
21.通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成协同聚类相关性矩阵的指令可以包括同时确定多个行数据和多个列数据的一个或多个解纠缠表示的指令。
22.同时确定多个行数据和多个列数据的一个或多个解纠缠表示的指令可以包括:确定用于解密协同聚类相关性矩阵中的相互作用数据结构的联合解缠结表示的指令。
23.根据本公开的一个方面,提供了一种非暂时性计算机可读介质。一种非暂时性计算机可读介质,包括指令,当该指令由计算系统的一个或多个处理器执行时,使一个或多个处理器访问包括多个行数据和多个列数据的第一数据矩阵,向第一生成对抗网络(gan)提供包括与来自第一数据矩阵的多个行数据对应的多个行向量的第一数据输入,向第二gan提供包括与来自第一数据矩阵的多个列数据对应的多个列向量的第二数据输入,以及通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量生成至少部分地基于多个行向量和多个列向量的协同聚类相关性矩阵,其中,该协同聚类相关性矩阵包括第一数据矩阵的多个行数据和多个列数据之间的协同聚类关联。
附图说明
24.图1示出了示例协同信息生成对抗网络(ci-gan)协同聚类系统。
25.图2a示出了用于高效数据协同聚类的组合器ci-gan模型的实施例。
26.图2b示出了用于高效数据协同聚类的自动编码器ci-gan模型的实施例。
27.图3a示出了利用ci-gan来执行高效数据聚类的示例示图。
28.图3b示出了利用ci-gan来执行高效数据聚类的示例示图。
29.图3c-图3q示出了利用用于高效数据协同聚类的ci-gan的示例训练阶段和另外的运行示例。
30.图3r-图3t示出了利用用于高效数据协同聚类的ci-gan的示例推理阶段和另外的运行示例。
31.图4示出了提供用于数据协同聚类的协同信息生成对抗网络(ci-gan)的方法的流程图。
32.图5示出了示例计算机系统。
33.图6示出了示例人工智能(ai)架构的示图。
具体实施方式
34.根据当前公开的实施例,本实施例指向提供用于高效数据协同聚类的协同信息生
成对抗网络(ci-gan)。在特定实施例中,ci-gan模型可以访问包括多个行数据和多个列数据的第一数据矩阵。在特定实施例中,ci-gan模型可以接收数据的数据矩阵,该数据矩阵可以包括例如作为多个行数据的用户行为数据和作为多个列数据的用户内容查看数据、作为多个行数据的视频数据和作为多个列数据的视频描述数据、作为多个行数据的生物遗传数据和作为多个列数据的生物条件数据、作为多个行数据的电影数据和作为多个列数据的音乐数据、或作为多个行数据的图像数据和作为多个列数据的可听数据。应该理解的是,至少某些维度(例如,行和列)是可互换的。
35.在特定实施例中,ci-gan模型可以为第一gan(例如,第一infogan)接收包括与来自第一数据矩阵的多个行数据对应的多个行向量的第一数据输入。在特定实施例中,ci-gan模型还可以为第二gan(例如,第二infogan)接收包括对应于来自第一数据矩阵的多个列数据的多个列向量的第二数据输入。在特定实施例中,第一gan和第二gan可以是ci-gan组合器模型架构的部分,其中ci-gan组合器模型架构还可以包括分布函数,该分布函数被配置为重构作为第三数据输入被提供给第一gan和第二gan的一个或多个协同聚类标记。在特定实施例中,结合或可替代地,第一gan和第二gan可以是ci-gan自动编码器模型架构的部分,其中ci-gan自动编码器模型架构还可以包括分布函数,该分布函数被配置为基于由第一gan生成的多个输出行数据和由第二gan生成的多个输出列数据重构多个行数据和多个列数据。
36.实际上,本实施例可以提供用于高效数据协同聚类的ci-gan模型。具体地,由于行数据和列数据的数据聚类是由ci-gan模型的第一gan(例如,第一infogan)和第二gan(例如,第二infogan)独立实现的,因此ci-gan模型可以允许以若干迥然不同的方式最大化协同聚类关联与输入行数据和列数据之间的互信息(例如,i指示一个随机变量可能建议另一个随机变量的程度的量度)。以这种方式,随着进一步用互信息目标函数增强用于高效数据协同聚类的本ci-gan模型,可能非常适合于跨各种技术应用共同学习双重数据表示。虽然本实施例可能在下面主要关于tv节目和推荐系统进行讨论,但是应当理解的是,本技术可以应用于可以利用二维数据的各种系统或应用中的任何一个,诸如可以利用多维数据的tv节目和推荐系统,基因组数据分析、医疗系统和分析、gps系统、室内定位和追踪系统、搜索引擎系统、文本文档和网页搜索系统、石油和天然气勘探和精炼系统、数据库搜索系统和/或其他应用和系统。
37.图1示出了示例协同信息生成对抗网络(ci-gan)协同聚类系统100。如图1所示,ci-gan系统100可以包括节目分析系统102、一个或多个数据库104、106以及tv节目和推荐内容子网络108。在特定实施例中,节目分析系统102可以包括可以接收一个或多个用户自动内容识别(acr)用户查看数据110的基于云的聚类计算架构或其他类似的计算架构,该一个或多个用户自动内容识别(acr)用户查看数据110可以由第一方或第三方源提供,并可以向适用于显示节目和广告内容和/或回放节目和广告内容的一个或多个客户端设备(例如,tv、独立监视器、台式计算机、膝上型计算机、平板计算机、移动电话、可穿戴电子设备、语音控制的个人助理设备、汽车显示器、游戏系统、家用电器或其他类似的多媒体电子设备)提供tv节目内容和广告内容。此外,节目分析系统102可以用于处理和管理各种分析和/或数据智能,诸如tv节目分析、网络分析、用户简档数据、用户支付数据、用户隐私偏好等。例如,在特定实施例中,节目分析系统102可以包括平台即服务(paas)架构、软件即服务(saas)架
构和基础设施即服务(iaas),或其他各种基于云的聚类计算架构。
38.在特定实施例中,如图1进一步描绘的,节目分析系统102可以包括预处理功能块112、ci-gan建模块114和协同聚类相关性(correlation)矩阵功能块116。在特定实施例中,预处理功能块112、ci-gan建模块114和协同聚类相关性矩阵功能块116可以各自包括例如计算引擎。在特定实施例中,预处理功能块112可以接收acr用户查看数据110,其可以包括例如一个或多个特定用户或用户的子组最近查看的特定节目内容(例如,tv节目)。例如,acr用户查看数据110可以包括与最近查看的节目内容(例如,tv节目)相关联的元数据、在其内查看最近查看的节目内容(例如,电视节目)的特定的时隙(例如,白天时间),以及在其上查看节目内容(例如,电视节目)的节目频道、最近查看的节目内容(例如,tv节目)的标识。
39.在特定实施例中,预处理功能块112然后可以与内容数据库104接口(interface)以将acr用户查看数据110中包括的最近查看的节目内容与由数据库104存储的tv节目内容相关联。例如,由数据库104存储的tv节目内容可以包括例如用户或子组简档数据、节目流派数据、节目类别数据、节目聚类类别组数据或可以由数据库104存储的其他tv节目内容或元数据。在特定实施例中,acr用户查看数据110可以包括以小时上下文、日上下文和/或日-小时上下文表示的时间序列数据。例如,在特定实施例中,可以例如在每个时间段的每个预定时隙接收时间序列acr用户查看数据110。
40.在特定实施例中,可以提供ci-gan建模块114以供执行高效的数据协同聚类并基于其生成一个或多个tv节目推荐或广告。在特定实施例中,如下面将关于图2a更详细描述地,ci-gan建模块114可以包括可能是用于执行高效数据协同聚类的ci-gan组合器模型架构的部分的第一gan和第二gan。在特定实施例中,结合或可替代地,并且如下面将关于图2b更详细描述地,第一gan和第二gan可能是ci-gan自动编码器模型架构的部分,其中ci-gan自动编码器模型架构执行高效的数据协同聚类。在特定实施例中,ci-gan建模块114然后可以将确定的协同聚类关联提供给协同聚类相关性矩阵功能块116以供进一步处理和管理。
41.例如,如图1进一步所示,节目分析系统102可以向数据库106提供基于ci-gan模型确定的协同聚类关联。在特定实施例中,如图1所进一步描绘地,基于网络的内容编排器(orchestrator)118可以从数据库106检索确定的协同聚类关联。然后内容编排器118可以将确定的协同聚类关联连同tv节目和将在节目中将查看的推荐和广告内容存储在数据库120中。在特定实施例中,基于确定的协同聚类关联,内容协调器118然后可以将tv节目和推荐内容122提供给例如最终用户客户端设备以供用户查看。
42.图2a示出了根据当前公开的实施例的用于高效数据协同聚类的组合器ci-gan模型200a的实施例。在特定实施例中,可以提供组合器ci-gan模型200a以用于基于例如互信息成本函数来学习和确定数据矩阵的行数据和列数据之间的潜在相互关系。例如,在特定实施例中,组合器ci-gan模型200a可以同步协同聚类用户行为数据和用户内容查看数据以向最终用户提供例如一个或多个节目推荐或广告。在特定实施例中,如图2a所示,组合器ci-gan模型200a可以包括第一gan 202a和第二gan 202b。例如,可以提供第一gan 202a来聚集数据矩阵的行数据,同时可以提供第二gan 202b来聚集数据矩阵的列数据(反之亦然)。在特定实施例中,可以由组合器ci-gan模型200a协同聚类的一个或多个数据矩阵可以包括,例如,作为行数据的用户行为数据和作为列数据的用户内容查看数据、作为行数据的
视频数据和作为列数据的视频描述数据、作为行数据的生物遗传数据和作为列数据的生物条件数据、作为行数据的电影数据和作为列数据的音乐数据、或作为行数据的图像数据和作为列数据的可听数据,或存在于两个迥然不同的数据维度中的其他类似数据。例如,在特定实施例中,第一gan 202a和第二gan 202b可以分别表示为:
43.行:最小gr,qr′
最大drv(dr,gr)-li(gr,qr)(等式1),以及
44.列:最小gc,qc最大dcv(dr,gr)-li(gc,qc)(等式2)。
45.在特定实施例中,如图2a所进一步描绘并且鉴于等式1和等式2,第一gan 202a可以包括行生成器204a(例如,“gr”)、行鉴别器206a(例如,“dr”)和行数据分布208a(例如,“qr”)。类似地,第二gan 202b可以包括列生成器204b(例如,“gc”)、列鉴别器206b(例如,“dc”)和列数据分布208b(例如,“qc”)。在特定实施例中,行生成器204a(例如,“gr”)和列生成器204b(例如,“gc”)可以各自包括例如可以建模变换函数的神经网络,在变换函数中,行生成器204a(例如,“gr”)和列生成器204b(例如,“gc”)可能适合于接收任何行输入数据(例如,行随机变量数据)和列输入数据(例如,列随机变量数据)并根据一个或多个目标分布函数生成行随机变量输出数据和列随机变量输出数据。例如,在特定实施例中,行生成器204a(例如,“gr”)可以接收行数据输入向量cr、行随机变量zr和协同聚类标记d。类似地,列生成器204b(例如,“gc”)可以接收列数据输入向量cc、列随机变量zc和协同聚类标记d。在特定实施例中,协同聚类标记d可以包括例如可以被设计为大小为cr x cc的类别向量(例如,因为行数据输入向量cr和列数据输入向量cc可以表示聚类(cluster)对或协同聚类)。在一个示例中,协同聚类标记d可以表示为:
46.最小g,q最大iv(dr′
,gr) v(dc′
,gc).li(gr′
,gr′
,qr)(等式3)。
47.在特定实施例中,参考等式3和图2a,行生成器204a(例如,“gr”)和列生成器204b(例如,“gc”)然后可以分别生成虚假行数据向量xr和虚假列数据向量xc-。例如,虚假行数据向量xr和虚假列数据向量xc-可以分别表示例如行数据输入向量cr和列数据输入向量cc的一个或多个虚假数据样本(例如,虚假未标记数据样本)。在特定实施例中,行生成器204a(例如,“gr”)可以向行鉴别器206a(例如,“dr”)提供虚假行数据向量xr,并且列生成器204b(例如,“gc”)可以向列鉴别器206b(例如,“dc”)提供虚假列数据向量xc-。例如,如进一步描绘的,行鉴别器206a(例如,“dr”)可以接收虚假行数据向量xr-和真实行数据向量xr-,并且列鉴别器206b(例如,“dc”)可以接收虚假列数据向量xc和真实列数据向量xc。在特定实施例中,在接收虚假行数据向量xr-之前可以用真实行数据向量xr-训练行鉴别器206a(例如,“dr”),并且在接收虚假列数据向量xc-之前可以用真实列数据向量xc训练列鉴别器206b(例如,“dc”)。例如,真实行数据向量xr和真实列数据向量xc-可以分别表示例如行数据输入向量cr和列数据输入向量cc的一个或多个真实数据样本(例如,真实未标记数据样本)。
48.具体地,在特定实施例中,作为第一gan 202a和第二gan 202b的训练的一部分,可以提供行生成器204a(例如,“gr”)来“欺骗”行鉴别器206a(例如,“dr”)并且可以提供列生成器204b(例如,“gc”)来“欺骗”列鉴别器206b(例如,“dc”)。例如,可以利用这种“欺骗”技术来分别最大化例如虚假行数据向量xr-和真实行数据向量xr-之间以及虚假列数据向量xc和真实列数据向量xc之间的最终分类错误。相反,例如,可以提供行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)来检测虚假行数据向量xr-和虚假列数据向量xc以分别最小化例如虚假行数据向量xr-和真实行数据向量xr-之间以及虚假列数据向量xc和真实
列数据向量xc之间的最终分类错误。例如,在特定实施例中,行生成器204a(例如,“gr”)和列生成器204b(例如,“gc”)可以生成虚假数据以试图分别“欺骗”行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)。行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)可以接收虚假数据作为输入,然后输出真(例如,如果虚假数据欺骗行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)确定虚假数据是真实数据)或假(例如,如果行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)确定虚假数据不是真实数据)。如果行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)输出假,那么行生成器204a(例如,“gr”)和列生成器204b(例如,“gc”)被惩罚和训练以产生更好的虚假数据以用于“欺骗”行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)。因此,行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)还可以提供分别指示虚假行数据向量xr-和真实行数据向量xr-之间以及虚假列数据向量xc和真实列数据向量xc之间的最终分类错误的真/假(例如,“t/f”)输出。
49.在特定实施例中,行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)然后可以向行聚类分布模型208a(例如,qr)、列聚类分布模型208b(例如,qc)和辅助聚类分布模型210(例如,qco)提供输出。在特定实施例中,行聚类分布模型208a(例如,qr)和列聚类分布模型208b(例如,qc)可以生成行数据输出向量cr’和列数据输出向量cc’。行数据输出向量cr’和列数据输出向量cc’可以各自分别包括例如行数据输入向量cr的行数据和列数据输入向量cc的列数据的一维聚类。在特定实施例中,辅助聚类分布模型210(例如,qco)可以重构一个或多个协同聚类标记d并生成一个或多个协同聚类标记d’。
50.图2b示出了根据当前公开的实施例的用于高效数据协同聚类的自动编码器ci-gan模型200b的实施例。在特定实施例中,可以提供自动编码器ci-gan模型200b以用于确定下界,该下界定义与数据矩阵的行数据和列数据之间的互信息(例如,i)和协同聚类关联对应的目标函数。特别地,自动编码器ci-gan模型200b可以最大化原始数据行数据和列数据之间的互信息(例如,i)与ci-gan生成的协同聚类关联以用于改进的模型优化。在一个示例中,互信息i的最大化可以表示为:
51.最大i(xr,

,xc′
,cr′
,cc′
)(等式4)。
52.具体地,在特定实施例中,自动编码器ci-gan模型200b可以同步协同聚类用户行为数据和用户内容查看数据以向最终用户提供例如一个或多个节目推荐或广告。在特定实施例中,如图2b所示,自动编码器ci-gan模型200b可以包括第一gan 212a和第二gan 212b。例如,可以提供第一gan 212a来聚集数据矩阵的行数据,同时可以提供第二gan 212a来聚集数据矩阵的列数据(反之亦然)。在特定实施例中,可以由自动编码器ci-gan模型200b协同聚类的一个或多个数据矩阵可以包括,例如,作为行数据的用户行为数据和作为列数据的用户内容查看数据、作为行数据的视频数据和作为列数据的视频描述数据、作为行数据的生物遗传数据和作为列数据的生物条件数据、作为行数据的电影数据和作为列数据的音乐数据、或作为行数据的图像数据和作为列数据的可听数据,或存在于两个迥然不同的数据维度中的其他类似数据。
53.在特定实施例中,如图2b所进一步描绘地,第一gan 212a可以包括行生成器214a(例如,“gr”)、行鉴别器216a(例如,“dr”)和行数据分布218a(例如,“qr”)。类似地,第二gan 212b可以包括列生成器214b(例如,“gc”)、列鉴别器216b(例如,“dc”)和列数据分布218b
(例如,“qc”)。在特定实施例中,行生成器214a(例如“,gr”)和列生成器214b(例如,“gc”)可以各自包括例如可以建模变换函数的神经网络,在变换函数中,行生成器214a(例如,“gr”)和列生成器214b(例如,“gc”)可能适合于接收任何行输入数据(例如,行随机变量数据)和列输入数据(例如,列随机变量数据)并根据一个或多个目标分布函数生成行随机变量输出数据和列随机变量输出数据。例如,在特定实施例中,行生成器214a(例如,“gr”)可以接收行数据输入向量cr、行随机变量zr和协同聚类标记d。类似地,列生成器214b(例如,“gc”)可以接收列数据输入向量cc、列随机变量zc和协同聚类标记d。在特定实施例中,协同聚类标记d可以包括例如可以被设计为大小为cr x cc的类别向量(例如,因为行数据输入向量cr和列数据输入向量cc可以表示聚类对或协同聚类)。
54.在特定实施例中,行生成器214a(例如,“gr”)和列生成器214b(例如,“gc”)然后可以分别生成虚假行数据向量xr和虚假列数据向量xc-。例如,虚假行数据向量xr和虚假列数据向量xc-可以分别表示例如行数据输入向量cr和列数据输入向量cc的一个或多个虚假数据样本(例如,虚假未标记数据样本)。在特定实施例中,行生成器214a(例如,“gr”)可以向行鉴别器216a(例如,“dr”)提供虚假行数据向量xr,并且列生成器214b(例如,“gc”)可以向列鉴别器216b(例如,“dc”)提供虚假列数据向量xc-。例如,如进一步描绘的,行鉴别器216a(例如,“dr”)可以接收虚假行数据向量xr-和真实行数据向量xr-,并且列鉴别器216b(例如,“dc”)可以接收虚假列数据向量xc和真实列数据向量xc。在特定实施例中,在接收虚假行数据向量xr-之前可以用真实行数据向量xr-训练行鉴别器216a(例如,“dr”),并且在接收虚假列数据向量xc-之前可以用真实列数据向量xc训练列鉴别器216b(例如,“dc”)。例如,真实行数据向量xr和真实列数据向量xc-可以分别表示例如行数据输入向量cr和列数据输入向量cc的一个或多个真实数据样本(例如,真实未标记数据样本)。
55.具体地,在特定实施例中,作为第一gan 212a和第二gan 212b的训练的一部分,可以提供行生成器214a(例如,“gr”)来“欺骗”行鉴别器216a(例如,“dr”)并且可以提供列生成器214b(例如,“gc”)来“欺骗”列鉴别器216b(例如,“dc”)。例如,可以利用这种“欺骗”技术来分别最大化例如虚假行数据向量xr-和真实行数据向量xr-之间以及虚假列数据向量xc和真实列数据向量xc之间的最终分类错误。相反,例如,可以提供行鉴别器216a(例如,“dr”)和列鉴别器216b(例如,“dc”)来检测虚假行数据向量xr-和虚假列数据向量xc以分别最小化例如虚假行数据向量xr-和真实行数据向量xr-之间以及虚假列数据向量xc和真实列数据向量xc之间的最终分类错误。
56.在特定实施例中,行鉴别器216a(例如,“dr”)和列鉴别器216b(例如,“dc”)然后可以向行聚类分布模型218a(例如,qr)、列聚类分布模型218b(例如,qc)提供输出。行鉴别器216a(例如,“dr”)和列鉴别器216b(例如,“dc”)还可以提供分别指示虚假行数据向量xr-和真实行数据向量xr-之间以及虚假列数据向量xc和真实列数据向量xc之间的最终分类错误的真/假(例如,“t/f”)输出。在特定实施例中,行聚类分布模型218a(例如,qr)和列聚类分布模型218b(例如,qc)可以生成行数据输出向量cr’和列数据输出向量cc’。行数据输出向量cr’和列数据输出向量cc’可以各自分别包括例如行数据输入向量cr的行数据和列数据输入向量cc的列数据的一维聚类。
57.在特定实施例中,如图2b的自动编码器ci-gan模型200b进一步示出地,重构器220(例如,r)可以接收行数据输出向量cr’和列数据输出向量cc’作为输入。在特定实施例中,
重构器220(例如,r)可以包括分布模型,该分布模型可以用于基于行数据输出向量cr’和列数据输出向量cc’来学习和重构虚假行数据向量xr-和虚假列数据向量xc-,以及通过扩展来学习和重构原始行数据输入向量cr和原始列数据输入向量cc。在特定实施例中,行聚类分布模型218a(例如,qr)和列聚类分布模型(例如,qc)以及重构器220(例如,r)可以由通过例如增加原始行数据输入向量cr和原始列数据输入向量cc以及行数据输出向量cr’和列数据输出向量cc之间的互信息(例如,i)来优化自动编码器ci-gan模型200b的下界来定义。
58.图3a和图3b示出了根据当前公开的实施例的示图300a和示图300b,示图300a和示图300b描绘了利用用于高效数据协同聚类的ci-gan(如以上关于图2a和图2b所描述的)运行示例。例如,示图300a可以包括数据矩阵,其可以包括例如作为行数据302的用户行为数据和作为列数据304的用户内容查看数据。为了出于例如提供可能更适合于某些用户的期望、偏好和兴趣的节目推荐和广告内容的目的而建造有用和有趣的二维数据协同聚类,数据矩阵的协同聚类可以由组合器ci-gan模型200a和/或自动编码器ci-gan模型200b执行。如用户行为行数据302和用户内容查看列数据304所示,用户1观看韩国电视剧(例如,韩剧)并且每小时改变节目频道8次;用户2观看电子竞技(例如,视频游戏视频)并且每小时改变节目频道12次;用户3观看动漫并且每小时改变节目频道5次;用户4观看足球并且每小时改变1次;用户5观看韩国流行音乐视频(例如,k-pop)并每小时改变9次节目频道;以及用户6观看赛车并且每小时改变2次节目频道。
59.图3b示出了基于图3a的数据矩阵的示图306,其中,与示出如本文所述的利用用于高效数据协同聚类的ci-gan模型(组合器ci-gan模型200a和/或自动编码器ci-gan模型200b)的高级技术的示图308相比,执行了较不高级的单一维度数据聚类。如示图306所描绘地,较不高级的单一维度数据聚类可能仅产生较差的和非特定的用户聚类310、312、314和316以及tv节目聚类318、320和322。没有当前公开的技术,无法实现将用户行为行数据302和用户内容查看列数据304进行相关的一个或多个协同聚类。在特定实施例中,如图308所示出地,ci-gan模型(组合器ci-gan模型200a和/或自动编码器ci-gan模型200b)可以找到用户行为行数据302和用户内容查看列数据304当中的一个或多个隐藏的和不明显的潜在相互关系(例如,潜在关系、相似性)。例如,协同聚类324示出了韩剧、k-pop、电子竞技和动漫之间确定的相互关系,并因此例如将用户1、用户2、用户3和用户5连同韩剧、k-pop、电子竞技和动漫聚类在一起。类似地,协同聚类326示出了足球和赛车之间确定的相互关系,并因此将用户4和用户6连同足球和赛车聚类在一起。具体而言,如前所述,一维聚类示图306独立于列对行进行聚类,反之亦然。因此,当在该示例中对行进行聚类时,示图306可以将用户4和用户6聚类为一个聚类316(其改变频道1-2次),将用户3聚类为另一个聚类314(其改变频道5次),将用户2聚类为另一个聚类312(其改变频道12次),以及将用户1和用户5为一个聚类310(改变频道8-9次)。继续,示图306可以将用户1和用户5聚类为一个聚类318(其观看k-pop和韩剧),将用户2和用户3聚类为另一个聚类320(其观看电子竞技和动漫),并且将用户4和用户6聚类为另一个聚类318(其观看足球和赛车)。然而,与示图308相比,示图306示出了一维聚类技术可能错过一个或多个隐藏的和不明显的潜在相互关系。相反,如本文所公开且如示图308所示的基于ci-gan的高效数据协同聚类技术可以找到这样的隐藏的且不明显的潜在相互关系。因此,本技术可以用于提供可能更适合于例如单独用户和/或单独用户子组的期望、偏好和兴趣的节目推荐和广告内容二者。实际上,本技术可以改进节目个
性化/推荐、靶向广告(例如,向特定用户显示相关广告)、内容需求预测(例如,预测特定用户想要观看的内容)、个性化设备设置(例如,如果特定用户观看自然表演,那么调整设备颜色设置),以及各种其他应用。
60.图3c-图3q示出了根据当前公开的实施例的利用用于高效数据协同聚类的ci-gan(如以上关于图2a和图2b所述)的示例训练阶段和另外的运行示例。例如,图3c示出了利用例如组合器ci-gan模型200a的运行示例。在这个实施例中,假设例如数据分析师想要找到12个协同聚类(例如,两个用户维度中的组)。因此,图3的示例300c示出了数据分析师可能决定拥有12个协同聚类(例如,4行乘3列,因为分析师认为可能有比收视率组更多的行为组)。在图3d的示例300d中,有4行(例如,4个不同类型的行为)和3列(例如,3个不同类型的收视率)。在这个示例中,cc、cr和d被均匀分布和随机选择。例如,对于cr的所有可能值,每个可能值表示行为的类型/种类,对于cr的所有可能值,每个可能值表示收视率类型/种类。在该示例中,还说明了协同聚类标记d的所有可能值。图3e示出了训练示例300e,其示出了在训练阶段期间,可以选择cc、cr和d的随机值。图3f和图3g示出了考虑作为输入的一个特定的真实数据样本的训练示例300f和300g。图3f示出了考虑一个特定的真实数据样本的训练示例300f。基于真实的数据样本输入,图3h的示例300h示出了gr基于cr、zr和d生成尝试与真实行数据样本xr相似的“虚假”行数据样本xr。
61.图3i示出了基于一个特定cr值、一个特定d值和一个特定zr值对一个真实数据样本xr进行训练的部分迭代的示例300i。应当理解,在实施过程中,可以对所有真实数据样本xr、所有可能的cr值、所有可能的d值和所有可能的zr值执行训练。图3j示出了示例300j,其示出了基于用于另外的n个数量的列的一个特定cr值、一个特定d值和一个特定zr值对一个真实数据样本xr进行继续训练。具体地,可以基于一个d值、一个cr值和所有zr值继续对一个真实数据样本xr进行训练。然后可以重复训练迭代(前向传播和反向传播的循环),直到xr与xr相似。在该示例中,可以使用大约700万个参数,但是预想了任何合适数量的参数可以与所公开的技术一起使用。图3k示出了示例300k,其包括前向传播和反向传播示例。可以执行前向传播和反向传播以使xr与xr相似并最大化互信息,其可以表示为:
62.最小g,q最大d v
infogan
(d,g,q)=v(d,g)-λli(g,q)(等式5)。
63.图3l示出了示例300l,其描绘了可以为行生成器214a(例如,“gr”)实现的神经网络(nn)302l。例如,可以为列生成器214b(例如,“gc”)实现这个或另一个nn。通过前向传播,基于输入值cr、zr和d,可以生成“虚假”行数据样本xr的一个或多个实例。图3m示出了示例300m,其描绘了用于输入值cr、zr和d以及对应的“虚假”行数据样本xr的各种行和/或列。图3n示出了示例300n,其描绘了可以在行聚类分布模型208a(例如,qr)、辅助聚类分布模型210(例如,qco)和/或行鉴别器206a(例如,“dr”)上实现的nn。通过前向传播,可以输入“虚假”行数据样本xr和真实行数据样本xr并进行比较,并且输出可以是真/假(t/f)和行数据输出向量cr’,并且生成一个或多个协同聚类标记d’。在一些实施例中,d’考虑了来自gr、dr、qco以及来自gc和drc的信息。
64.图3o示出了示例300o,其描绘了行鉴别器206a(例如,“dr”)。在一些实施例中,列鉴别器206b(例如,“dc”)可以以类似的方式来描绘。具体地,行鉴别器206a(例如,“dr”)和列鉴别器206b(例如,“dc”)可以提供真/假(例如,“t/f”)输出,真/假输出分别指示虚假行数据向量xr-和真实行数据向量xr-之间和/或虚假列数据向量xc和真实列数据向量xc之间
的最终分类错误。例如,行鉴别器206a(例如,“dr”)可以确定虚假行数据样本xr是否与xr足够相似(例如,真或假)。如果确定虚假行数据样本xr和真实数据样本xr不够相似(例如,假),则可以执行反向传播。图3p示出了示例300p,其包括可以包括例如一个或多个权重的nn,一个或多个权重可以用于增加虚假行数据样本xr和真实数据样本xr之间的相似性。例如,可以修改(例如,增加或减少)nn的权重(例如,wn)以增加虚假行数据样本xr和真实数据样本xr之间的相似性。在一个示例中,虚假行数据样本xr和真实数据样本xr之间的相似性可以由上述等式5中的v(d,g)表示。此外,示例300p中的通过nn的反向传播(以及前向传播)可能目标在于学习行数据和列数据之间的潜在关系并最大化互信息,这可能取决于以上等式中的λli(g,q)。例如,反向传播可以修改可以用于表示λli(g,q)(g,q)的权重(例如,wn)。用于行的权重将影响用于列的权重,反之亦然。在一个示例中,在现实世界中,在反向传播期间,d’可能影响行和列维度的权重二者。
65.图3q示出了示例300q,其包括行聚类分布模型208a(例如,qr)、辅助聚类分布模型210(例如,qco)和行鉴别器206a(例如,“dr”)。例如,行鉴别器206a(例如,“dr”)可以确定虚假行数据样本xr是否与真实行数据样本xr足够相似(例如,真或假)。在特定实施例中,如果虚假行数据样本xr与真实行数据样本足够相似(例如,真),那么对于一个或多个真实行数据样本xr,可以确定训练完成(例如,收敛)。因此,一旦完成训练,则可以生成行数据输出向量cr’、列数据输出向量cc’以及一个或多个协同聚类标记d’。在特定实施例中,然后可以针对所有虚假行数据样本xr(例如,包括针对cr、d和zr的所有值)迭代地重复训练。然后对所有虚假列数据样本xc(例如,包括针对cc、d和zc的所有值)重复相同的训练。在一些实施例中,所公开的技术同时(例如,在相同时间计算所有行和列)、并行和/或同步执行前述计算。然而,应当理解,其他方法是可能的。
66.图3r-图3u示出了根据当前公开的实施例的利用用于高效数据协同聚类的ci-gan(如以上关于图2a和图2b所述)示例推理阶段和另外的运行示例。图3r示出了第一推理阶段示例300r。具体地,基于训练阶段,所公开的技术可以对将重构的隐匿(latent)代码cr’应用于输入行数据并将重构的隐匿代码cr’应用于输入列数据进行优化(例如,考虑最大化的互信息)。此外,基于训练阶段,所公开的技术可以生成重构的隐匿代码d’,其示出了基于4行和3列(例如,12个协同聚类)的初始的用户做出的(例如,数据分析师)决策的所有可能的协同聚类。图3s示出了推理阶段示例300s。推理阶段示例300s示出了重构的隐匿代码d’被用于标志(flag)每个输入的真实数据样本并将其分组到协同聚类中。300s中的示例表表示完成的协同聚类。例如,在现实世界中,可能有极其更多的数据样本。每个协同聚类可以包括彼此相似或相关的数据样本。以这种方式,用户(例如,数据分析师)然后可以检查协同聚类以找到两个领域(例如,行为和收视率)之间的关系或者隐藏或不明显的含义。例如,图3t示出了完成的协同聚类示例300t。例如,本技术可以提供个性化推荐以及个性化广告,因为,例如开发者可以检查协同聚类示例300u并查明例如每小时改变频道至少8次的用户还观看动作/冒险媒体内容。
67.图4示出了根据当前公开的实施例的用于提供用于执行数据协同聚类的协同信息生成对抗网络(ci-gan)的方法400的流程图。可以利用一个或多个处理设备(例如,节目分析系统102)来执行方法400,该一个或多个处理设备可以包括硬件(例如,通用处理器、图形处理单元(gpu)、专用集成电路(asic)、片上系统(soc)、微控制器、现场可编程门阵列
(fpga)、中央处理单元(cpu)、应用处理器(ap)、视觉处理单元(vpu)、神经处理单元(npu)、神经决策处理器(ndp)或可能适合于处理图像数据的任何其他处理设备)、软件(例如,在一个或多个处理器上运行/执行的指令)、固件(例如,微代码),或它们的某种组合。
68.方法400可以使用访问包括多个行数据和多个列数据的第一数据矩阵的一个或多个处理设备(例如,节目分析系统102)来开始框402。在特定实施例中,节目分析系统102可以接收数据的数据矩阵,该数据矩阵可以包括例如作为多个行数据的用户行为数据和作为多个列数据的用户内容查看数据、作为多个行数据的视频数据和作为多个列数据的视频描述数据、作为多个行数据的生物遗传数据和作为多个列数据的生物条件数据、作为多个行数据的电影数据和作为多个列数据的音乐数据、作为多个行数据的图像数据和作为多个列数据的可听数据。
69.然后方法400可以在框404处使用向第一生成对抗网络(gan)提供第一数据输入的一个或多个处理设备(例如,节目分析系统102)来继续,第一数据输入包括对应于来自第一数据矩阵的多个行数据的多个行向量。然后方法400可以在框406处来使用向第二gan提供第二数据输入的一个或多个处理设备(例如,节目分析系统102)来继续,第二数据输入包括对应于来自第一数据矩阵的多个列数据的多个列向量。在特定实施例中,第一gan和第二gan可以是协同信息生成对抗网络(ci-gan)组合器模型架构的一部分,其中,ci-gan组合器模型架构还可以包括被配置为重构一个或多个协同聚类标记的分布函数,一个或多个协同聚类标记作为第三数据输入被提供给第一gan和第二gan。在特定实施例中,结合或可替代地,第一gan和第二gan可以是协同信息生成对抗网络(ci-gan)自动编码器模型架构的一部分,其中,ci-gan自动编码器模型架构还可以包括分布函数,分布函数被配置为基于由第一gan生成的多个输出行数据和由第二gan生成的多个输出列数据来重构多个行数据和多个列数据。
70.然后方法400可以在框408处使用通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量来生成至少部分地基于多个行向量和多个列向量的协同聚类相关性矩阵的一个或多个处理设备(例如,节目分析系统102)来终止,其中协同聚类相关性矩阵包括第一数据矩阵的多个行数据和多个列数据之间的协同聚类关联。在特定实施例中,通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量来生成协同聚类相关性矩阵可以包括至少部分地基于互信息成本函数来确定第一数据矩阵的多个行数据和多个列数据之间的一个或多个潜在的相互关系。例如,具体地,ci-gan组合器模型架构的实施例可以至少部分地基于互信息成本函数来确定第一数据矩阵的多个行数据和多个列数据之间的一个或多个潜在相互关系。
71.在特定实施例中,通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量来生成协同聚类相关性矩阵还可以包括确定下界,该下界定义与第一数据矩阵的多个行数据和多个列数据之间的互信息和协同聚类关联对应的目标函数。例如,ci-gan自编码器模型架构的实施例具体可以确定下界,该下界定义与第一数据矩阵的多个行数据和多个列数据之间的互信息和协同聚类关联对应的目标函数。在特定实施例中,通过由第一gan和第二gan同步协同聚类多个行向量和多个列向量来生成协同聚类相关性矩阵还可以包括单独地确定多个行数据和多个列数据的一个或多个解纠缠表示,或者同时确定多个行数据和多个列数据的一个或多个解纠缠表示。在特定实施例中,同时确定多个行数据和多个列数据
的一个或多个解缠结表示可以包括确定用于解密协同聚类相关性矩阵中的相互作用数据结构的联合解缠结表示(joint disentangled representation)。
72.实际上,本实施例提供了用于高效数据协同聚类的ci-gan。具体而言,由于行数据和列数据的数据聚类是由第一gan和第二gan独立实现的,因此当前公开的ci-gan可以以若干不同方式允许最大化输入行数据和列数据之间的互信息(例如,指示一个随机变量可能建议另一个随机变量的程度的量度的i)和协同聚类关联。以这种方式,用互信息目标函数增强的用于高效数据协同聚类的本ci-gan可能非常适合于跨各种技术应用来共同学习双重数据表示。实际上,本技术可以改进节目个性化/推荐、靶向广告(例如,向特定用户显示相关广告)、内容需求预测(例如,预测特定用户想要观看的内容)、个性化设备设置(例如,如果特定用户观看自然表演,那么调整设备颜色设置),以及各种其他应用。
73.图5示出了根据当前公开的实施例的可以用于提供用于数据协同聚类的协同信息生成对抗网络(ci-gan)的示例计算机系统500。在特定实施例中,一个或多个计算机系统500执行本文描述或示出的一个或多个方法的一个或多个步骤。在特定实施例中,一个或多个计算机系统500提供本文描述或示出的功能。在特定实施例中,在一个或多个计算机系统500上运行的软件执行本文描述或示出的一个或多个方法的一个或多个步骤,或者提供本文描述或示出的功能。特定实施例包括一个或多个计算机系统500的一个或多个部分。在本文中,对计算机系统的引用可涵盖计算设备,并且在适当时反之亦然。此外,在适当的情况下,对计算机系统的引用可以涵盖一个或多个计算机系统。
74.本公开预想了任何合适数量的计算机系统500。本公开预想了采用任何合适物理形式的计算机系统500。作为示例而非限制,计算机系统500可以是嵌入式计算机系统、片上系统(soc)、单板计算机系统(sbc)(例如,模块化计算机(com)或模块化系统(som))、台式计算机系统、膝上型计算机或笔记本计算机系统、交互亭、大型机、计算机系统网格、移动电话、个人数字助理(pda)、服务器、平板计算机系统、增强/虚拟现实设备或这些中的两个或更多的组合。在适当的情况下,计算机系统500可以包括一个或多个计算机系统500;是一元化的(unitary)或分布式的;跨越多个位置;跨越多个机器;跨越多个数据中心;或驻留在云中,该云可能包括一个或多个网络中的一个或多个云组件。
75.在适当的情况下,一个或多个计算机系统500可以在没有实质空间或时间限制的情况下执行本文描述或示出的一个或多个方法的一个或多个步骤。作为示例而非限制,一个或多个计算机系统500可以实时或以批处理模式执行本文描述或示出的一个或多个方法的一个或多个步骤。在适当的情况下,一个或多个计算机系统500可以在不同时间或在不同位置处执行本文描述或示出的一个或多个方法的一个或多个步骤。
76.在特定实施例中,计算机系统500包括处理器502、存储器504、存储装置(storage)506、输入/输出(i/o)接口508、通信接口510和总线512。尽管本公开描述和示出了具有特定布置的特定数量的特定组件的特定计算机系统,但本公开预想了具有任何合适布置的任何合适数量的任何合适组件的任何合适计算机系统。在特定实施例中,处理器502包括用于执行指令(诸如组成计算机程序的那些)的硬件。作为示例而非限制,为了执行指令,处理器502可以从内部寄存器、内部高速缓存、存储器504或存储装置506检索(或提取(fetch))指令;解码并执行它们;然后将一个或多个结果写入内部寄存器、内部高速缓存、存储器504或存储装置506。在特定实施例中,处理器502可以包括用于数据、指令或地址的一个或多个内
部高速缓存。本公开预想了在适当的情况下包括任何合适数量的任何合适的内部高速缓存的处理器502。作为示例而非限制,处理器502可以包括一个或多个指令高速缓存、一个或多个数据高速缓存以及一个或多个转换旁视缓冲器(translation lookaside buffers,tlb)。指令高速缓存中的指令可以是存储器504或存储装置506中的指令的副本,并且指令高速缓存可以加速处理器502对那些指令的检索。
77.数据高速缓存中的数据可以是存储器504或存储装置506中的数据的副本,以用于在处理器502处执行的指令对其进行操作;在处理器502处执行的先前指令的结果,以供由在处理器502处执行的后续指令访问或以供写入存储器504或存储装置506;或其他合适的数据。数据高速缓存可加速处理器502的读取或写入操作。tlb可以加速处理器502的虚拟地址转换。在特定实施例中,处理器502可以包括用于数据、指令或地址的一个或多个内部寄存器。本公开预想了在适当的情况下包括任何合适数量的任何合适的内部寄存器的处理器502。在适当的情况下,处理器502可以包括一个或多个算术逻辑单元(alu);是多核处理器;或者包括一个或多个处理器502。尽管本公开描述和示出了特定的处理器,但是本公开预想了任何合适的处理器。
78.在特定实施例中,存储器504包括用于存储用于处理器502执行的指令或用于处理器502操作的数据的主存储器。作为示例而非限制,计算机系统500可以将指令从存储装置506或另一个源(例如,另一个计算机系统500)加载到存储器504。处理器502然后可以将指令从存储器504加载到内部寄存器或内部高速缓存。为了执行指令,处理器502可以从内部寄存器或内部高速缓存中检索指令并将它们解码。在指令执行期间或之后,处理器502可以将一个或多个结果(其可以是中间或最终结果)写入内部寄存器或内部高速缓存。处理器502然后可以将这些结果中的一个或多个写入存储器504。在特定实施例中,处理器502仅执行一个或多个内部寄存器或内部高速缓存或存储器504中的指令(与存储装置506或其他地方相反)并且仅对一个或多个内部寄存器或内部高速缓存或存储器504(与存储装置506或其他地方相反)中的数据进行操作。
79.一个或多个存储器总线(其可以各自包括地址总线和数据总线)可以将处理器502耦合到存储器504。总线512可以包括一个或多个存储器总线,如下所述。在特定实施例中,一个或多个存储器管理单元(mmu)驻留在处理器502和存储器504之间并且促进对处理器502请求的存储器504的访问。在特定实施例中,存储器504包括随机存取存储器(ram)。在适当的情况下,该ram可以是易失性存储器。在适当的情况下,该ram可以是动态ram(dram)或静态ram(sram)。此外,在适当的情况下,该ram可以是单端口或多端口ram。本公开预想了任何合适的ram。在适当的情况下,存储器504可以包括一个或多个存储器设备504。尽管本公开描述和示出了特定的存储器,但本公开预想了任何合适的存储器。
80.在特定实施例中,存储装置506包括用于数据或指令的大容量存储器。作为示例而非限制,存储装置506可以包括硬盘驱动器(hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(usb)驱动器或这些中的两个或更多的组合。在适当的情况下,存储装置506可以包括可移动或不可移动(或固定)介质。在适当的情况下,存储装置506可以在计算机系统500的内部或外部。在特定实施例中,存储装置506是非易失性固态存储器。在特定实施例中,存储装置506包括只读存储器(rom)。在适当的情况下,该rom可以是掩模编程rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可改写rom(earom)或闪存或
这些中的两个或更多的组合。本公开预想了采用任何合适的物理形式的大容量存储装置506。在适当的情况下,存储装置506可以包括促进处理器502和存储装置506之间的通信的一个或多个存储控制单元。在适当的情况下,存储装置506可以包括一个或多个存储装置506。尽管本公开描述和说明了特定的存储装置,但是本公开预想了任何合适的存储装置。
81.在特定实施例中,i/o接口508包括为计算机系统500和一个或多个i/o设备之间的通信提供一个或多个接口的硬件、软件或两者。在适当的情况下,计算机系统500可以包括这些i/o设备中的一个或多个。这些i/o设备中的一个或多个可以启用人与计算机系统500之间的通信。作为示例而非限制,i/o设备可以包括键盘、小键盘、麦克风、监视器、鼠标、打印机、扫描仪、扬声器、静物相机、触控笔、平板计算机、触摸屏、轨迹球、摄像机、另一个合适的i/o设备或这些中的两个或更多的组合。i/o设备可以包括一个或多个传感器。本公开预想了任何合适的i/o设备和用于i/o设备的任何合适的i/o接口506。在适当的情况下,i/o接口508可以包括使处理器502能够驱动这些i/o设备中的一个或多个的一个或多个设备或软件驱动器。在适当的情况下,i/o接口508可以包括一个或多个i/o接口506。尽管本公开描述和示出了特定的i/o接口,但本公开预想了任何合适的i/o接口。
82.在特定实施例中,通信接口510包括硬件、软件或两者,该硬件、软件或两者提供用于计算机系统500与一个或多个其他计算机系统500或一个或多个网络之间的通信(例如,基于数据包的通信)的一个或多个接口。作为示例而非限制,通信接口510可以包括用于与以太网通信的网络接口控制器(nic)或网络适配器或用于与无线网络(wi-fi网络)通信的其他基于有线的网络或无线nic(wnic)或无线适配器。本公开预想了任何合适的网络和用于任何合适的网络的任何合适的通信接口510。
83.作为示例而非限制,计算机系统500可以与自组织(ad hoc)网络、个域网(pan)、局域网(lan)、广域网(wan)、城域网(man)或互联网的一个或多个部分或这些中的两个或更多的组合通信。这些网络中的一个或多个的一个或多个部分可以是有线的或无线的。作为示例,计算机系统500可以与无线pan(wpan)(例如,蓝牙wpan)、wi-fi网络、wi-max网络、蜂窝电话网络(例如,例如、全球移动通信系统(gsm)网络)或其他合适的无线网络或这些中的两个或更多的组合通信。在适当的情况下,计算机系统500可以包括用于这些网络中的任何网络的任何合适的通信接口510。在适当的情况下,通信接口510可以包括一个或多个通信接口510。尽管本公开描述和说明了特定的通信接口,但本公开预想了任何合适的通信接口。
84.在特定实施例中,总线512包括将计算机系统500的组件彼此耦合的硬件、软件或两者。作为示例而非限制,总线512可以包括加速图形端口(agp)或其他图形总线、增强型工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限宽带互连、低引脚数(lpc)总线、存储器总线、微通道架构(mca)总线、外围组件互连(pci)总线、pci特快(pcie)总线、串行高级技术附件(sata)总线、视频电子标准协会本地(vlb)总线或另一个合适的总线或这些中的两个或更多的组合。在适当的情况下,总线512可以包括一个或多个总线512。尽管本公开描述和示出了特定总线,但本公开预想了任何合适的总线或互连。
85.本文中,在适当的情况下,一个或多个计算机可读非暂时性存储介质可以包括一个或多个基于半导体的集成电路(ic)或其他集成电路(ic)(例如,现场可编程门阵列(fpga)或专用ic(asic))、硬盘驱动器(hdd)、混合硬盘驱动器(hhd)、光盘、光盘驱动器
(odd)、磁光盘、磁光驱动器、软盘、软盘驱动器(fdd)、磁带、固态驱动器(ssd)、ram驱动器、安全数字卡或驱动器、任何其他合适的计算机可读非暂时性存储介质,或这些中的两个或更多的任何合适组合。在适当的情况下,计算机可读非暂时性存储介质可以是易失性存储介质、非易失性存储介质或易失性存储介质和非易失性存储介质的组合。
86.图6示出了根据当前公开的实施例的可以用于提供用于数据协同聚类的协同信息生成对抗网络(ci-gan)的示例人工智能(ai)架构602的示图600。在特定实施例中,可以利用例如一个或多个处理设备来实现ai架构602,该一个或多个处理设备可以包括硬件(例如,通用处理器、图形处理单元(gpu)、专用集成电路(asic)、片上系统(soc)、微控制器、现场可编程门阵列(fpga)、中央处理单元(cpu)、应用处理器(ap)、视觉处理单元(vpu)、神经处理单元(npu)、神经决策处理器(ndp)或可能适合于处理各种数据和基于各种数据做出一个或多个决策的任何其他处理设备)、软件(例如,在一个或多个处理器上运行/执行的指令)、固件(例如,微代码),或它们的某种组合。
87.在特定实施例中,如图6所示,ai架构602可以包括机器学习(ml)算法和函数604、自然语言处理(nlp)算法和函数606、专家系统608、基于计算机的视觉算法和函数610、语音识别算法和函数612、规划算法和函数614,以及机器人算法和函数616。在特定实施例中,ml算法和函数604可以包括可能适合于跨大量数据(例如,“大数据”,诸如用户点击数据或其他用户交互、文本数据、图像数据、视频数据、音频数据、语音数据、数字数据等)找到模式(pattern)的任何基于统计的算法。例如,在特定实施例中,ml算法和函数604可以包括深度学习算法618、监督学习算法620和无监督学习算法622。
88.在特定实施例中,深度学习算法618可包括可以用于从大量数据中学习深层次的表示和抽象的任何人工神经网络(ann)。例如,深度学习算法618可以包括ann,诸如多层感知器(mlp)、自动编码器(ae)、卷积神经网络(cnn)、循环神经网络(rnn)、长短期记忆(lstm)、门控循环单元(gru)、受限玻尔兹曼机(rbm)、深度信念网络(dbn)、双向循环深度神经网络(brdnn)、生成对抗网络(gan)和深度q网络,神经自回归分布估计(nade)、对抗网络(an)、注意力模型(am)、深度强化学习等。
89.在特定实施例中,监督学习算法620可以包括可以用于使用标记示例将例如过去学习的内容应用于新数据以用于预测未来事件的任何算法。例如,从已知训练数据集的分析开始,监督学习算法620可以产生推理函数以做出关于输出值的预测。监督学习算法620还可以将其输出与正确和预期的输出进行比较并找出错误,以便相应地修改监督学习算法620。另一方面,无监督学习算法622可以包括例如当用于训练无监督学习算法622的数据未被分类或标记时可以应用的任何算法。例如,无监督学习算法622可以研究和分析系统可以如何从未标记的数据中推理出描述隐藏结构的函数。
90.在特定实施例中,nlp算法和函数606可以包括可能适合于自动操纵自然语言(诸如语音和/或文本)的任何算法或函数。例如,在一些实施例中,nlp算法和函数606可以包括内容抽取(extraction)算法或函数624、分类算法或函数626、机器翻译算法或函数628、问答(qa)算法或函数630、以及文本生成算法或函数632。在特定实施例中,内容抽取算法或函数624可以包括用于从电子文档(例如,网页、文本编辑器文档等)抽取例如要在其他应用中使用的文本或图像的装置。
91.在特定实施例中,分类算法或函数626可以包括可以利用监督学习模型(例如,逻
辑回归、朴素贝叶斯、随机梯度下降(sgd)、k最近邻、决策树、随机森林、支持向量机(svm)等)来从输入到监督学习模型的数据中学习并基于数据做出新的观察或分类的任何算法。机器翻译算法或函数628可以包括可能适合于将一种语言的源文本自动转变到例如另一种语言的文本的任何算法或函数。qa算法或函数630可以包括可能适合于自动回答人类以例如自然语言(诸如由语音控制的个人助理设备执行的)提出的问题的任何算法或函数。文本生成算法或函数632可以包括可能适合于自动生成自然语言文本的任何算法或函数。
92.在特定实施例中,专家系统608可包括可能适合于模拟在特定领域(例如,股票交易、医学、体育统计等)具有专业知识和经验的人类或组织的判断和行为的任何算法或函数。基于计算机的视觉算法和函数610可以包括可能适合于从图像(例如,照片图像、视频图像)中自动抽取信息的任何算法或函数。例如,基于计算机的视觉算法和函数610可以包括图像识别算法634和机器视觉算法636。图像识别算法634可以包括可能适合于自动识别和/或分类例如一个或多个图像帧或其他显示数据中可能包括的对象、地点、人、等等的任何算法。机器视觉算法636可以包括可能适合于允许计算机“看到”或者例如依赖于具有专用光学器件的图像传感器相机来获取用于处理、分析和/或测量用于做出决策的目的的各种数据特性的图像的任何算法。
93.在特定实施例中,语音识别算法和函数612可以包括可能适合于识别口语并将口语转换成文本(诸如通过自动语音识别(asr)、计算机语音识别、语音到文本(stt)或文本到语音(tts))以便例如计算经由语音与一个或多个用户进行通信的任何算法或函数。在特定实施例中,规划算法和函数614可以包括可能适合于生成动作序列的任何算法或函数,其中,每个动作可以包括在执行该动作之前要满足的其自身的一组先决条件。ai规划的示例可能包括经典规划、简化为其他问题、时间规划、概率规划、基于偏好的规划、条件规划等。最后,机器人算法和函数616可以包括可以使一个或多个设备能够通过例如运动、姿势、执行任务、做出决策、情绪等来复制人类行为的任何算法、功能或系统。
94.在本文中,除非另有明确说明或上下文另有说明,否则“或”是包含性的而不是排他性的。因此,本文中,除非另有明确说明或上下文另有说明,否则“a或b”意味着“a、b或两者”。此外,除非另有明确说明或上下文另有说明,否则“和”是联合的和独自的。因此,本文中,除非另有明确说明或上下文另有说明,“a和b”意味着“a和b,联合地和独自地”。
95.在本文中,除非另有明确说明或上下文另有说明,否则“自动地”及其派生词意味着“无需人工干预”。
96.本文所公开的实施例仅仅是示例,并且本公开的范围不限于它们。根据本公开的实施例具体公开在指向方法、存储介质、系统和计算机程序产品的所附权利要求中,其中,在一个权利要求类别(例如方法)中提及的任何特征可以在另一个权利要求类别(例如系统等)中要求保护。仅出于形式原因选择所附权利要求中的从属关系或引用关系。然而,因为也可以要求保护有意引用任何在先权利要求引起的任何主题(特别是多重从属关系),所以公开了并可以要求保护权利要求及其特征的任何组合,而不管在所附权利要求中选择的从属关系。可以要求保护的主题不仅包括如所附权利要求中陈述的特征的组合,还包括权利要求中的特征的任何其他组合,其中,权利要求中提及的每个特征可以与权利要求中的任何其他特征或其他特征的组合结合。此外,本文描述或描绘的任何实施例和特征可以在分开的权利要求中和/或与本文描述或描绘的任何实施例或特征的任何组合中或与所附权利
要求的任何特征的任何组合中要求保护。
97.本公开的范围涵盖本领域普通技术人员将理解的对本文描述或示出的示例实施例的所有改变、替换、变体、改写和修改。本公开的范围不限于本文描述或示出的示例实施例。此外,尽管本公开将本文中的相应实施例描述和示出为包括特定组件、元素、特征、功能、操作或步骤,但是这些实施例中的任何可以包括本领域普通技术人员将理解的本文任何地方描述或示出的组件、元素、特征、功能、操作或步骤中的任何的任何组合或排列。此外,在所附权利要求中对适应于、布置为、能够、配置为、启用、可操作以或正常操作(operative)以执行特定功能的装置或者系统或者系统或装置的组件的引用涵盖该装置、系统、组件,无论它或该特定功能是否被激活、打开或解锁,只要该装置、系统或组件这样地适应、布置、有能力、配置、启用、可操作或正常操作。此外,尽管本公开将特定实施例描述或示出为提供特定优点,但特定实施例可以不提供、提供一些或提供所有这些优点。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献