CN114008640A - 安全人工智能模型训练和注册系统 - Google Patents

安全人工智能模型训练和注册系统 Download PDF

Info

Publication number
CN114008640A
CN114008640A CN202080045274.6A CN202080045274A CN114008640A CN 114008640 A CN114008640 A CN 114008640A CN 202080045274 A CN202080045274 A CN 202080045274A CN 114008640 A CN114008640 A CN 114008640A
Authority
CN
China
Prior art keywords
model
trained
metadata
training
secure
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.)
Pending
Application number
CN202080045274.6A
Other languages
English (en)
Inventor
G·F·W·库恩德斯
K·沃鲁甘蒂
V·多莱斯瓦米
P·普罗希特
M·玛尔维亚
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.)
Equinix Inc
Original Assignee
Equinix Inc
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 Equinix Inc filed Critical Equinix Inc
Publication of CN114008640A publication Critical patent/CN114008640A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

总体上,本公开描述了一种用于安全训练人工智能(AI)模型的系统。该系统可以包括通信电路,该通信电路用于从提供方接收数据集、机器学习算法和AI模型。数据集、机器学习算法和AI模型可以被放置在安全沙箱中以用于用户访问。用户可以使用安全沙箱中的数据集安全训练AI模型。安全沙箱可以记录与涉及AI模型的事务相关联的AI模型元数据,并且将AI模型元数据发送到模型注册表。模型注册表可以证明AI模型的谱系。

Description

安全人工智能模型训练和注册系统
本申请要求于2019年11月15日提交的美国临时申请号62/936,023的权益,其全部内容通过引用并入本文。
技术领域
本公开涉及计算机网络,更具体涉及一种安全人工智能模型训练和注册系统。
背景技术
云计算是指使用可经由诸如互联网的网络访问的动态可扩展计算资源。计算资源(通常称为“云”)向用户提供一个或多个服务。这些服务可以根据服务类型进行分类,这些服务类型例如可以包括应用/软件、平台、底层结构(infrastructure)、虚拟化、以及服务器和数据存储。服务类型的名称通常放在短语“即服务”之前,使得作为示例的应用/软件和底层结构的递送可以分别称为软件即服务(SaaS)、平台-即服务(PaaS)和底层结构即服务(IaaS)。
术语“基于云的服务”或更简单的“云服务”不仅是指由云提供的服务,还是指云客户与云服务提供方就在线递送由云提供的服务签订合同的一种服务提供形式。云服务提供方管理公共云、私有云或混合云,以促进云服务在线递送给一个或多个云客户。
人工智能(AI)是计算机科学的一个领域,专注于能够执行通常需要人类思考的任务的计算机系统。存在各种机器学习计算机算法用于处理训练数据集以训练由参数组成的AI模型,这些参数确定了AI算法在推理模式下的操作。通过对不同训练数据集的进一步训练,可以进一步细化或定制AI模型。
发明内容
总体上,本公开描述了一种中立人工智能(AI)交换系统,用于在安全环境中安全创建、训练、跟踪并提供AI模型。交换系统可以是私有系统或独立系统,可供寻求访问AI算法或他人数据以开发更好的AI模型或利用他人所开发的AI模型的联盟成员使用。交换系统可以向诸如数据科学家的联盟成员提供安全环境,用于以安全方式创建并训练AI模型,按安全环境使得经训练的AI模型的未来潜在用户能够验证经训练的AI模型的起源信息和特点,例如,这些潜在用户不必自己训练AI模型。在一些实例中,交换系统还可能准许联盟成员导入现有AI模型。交换系统可以跟踪并安全存储与其中的AI模型的创建、训练或导入相关的信息,诸如AI元数据。例如,交换系统可以跟踪并存储与在何处构建AI模型、谁构建了AI模型、用于训练AI模型的一个或多个数据源以及其他信息有关的信息。交换系统可以创建AI模型的哈希并且可以将哈希、AI模型和AI元数据打包在容器中。联盟成员可以使用哈希来验证并证明容器中包含的特定AI模型的谱系或起源信息。如果对AI模型进行进一步训练,则交换系统可以继续跟踪并安全存储与进一步训练有关的AI元数据。交换系统可以创建新哈希并将新哈希、经过进一步训练的AI模型和经更新的AI元数据打包在新容器中。交换系统可以向联盟成员提供在交换系统中创建、训练或导入的AI模型的容器库。
本公开的各技术提供了可以实现至少一个实际应用的一个或多个技术优势。例如,通过跟踪并存储与AI模型的创建、训练和导入有关的AI元数据,交换系统准许用户就在交换系统中注册的AI模型可以提供更好的结果做出明智决定。例如,如果用户想要使用AI模型来预测城市环境中的交通模式,则在农村环境中的交通数据上训练的AI模型可能不如在另一城市环境中的交通数据上训练的AI模型有用。通过标识用于训练AI模型的数据,系统可以向用户提供重要信息,该重要信息使得用户能够为其目的选择更好的AI模型。在另一示例中,用户可能更喜欢使用由具有创建有用AI模型的跟踪记录的公司或个人构建的AI模型,而非使用未知公司或个体或被导入且其谱系未知的公司或个体。因此,通过标识AI模型的构建器,系统可以帮助用户选择偏好AI模型。附加地,通过将哈希、AI模型和AI元数据打包在容器中,交换系统可以通过确认AI模型按照AI元数据所指示的方式训练来为预期用户验证AI模型。
在一个示例中,一种系统包括存储器;以及处理电路系统,该处理电路系统耦合到存储器,处理电路系统可操作以:基于来自用户的输入构建人工智能(AI)模型;基于来自用户的输入来训练AI模型;基于与构建并训练经训练的AI模型相关联的第一事务来创建第一AI模型元数据;至少部分地基于经训练的AI模型来计算第一哈希;在第一容器中打包经训练的AI模型、第一AI模型元数据和第一哈希;注册第一容器;向用户提供对第一容器的安全访问;以及基于第一哈希来针对用户验证经训练的AI模型。
在一个示例中,一种系统包括通信电路系统,该通信电路系统可操作以从提供方接收数据集、机器学习算法和AI模型;安全沙箱,该安全沙箱耦合到该通信电路系统,该安全沙箱可操作以训练AI模型并记录与训练AI模型相关联的AI模型元数据;以及存储器,该存储器可操作为存储数据集、机器学习算法、AI模型和AI模型元数据。
在一个示例中,一种方法包括:通过系统并基于来自用户的输入来构建AI模型;通过系统并基于来自用户的输入来训练AI模型;通过系统基于与构建并训练经训练的AI模型相关联的第一事务来创建第一AI模型元数据;通过系统至少部分地基于经训练的AI模型来计算第一哈希;在第一容器中打包经训练的AI模型、第一AI模型元数据和第一哈希;通过系统注册第一容器;通过系统向用户提供对第一容器的安全访问;以及通过系统基于第一哈希来针对用户验证经训练的AI模型。
在一个示例中,一种方法包括:通过系统从提供方接收数据集、机器学习算法和AI模型;通过系统并基于数据集中的至少一个数据集来训练AI模型中的至少一个AI模型;通过系统记录与训练至少一个AI模型相关联的AI模型元数据;以及通过系统存储数据集、机器学习算法、AI模式和AI模型元数据。
在一个示例中,一种非瞬态计算机可读介质上存储有指令,这些指令当被执行时,使得一个或多个处理器:基于来自用户的输入来构建AI模型;基于来自用户的输入来训练AI模型;基于与构建并训练经训练的AI模型相关联的第一事务来创建第一AI模型元数据;至少部分基于经训练的AI模型来计算第一哈希;在第一容器中打包经训练的AI模型、第一AI模型元数据和第一哈希;注册第一容器;向用户提供对第一容器的安全访问;以及基于第一哈希来为用户验证经训练的AI模型。
在一个示例中,一种非瞬态计算机可读介质在其上存储指令,这些指令当被执行时,使得一个或多个处理器从提供方接收数据集、机器学习算法和AI模型;基于数据集中的至少一个数据集来训练AI模型中的至少一个AI模型;记录与训练至少一个AI模型相关联的AI模型元数据;以及存储数据集、机器学习算法、AI模式和AI模型元数据。
在附图和以下描述中对一个或多个示例的细节进行阐述。根据描述和附图以及权利要求,其他特征、目的和优点变得明显。
附图说明
图1是图示了根据本文中所描述的技术具有提供多个云交换点的基于城域的云交换的网络系统的概念图的框图。
图2是图示了根据本文中所描述的技术的针对基于云的服务交换提供操作环境的数据中心的高级别视图的框图。
图3A至图3B是图示了根据本公开所描述的技术的由用于云交换的可编程网络平台提供的示例网络底层结构和服务的框图,该云交换聚集多个云服务提供方的云服务以提供给云交换提供方的客户并且将多个客户的访问聚集到一个或多个云服务提供方。
图4是图示了根据本公开的一种或多种技术操作的计算系统的一个示例的其他细节的框图。
图5是图示了根据本公开的技术的示例交换系统的框图。
图6是描绘了根据本公开的技术的示例流水线更新过程的框图。
图7是图示了根据本发明的技术的示例AI模型容器的框图。
图8是图示了根据本公开的技术的安全沙箱的安全性方面的框图。
图9是根据本公开的技术的示例模型注册表更新和示例模型使用过程的概念图。
图10是根据本公开的技术的示例模型注册表的框图。
图11是图示了根据本公开的技术的示例系统的功能性概览的概念图。
图12是图示了根据本发明的技术的示例系统的控制流的概念图。
图13是图示了根据本发明的技术的示例系统的架构的框图。
图14是图示了根据本公开的示例AI交换技术的流程图。
图15是图示了根据本公开的示例安全沙箱技术的流程图。
相同的附图标记在整个图和文本中表示相同的元件。
具体实施方式
AI模型的有用性可能对用户可用,但用户可能难以评价。例如,AI模型可能已经在用户未知的数据集上进行了训练。用户也可能不知道AI模型的创建器。这样,用户可能难以为其目的选择适当的AI模型。使用不适当的AI模型可能会导致差强人意的结果。
本公开描述了一种用于安全交换数据集、机器学习算法和AI模型的系统和方法。可以记录与涉及AI模型的事务相关联的AI模型元数据。AI模型元数据可以提供给模型注册表。模型注册表可以用于证明交换系统内AI模型的谱系。本公开的技术可以向用户提供可能有助于选择适当的AI模型的信息。
图1图示了根据本文中所描述的技术的具有提供多个云交换点的基于城域的云交换的网络系统的概念图。基于云的服务交换100(“云交换100”)的每个云交换基于云的服务交换点128A至128C(以下描述为“云交换点”并且统称为“云交换点128”)可以表示在地理上位于同一大都市区内的不同数据中心(“基于城域的”,例如,位于纽约的纽约市;加利福尼亚的硅谷;华盛顿的西雅图-塔科马;明尼苏达的明尼阿波利斯-圣保罗;英国的伦敦等)以提供弹性和独立的基于云的服务交换,通过该服务交换,基于云的服务客户(“云客户”)和基于云的服务提供方(“云提供方”)连接以分别接收并提供云服务。在各种示例中,云交换100可以包括更多或更少个云交换点128。在一些实例中,云交换100仅包括一个云交换点128。如本文中所使用的,对“云交换”或“基于云的服务交换”的引用可以是指云交换点。云交换提供方可以在多个不同的大都市区中部署云交换100的实例,每个云交换100实例具有一个或多个云交换点128。
每个云交换点128包括网络底层结构和操作环境,云客户108A至108C(统称为“云客户108”)通过该操作环境从多个云服务提供方110A至110N(统称为“云服务提供方”)接收云服务110。云交换100为交换的客户(例如,企业、网络运营商、网络服务提供方和SaaS客户)提供与全球多个云服务提供方的安全的私有虚拟连接。多个云服务提供方凭借其在云交换中具有至少一个可访问端口而参与云交换,通过该至少一个可访问端口,客户可以分别连接到由云服务提供方提供的一个或多个云服务。云交换100允许任何客户的私有网络在公共点处直接交叉连接到任何其他客户,从而允许客户的网络之间的网络业务的直接交换。
云客户108可以直接经由与云交换点128中的一个云交换点的层3对等和物理连接或间接经由网络服务提供方106A至106B(统称为“NSP 106”或备选地“运营商106”)中的一个网络服务提供方来接收基于云的服务。NSP 106通过在云交换点128中的一个或多个云交换点128内维持物理存在或聚集来自一个或多个客户108的层3访问来提供“云中转”。NSP106可以在层3处直接与一个或多个云交换点128对等,并且这样做时,向一个或多个客户108提供间接层3连接和对等,通过该间接层3连接和对等,客户108可以从云交换100获得云服务。在图1的示例中,向云交换点128中的每个云交换点分配不同的自主系统号(ASN)。例如,向云交换点128A分配ASN1,向云交换点128B分配ASN2,以此类推。因此,每个云交换点128是从云服务提供方110到客户108的矢量路由协议(例如,BGP)路径中的下一跳。结果,尽管每个云交换点128不是具有一个或多个广域网链接和伴随互联网访问和传输策略的中转网络,但是它经由外部BGP(eBGP)或其他外部网关路由协议与多个不同的自主系统对等,以便交换、聚集和路由来自一个或多个云服务提供方的服务业务110给客户。换言之,云交换点128可以将云服务提供方110和客户108可能在成对基础上维持的eBGP对等关系内在化。取而代之的是,客户108可以配置与云交换点128的单个eBGP对等关系,并且经由云交换从一个或多个云服务提供方110接收多个云服务。虽然本文中主要关于eBGP或云交换点与客户、NSP或云服务提供方网络之间的其他层3路由协议对等进行了描述,但是云交换点可以通过其他方式(诸如通过静态配置或经由路由信息协议(RIP)、开放式最短路径优先(OSPF)、中间系统到中间系统(IS-IS)或其他路由分发协议)从这些网络学习路由。
作为上述的示例,客户108C被图示为已经就云交换100与云交换提供方签订合同,以经由云交换点128C直接访问层3云服务。这样,比如,客户108C接收与云服务提供方110A的冗余层3连接。客户108B被图示为已与多个NSP 106A、106B签订合同以具有经由NSP106A、106B的相应中转网络对云交换点128A、128B的冗余云访问。上文所描述的合同在云交换点128的网络底层结构中通过NSP106和云交换点128的交换设备内的L3对等配置以及L3连接(例如,在云交换点128内建立以互连云服务提供方110网络到NSP 106网络和客户108网络的层3虚拟电路)实例化,所有合同都具有至少一个端口,该至少一个端口在云交换点128中的一个或多个云交换点128内提供连接。
在一些示例中,云交换100允许任何网络服务提供方(NSP)或“运营商”106A至106B(统称为“运营商106”)的客户108A、108B或包括客户108C的其他云客户中的对应客户经由虚拟层2(L2)或层3(L3)连接直接连接到任何其他客户网络和/或云服务提供方110中的任何云服务提供方110,从而允许在客户网络与云服务提供方110之间直接交换网络业务。虚拟L2或L3连接可以称为“虚拟电路”。
运营商106可以各自表示与中转网络相关联的网络服务提供方,运营商106的网络订户可以访问网络服务提供方110经由云交换100提供的云服务。一般而言,云服务提供方110的客户可以包括网络运营商、大型企业、管理服务提供方(MSP),以及软件即服务(SaaS)、平台即服务(PaaS)、底层结构即服务(IaaS)、虚拟化即服务(VaaS),以及如由云服务提供方110经由云交换100提供的这类基于云的服务的数据存储即服务(dSaaS)客户。
这样,云交换100以透明和中立方式精简并简化了使云服务提供方110和客户(经由运营商106或直接)合作的过程。云交换100的一个示例应用是协同定位和互连数据中心,其中云服务提供方110和运营商106和/或客户108可能已经具有网络存在,诸如通过具有可用于在数据中心内进行互连的一个或多个可访问端口,该一个或多个可访问端口可以表示云交换点128中的任一云交换点128。这允许参与运营商、客户和云服务提供方在同一设施内具有范围广泛的互连选项。这样,运营商/客户可以具有创建一次仅连接到一个或多个云交换点128的多对多互连的选项。换言之,代替跨越中转网络建立单独连接以访问不同云服务提供方或一个或多个云服务提供方的不同云服务,云交换100允许客户互连到多个云服务提供方和云服务。
云交换100可以包括AI交换500,用于使得数据集、机器学习应用程序和AI模型能够在数据集、机器学习算法和AI模型提供方(诸如云服务提供方110A至110N)与客户(诸如客户108A至108C)之间进行安全交换。AI交换500还可以使得数据集、机器学习算法和AI模型提供方(诸如云服务提供方110A至110N)和客户(诸如客户108A至108C)能够安全构建、训练和导入AI模型。云交换100还可以包括模型注册表508。尽管被示为直接耦合到AI交换500,但是模型注册表508可以间接耦合到AI交换500。例如,模型注册表508可以通过云交换点128C耦合到AI交换500。模型注册表508可以注册构建、训练或导入到AI交换500中的AI模型,并且使得能够证明AI模型的谱系,如下文所详细讨论的。在AI模型导入AI交换500的示例中,模型注册表508可以仅使得能够证明发生在AI交换500内的增强(诸如训练)。在一些示例中,模型注册表508可以位于与AI交换500不同的云交换中。
AI交换500和模型注册表508可以表示在云交换100的一个或多个数据中心内或备选地在云提供方、企业、联盟、或其他计算底层结构(比如)的后台或分支处之外执行的一个或多个应用。AI交换500和模型注册表508可以全部或部分分布在数据中心之间,每个数据中心与不同的云交换点128相关联以构成云交换100。尽管被示为驻留在单个云交换100中,但是AI交换500和模型注册表508可以驻留在多个云交换中。
云交换100还可以包括可编程网络平台120,用于对云交换100进行动态编程,以响应地并确实地满足服务请求,这些服务请求封装了对云交换100和/或耦合到云交换的云服务提供方110所提供的服务的业务需求100。结果,可编程网络平台120可以根据明确定义的服务策略、服务质量策略、服务级别协议和成本并且还根据业务级别服务的服务拓扑结构跨越异构云服务提供方编排业务级别服务。
可编程网络平台120使得实施云交换100的云服务提供方能够动态配置并管理云交换100以例如促进从多个云服务提供方110到一个或多个云客户108的基于云的服务递送的虚拟连接。云交换100可以使得云客户108能够绕过公共互联网直接连接到云服务提供方110,以便提高性能,降低成本,增加连接的安全性和隐私性,并且将云计算用于其他应用。这样,比如,在一些方面中,企业、网络运营商和SaaS客户至少可以将云服务与其内部应用集成,如同这些服务是他们自己的数据中心网络的一部分或直接耦合到他们自己的数据中心网络一样。
在其他示例中,可编程网络平台120使得云服务提供方能够使用云客户108所请求的L3实例来配置云交换100,如本文中所描述的。例如,客户108可以请求L3实例通过该L3实例链接多个云服务提供方(例如,用于在两个云服务提供方之间传送客户的数据或用于从多个云服务提供方获得服务网格)。在一些示例中,可编程网络平台120可以实现AI交换500、模型注册表508或两者。
可编程网络平台120可以表示在云交换100的一个或多个数据中心内或备选地在云服务提供方的后台或分支处(例如)处之外执行的应用。可编程网络平台120可以全部或部分分布在数据中心之间,每个数据中心与不同的云交换点128相关联以构成云交换100。尽管被示为实施单个云交换100,但是可编程网络平台120可以控制多个不同的云交换的服务供应。备选地或附加地,可编程网络平台120的多个单独实例可以控制用于相应多个不同云交换的服务供应。
在图示示例中,可编程网络平台120包括定义方法、字段和/或其他软件原语的服务接口(或“服务API”)114,应用130(诸如客户门户)可以通过该服务接口调取可编程网络平台120。服务接口114可以允许运营商106、客户108、云服务提供方110和/或云交换提供方根据本文中所描述的技术对云交换100的能力和资产进行可编程访问。
例如,服务接口114可以促进机器到机器通信,以使得能够在云交换中动态供应虚拟电路,用于互连客户和/或云服务提供方网络。这样,可编程网络平台120使得能够使云服务供应的各方面自动化。例如,服务接口114可以为客户提供在参与云交换的多个不同云提供方之间建立、卸载和管理互连的自动化无缝方式。
基于云的服务交换的更多示例细节可以在以下各项中找到:于2016年4月14日提交的题为“CLOUD-BASED SERVICES EXCHANGE”的美国专利申请号15/099,407;于2015年10月29日提交的题为“INTERCONNECTION PLATFORM FOR REAL-TIME CONFIGURATION ANDMANAGEMENT OF A CLOUD-BASED SERVICES EXCHANGE”的美国专利申请号14/927,451;以及于2015年10月29日提交的题为“ORCHESTRATION ENGINE FOR REAL-TIME CONFIGURATIONAND MANAGEMENT OF INTERCONNECTIONS WITHIN A CLOUD-BASED SERVICES EXCHANGE”的美国专利申请号14/927,306,其各自的全部内容通过引用并入本文。
图2是图示了根据本文中所描述的技术的为基于云的服务交换200提供操作环境的数据中心201的高级别视图的框图。基于云的服务交换200(“云交换200”)允许任何NSP106A至106C的客户网络204D、204E和NSP网络204A至204C(统称为“'私有'或'运营商'网络204”)中的对应网络或包括客户108A、108B在内的其他云客户经由层3(L3)或层2(L2)连接直接连接到任何其他客户网络和/或云服务提供方110A至110N中的任何云服务提供方,从而允许交换客户网络和/或云服务提供方110之间的云服务业务。数据中心201可以完全位于诸如仓库或本地数据中心综合体的集中区域内,并且向将他们各自的网络定位在数据中心201内(例如,用于协同定位)和/或通过一个或多个外部链接连接到数据中心201的NSP、客户和云服务提供方提供功率、布线、安全和其他服务。
网络服务提供方106可以各自表示与中转网络相关联的网络服务提供方,NSP 106的网络订户可以通过该网络服务提供方经由云交换200访问由云服务提供方110提供的云服务。云服务提供方110可以包括网络运营商、大型企业、管理服务提供方(MSP),以及软件即服务(SaaS)、平台即服务(PaaS)、底层结构即服务(IaaS)、虚拟化即服务(VaaS),以及如由云服务提供方110经由云交换200提供的用于这种基于云的服务的数据存储即服务(dSaaS)客户。
这样,云交换200以透明和中立方式精简并简化了(间接经由NSP 106或直接)合作云服务提供方110和客户108的过程。云交换200的一个示例应用是协同定位和互连数据中心,在该协同定位和互连数据中心中,云服务提供方110、NSP 106和/或客户108可能已经具有网络存在,诸如通过具有可用于在数据中心内进行互连的一个或多个可访问端口。这允许参与运营商、客户和云服务提供方在同一设施中具有范围广泛的互连选项。
数据中心201的云交换200包括提供L2/L3交换结构的网络底层结构222,云服务提供方110和客户和/或NSP通过该网络底层结构222互连。这使得客户和/或NSP能够具有创建一次仅连接到交换网络和呈现用于云交换200的互连平台的底层网络底层结构222的多对多互连的选项。换言之,代替必须跨越中转网络建立单独连接以访问不同的云服务提供方或一个或多个云服务提供方的不同云服务201,云交换200允许客户使用数据中心内的网络底层结构222互连到多个云服务提供方和云服务,该网络底层结构可以至少部分表示本公开中所描述的边缘网络中的任何边缘网络。
通过使用云交换200,客户可以购买服务并且接触到许多不同地理区域中的许多最终用户,而不会遭受通常与安装并维护与多个云服务提供方110的多个虚拟连接相关联的相同费用。例如,NSP 106A可以使用NSP 106B的网络204B扩展服务。通过连接到云交换200,NSP 106可能能够通过向其他运营商提供销售网络服务来生成附加收入。例如,NSP106C可以向其他NSP提供使用NSP网络204C的机会。
云交换200可以包括AI交换500和模型注册表508。在该示例中,AI交换500通过网络底层结构222间接耦合到模型注册表508。云交换200还可以包括可编程网络平台(为了简单起见,未示出),诸如图1的可编程网络平台120。
数据集、机器学习算法和AI模型(统称为“数据”)的提供方(诸如云服务提供方110A至110N)可以通过网络底层结构222访问云交换200中的AI交换500,以将他们的数据放入AI交换500。诸如客户108A和108B的客户可以通过网络底层结构222访问AI交换以购买对数据的访问。
在图2的示例中,网络底层结构222表示云交换交换结构并且包括多个端口,该多个端口可以通过例如调取可编程网络平台(未示出)的服务接口与虚拟电路动态互连。端口中的每个端口可以与以下各项中的一项相关联:运营商106、客户108和云服务提供方110。
在一些示例中,云交换卖方(例如,企业或嵌套在云服务提供方中的云服务提供方)可以请求并获得L3实例,然后可以创建与L3实例相关联的卖方简档,随后在云交换上作为卖方操作。本公开的技术使得多个云服务提供方能够参与企业的L3实例(例如,L3“路由实例”或L2“桥接实例”),而每个云服务提供方流都利用企业设备而被锚定。
图3A至图3B是图示了根据本公开中所描述的技术的用于云交换的示例网络底层结构的框图,该云交换包括AI交换500并且使得访问与数据集、机器学习算法和AI模型的多个提供方以及数据集、机器学习算法和AI模型的客户的AI交换500。在该示例中,各自与不同客户相关联的客户网络308A至308C(统称为“客户网络308”)访问数据中心300内的云交换点,以便访问AI交换500并安全访问包含在AI交换500中的数据集、机器学习算法和AI模型。客户网络308可以各自包括可以访问AI交换500的端点设备(为了简单起见未示出)。示例端点设备包括服务器、智能电话、工作站、膝上型计算机/平板计算机等。云服务提供方320A至320C(统称为“云服务提供方320”)可以访问数据中心300内的云交换点303以便访问AI交换500,例如,以向AI交换500提供数据集、机器学习算法和AI模型或在AI交换500中训练AI模型。
客户网络308A至308B包括相应提供方边缘/自主系统边界路由器(PE/ASBR)310A至310B。PE/ASBR 310A、310B中的每个PE/ASBR可以执行外部网关路由协议以通过访问链接316A至316B(访问链接316A至316C可以统称为“访问链接316”)中的一个访问链接与PE路由器302A至302B(“PE路由器302”或更简单地“PE 302”)中的一个PE路由器对等。在图示示例中,访问链接316中的每个访问链接316表示客户网络308的边缘路由器与云交换点303的边缘路由器(或自主系统边界路由器)之间的中转链接。例如,PE/ASBR 310A和PE路由器302A可以经由外部网关协议(例如,外部BGP)直接对等,以通过访问链接316A交换L3路由并且在客户网络308A与云服务提供方网络320之间交换L3数据业务。在一些情况下,访问链接316可以表示并且备选地被称为用于在互联网协议/多协议标签交换(IP/MPLS)结构301中配置的互联网协议-虚拟专用网络(IP-VPN)的连接电路,如下文所进一步详细描述的。在一些情况下,访问链接316可以各自包括客户网络308的至少一个端口与云交换点303的至少一个端口之间的直接物理连接,而没有中间中转网络。访问链接316可以在虚拟局域网(VLAN)或堆叠VLAN(例如,QinQ隧穿)、虚拟扩展局域网(VxLAN)、标签交换路径(LSP)、通用路由封装(GRE)隧道或其他类型的隧道上操作。
虽然关于L3连接性进行了说明和主要描述,但PE路由器302可以附加地经由访问链接316提供客户网络308与云服务提供方网络320之间的L2连接性。例如,PE路由器302A的端口可以配置有L2接口,该L2接口经由访问链接316A向客户网络308A提供与云服务提供方320A的L2连接,其中PE路由器312A耦合到PE路由器304A的端口,该PE路由器304A的端口也配置有L2接口。PE路由器302A的端口可以附加地配置有L3接口,该L3接口经由访问链接316A向客户网络308A提供与云服务提供方320B的L3连接。PE路由器302A可以配置有多个L2和/或L3子接口。
访问链接316和聚集链接322A至322D(统称为聚集链接322)中的每个聚集链接可以包括网络接口设备(NID),该NID将客户网络308或云服务提供方320连接到NID与PE路由器302或PE路由器304A至304D(统称为“PE路由器304”或更简单的“PE 304”)中的一个PE路由器之间的网络链接。访问链接316和聚集链接322中的每个聚集链接可以表示或包括提供L2和/或L3连接的若干个不同类型的链接中的任何类型的链接。
在该示例中,客户网络308C并非具有自主系统号的自主系统。客户网络308C可以表示位于云交换点303的路由足迹内的企业、网络服务提供方或其他客户网络。客户网络包括客户边缘(CE)设备311,该CE设备311可以执行外部网关路由协议以通过访问链接316C与PE路由器302B对等。在各种示例中,PE/ASBR 310A至310B中的任何可以备选地是或以其他方式表示CE设备。
访问链接316包括物理链接。PE/ASBR 310A至310B、CE设备311和PE路由器302A至302B经由访问链接316交换L2/L3分组。在这方面,访问链接316构成用于经由云交换点303的AI交换访问的运输链接。云交换点303可以表示云交换点128中的任何云交换点128的示例。数据中心300可以表示数据中心201的示例。
在一些示例中,云交换点303聚集客户308对云交换点303和AI交换500的访问以及任一个或多个云服务提供方320的数据集、机器学习算法和AI模型。例如,图3A至图3B图示了将相应客户网络308A至308B连接到云交换点303的PE路由器302A的访问链接316A至316B以及将客户网络308C连接到PE路由器302B的访问链接316C。PE路由器302、304中的任一个或多个PE路由器可以包括ASBR。PE路由器302、304和IP/MPLS结构301可以被配置为将访问链接316中的任何访问链接316和聚集链接322中的任何聚集链接322互连到AI交换500。结果,云服务提供方网络320A例如只需要配置单个云链接(本文中为聚集链接322A)以便通过AI交换500向多个客户网络308提供数据集、机器学习算法和AI模型。
另外,单个客户网络(例如,客户网络308A)只需要将单个云访问链接(本文中为访问链接316A)配置到数据中心300内的云交换点303,以便访问AI交换500以及来自经由云交换点303提供云服务的多个云服务提供方网络320的数据集、机器学习算法和AI模型。
云服务提供方网络320各自包括服务器,该服务器被配置为向用户提供一个或多个云服务,诸如提供数据集、机器学习算法和AI模型。云服务提供方网络320包括PE路由器312A至312D(统称为“PE路由器312”),每个PE路由器执行外部网关路由协议,例如,eBGP,以与云交换点303的PE路由器304A至304B(统称为“PE路由器304”)交换路由。云服务提供方网络320中的每个云服务提供方网络320可以表示公共、私有或混合云。云服务提供方网络320中的每个云服务提供方网络320可以具有分配自主系统号或是云交换点303的自主系统足迹的一部分。
在图示示例中,IP/MPLS结构301将PE 302和PE 304互连到AI交换500。IP/MPLS结构301包括一个或多个交换和路由设备,该一个或多个交换和路由设备包括PE 302、304,该PE 302、304提供IP分组的IP/MPLS交换和路由以形成IP骨干。在一些示例中,IP/MPLS结构301可以实现一个或多个不同的隧道协议(即,除了MPLS)以在PE路由器之间路由业务和/或将业务与不同的IP-VPN相关联。根据本文中所描述的技术,IP/MPLS结构301实现IP虚拟专用网络(IP-VPN)以将客户中的任何客户308连接到AI交换500或多个云服务提供方网络320以提供基于数据中心的‘运输’和层3连接。
鉴于基于服务提供方的IP骨干网络需要具有有限带宽的广域网(WAN)连接来将服务业务从层3服务提供方运输到客户,如本文中所描述的云交换点303‘运输’服务业务并且将云服务提供方320连接到AI交换500以及连接到由基于数据中心的IP/MPLS结构301提供的数据中心300的高带宽本地环境内的客户308。在一些示例配置中,客户网络308和云服务提供方网络320可以经由相应链接连接到IP/MPLS结构301的相同的PE路由器。
访问链接316和聚集链接322可以包括附接电路,该附接电路将与所连接的客户网络308或云服务提供方网络320交换的业务与在PE 302、304中配置并对应于在IP/MPLS结构301上操作的IP-VPN的虚拟路由和转发实例(VRF)相关联。例如,PE路由器302A可以在双向标签交换路径(LSP)上与PE/ASBR 310A交换IP分组,该LSP在访问链接316A上操作,是PE路由器302A中配置的VRF的附接电路。作为另一示例,PE路由器304A可以在双向标签交换路径(LSP)上与PE路由器312A交换IP分组,该LSP在聚集链接322A上操作,是PE路由器304A中配置的VRF的附接电路。每个VRF可以包括或表示具有不同路由的不同路由和转发表。
IP/MPLS结构301的PE路由器302、304可以配置在用于云服务的相应中心辐条式布置中,其中PE 304实现云服务集线器并且PE 302被配置为中心的辐条(针对各种中心辐条式实例/布置)。中心辐条式布置确保服务业务使得能够在中心PE与辐条PE中的任何辐条PE之间流动,但不能直接在不同辐条PE之间流动。如下文进一步所描述的,在基于数据中心的IP/MPLS结构301和南向服务业务(即,从云服务提供方到客户)的中心辐条式布置中,PE302向PE 304通告从PE/ASBR 310A至310B接收的路由,该PE 304向PE 312通告路由。对于北向服务业务(即,从客户到云服务提供方),PE 304向PE 302通告从PE 312接收的路由,该PE302向PE/ASBR 310A至310B通告路由。
对于云交换点303的一些客户,云交换点303提供方可以配置全网状布置,由此PE302、304集合各自都耦合到该客户的不同客户站点网络。在这种情况下,IP/MPLS结构301针对笼到笼(cage-to-cage)或冗余业务(也称为东-西业务或水平业务)实现层3VPN(L3VPN)。L3VPN可以实行封闭用户组,由此每个客户站点网络可以相互发送业务,但不能在L3VPN之外发送或接收业务。
PE路由器可以根据对等模型相互耦合而无需使用覆盖网络。也就是说,PE/ASBR310A至310B和PE 312可以不直接相互对等以交换路由,而是经由IP/MPLS结构301间接交换路由。在图3B的示例中,云交换点303被配置为实现多个层3虚拟电路330A至330C(统称为“虚拟电路330”)以将客户网络308和云服务提供方网络320与端到端IP路径互连。云服务提供方320和客户308中的每个都可以是多个虚拟电路330的端点,其中多个虚拟电路330在IP/MPLS结构301和云服务提供方/客户的PE/PE或PE/CE对之间遍历一个或多个连接电路。虚拟电路330表示在将客户网络连接到结构301的附接电路与将云服务提供方网络连接到结构301的附接电路之间通过IP/MPLS结构301的层3路径。每个虚拟电路330可以包括至少一个隧道(例如,LSP和/或通用路由封装(GRE)隧道),该至少一个隧道在PE 302、304处具有端点。PE 302、304可以建立相互互连的隧道的完全网格。
每个虚拟电路330可以包括在IP/MPLS网络301中配置的不同中心辐射式网络,该不同中心辐射式网络具有PE路由器302、304,该PE路由器302、304使用边界网关协议对等会话的完全或部分网格(在该示例中,为多协议内部边界网关协议(MP-iBGP)对等会话的完全网格)来交换路由。MP-iBGP或简称MP-BGP是路由器交换标记路由以实现基于MPLS的VPN的协议的示例。然而,PE 302、304可以交换路由以使用其他技术和/或协议来实现IP-VPN。
在虚拟电路330A的示例中,云服务提供方网络320A的PE路由器312A可以经由与PE路由器304A的路由协议(例如,eBGP)对等连接将用于云服务提供方网络320A的路由发送到PE路由器304A。PE路由器304A将路由与中心辐射式网络相关联,该中心辐射式网络可能具有相关VRF,该相关VRF包括辐条PE路由器302A。然后,PE路由器304A将路由导出到PE路由器302A;PE路由器304A可以将指定PE路由器304A作为下一跳路由器的路由连同标识中心辐射式网络的标签一起导出。PE路由器302A经由与PE/ASBR 310B的路由协议连接将路由发送到PE/ASBR 310B。PE路由器302A可以在添加云交换点303的自主系统号(例如,到BGP自主系统路径(AS_PATH)属性)并且指定PE路由器302A作为下一跳路由器之后发送路由。因此,即使云交换点303可能基于数据中心内,云交换点303也是自主系统从客户308到云服务提供方320(反之亦然)的路径中的自主系统“跳”。PE/ASBR 310B将路由安装到路由数据库,诸如BGP路由信息库(RIB),以提供到云服务提供方网络320A的层3可达性。这样,云交换点303将路由从云服务提供方网络320“泄漏”到客户网络308,而无需云服务提供方网络320到客户网络308的直接层对等连接。
PE/ASBR 310B和PE路由器302A、304A和312A可以在相反方向上执行类似操作以将源自客户网络308B的路由转发到PE路由器312A,从而提供从云服务提供方网络320A到客户网络308B的连接。在虚拟电路330B的示例中,PE路由器312B、304A、302A和PE/ASBR310B以类似于上述用于建立虚拟电路330B的方式交换客户网络308B和云服务提供方320B的路由。结果,数据中心300内的云交换点303使PE/ASBR 310B和PE路由器312A、312B中的每个PE路由器之间建立的对等连接内在化,以便针对由不同云服务提供方网络320A、320B提供的多个层3云服务执行云聚集并且将多个经聚集的层3云服务递送到客户网络308B,该客户网络308B具有到云交换点303的单个访问链接316B。
图4是图示了根据本公开的一种或多种技术操作的计算设备的一个示例的进一步细节的框图。图4可以图示服务器或其他计算设备13500的特定示例,该其他计算设备13500包括处理电路系统13502,该处理电路系统13502可以包括一个或多个处理器,该一个或多个处理器可以执行可编程网络平台组件中的任一个或多个可编程网络平台组件,或本文中所描述的任何其他系统、应用或模块。在其他实例中,可以使用计算设备13500的其他示例。尽管出于示例的目的,在图4中作为独立计算设备13500示出,但是计算设备可以是包括一个或多个处理器或用于执行软件指令的其他合适计算环境的任何组件或系统,并且例如不必包括图4所示的一个或多个元件(例如,通信电路系统13506;并且在一些示例中,诸如一个或多个存储设备13508的组件可能不会与其他组件位于同一位置或在同一机箱中)。计算设备13500是可以根据本公开的技术实现AI交换500、模型注册表508或AI交换500或模型注册表508的任何部分的示例设备。
如图4的具体示例所示,计算设备13500包括处理电路系统13502、一个或多个输入设备13504、一个或多个通信电路系统13506、一个或多个输出设备13512、一个或多个存储设备13508、以及一个或多个用户接口(UI)设备13510。在一些示例中,计算设备13500还包括可以由诸如云服务提供方320A至320C的云服务提供方提供给计算系统13500的数据集13530和机器学习算法13532。计算设备13500还可以包括容器13534。容器13534可以包含多个容器,每个容器包含AI模型、与AI模型相关联的AI模型元数据和对于经训练的特定AI模型唯一的哈希。在计算设备13500实现AI交换500的情况下,计算设备13500还可以包含模型注册控制器13536,AI交换500可以使用该模型注册控制器13536来与模型注册表508接口;(多个)AI训练应用13538,该AI训练应用13538可以用于训练AI模型;安全沙箱应程序13542,该安全沙箱应程序13542可以用于实现安全沙箱以进行AI模型事务;以及市场应用13544,该市场应用13544用于实现容器13534内的数据集13530、机器学习算法13532和AI模型的市场。在计算设备13500实现模型注册表508的情况下,计算设备13500可以包括模型注册表应用13540,诸如本文中所稍后讨论的模型注册表API网关、区块链应用和(多个)区块链账本。
计算设备13500还可以包括用于执行其他功能的一个或多个应用13522、可编程网络平台应用(PNPAS)13524和操作系统13516。一个或多个存储设备13508和操作系统中的应用13516中的每个应用可以由计算设备13500执行。计算系统13500的组件(例如,处理电路系统13502、一个或多个输入设备13504、通信电路系统13506、一个或多个存储设备13508、一个或多个UI设备13510和一个或多个输出设备13512)中的每个组件耦合(以物理、通信和/或操作方式)用于组件间通信。在一些示例中,一个或多个通信通道13514可以包括系统总线、网络连接、进程间通信数据结构、或用于在组件之间传达数据的任何其他方法。作为一个示例,计算系统13500的组件(例如,电路系统13502、一个或多个输入设备13504、通信电路系统13506、一个或多个存储设备13508、一个或多个UI设备13510和一个或多个输出设备13512)中的每个组件可以通过一个或多个通信信道13514耦合。
在一个示例中,处理电路系统13502被配置为实现用于在计算设备13500内执行的功能和/或处理指令。例如,处理电路系统13502能够处理存储在一个或多个存储设备13508中的指令。处理电路系统13502的示例可以包括以下各项中的任一项或多项:微处理器、控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或等同离散或集成逻辑电路系统。
一个或多个存储设备13508可以被配置为在操作期间在计算设备13500内存储信息。在一些示例中,一个或多个存储设备13508被描述为计算机可读存储介质。在一些示例中,一个或多个存储设备13508为瞬态存储器,这意味着一个或多个存储设备13508的主要目的并非长期存储。在一些示例中,一个或多个存储设备13508被描述为易失性存储器,这意味着当计算机关闭时,一个或多个存储设备13508不会维持所存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)和本领域已知的其他形式的易失性存储器。在一些示例中,一个或多个存储设备13508用于存储由处理电路系统13502执行的程序指令。在一个示例中,一个或多个存储设备13508由在计算设备13500上运行的软件或应用使用以在程序执行期间临时存储信息。
在一些示例中,一个或多个存储设备13508还包括一个或多个计算机可读存储介质。一个或多个存储设备13508可以被配置为存储比易失性存储器更大量的信息。一个或多个存储设备13508还可以被配置为用于长期存储信息。在一些示例中,一个或多个存储设备13508包括非易失性存储元件。这种非易失性存储元件的示例包括磁性硬盘、光盘、软盘、闪存或电可编程存储器(EPROM)或电可擦除可编程(EEPROM)存储器的形式。
在一些示例中,计算设备13500还包括一个或多个通信电路系统13506。在一个示例中,计算设备13500利用通信电路系统13506经由诸如一个或多个有线/无线/移动网络的一个或多个网络与外部设备通信。通信电路系统13506可以包括网络接口卡,诸如以太网卡、光收发器、射频收发器、或可以发送并接收信息的任何其他类型的设备。在一些示例中,计算设备13500使用通信电路系统13506来与外部设备通信。
在一个示例中,计算设备13500还包括一个或多个UI设备13510。在一些示例中,一个或多个UI设备13510被配置为通过触觉、音频或视频反馈从用户接收输入。一个或多个UI设备13510的示例包括存在敏感显示器、鼠标、键盘、话音响应系统、视频相机、麦克风、或用于检测来自用户的命令的任何其他类型的设备。在一些示例中,存在敏感显示器包括触敏屏幕。
一个或多个输出设备13512还可以包括在计算设备13500中。在一些示例中,一个或多个输出设备13512被配置为使用触觉、音频或视频刺激向用户提供输出。在一个示例中,一个或多个输出设备13512包括存在敏感显示器、声卡、视频图形适配器卡、或用于将信号转换为人类或机器可理解的适当形式的任何其他类型的设备。一个或多个输出设备13512的附加示例包括扬声器、阴极射线管(CRT)监测器、液晶显示器(LCD)、或可以向用户生成可懂输出的任何其他类型的设备。
计算设备13500可以包括操作系统13516。在一些示例中,操作系统13516控制计算设备13500的组件的操作。例如,在一个示例中,操作系统13516促进一个或多个应用13522和(多个)可编程网络平台应用13524与处理电路系统13502、通信电路系统13506、一个或多个存储设备13508、一个或多个输入设备13504、一个或多个UI设备13510和一个或多个输出设备13512的通信。
应用13522和可编程网络平台应用13524还可以包括可以由计算设备13500执行的程序指令和/或数据。可以由计算设备13500执行的示例(多个)可编程网络平台应用13524可以包括L3实例,如服务模块13550和虚拟性能中心模块13551。
图5是图示了根据本公开的技术的示例AI交换系统的框图。AI交换500可以包含安全沙箱502、市场504和平台506。AI交换500可以为私有或独立系统,可供寻求访问其他人的AI算法、数据集或AI模型以开发现有AI模型的联盟成员使用,以更好地满足他们的需求或利用其他人所开发的AI模型。AI交换500可以向联盟成员(诸如数据科学家)提供安全环境,用于以使得经训练的AI模型的未来潜在用户能够验证经训练的AI模型的起源信息和特点(例如,这些潜在用户不必自己训练AI模型)的安全方式创建并训练AI模型。数据提供方524A至524C被示为耦合到安全沙箱502。数据提供方524A至524C可以分别向安全沙箱502提供数据集501A至501C。算法提供方(Algo提供方)526A至526C也被示为耦合到安全沙箱502。算法提供方526A至526C可以向安全沙箱502提供机器学习算法。安全沙箱502可以是其中客户(诸如(图1至图2的)客户108A至108C)可以访问机器学习算法和数据集(例如,机器学习算法503A至503C和数据集501A至501C)的区域。客户还可以访问存在于安全沙箱502(图5中未示出)内的AI模型。数据提供方524A至524C和算法提供方526A至526C可以是云服务提供方,诸如图1的云服务提供方110A至110N、企业、学术机构、个体或其他提供方。在一些示例中,数据提供方524A至524C或算法提供方526A至526C中的一个或多个也可以是客户,诸如图1的客户108A至108C。
在一些示例中,市场504可以由诸如云服务提供方110A至110N的云服务提供方提供。在一些示例中,AI交换500可以包括多个市场504。在一些示例中,市场504可以针对特定行业细分市场,诸如航空市场、医疗保健市场、石油和天然气市场、自主车辆市场等。市场504可以由对AI模型和/或数据集感兴趣的公司、大学、个人和/或其他实体在市场504服务的行业细分市场(例如,航空业)内操作。例如,AI交换500可以由作为PaaS的中立独立实体提供。
AI交换500可以耦合到模型注册表508。在一些示例中,模型注册表508可以在安全沙箱502内部实现。模型注册表508可以是基于区块链的注册表,该基于区块链的注册表注册AI模型并且验证AI模型元数据。模型注册表508可以维护用于在AI交换500中使用各种AI模型执行的操作的关键AI模型元数据。模型注册表508可以包含模型注册表应用编程接口(API)网关510、键值对注册表数据库(KVPR)522和区块链记录512(例如,区块链账本)。在一些示例中,区块链记录512可以包含记录,这些记录包含AI模型元数据,诸如模型属性514、训练事务516、训练数据使用518和训练底层结构520。在其他示例中,区块链记录可以包含各自包含AI模型的容器521的记录以及有关AI模型元数据和有关哈希。在一些示例中,区块链记录512可以包含模型属性514、训练事务516、训练数据使用518和训练底层结构520和容器521。
安全沙箱502内的AI模型可以连同其相关AI模型元数据和哈希一起打包在容器内部,该容器可以用于验证AI模型和AI模型元数据。AI模型的容器化将在下文中关于图7进行更详细的讨论。
AI模型可以在多个阶段中开发并增强。例如,数据科学家可能会使用AI算法和小数据集构建初始AI模型。随后,AI模型可以部署在生产或行业环境中,并且通过例如运营团队使用更大的数据集进行细化。因此,存在可能发生的涉及安全沙箱502内的特定AI模型的许多事务。安全沙箱502内的事务(诸如在特定数据集上训练模型)可以由AI交换500监测并且可以记录为AI容器和模型注册表508中的模型元数据。安全沙箱502可以通过模型注册表API网关510将AI模型元数据提供给模型注册表508。新元数据可以添加到例如经过进一步训练的AI模型的现有元数据中,并且可以对所得AI模型、经过组合的元数据和基于所得AI模型的新哈希进行容器化。安全沙箱502内的AI模型工作流的数据科学家工作流程和生产部署可以使用诸如Kubeflow的编排器实现为流水线。附加地,容器化过程可以使用这种编排器来实现。安全沙箱502可以限制未经授权的数据集、AI算法、AI模型以及从安全沙箱502构建或细化的AI模型,并且试图确保涉及AI模型的每个事务都被记录。在安全沙箱502中构建并在安全沙箱502中训练的AI模型在本文中可以被称为安全AI模型,并且与安全AI模型相关联的AI元数据在本文中可以被称为安全AI模型元数据。
图6是描绘了根据本公开的技术的示例流水线更新过程的框图。图6描绘了两个分开的流水线:实验流水线531和行业化流水线533。例如来自联盟成员的数据科学家可以通过例如选择实验选项530通过市场504访问实验流水线531。虽然并非如图6所示,但是实验流水线531可以位于安全沙箱502中。数据科学家可以通过定义假设(DH)534开始。假设可以是问题陈述或用例。例如,数据科学家可能会定义假设,即,如何在特定位置的高峰时段期间增加交通流。然后,如果授权数据科学家导入该特定数据,则数据科学家可以收集数据(CD)536。收集数据536可以涉及摄取数据,诸如数据集501A,或可以涉及数据科学家将AI交换500外部的数据导入安全沙箱502。
数据科学家可以探索(EXP)538。探索538可能涉及数据分析和/或清理。例如,数据科学家可能会分析正在使用的数据,并且认识到数据集中存在异常数据并且移除这些异常数据。数据科学家可以执行建模(MDL)540。建模540可以涉及特征标识。例如,数据科学家可能会标识交通转盘对交通流的影响可能与交通灯不同。数据科学家还可以验证(VAL)542。验证542可能涉及测试模型以及评估结果。如果数据科学家认为结果不佳,则数据科学家可以通过返回定义假设534来迭代并改善假设。如果数据科学家认为结果可以接受,则数据科学家可以选取保持模型(MOD)544。
如关于图5所讨论的,可以记录数据科学家在实验流水线531中进行的事务中的每个事务。实验流水线531可以采用模型注册表控制器528通过例如模型注册表API网关510将这些事务记录在模型注册表508中。在一些示例中,事务可以记录在容器521中,如图5所示。在一些示例中,事务可以记录在模型属性514、训练事务516、训练数据使用518和训练底层结构520中。
来自联盟成员的数据科学家或操作人员(“用户”)例如可以通过选择行业化选项532通过市场504以类似方式访问行业化流水线533。虽然图6中未示出,但是行业化流水线可以位于安全沙箱502中。用户可以选择安全沙箱中可用的AI模型并且收集数据(CD)546。收集数据546可以涉及一个或多个生产数据集的摄取。在一些示例中,生产数据集可以是比用于在实验流水线531中收集数据536的数据集更大的数据集。生产数据集可以是诸如数据集501A至501C的数据集或可以是如果用户有权将数据集导入安全沙箱502则由用户导入的数据集。用户可以训练模型(TM)548。训练模型548可以涉及在来自收集数据546的数据上运行AI模型。例如,用户可以使用AI训练应用13538来训练AI模型。用户可以继续集成(CI)550。继续集成550可以涉及操作化AI模型,诸如创建表示性状态转移(REST)API或自动运行特征。
用户可以确定反馈(FB)552。反馈552可以涉及评估模型并且可以涉及对AI模型的功效做出协作和知情判定。例如,用户可以就AI模型的功效咨询同事或其他联盟成员。用户还可以监测(MON)554。监测554可以涉及监测AI模型的性能以及对AI模型进行测试。用户可以确定维护并改进模型,在这种情况下,用户可以返回以收集数据546。在一些示例中,用户可能对AI模型完全满意并且可能希望将模型(MOD)556部署到现场。例如,用户可以将AI模型556从AI交换500导出到驻留在用户的工作地点的企业网络上的服务器。在一些示例中,用户可以将AI模型556导出到可能位于多个位置中的多个服务器。如果期望,则用户稍后可以联系模型注册表508以验证与AI模型556相关联的元数据。
与实验流水线531一样,可以记录行业化流水线533内的事务中的每个事务。行业化流水线533可以采用模型注册控制器528以通过例如模型注册表API网关510将这些事务记录在模型注册表508中。在一些示例中,事务可以记录在容器521中,如图5所示。在一些示例中,事务可以记录在模型属性514、训练事务516、训练数据使用518和训练底层结构520中。
图7是图示了根据本发明的技术的示例AI模型容器的框图。用户可以在诸如实验流水线530或行业化流水线532的流水线中训练AI模型(560)。用户可以构建AI模型并且安全沙箱502可以序列化AI模型(562)。然后,安全沙箱502可以使AI模型容器化(564)。容器566可以包含经序列化的AI模型对象文件750和AI模型谱系信息762。在一些示例中,经序列化的AI模型对象文件750可以是一个或多个PKL文件。在一些示例中,AI模型谱系信息762可以以HD5格式而被存储。
AI模型谱系信息762可以包括AI模型属性(AI模型属性)752和AI模型事务数据属性760。在一些示例中,AI模型属性752可以以JSON文件格式存储。AI模型属性752可以包括与包含在容器566中的经序列化的AI模型对象文件750有关的信息,诸如标识经序列化的AI模型对象文件750的唯一ID、经序列化的AI模型对象文件750的版本(例如,每次经序列化的AI模型对象文件750被反序列化和训练时,可以创建经序列化的AI模型对象文件750的新版本并且给予该新版本新版本号)、创建由经序列化的AI模型对象文件750表示的AI模型的标识、AI模型的类别(例如,AI模型是什么类型的AI模型)、用于创建由经序列化的AI模型对象文件750表示的AI模型的算法类型、由经序列化的AI模型对象文件表示的AI模型所针对的框架750、由经序列化的AI模型对象文件750表示的AI模型的一个或多个用例、可以链接到关于由经序列化的AI模型对象文件750表示的AI模型的更多信息的URL、可能对由经序列化的AI模型对象文件750表示的AI模型的用户有帮助的支持细节、以及由经序列化的AI模型对象文件750表示的AI模型的使用和评级信息等。AI模型属性752还可以包括模型哈希764,该模型哈希764可以用于验证经序列化的AI模型对象文件750和AI模型谱系信息762。
AI模型训练数据属性760可以包含与由经序列化的AI模型对象文件750表示的AI模型的训练有关的信息。在一些示例中,AI模型训练数据属性760包含与在安全沙箱502(例如,实验流水线530和行业化流水线532)内发生的每个训练事务有关的信息。例如,AI模型训练数据属性760可以包含关于由经序列化的AI模型对象文件750表示的AI模型的训练事务的信息,诸如训练日期和时间、训练持续时间、训练地理(诸如训练物理发生的地方或用于训练的数据的来源)、训练的描述、训练所要受益的行业细分市场、所使用的任何超参数的配置、基准结果、一个或多个训练用例(例如,用例是什么用于AI模型的训练器)、训练的数据集大小、训练期间使用的底层结构、云或自然标志(例如,训练是否在云资源上执行)、以及可以标识训练是在实验流水线531还是行业化流水线533上进行的标志等。
AI模型属性752和/或AI模型事务数据属性760可以存储在诸如文件夹754A至754B和756A至756D的文件夹中。文件夹754A可以包含与AI模型的提供方的事务相关联的元数据。文件夹754B可以包含与AI模型的客户的事务相关联的元数据。文件夹756A至756B可以是文件夹754A的子文件夹,并且文件夹756C至756D可以是文件夹754B的子文件夹。文件夹756A可以包含与内部训练事务相关联的元数据,诸如联盟内AI模型的提供方的元数据,例如,AI模型训练元数据758A。文件夹756B可以包含与外部训练事务相关联的元数据,诸如联盟之外的提供方的元数据,例如,AI模型训练元数据758B。文件夹756C可以包含与客户的内部训练事务相关联的训练元数据,诸如作为联盟成员的客户,例如,AI模型训练元数据758C。文件夹756D可以包含与客户的外部训练事务相关联的训练元数据,诸如不是联盟成员的客户,例如,AI模型训练元数据758D。备选地,文件夹756A和756C可以包含与安全沙箱502内发生的训练有关的元数据,并且文件夹756B和756D可以包含与安全沙箱502外发生的训练有关的元数据。
容器566可以例如通过模型注册控制器528和模型注册表API网关510(为了简单起见,两者都没有在图7中示出)发布到模型注册表508。模型注册表508可以在键值注册表数据库522中注册与容器566相关联的键值对,并且可以在区块链记录512中存储容器566。安全沙箱502还可以本地存储容器566。
图8是图示了根据本公开的技术的安全沙箱的安全性方面的框图。安全沙箱502可以包含数据集(诸如数据集(data)501A)和机器学习算法(诸如机器学习算法(algo)503A)。安全沙箱502还可以包含策略570。容器安全572可以强制执行容器级别的策略570。网络安全574可以强制执行网络级别的策略570。策略570可以限制数据集进入和/或离开安全沙箱502。策略570还可以限制机器学习算法进入和/或离开安全沙箱502。策略570还可以限制经训练的IA模型进入和/或离开安全沙箱502。策略570还可以限制数据集提供方、机器学习算法提供方和AI模型提供方的身份。例如,网络安全574可以强制执行策略570以仅准许先前经过授权的数据集提供方、机器学习算法提供方和AI模型提供方访问安全沙箱502。策略570还可以限制流水线级别或个人用户级别的模型改变。例如,网络安全574可以强制执行策略570以防止改变诸如实验流水线531的给定流水线中的现有AI模型或防止特定用户或用户类别改变现有AI模型。
如先前所讨论的,可以对对安全沙箱502中的AI模型执行的所有操作或事务都进行跟踪,并且将它们存储在诸如容器566的容器中。容器566可以存储在模型注册表508(和/或安全沙箱502)并且包括与对AI模型的训练相关联的AI模型元数据以及在实验流水线531或行业化流水线533中对AI模型做出的任何改变。在一些示例中,模型注册表508可以在安全沙箱502中实现。在一些示例中,还存储指示事务发生在哪个流水线中的标志。通过在安全沙箱502中跟踪并存储AI模型发生的所有事务,安全沙箱502可以准确审计给定AI模型的谱系,并且AI交换500可以通过使用模型注册表508向AI模型的客户证明AI模型谱系。
图9是根据本公开的技术的示例模型注册表更新和示例模型使用过程的概念图。如果用户想要加入AI模型,则用户可以进入市场504。在一些示例中,市场504可以尝试通过通过模型注册表API网关510向模型注册表508发送授权请求580A来授权AI模型访问(auth模型访问)(580)。在一些示例中,模型注册表508可以在诸如图5的安全沙箱502的安全沙箱内实现。模型注册表508可以通过将授权身份令牌580B发送回到市场504来做出响应。然后,用户可以通过市场504尝试设置模型注册表记录(设置模型regis)(582)。市场504可以通过模型注册表API网关510向模型注册表508发送模型设置请求582A。模型设置请求582A可以包含授权身份令牌580B。
响应于模型设置请求582A,模型注册表508可以生成AI模型唯一ID和哈希。哈希可以至少部分基于AI模型。模型注册表508可以使用任何已知技术来生成哈希。模型注册表508可以向市场504发送AI模型唯一ID和哈希582B。然后,市场504可以使用AI模型唯一ID和哈希582B更新本地AI模型。本地AI模型可以使用相关AI模型元数据和相关哈希进行序列化和容器化,并且存储在模型注册表508中。本地模型还可以移动或复制到安全沙箱502中。
当用户希望执行诸如训练现有AI模型的AI事务时,用户可以访问安全沙箱502以授权AI模型访问(586)。安全沙箱502可以通过模型注册表API网关510向模型注册表508发送授权请求(auth模型访问)586A。模型注册表508可以响应于授权请求586A发送授权身份令牌586B。然后,安全沙箱502可以尝试验证校验和哈希(有效cs哈希)(588)。安全沙箱502可以通过模型注册表API网关510向模型注册表508发送消息588A。消息588A可以包含本地模型哈希和授权身份令牌586B。响应于消息588A,模型注册表508可以尝试验证本地模型哈希。如果模型注册表508验证本地模型哈希,则模型注册表508可以向安全沙箱502发送哈希验证响应588B。基于接收哈希验证响应588B,安全沙箱502可以准许用户执行AI事务(perfAI trans)(590)。安全沙箱502可以在模型注册表508中日志记录AI事务(log AI trans)(592)。例如,安全沙箱502可以通过模型注册表API网关510向模型注册表508发送消息592A。消息592A可以包括授权身份令牌586B以及包含与事务相关联的AI模型元数据的注册表更新请求,诸如上文关于图7所讨论的元数据。在一些示例中,安全沙箱502可以在发送消息592A之前使用AI模型和经更新的哈希对与事务相关联的AI模型元数据进行容器化,并且消息592A可以包括授权身份令牌586B和容器。在一些示例中,模型注册表508可以更新哈希。在一些示例中,安全沙箱502可以更新哈希。
图10是根据本公开的技术的示例模型注册表的框图。模型注册表508可以包含管理应用(admin app)600、模型报告器602、模型注册表API网关510、模型请求验证器612、区块链采用器614、模型发布器616、可视化管理器618、账本624和区块链底层结构622。管理应用600可以使得管理员能够对模型注册表508进行编程、监测或以其他方式与其交互。模型报告器602可以向安全沙箱502和/或市场504提供关于已在模型注册表508中注册的AI模型的信息。
如上文所讨论的,模型注册表API网关510可以提供准许安全沙箱502和市场504与模型注册表502通信的API。模型注册表API网关510可以包括模型更新API(MU API)604、模型设置API(MS API)606、授权API(auth API)608和模型历史API(MH API)610。安全沙箱502和/或市场504可以使用模型更新API 604来将更新传达到AI模型。模型设置API 606可以当以板载方式安装模型时由市场504使用,诸如上文关于图9所讨论的。安全沙箱502和市场504可以使用授权API 608来请求并接收授权,诸如上文关于图9所讨论的。模型历史API610可以由安全沙箱502和/或市场504使用以获得关于AI模型的历史或谱系的信息。
模型请求验证器612可以接收验证AI模型的请求。模型请求验证器612可以访问账本624(通过例如区块链适配器614)并且定位与AI模型相关联的哈希(在一些示例中,位于容器内),对照与请求相关联的哈希检查哈希,并且将验证报告回到例如安全沙箱502。
区块链适配器614可以接收AI模型元数据。在一些示例中,AI模型元数据可以位于诸如容器566的容器中,该容器包括AI模型、AI模型元数据(例如,模型属性752和模型事务数据属性760)和哈希(例如,哈希764)并且可以与区块链底层结构622交互以将容器存储在账本624中。在一些示例中,AI模型元数据可能不在容器中。模型发布器616可以向保护沙箱502和/或市场504发布存储在账本624中的容器中的模型。例如,模型发布器616可以将经序列化和容器化的AI模型发送到安全沙箱502。安全沙箱502可以从容器中移除经序列化的AI模型并且可以反序列化经序列化的AI模型,从而使得AI模型可用于安全沙箱502中。模型发布器616还可以向市场504提供诸如与AI模型相关联的AI模型元数据的信息,以便准许用户查看关于可能存在于安全沙箱504中的AI模型的信息。可视化管理器618可以向客户发布各种分析报告,诸如可用的AI模型、哪些AI模型已经被更新、可用的数据集等。
通过利用基于区块链的模型注册表,模型注册表508可以维护包含在安全沙箱502内的AI模型和相关AI模型元数据的不可变记录。模型注册表508可以利用基于哈希的验证过程来限制无效AI模型更新。如此,模型注册表508可以作为PaaS提供,模型注册表API网关510可以作为SaaS提供,并且AI模型的谱系或起源信息的验证(证明)可以作为服务提供。模型注册表508可以支持多个市场和多个安全沙箱,包括针对不同细分市场、不同数据集、不同机器学习算法和不同AI模型的市场和安全沙箱。在一些示例中,模型注册表508可以建立在区块链账本的顶部上,使得有关联盟的每个成员都可以拥有模型注册表508的不可变副本。
图11是图示了根据本公开的技术的示例AI交换系统(诸如AI交换500)的示例功能性概览的概念图。应当指出,这仅是个示例功能概述,并且在其他示例中,可以以不同方式处置各种功能和责任。
交换系统可以由联盟630运行。联盟630可以是期望使用联盟630的其他成员的数据集、机器学习算法或AI模型或向联盟630的其他成员提供数据集、机器学习算法或AI模型的公司、大学、个体或其他实体组。联盟630可以为示例系统提供法律、财务和调控框架。
数据市场632(其可以是市场504的示例)可以负责成员注册、资产注册和编目(例如,示例系统中哪些数据集、机器学习算法和AI模型可用)、贸易协议、支付清算、审计、调控、争议解决和第三方工具编排。
安全数据交换634(其可以是安全沙箱502的示例)可以包括AI中心636。AI中心636可以负责数据摄取、AI和机器学习、数据仓库、匿名化(对于其成员想要他们的数据集匿名的联盟)、可视化和分发服务。安全数据交换634还可以包括计算机/容器平台638、存储640、网络642和数据中心644(或其部分)。计算机/容器平台638可以负责计算服务和容器管理。存储640可以负责存储和密钥管理。网络642可以负责网络结构、网络功能虚拟化和安全服务。数据中心644可以负责数据中心服务。
图12是图示了根据本发明的技术的示例系统的控制流的概念图。数据调控器650(诸如来自SIA ITC的ExchangeWellTM论坛)可以提供数据调控结构,诸如对合格实体的跟踪以及对数据和算法的共享。数据调控器650可以服从或受联盟策略570的限制。数据市场632(其可以是市场504的示例)可以从数据调控器650接收数据调控信息。数据市场632可以通过数据市场/安全沙箱API 652与安全沙箱502通信。数据市场/安全沙箱API 652可以向示例交换系统提供编排、安全、退款和记录服务。在一些示例中,数据市场/安全沙箱API 652可以驻留在数据市场632中。在其他示例中,数据市场/安全沙箱API 652可以驻留在安全沙箱502中。在其他示例中,数据市场/安全沙箱API 652可以在数据市场652和安全沙箱502外部。提供方672(诸如数据提供方524A至524C或算法提供方526A至526C)可以向安全沙箱502提供数据集、机器学习算法或AI模型。
安全沙箱502也可能受到联盟策略570的限制。数据交换沙箱654可以由客户660(诸如客户108A至108C)访问,该客户660可以使用数据交换沙箱654访问数据集、机器学习算法和AI模型,例如,由数据提供方672放置在那里。数据分析器656可以与数据交换沙箱654交互以提供关于数据交换沙箱654内的数据的分析报告(诸如数据集、机器学习算法和AI模型)以及数据提供方672和客户660所采取的动作。安全服务器658可以提供用于数据交换沙箱654和数据分析器656驻留的安全环境。
图13是图示了根据本发明的技术的示例系统的架构的框图。市场504可以包括成员管理器700、资产管理器702、协议704、调控器706、计费708、审计710和数据科学家流水线管理器712。例如,成员管理器700可以维护授权提供方列表,诸如数据提供方672和授权客户,诸如客户660。市场504和/或安全沙箱502可以利用成员管理器700和联盟策略570来限制对授权提供方和授权客户的访问。
资产管理器702可以跟踪AI交换500内的资产,诸如数据集、机器学习算法和AI模型。资产管理器702可以被用于向客户660提供资产目录。
协议704可以包含与联盟和/或AI交换500有关联的法律合同和其他协议。调控器706可以包含诸如联盟策略570的调控规则,并且可以可选地包含数据调控器650。调控器706可以包含(多个)算法以强制执行联盟策略570。计费708可以包括计费系统,该计费系统可以跟踪数据提供方672和客户660的应付账款和应收账款。计费708可以根据用户需求提供定期计费报表或计费报表。计费708还可以跟踪由联盟的特定成员组织或联盟作为整体生成或花费的收入。
审计710可以为AI交换500提供审计功能。例如,审计710可以审计金融事务、AI模型事务、或物品进出安全沙箱502或市场504的移动。数据科学家流水线管理器712可以管理上文所讨论的实验流水线531和/或行业化流水线533。
安全沙箱502可以包含安全交换API网关714、联合分析计算集群管理器716、多租户编排管理器718、安全沙箱管理器720、记录服务722和退款724。
安全交换API网关714可以为数据提供方672和客户660提供API以访问安全沙箱502。联合分析计算集群管理器716可以向用户提供对安全沙箱502和/或AI交换500中涉及的计算集群的分析洞察。例如,联合分析计算集群管理器716可以报告所有系统计算集群资产作为整体的总使用量。
多租户编排管理器718可以操作以保持联盟的每个成员或每个用户的数据(诸如数据集、机器学习算法和AI模型)分开。在一些示例中,除非另有授权,否则多租户编排管理器718可以保持每个用户的数据对其他用户不可见。安全沙箱管理器720可以管理安全沙箱502的资源。记录服务722可以记录对安全沙箱502或对特定数据集、机器学习算法或AI模型的访问。例如,记录服务可以记录谁进行了访问、何时进行了访问、访问了什么内容等。退款724可以操作以向安全沙箱502的用户收费。
平台506可以包括安全服务器658、密钥管理服务728、网络功能虚拟化器(NFV)730、边缘计算服务732和互连结构734。安全服务器726可以为安全沙箱502和/或市场提供安全执行环境504。密钥管理服务728可以管理用于保持安全沙箱安全的加密密钥以及用于与模型注册表508交互的加密密钥。例如,密钥管理服务728可以向新用户发布密钥并且可以将在访问请求期间接收的密钥与本地存储的密钥进行比较。网络功能虚拟器730可以虚拟化网络节点功能以创建与AI交换500相关联的服务。边缘计算服务732可以为AI交换500的用户提供边缘计算服务。例如,边缘计算服务732可以移动被AI交换500的用户使用的数据更靠近用户,以使可以减少该用户所体验的AI交换响应时间。互连结构734(诸如IP/MPLS结构301)可以提供,诸如提供方672和客户660、安全服务器658(安全沙箱502可以驻留在其上)和市场504(如果它不驻留在安全服务商658上)的用户之间的互连。比如,提供密钥管理和网络功能虚拟化的示例平台506的附加描述在于2018年6月12日提交的美国专利申请号16/006,458和于2019年10月1日提交的美国临时专利申请号62/908,976中找到,其全部内容通过引用并入本文。
图14是图示了根据本公开的示例AI交换技术的流程图。安全沙箱502可以基于来自用户的输入构建AI模型(802)。例如,用户可以利用实验流水线531或行业化流水线533来向安全沙箱502提供输入,并且安全沙箱502可以例如使用机器学习算法(例如,图5的机器学习算法503A)和至少一个数据集(例如,图5的数据集501A构建AI模型)。安全沙箱502可以基于来自用户的输入来训练AI模型(804)。例如,用户可以利用实验流水线531或行业化流水线533来向安全沙箱502提供输入,并且安全沙箱502可以使用另一数据集(例如,数据集501B)训练AI模型。
安全沙箱502可以基于与构建和训练经训练的AI模型相关联的第一事务来创建第一AI模型元数据(806)。例如,安全沙箱502可以监测涉及AI模型的事务并且基于这些事务来创建AI模型元数据。例如,安全沙箱502可以创建AI模型属性752(图7)和/或AI模型事务数据属性760(图7)。
安全沙箱502可以至少部分基于经训练的AI模型来计算第一哈希(808)。例如,安全沙箱502可以至少部分地基于经训练的AI模型来计算模型哈希764。
安全沙箱502可以在第一容器中打包经训练的AI模型、第一AI模型元数据和第一哈希(810)。例如,安全沙箱可以序列化经训练的AI模型并且打包经序列化的模型对象文件750(其可以是经训练的AI模型的经序列化的版本)、AI模型属性752、模型事务数据属性760和模型哈希764。
模型注册表508可以注册第一容器(812)。例如,安全沙箱502可以将容器566发布到模型注册表508。模型注册表508可以存储容器566和/或可以存储与容器566有关的AI模型元数据,诸如模型属性514、训练事务516、训练数据518和/或区块链记录512中的训练底层结构520。
安全沙箱502可以向用户提供对第一容器的安全访问(814)。例如,安全沙箱502可以通过数据交换沙箱654或通过安全交换API网关714提供对容器566的安全访问。
模型注册表508可以基于第一哈希来为用户验证经训练的AI模型(816)。例如,例如,模型请求验证器612可以接收验证AI模型的请求。模型请求验证器612可以访问账本624(例如,通过区块链适配器614)并且定位与AI模型相关联的哈希(在一些示例中,位于容器内),针对与请求相关联的哈希检查哈希,并且将验证报告回到用户。
在一些示例中,安全沙箱502可以确定在创建第一AI模型元数据之后是否进一步训练经训练的AI模型。例如,安全沙箱可以监测AI模型以确定经训练的AI模型是否被进一步训练。安全沙箱502可以基于经训练的AI模型被进一步训练,创建第二AI模型元数据,该AI模型元数据基于与进一步训练经训练的AI模型相关联的第一事务和第二事务。模型注册表508(或备选地安全沙箱502)可以至少部分地基于经过进一步训练的AI模型通过任何已知技术来创建第二哈希。安全沙箱502可以在第二容器中打包经过进一步训练的AI模型、第二AI模型元数据和第二哈希。模型注册表508可以注册第二容器。
在一些示例中,第一AI模型元数据包括以下各项中的一项或多项AI模型属性、AI模型训练事务信息、AI模型训练数据使用信息或AI模型训练底层结构信息。在一些示例中,模型注册表508在基于区块链的注册表中注册第一容器。
在一些示例中,安全沙箱502可以创建安全环境。安全沙箱502可以从第一提供方接收机器学习算法。安全沙箱502可以将机器学习算法置于安全环境中。安全沙箱502可以从第二提供方接收数据集。安全沙箱502可以将数据集置于安全环境中。安全沙箱502可以基于机器学习算法来在安全环境中构建安全AI模型。安全沙箱502可以基于数据集来在安全环境中训练安全AI模型。安全沙箱502可以基于与安全AI模型相关联的事务来创建安全AI模型元数据,其中事务包括安全AI模型的构建和安全AI模型的训练,并且其中安全AI模型元数据指示安全AI模型的起源信息。
在一些示例中,安全沙箱502可以通过限制以下一项或多项来创建安全环境:数据的入口和入口、经训练的AI模型的入口和入口、数据提供方身份、模型提供方身份或模型改变。
图15是图示了根据本公开的示例安全沙箱技术的流程图。安全沙箱502可以从提供方接收数据集、机器学习算法和AI模型(822)。例如,安全沙箱502可以从数据提供方524A至524C接收数据集501A至501C。安全沙箱502可以从算法提供方526A至526C接收机器学习算法503A至503C。安全沙箱502可以从提供方或用户(在一些示例中,其可以被认为是提供方)接收AI模型,他们可以例如在实验流水线531或行业化流水线533中创建AI模型。
安全沙箱502可以基于数据集中的至少一个数据集来训练AI模型中的至少一个AI模型(824)。例如,安全沙箱502可以基于用户输入来在诸如数据集501B的至少一个数据集上训练AI模型。安全沙箱502可以记录与训练至少一个AI模型相关联的AI模型元数据(826)。例如,安全沙箱可以监测与AI模型相关联的事务并且记录AI模型参数752和/或模型事务数据属性760或与事务相关联的其他元数据。安全沙箱502可以存储数据集、机器学习算法、AI模型和AI模型元数据(828)。例如,当计算系统13500表示安全沙箱502时,计算系统13500可以在(多个)存储设备13508中存储数据集、机器学习算法、AI模型和AI模型元数据。
在一些示例中,安全沙箱502包括实验流水线531和行业化流水线533,并且训练和记录由实验流水线531或行业化流水线533中的至少一个流水线执行。在一些示例中,安全沙箱502可以序列化AI模型并且将每个经序列化的AI模型打包到分开的容器中。在一些示例中,每个单独容器包括经序列化的AI模型、相关AI模型元数据和相关哈希。
在一些示例中,安全沙箱502可以将AI模型元数据或单独容器中的至少一个传输到模型注册表508。在一些示例中,安全沙箱502可以从模型注册表508接收AI模型的谱系的证明。
通过提供与实验流水线和行业化流水线的以集成方式管理AI模型元数据的AI交换,AI交换可以跟踪与影响AI交换内的AI模型的每个事务相关联的AI模型元数据。可以对AI模型和AI模型元数据进行容器化以用于访问和验证目的。模型注册表可以向AI交换提供验证服务。例如,模型注册表可以证明AI模型的谱系以及与之相关联的AI模型元数据。模型注册表和AI交换(或其部分)可能由第三方运行,否则与使用AI交换的联盟没有关系,从而向联盟成员提供其他保证,即,AI交换内的数据集、机器学习算法和AI模型都是他们所声称的数据集、机器学习算法和AI模型。多个市场可以使用单个安全沙箱。同样,单个市场可以使用多个安全沙箱。此外,单个模型注册表可以为多个AI交换提供服务。
本文中所描述的技术可以在硬件、软件、固件或其任何组合中实现。被描述为模块、单元或组件的各种特征可以在集成逻辑设备中一起实现或单独实现为分立但可互操作的逻辑设备或其他硬件设备。在一些情况下,电子电路系统的各种特征可以实现为一个或多个集成电路设备,诸如集成电路芯片或芯片组。
如果在硬件中实现,则本公开可以针对诸如处理器或集成电路设备的装置,诸如集成电路芯片或芯片组。备选地或附加地,如果在软件或固件中实现,则这些技术可以至少部分通过包括指令的计算机可读数据存储介质来实现,这些指令当被执行时,使得处理器执行上文所描述的方法中的一个或多个方法。例如,计算机可读数据存储介质可以存储这样的指令以供处理器执行。
计算机可读介质可以形成计算机程序产品的一部分,该计算机程序产品可以包括封装材料。计算机可读介质可以包括计算机数据存储介质,诸如随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存、磁性或光学数据存储介质等。在一些示例中,制品可以包括一个或多个计算机可读存储介质。
在一些示例中,计算机可读存储介质可以包括非瞬态介质。术语“非瞬态”可以指示存储介质没有体现在载波或传播信号中。在某些示例中,非瞬态存储介质可以(例如,在RAM或高速缓存中)存储可以随时间改变的数据。
代码或指令可以是由处理电路系统执行的软件和/或固件,该处理电路系统包括一个或多个处理器,诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或其他等同集成或离散逻辑电路系统。因而,如本文中所使用的术语“处理器”可以是指前述结构或适合于实现本文中所描述的技术的任何其他结构中的任何结构。另外,在一些方面中,本公开中所描述的功能可以在软件模块或硬件模块内提供。

Claims (24)

1.一种系统,包括:
存储器;以及
耦合到所述存储器的处理电路,所述处理电路可操作以:
基于来自用户的输入,构建人工智能(AI)模型;
基于来自所述用户的输入,训练所述AI模型;
基于与构建并且训练经训练的AI模型相关联的第一事务,创建第一AI模型元数据;
至少部分地基于所述经训练的AI模型,计算第一哈希;
在第一容器中打包所述经训练的AI模型、所述第一AI模型元数据和所述第一哈希;
注册所述第一容器;
向所述用户提供对所述第一容器的安全访问;以及
基于所述第一哈希,针对所述用户验证所述经训练的AI模型。
2.根据权利要求1所述的系统,其中所述处理电路还可操作以:
确定在创建所述第一AI模型元数据之后,所述经训练的AI模型是否被进一步训练;
基于所述经训练的AI模型被进一步训练,创建第二AI模型元数据,所述第二AI模型元数据基于的是所述第一事务和第二事务,所述第二事务与对所述经训练的AI模型的所述进一步训练相关联;
至少部分地基于进一步训练的AI模型,创建第二哈希;以及
在第二容器中打包所述进一步训练的AI模型、所述第二AI模型元数据和所述第二哈希;以及
注册所述第二容器。
3.根据权利要求1所述的系统,其中所述第一AI模型元数据包括以下一项或多项:AI模型属性、AI模型训练事务信息、AI模型训练数据使用信息、或者AI模型训练底层结构信息。
4.根据权利要求1所述的系统,其中所述处理电路可操作以:
在基于区块链的注册表中注册所述第一容器。
5.根据权利要求1所述的系统,其中所述处理电路还可操作以:
创建安全环境;
从第一提供方接收机器学习算法;
在所述安全环境中放置所述机器学习算法;
从第二提供方接收数据集;
在所述安全环境中放置所述数据集;
基于所述机器学习算法,在所述安全环境中构建安全AI模型;
基于所述数据集,在所述安全环境中训练所述安全AI模型;以及
基于与所述安全AI模型相关联的事务,创建安全AI模型元数据,其中所述事务包括对所述安全AI模型的所述构建和对所述安全AI模型的所述训练,并且其中所述安全AI模型元数据指示所述安全AI模型的起源信息。
6.根据权利要求5所述的系统,其中所述处理电路还可操作以:
通过限制以下一项或多项来创建所述安全环境:数据的出口和入口、所述经训练的AI模型的出口和入口、数据提供方身份、模型提供方身份、或者模型改变。
7.一种系统,包括:
通信电路,所述通信电路可操作以从提供方接收数据集、机器学习算法和AI模型;
耦合到所述通信电路的安全沙箱,所述安全沙箱可操作以训练AI模型并且记录与训练AI模型相关联的AI模型元数据;以及
存储器,所述存储器可操作以存储所述数据集、所述机器学习算法、所述AI模式和所述AI模型元数据。
8.根据权利要求7所述的系统,其中所述安全沙箱包括实验流水线和行业化流水线,所述实验流水线和所述行业化流水线可操作以训练所述AI模型并且记录与训练所述AI模型相关联的所述AI模型元数据。
9.根据权利要求7所述的系统,其中所述安全沙箱还可操作以序列化所述AI模型并且将每个经序列化的AI模型打包到分开的容器中。
10.根据权利要求9所述的系统,其中每个分开的容器包括经序列化的AI模型、相关联的AI模型元数据和相关联的哈希。
11.根据权利要求10所述的系统,其中所述通信电路还可操作以将所述分开的容器或者AI模型元数据中的至少一项传送到模型注册表。
12.根据权利要求11所述的系统,其中所述通信电路还可操作以:
从所述模型注册表接收对AI模型的谱系的证明。
13.一种方法,包括:
由系统并且基于来自用户的输入,构建AI模型;
由所述系统并且基于来自所述用户的输入,训练所述AI模型;
由所述系统基于与构建并且训练经训练的AI模型相关联的第一事务,创建第一AI模型元数据;
至少部分地基于所述经训练的AI模型,由所述系统计算第一哈希;
在第一容器中打包所述经训练的AI模型、所述第一AI模型元数据和所述第一哈希;
由所述系统注册所述第一容器;
由所述系统向所述用户提供对所述第一容器的安全访问;以及
基于所述第一哈希,由所述系统针对所述用户验证所述经训练的AI模型。
14.根据权利要求13所述的方法,还包括:
在创建所述第一AI模型元数据之后,由所述系统确定所述经训练的AI模型是否被进一步训练;
由所述系统并且基于所述经训练的AI模型被进一步训练,创建第二AI模型元数据,所述第二AI模型元数据基于的是所述第一事务和第二事务,所述第二事务与对所述经训练的AI模型的所述进一步训练相关联;
至少部分地基于所述进一步训练的AI模型,由所述系统创建第二哈希;以及
由所述系统在第二容器中打包所述进一步训练的AI模型、所述第二AI模型元数据和所述第二哈希;以及
由所述系统注册所述第二容器。
15.根据权利要求13所述的方法,其中所述第一AI模型元数据包括以下一项或多项:AI模型属性、AI模型训练事务信息、AI模型训练数据使用信息、或者AI模型训练底层结构信息。
16.根据权利要求13所述的方法,其中注册所述第一容器包括:在基于区块链的注册表中注册所述第一容器。
17.根据权利要求13所述的方法,还包括:
由所述系统创建安全环境;
由所述系统从第一提供方接收机器学习算法;
由所述系统在所述安全环境中放置所述机器学习算法;
由所述系统从第二提供方接收数据集;
由所述系统在所述安全环境中放置所述数据集;
基于所述机器学习算法,由所述系统在所述安全环境中构建安全AI模型;
基于所述数据集,由所述系统在所述安全环境中训练所述安全AI模型;以及
基于与所述安全AI模型相关联的事务,由所述系统创建安全AI模型元数据,其中所述事务包括对所述安全AI模型的所述构建和对所述安全AI模型的所述训练,并且其中所述安全AI模型元数据指示所述安全AI模型的起源信息。
18.根据权利要求17所述的系统,还包括:
通过限制以下一项或多项,由所述系统创建所述安全环境:数据的出口和入口、所述经训练的AI模型的出口和入口、数据提供方身份、模型提供方身份、或者模型改变。
19.一种方法:
由系统从提供方接收数据集、机器学习算法和AI模型;
由所述系统并且基于所述数据集中的至少一个数据集来训练所述AI模型中的至少一个AI模型;
由所述系统记录与训练所述至少一个AI模型相关联的AI模型元数据;以及
由所述系统存储所述数据集、所述机器学习算法、所述AI模型和所述AI模型元数据。
20.根据权利要求19所述的方法,其中所述系统包括实验流水线和行业化流水线,并且所述训练和所述记录由所述实验流水线或所述行业化流水线中的至少一个流水线执行。
21.根据权利要求19所述的方法,还包括:
序列化所述AI模型;以及
将每个经序列化的AI模型打包到分开的容器中。
22.根据权利要求21所述的方法,其中每个分开的容器包括经序列化的AI模型、相关联的AI模型元数据和相关联的哈希。
23.根据权利要求22所述的方法,还包括:将所述分开的容器或AI模型元数据中的至少一项传送到模型注册表。
24.根据权利要求23所述的方法,还包括:从所述模型注册表接收对AI模型的谱系的证明。
CN202080045274.6A 2019-11-15 2020-11-13 安全人工智能模型训练和注册系统 Pending CN114008640A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962936023P 2019-11-15 2019-11-15
US62/936,023 2019-11-15
PCT/US2020/060479 WO2021097259A1 (en) 2019-11-15 2020-11-13 Secure artificial intelligence model training and registration system

Publications (1)

Publication Number Publication Date
CN114008640A true CN114008640A (zh) 2022-02-01

Family

ID=73740602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080045274.6A Pending CN114008640A (zh) 2019-11-15 2020-11-13 安全人工智能模型训练和注册系统

Country Status (5)

Country Link
US (1) US20210150411A1 (zh)
EP (1) EP4058911A1 (zh)
CN (1) CN114008640A (zh)
AU (1) AU2020384311B2 (zh)
WO (1) WO2021097259A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115004744A (zh) * 2022-02-17 2022-09-02 香港应用科技研究院有限公司 一种在5g通信网络的边缘站点之间建立连接的方法
CN115866141A (zh) * 2022-11-23 2023-03-28 中电智恒信息科技服务有限公司 一种人机耦合式呼叫中流量控制方法、系统及存储介质
CN116561741A (zh) * 2023-07-07 2023-08-08 粤港澳大湾区数字经济研究院(福田) 一种数据建模方法、系统及相关设备

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11593500B1 (en) 2019-11-15 2023-02-28 Equinix, Inc. Multi-zone secure artificial intelligence exchange and hub
US11526467B2 (en) * 2020-01-29 2022-12-13 International Business Machines Corporation Document storage and verification
US12019585B2 (en) 2020-01-29 2024-06-25 International Business Machines Corporation Document storage and verification
US20210255886A1 (en) * 2020-02-14 2021-08-19 SparkCognition, Inc. Distributed model execution
US11868227B2 (en) * 2020-05-22 2024-01-09 CAST AI Group, Inc. Unification of disparate cloud resources using machine learning
US20220164700A1 (en) * 2020-11-25 2022-05-26 UiPath, Inc. Robotic process automation architectures and processes for hosting, monitoring, and retraining machine learning models
US20220237477A1 (en) * 2021-01-22 2022-07-28 International Business Machines Corporation Factchecking artificial intelligence models using blockchain
US20220237505A1 (en) * 2021-01-27 2022-07-28 Salesforce.Com, Inc. Using container information to select containers for executing models
CN112947959A (zh) * 2021-01-29 2021-06-11 京东方科技集团股份有限公司 一种ai服务平台的更新方法、装置、服务器及存储介质
US11546358B1 (en) * 2021-10-01 2023-01-03 Netskope, Inc. Authorization token confidence system
WO2024006385A1 (en) * 2022-07-01 2024-01-04 Interdigital Patent Holdings, Inc. Methods, architectures, apparatuses and systems for traceability-aware artificial intelligence
US20240291842A1 (en) * 2023-02-23 2024-08-29 Reliaquest Holdings, Llc Threat mitigation system and method
EP4446918A1 (fr) * 2023-04-12 2024-10-16 Atos France Plateforme securisée de traitement de données
US12118976B1 (en) 2024-03-29 2024-10-15 Futureverse Ip Limited Computer-implemented method and computer system for configuring a pretrained text to music AI model and related methods

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10318882B2 (en) * 2014-09-11 2019-06-11 Amazon Technologies, Inc. Optimized training of linear machine learning models
US11514304B2 (en) * 2016-05-26 2022-11-29 Samsung Sds America, Inc. Continuously provisioning large-scale machine learning models
WO2019089651A1 (en) * 2017-10-31 2019-05-09 Myndshft Technologies, Inc. System and method for configuring an adaptive computing cluster
US10831519B2 (en) * 2017-11-22 2020-11-10 Amazon Technologies, Inc. Packaging and deploying algorithms for flexible machine learning

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115004744A (zh) * 2022-02-17 2022-09-02 香港应用科技研究院有限公司 一种在5g通信网络的边缘站点之间建立连接的方法
CN115004744B (zh) * 2022-02-17 2024-04-26 香港应用科技研究院有限公司 一种在5g通信网络的边缘站点之间建立连接的方法
CN115866141A (zh) * 2022-11-23 2023-03-28 中电智恒信息科技服务有限公司 一种人机耦合式呼叫中流量控制方法、系统及存储介质
CN116561741A (zh) * 2023-07-07 2023-08-08 粤港澳大湾区数字经济研究院(福田) 一种数据建模方法、系统及相关设备
CN116561741B (zh) * 2023-07-07 2024-03-26 粤港澳大湾区数字经济研究院(福田) 一种数据建模方法、系统及相关设备

Also Published As

Publication number Publication date
US20210150411A1 (en) 2021-05-20
WO2021097259A1 (en) 2021-05-20
AU2020384311B2 (en) 2023-04-06
AU2020384311A1 (en) 2022-01-20
EP4058911A1 (en) 2022-09-21

Similar Documents

Publication Publication Date Title
AU2020384311B2 (en) Secure artificial intelligence model training and registration system
Khan et al. Edge computing: A survey
US9983860B1 (en) Continuous application delivery monitoring
CN111371669B (zh) 用于基于云的服务交换的可编程网络平台
US11228641B1 (en) Inter-metro connectivity network connect
CN106464736B (zh) 用于基于云的服务交换的实时配置和管理的互连平台
US9436813B2 (en) Multi-tenancy support for a product that does not support multi-tenancy
US20220058285A1 (en) Systems and methods for computer-implemented data trusts
US10771252B1 (en) Data center security services
US10454771B2 (en) Virtual infrastructure
US11500895B2 (en) Data blending for multiple data pipelines
Shivers Toward a secure and decentralized blockchain-based ride-hailing platform for autonomous vehicles
Gupta et al. Proxy smart contracts for zero trust architecture implementation in Decentralised Oracle Networks based applications
Ebrahim et al. Blockchain as privacy and security solution for smart environments: A Survey
US12111947B2 (en) Multi-zone secure artificial intelligence exchange and hub
CN108027902B (zh) 用于互连设施的互连引擎
US10878483B1 (en) Method, system, and medium for asset-based permissions management for resellers of cloud exchange assets
US11777932B1 (en) Controlling access to internet of things devices using verifiable credentials
US10275416B1 (en) Recommendation engine for simulated colocation at interconnection facilities
US11178545B2 (en) On-demand personal hotspot
US12058206B1 (en) Performance-based recommendation services for workload orchestration
BR112016029203B1 (pt) Plataforma de rede programável para troca de serviços com base em nuvem

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