CN115952415A - 对异构数字内容项的基于图的标注 - Google Patents

对异构数字内容项的基于图的标注 Download PDF

Info

Publication number
CN115952415A
CN115952415A CN202211209381.5A CN202211209381A CN115952415A CN 115952415 A CN115952415 A CN 115952415A CN 202211209381 A CN202211209381 A CN 202211209381A CN 115952415 A CN115952415 A CN 115952415A
Authority
CN
China
Prior art keywords
data
content
graph
digital content
content item
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
CN202211209381.5A
Other languages
English (en)
Inventor
P·V·古普特
N·科塔
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN115952415A publication Critical patent/CN115952415A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • 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/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2137Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on criteria of topology preservation, e.g. multidimensional scaling or self-organising maps
    • G06F18/21375Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on criteria of topology preservation, e.g. multidimensional scaling or self-organising maps involving differential geometry, e.g. embedding of pattern manifold
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

在一些实施例中,用于对数字内容项进行基于图的标注的技术包括:针对由应用***从用户***接收到的数字内容项生成并且存储内容图。所述内容图能够包括与具有标签的数字内容项相对应的节点、与不具有标签的数字内容项相对应的无标注节点、以及指示在内容项之间的关系的边。能够从所述内容图取回在无标注节点与相邻节点之间的边的边数据。响应于包括所取回的边数据和与所述无标注节点相关联的嵌入数据的一组输入,针对所述内容图的已标注节点和边被训练的机器学习模型能够向所述无标注节点分配标签。

Description

对异构数字内容项的基于图的标注
技术领域
本公开总体涉及使用机器学习模型对数字内容项的标注,并且更具体而言涉及使用机器学习模型对异构(heterogenous)数字内容项的基于图的标注,以检测垃圾信息(spam)和/或内容审核策略触发器。
背景技术
基于网络的应用***能够向网络上的大量用户分发数字内容项。通常,由应用***分发的所述数字内容项是由所述***的用户生成的。应用***能够使用算法来确定其向所述应用***的用户分发数字内容项的程度或者限制向所述应用***的用户分发数字内容项。
附图说明
根据下文给出的详细描述以及根据本公开的各种实施例的附图,本公开将得到更加充分地理解。然而,不应当将附图理解为将本公开限于具体的实施例,而是其仅仅用于解释和理解目的。
图1图示了根据本公开的一些实施例的包括基于图的标注***的示例性计算***。
图2A是根据本公开的一些实施例的包括基于图的标注***的应用***的示例。
图2B图示了根据本公开的一些实施例的与基于图的标注***通信的数字内容项处理器的示例。
图3是根据本公开的一些实施例的用于标注数字内容项的示例性方法的流程图。
图4A是根据本公开的一些实施例的用于标注数字内容项的机器学习模型的示例。
图4B1、图4B2和图4B3图示了根据本公开的一些实施例的用于标注数字内容项的机器学习模型架构的输入。
图4C是根据本公开的一些实施例的用于生成针对数字内容项的嵌入的机器学习模型架构的示例。
图4D是根据本公开的一些实施例的用于生成针对数字内容项的嵌入的机器学习模型架构的另一示例。
图5是根据本公开的一些实施例的用于控制对数字内容项的分发的示例性方法的流程图。
图6是本公开的实施例能够在其中操作的示例性计算机***的框图。
具体实施方式
并非由应用***接收到的每个数字内容项都将被或者应当被分发给所述***的所有用户。能够由应用***根据各种标准(例如,规则、策略和用户偏好)以算法控制对数字内容项的分发。在一些应用***中,用户的生成可分发数字内容的能力基本上不受约束。智能手机使用的不断持续的全球性扩张已经带来了许多不同语言的用户生成内容的产生的***性增长。
高速互联网技术的可用性已经促进了极大量的包括数字音乐、视频、实况流媒体视频和实况播客的多媒体内容的创建和基于网络的分发。一篇报导总结道:自2021年起,全世界有42亿活跃社交媒体用户——超过了世界人口的一半。另一篇报导总结道:包括消息分享、语音和视频通话、多媒体下载、照片上载、工作应用和数字支付交易的在线媒体使用自2020年8月起每互联网分钟有高达近五千万条数字内容项。
用户生成的数字内容项能够被视为非结构化数据,因为这样的数字内容项往往缺少元数据,诸如语义标签,否则应用***可以使用所述元数据对所述数字内容项的在线分发进行算法控制。具体地,用户往往希望其内容项在网络上“像病毒一样扩散”,并且这样不将其内容标注为垃圾信息或者不想要内容。实际上,一些用户可能尝试对其内容项的真实本质进行伪装,以避免被垃圾信息过滤器和内容审核策略检测到。当元数据针对数字内容项不可用时,所述应用***需要分析所述数字内容项的可用特征,并且基于所述可用特征来创建或分配元数据。
使用例如规则引擎,应用***能够将内容项标签与内容分发策略(诸如垃圾信息策略和内容审核策略)进行比较。在一些上下文中,诸如内容分发策略、内容审核策略、垃圾信息过滤器和垃圾信息策略的术语可以互换地使用。基于这些比较的结果,应用***能够以不同方式约束对被标注为不同类型的垃圾信息(例如,煽动信息、金融诈骗、成人内容、仇恨论调、工作不宜等)的数字内容项的分发。另一方面,应用***也能够以不同方式促进对被标注为例如高质量、教育、个人健康等的数字内容项的分发。
如在本文中所使用的,垃圾信息能够指代任意类别的不想要的数字内容,包括但不限于触发内容审核策略的各种类别的数字内容项。垃圾信息的类别能够包括负面标签,诸如煽动信息、金融诈骗、成人内容、仇恨言论和工作不宜。垃圾信息类别也能够包括正面标签,诸如高质量、教育、健康、个人、隐私等。适用的垃圾信息类别会变化,并且取决于特定应用和/或手头的使用情况。
许多应用***处理很宽范围的各种各样的内容类型、模态、语言和内容分发策略。术语“内容类型”和“模态”在本文中被用于指代内容项的不同属性,***能够采用其对数字内容项进行归类或分类。但是在一些使用情况中,术语“模态”和“内容类型”可以互换地使用,提供所述定义是为了便于相对于本公开进行论述。
如在本文中所使用的,内容类型能够指代数字内容项借以存在于应用***中的手段。例如,内容类型能够对应于由应用***的用户所采取的、用于将数字内容项公布或者以其他方式引入到所述应用***所采取的动作。内容类型的示例包括帖子、评论、回复和文章。数字内容项的内容类型能够是与所述应用***中的另一数字内容项的依赖性的信号。例如,具有“评论”类型的内容项与至少一个其他内容项具有依赖关系。
依赖关系的示例为时间依赖性。时间依赖性能够至少部分地由与内容项相关联的时间戳来确定。时间戳是***生成的数字数据,其根据***时钟指示特定日期和时间。例如,时间戳能够指示文章被上载至应用***的日期和时间或者帖子、评论或回复在所述应用***中被创建的日期和时间。时间戳能够指示时间依赖性,因为对文章的评论将具有在文章的时间戳之后(更晚)的时间戳,并且对评论的回复将具有在评论的时间戳之后(更晚)的时间戳。内容项能够与多个不同的其他内容项具有依赖关系。例如,对文章的评论也能够是对同一文章的另一评论的回复。
另外地或替代地,不同的数字内容项能够与应用***中的其他数字内容项具有不同类型的非时间关系,包括各种类型的语义关系和基于社交图的关系。语义关系的示例包括已经被分配了相同语义标签的内容项、已经被确定为与同一主题相关的内容项以及具有相同模态的内容项。
基于社交图的关系的示例包括已经由所述应用***的相同用户发布或分享的内容项或者通过已经发布或者分享所述内容项的特定用户的n度连接发生了交互的内容项,其中,n是正整数。关于应用***中的数字内容项之间的关系的信息能够被存储在数据库的字段或列中,并且/或者能够通过与数字内容项数据记录相关联的键来指示。在图数据库中,能够将数字内容项表示为节点,并且能够将内容项间关系存储为边。
如在本文中所使用的,模态能够指代内容项的特定数字形式。模态的示例包括文本、长文本、短文本、图像、原图、视频(所记录的或者实况流传输的)、音频(所记录的或者实况流传输的)、多媒体、井字标签、表情符号、动画gif和OCR(光学字符识别)文本。也能够将写或说内容项的语言存储为模态。因此,数字内容项能够具有超过一种模态。例如,帖子能够包括短文本、图像、从图像提取的OCR文本、与短文本相关联的语言以及与OCR文本相关联的语言。
关于数字内容项的内容类型和模态信息能够被存储为与内容项相关联的属性数据。例如,内容类型和模态能够被存储在数据库的一个或多个字段或列中。在图数据库中,数字内容项能够被表示为节点,并且内容类型和模态信息能够被存储在所述节点处。
现有***已经使用了二元分类器以有限成功生成针对数字内容项的语义标签,诸如垃圾信息标签。由二元分类器预测的语义标签能够被用于在狭窄地定义问题域的情况下预测数字内容项触发内容分发策略的可能性。例如,如果已经针对利用英语写的煽动性文章对二元分类器进行了训练,那么所述分类器或许能够预测利用英语写的特定文章将被标注为具有煽动性的可能性,但是如果所述分类器已经针对利用意大利语写的金融诈骗文章进行了训练,那么则不能做出所述预测。
更一般而言,二元分类器能够预测以特定语言Y(例如,英语、法语、普通话、德语)的具有特定内容类型和/或模态X(例如,文本评论、照片发布、文本文章、图像评论等)的输入将被分配触发特定策略Z的语义标签的可能性。例如,语义标签能够触发内容分发策略,其使得所述应用***相较于未按照相同方式进行标注的其他内容项按照不同方式分发具有所述语义标签的内容项,不管是促进还是限制发布。
由于二元分类器的性质的原因,针对应用***处理所述应用***将见到的内容项类型、模态、语言和策略的所有可能组合所需的二元分类器的总数会非常快速地按比例增大,从而需要训练并且保持多达X*Y*Z个二元分类器。
保持这么许多的分类器涉及大量的人工时间以用于开发和维护。二元分类器需要大量的人工标注的训练示例以便生成可靠的预测。因此,需要大量的人工时间以用于数据标注和标签审查。支持多种不同语言的需求额外地要求精通这那语言的人力资源。
另外,由应用***用于控制或审核对数字内容项的分发的审查标准(例如,策略)不是静态的。就二元分类器而言,频繁的策略变化使得历史上标注的数据集不适用于正在进行的训练迭代,导致训练数据的短缺,此时需要针对较新的策略或者针对策略改变而对所述二元分类器进行训练。
结合对数字内容项的分发提供异步评论/对话能力的应用***能够使得用户能够添加评论、审查以及对帖子的较早评论进行回复。然而,已知的二元分类器对个体内容项进行隔绝分类;亦即,由相同二元分类器或者由不同二元分类器对文章和关于文章的评论进行相互独立地分类。因此,二元分类器会易于对评论以及对其他内容项具有依赖性的其他内容项做出错误分类,因为二元分类器缺少对由文章帖子所提供的上下文和/或在线程中的其他评论的访问。
例如,在煽动性文本上被训练的二元分类器可能将诸如“让我们来一次公路旅行”的评论不准确地标注为“清楚的”,即使所述二元分类器已经将原始帖子“你觉得让司机碾压暴徒怎么样?”标注为具有煽动性。之所以会发生这种错误是因为:当隔绝审查时,“让我们来一次公路旅行”不包含任何煽动性词或短语。作为另一示例,多模态内容项的不同内容能够被经训练用于处理不同个体模态的不同二元分类器分类,产生欠佳的、不确定的或者不准确的标签。
相应地,当被用于垃圾信息检测和/或内容审核时,二元分类器可能遭受不良召回,特别是在异步评论/对话情境下以及多模态、多语言和多任务情形下。
作为现有***以及其他正在进行的开发当中的上文所描述的技术挑战和缺陷的结果,向大量用户分发大量用户生成的内容的应用***需要一种可缩放的方式来可靠地生成元数据,所述应用***能够使用所述元数据来确定用户生成的数字内容项是否触发垃圾信息过滤器、内容审核策略或者其他适用的内容分发标准。
随着网络上的用户生成内容的量持续增长并且扩展为不同类型的数字媒体和不同语言,用于在网络上分发数字内容项的标准也持续变化和演进。应用***需要能适用于随着时间变化的新类型内容项、新内容模态和内容分发标准的数字内容项标注技术。
本公开的各方面提供了一种解决上述以及其他缺陷的数字内容标注***。例如,本公开的各方面使用机器学习模型将数字内容项和数字内容项之间的关系建模成多内容类型、多模态、多语言、多任务内容图,由此使得许多不同类型的内容类型、使用情况和内容项间关系能够被反映在所述内容图、在所述内容图上被训练的标注模型和由所述标注模型产生的内容标签中。
如在本文中所用的多内容类型指示:所公开的数字内容标注***的模型架构能够包括单个集成的基于机器学习的标注模型,该模型能够采用具有许多不同内容类型的数字内容项作为输入并且能够向具有多种不同内容类型的内容项分配标签。这与现有***形成了对照,现有***需要针对不同内容类型被单独训练的多个不同二元分类器,而不是能够处理内容类型的许多不同组合的单个集成模型。
多模态指示:所公开的数字内容标注***的模型架构能够包括能够向具有多种不同模态的内容项分配标签的单个集成标注模型。这与现有***形成了对照,现有***需要针对不同模态被单独训练的不同二元分类器。
多语言指示:所公开的数字内容标注***的机器学习模型架构能够包括能够向具有以多种不同语言写出的文本的内容项分配标签的单个集成标注模型。这与现有***形成了对照,现有***需要针对不同语言被单独训练的不同二元分类器。
多任务指示:所公开的数字内容标注***的机器学习模型架构能够包括能够针对不同的垃圾信息检测和/或内容审核任务向内容项分配标签的单个标注模型。如在本文中所用的任务能够指代对内容项进行策略的***控制应用。任务的示例是***过程,所述***过程确定内容项是否触发特定策略,诸如垃圾信息策略或者内容审核策略,即使所述策略初始是针对不同的内容类型、模态、语言或者内容类型、模态和/或语言的组合而实施的。这与现有***形成了对照,现有***需要针对不同垃圾信息检测和内容审核任务被单独训练的不同二元分类器。
从广义上来讲,本公开的各方面包括能够跨内容类型、模态、语言以及任务/策略对数字内容项进行标注的基于图的标注模型。由此,本公开的各方面提供了一种基于图的模型架构,所述基于图的模型架构能够针对具有多种不同类型、模态和语言的无标注内容项生成多种不同类型的标签预测。基于图的模型的实施例对已经从内容图提取的输入做出响应,在所述内容图中,所述内容图的节点对应于应用***中的数字内容项。这些输入能够包括:节点属性数据,其反映对应的数字内容项的特征,诸如模态、内容类型、语言和预先存在的语义标签(如果有的话);以及边数据,其反映由所述内容图中的节点表示的数字内容项之间的关系。
所公开的基于图的模型架构的各方面能够跨边相关异构内容类型、模态和语言来传播标签预测,由此避免针对内容类型、模态、语言和任务/策略的每种组合需要单独的分类器。另外,所公开的基于图的方案的各方面需要少得多的标签以用于分类器训练,这减少了训练和维护的负担。此外,所公开的技术的各方面使得数字内容项标注***能够改善召回并且适于新内容类型、模态、语言和策略,并且处理策略变化,即使仅有少量的训练样本可用。
图1图示了包括基于图的标注***150的示例性计算***100。在图1的实施例中,计算***100包括用户***110、网络120、应用***130、数字存储***140以及基于图的标注***150。
用户***110包括至少一个计算设备,诸如个人计算设备、服务器、移动计算设备或者智能电器。用户***110包括被安装在计算设备上的或者计算设备能通过网络访问的至少一个软件应用,包括用户接口112。例如,用户接口112能够是或者包括应用***130的前端部分,其可以被实施为计算设备上的原生应用或者在web浏览器中启动的web应用。
用户接口112是上文所描述的任何类型的用户接口。用户接口112能够被用于输入、上载或者共享数字内容项,并且/或者查看或者以其他方式感知由应用***130分发的数字内容项。例如,用户接口112能够包括图形用户界面、触觉接口和/或对话式语音/交谈接口,其包括用于查看和操纵数字内容项的一种或多种机制。
应用***130是包括或者利用由基于图的标注***150提供的功能的任意类型的应用软件***。应用***130的示例包括但不限于:连接网络软件(诸如专业和/或一般性社交媒体平台)以及基于或不基于连接网络软件的***,诸如数字内容分发服务、通用搜索引擎、工作搜索软件、招聘搜索软件、销售辅助软件、广告软件、学习和教育软件或者任何上述内容的任意组合。在图2A中示出了应用***130的示例性实施例,如下文所描述的。
数据存储***140包括存储数字内容项、由应用***130接收、使用、操纵和产生的数据以及由基于图的标注***150接收、使用、操纵和产生的数据的数据存储库和/或数据服务。数据存储***140能够包括分布式数据服务。如在本文中所使用的,数据服务可以指代机器的物理地理群组、机器的逻辑群组或者单个机器。例如,数据服务可以是数据中心、群集、一组群集或者机器。
数据存储***140的数据存储库能够包括一个或多个离线存储库以及/或者一个或多个近线存储库。可以使用数据库实施数据存储库,诸如键-值存储库、关系数据库和/或图数据库。近线数据存储库能够存储实时事件流,诸如KAFKA事件流。能够使用查询技术(例如,SQL或NoSQLC)向数据存储库写入数据以及从其读取数据。
图数据库使用包括若干互连的图基元的图数据结构来组织数据。图基元的示例包括节点、边和谓词,其中,节点存储数据,边建立在两个节点之间的关系,并且谓词是被分配给边的语义标签,其定义或描述存在于由所述边连接的各节点之间的关系的类型。
图数据库的节点能够对应于表格、表格的子集或者非图数据库的不同表格的行和列的集合。图基元的另一示例是图或子图的特定部分,诸如特定的一对节点加上连接所述节点的边。能够使用图查询语言来构建并且执行对图数据库的查询,并且建立、更新以及操纵图数据库的组件。就图数据库而言,查询结果包括被存储在图数据库中的图的子集。例如,能够使用图节点、边和边标签(也被称为谓词)将数据记录从非图格式转化为图。
被存储在数据存储***140的非图数据库部分中的数据能够被转换或转化成能够被存储在图数据库中并且使用各种类型的图查询(诸如边查询和路径查询)进行查询的图格式。边查询的示例是用于取回节点的第一度连接的数量的查询。路径查询的示例是以下查询:用于确定两个节点之间存在多少条边,例如用于确定由多少连接度将两个节点隔开。能够使用图查询语言(诸如datalog)来实施图查询。
为了将按照非图数据结构存储的数据转换成图格式,图数据库采用一组图基元。图基元的示例包括基于图中的边的规则(其表达非图数据库模式(schemas))以及指定图中的对应于非图数据结构的节点、边和谓词之间的关系的复合键。例如,所述图基元能够包括表达非图数据结构中的关系模式的规则。以基于图的实体对实体关系a对b和b对c为基础的规则可以在非图模式中将a、b和c联系起来。作为另一示例,能够使用复合键来表达非图数据结构的表格与属性之间的关系,其中,属性对应于图模式中的谓词,并且表格对应于图模式中的节点。
数据存储***140能够驻留在至少一个永久性和/或易失性存储设备上,所述存储设备能够与计算***100的至少一个其他设备驻留在同一本地网络内,并且/或者所述存储设备能够驻留在相对于计算***100的至少一个其他设备处于远程位置的网络中。因此,尽管被描绘为被包含在计算***100中,但是数据存储***140的各部分能够是计算***100的部分,或者能够被计算***100通过网络(诸如网络120)访问。
基于图的标注***150能够针对包括但不限于用户生成的数字内容项的非结构化数据而生成语义标签,包括垃圾信息标签。在一些实施例中,应用***130包括基于图的标注***150的至少一部分。如在图6中所示的,基于图的标注***150能够被实施为被存储在存储器中的指令,并且处理设备602能够被配置为执行被存储在存储器中的所述指令,以执行在本文中所描述的操作。
能够参考针对垃圾信息检测和/或内容审核策略违反而对用户生成的数字内容项进行标注的示例性使用情况对所公开的技术进行描述。例如,所公开的技术能够被用于对所输入、上载、分享以及以其他方式分发在社交图应用(诸如专业社交网络或者其他社交媒体)上的数字内容项自动地施加垃圾信息标签。
所公开的技术的各方面并不限于社交图应用,而是能够被用于更一般性地标注非结构化数字内容项。所公开的技术能够被许多不同类型的基于网络的应用所使用,在这些应用中,希望监测和/或审核非结构化的和/或无标注的数字内容项的扩散。例如,下文将参考图2A和图2B提供对基于图的标注***150的额外描述。
用户***110、应用***130、数据存储***140和基于图的标注***150中的任意一者包括被体现为被存储在计算机存储器中的计算机编程代码的接口,其当被运行时使得计算设备使用通信耦合机制101、103、105、107实现与用户***110、应用***130、数据存储***140和基于图的标注***150中的任意另一者之间的双向通信。通信耦合机制的示例包括网络接口、进程间通信(IPC)接口和应用接口(API)。
应用***130的客户端部分能够在用户***110中操作,例如,作为软件应用的图形用户界面中的插件或桌面小程序或者作为执行用户接口112的web浏览器。在实施例中,web浏览器能够响应于通过由web应用提供的用户接口接收到并且通过web浏览器显示的用户输入通过网络(例如,因特网)来传输HTTP请求。运行应用***130的服务器和/或应用***130的服务器部分能够接收所述输入,使用所述输入执行至少一项操作,并且使用HTTP响应返回输出,web浏览器接收并且处理所述输出。
能够被用于在用户***110与用户***110、应用***130、数据存储***140和基于图的标注***150中的任意一者之间实施对数据和指令的通信的其他技术包括:应用编程接口(API),诸如REST(代表性状态转移)API和SOAP(简单对象访问协议);脚本语言,诸如JavaScript;标记语言,诸如XML(可扩展标记语言)和JSON(JavaScript对象标记);以及AJAX(异步JavaScript和XML)。
用户***110、应用***130、数据存储***140和基于图的标注***150中的每者是使用借助于通信耦合机制101、103、105、107被通信耦合至电子通信网络120的至少一个计算设备来实施的。用户***110、应用***130、数据存储***140和基于图的标注***150中的任意一者能够通过网络120双向通信耦合。用户***110以及一个或多个不同用户***(未示出)能够双向通信耦合至应用***130。
用户***110的典型用户能够是应用***130和/或基于图的标注***150的管理员或者最终用户。管理员或最终用户能够是人或者被设计为模仿对应用***130的人类使用的计算机程序(诸如网络机器人)。用户***110被配置为使用通信耦合机制101通过网络120与应用***130、数据存储***140和基于图的标注***150中的任意一者双向通信。用户***110具有向网络120和/或应用***130识别用户***110的至少一个地址;例如,IP(因特网协议)地址、设备标识符、MAC(媒体接入控制)地址、会话标识符、用户账户标识符或者前述内容中的任意内容的任意组合。
用户***110、应用***130、数据存储***140和基于图的标注***150的特征和功能是使用计算机软件、硬件或者软件与硬件来实施的,并且能够包括在附图中示意性地表示的自动功能、数据结构和数字数据的组合。为了便于论述,用户***110、应用***130、数据存储***140和基于图的标注***150在图1中被示为单独元件,但是这种例示并非意在暗示要求这些元件是分开的。能够在任意数量的物理***(包括单个物理计算机***)上对所例示的***、服务和数据存储库(或者其功能)进行划分,并且其能够以任意适当的方式相互通信。
网络120能够是基于提供计算***100的各种组件之间的数据、信号和/或指令的交换的任何媒介或机制来实施的。例如,数据和指令能够被表示为信号,其中,信号包括一系列位,并且位值对应于能够穿越网络120并且被网络120上的设备接收并且处理的指定的电荷水平。网络120的示例包括但不限于:局域网(LAN)、广域网(WAN)、以太网网络、因特网、至少一条陆地、卫星或无线链路或者任意数量的不同网络和/或通信链路的组合。
图2A是根据本公开的一些实施例的包括基于图的标注***150的应用***130的示例性实施例。在图2A中,应用***130包括功能202、数字内容项处理器204、实体数据206、活动数据208、内容项数据210、社交图212以及基于图的标注***150。
功能202一般包括面向用户的功能和后端功能,所述功能实现在应用***130的用户与应用***130之间的数据操纵和通信。应用***130中的实体是与物理用户***110的地址相链接的逻辑构造。用户***110能够与应用***130中的超过一个实体相关联。例如,物理用户***110能够与多个不同的逻辑账户标识符相关联。实体类型的示例包括用户、公司、组织、工作和内容项。
能够参考与用户***110相关联的实体来描述在应用***130中由用户***110执行的数据操纵和通信。应用***130的面向用户的功能包括通过用户接口被暴露给应用***130的用户的功能。面向用户的功能包括源实体功能214和目的地实体功能216。源实体能够指代生成内容项或者以其他方式向应用***130提供内容项的实体。因此,源实体功能214能够包括例如用户接口特征和功能,其使得用户能够查看、创建、上载、分享、转发、回复以及保存应用***130中的数字内容项,能够查看、添加、编辑和删除评论以及对关于数字内容项的评论做出回复,并且/或者能够查看、发送和接收包括数字内容项的消息。
数字内容项的示例包括帖子、评论和对评论的回复。帖子的示例包括文章和/或到文章的链接,诸如URL(统一资源定位符)。帖子能够包括文本和/或多媒体内容项,诸如图像、视频和音频,而不管是先前记录的还是实况流传输的。评论能够指代与帖子相链接的任何类型的内容项,诸如评论和对评论的回复。评论能够包括文本和多媒体内容项,诸如图像、视频和音频,而不管是先前记录的还是实况流传输的。文本能够具有任意长度,并且能够包括元数据,诸如井字标签和URL。
目的地实体能够指代作为初始由应用***130中的源实体生成的数字内容项的接收者的实体。因此,目的地实体功能216能够包括例如用户接口特征和功能,其使得用户能够查看和操纵由目的地实体在搜索结果、馈送(feed)、推荐、通知或者由应用***130生成的消息中接收到的数字内容项。目的地实体也能够是源实体。例如,目的地实体能够在查看目的地实体的馈送中的数字内容项之后与其他实体分享该数字内容项。源实体也能够是目的地实体。例如,源实体能够接收(例如,通过点击推送通知)由另一实体所做的关于由源实体初始发布的帖子的评论。
在应用实体130中,源实体功能214和目的地实体功能216通过因特网通信技术来实现。例如,实现对应用***130中的数字内容项的分享的源实体功能214包括在分享所述数字内容项的用户***与应用***130之间发送和接收网络消息。实现对应用***130中的数字内容项的搜索、查看和操纵的目的地实体功能216包括在查看和/或操纵该数字内容项的用户***与应用***130之间发送和接收网络消息。在一些上下文中,网络消息能够指代请求。同样地,源实体功能214和目的地实体功能216能够是异步的。
功能202的后端部分包括支持前端功能的计算机操作,诸如数据操纵和通信。后端功能能够包括:从数据存储库读取诸如实体数据206、活动数据208、内容项数据210和/或社交图212的数据,对数据执行计算和/或变换,将数据以及/或者计算和/或变换的结果写入到数据存储库。
后端功能能够包括对算法的计算机执行,所述算法确定数字内容项能够在应用***130内扩散的程度。后端功能能够包括对照一个或多个数据存储库执行查询。例如,后端功能能够包括执行用于确定社交图212中的实体的第n度连接(其中,n是正整数)的查询以及对一个或多个数据存储库所做的用于取回搜索结果的查询。后端功能能够包括执行算法,以选择和取回用于填充搜索结果、馈送、通知、消息、推送通知或推荐的数字内容项。后端功能能够包括执行对照图数据库的边查询和/或路径查询。后端功能能够包括将被存储在非图数据结构中的数据变换或转化为图。
作为后端功能的部分执行的算法能够包括例如规则引擎、试探法和/或已经使用一个或多个训练数据集被训练的机器学习算法。后端功能能够由服务器计算机或者服务器的网络执行,并且/或者后端功能的部分能够在客户端设备(例如,用户***110)上实施。前端功能能够由客户端设备(例如,用户***110)执行,并且/或者前端功能的各部分能够在服务器计算机或者服务器的网络上实施。
实体数据206是数据存储***140的存储实体数据记录的数据存储库。实体数据记录包括实体标识符。实体数据记录能够包括或者涉及实体类型数据和/或实体概况数据。实体类型数据指示与实体标识符相关联的实体类型,例如,个人、组织、工作或内容。实体概况数据包括与实体标识符相关联的属性数据,例如,姓名、地点、名称。实体数据206能够被存储在非图数据库中,并且也能够被转换为被存储在图数据库中的图。例如,实体数据的部分(诸如属性数据)能够被存储在非图数据库的表格中以及图数据库的节点中。
活动数据208是数据存储***140的存储活动数据记录的数据存储库。活动数据记录包括活动标识符、实体标识符和数据/时间戳。活动数据记录能够包括或者涉及活动类型数据。活动类型数据指示与实体标识符和前端功能相关联的活动类型。活动类型数据的示例包括查看、点击、评论、分享、点赞、关注。活动数据208能够是作为实时或者近实时数据流捕获的并且被存储在例如数据存储***140的近线部分中。
内容项数据210是数据存储***140的存储数字内容项数据记录的数据存储库。数字内容项数据记录能够包括内容项标识符、实体标识符和数据/时间戳。内容项数据记录能够包括或者涉及内容类型数据。内容类型数据指示与内容项标识符相关联的内容类型和/或模态。内容类型和/或模态数据的示例包括文本、视频、图像、音频、流、文章、评论、元数据。内容项数据210能够包括或涉及应用***130中的另一数字内容项的内容项标识符。内容项数据210能够包括由基于图的标注***150生成的标签数据。
内容项数据210能够被存储在数据存储***140的非图数据库部分中。使用图基元,内容项数据210的部分能够被转换成图并且被存储在数据存储***140的图数据库部分中。例如,内容项数据的部分,诸如包括内容类型数据、模态数据、语言数据、标签数据和内容项间关系数据的属性数据能够被存储在非图数据库的表格中和/或图数据库的节点和边中。由基于图的标注***150生成的内容图能够被存储在内容项数据210的图数据库部分中。
社交图212是数据存储***140的存储实体以及实体间关系的基于图的表示的数据存储库。在社交图212中,实体被表示为节点,并且实体间关系被表示为边。节点包含节点标识符和节点类型数据。节点类型数据能够对应于实体类型。边包含针对由所述边连接的两个节点的节点标识符数据以及边类型。边类型对应于不同类型的实体间关系。实体间关系的示例包括联系、点赞、关注、分享、评论。边能够连接两个不同节点类型。例如,边能够表示个人实体与数字内容项之间的、或者个人实体与组织之间的、或者组织与工作之间的关系。社交图212能够包括由基于图的标注***150生成的内容图。
实体数据206、活动数据208、内容项数据210和社交图B12每者分别经由通信耦合220、222、224、226、228与功能202双向数字通信。
数字内容项处理器204经由通信耦合218与功能202双向数字通信。功能202能够通过通信耦合218向数字内容项处理器204发出调用或者发送数据和/或指令。数字内容项处理器204能够经由通信耦合218向功能202发出调用或者发送数据和/或指令。
例如,响应于功能202接收或者处理应用***130中由数字内容项标识符识别的数字内容项,功能202能够向数字内容项处理器204发出包含作为变量或参数的数字内容项标识符的调用。响应于来自功能202的调用,数字内容项处理器204能够向功能202返回针对对应于在所述调用中所包含的数字内容项标识符的数字内容项的语义标签,诸如垃圾信息标签。数字内容项处理器204能够包括下文所描述的如在图2B中所示的其他功能。
数字内容项处理器204经由通信耦合228与基于图的标注***150进行双向数字通信。数字内容项处理器204能够通过通信耦合228向基于图的标注***150发出调用或者发送数据和/或指令。基于图的标注***150能够通过通信耦合228向数字内容项处理器204发出调用或者发送数据和/或指令。例如,为了对来自功能202的调用做出响应,数字内容项处理器204能够通过通信耦合228向基于图的标注***150发出包含作为变量或参数的数字内容标识符的调用。响应于来自数字内容项处理器204的调用,基于图的标注***150能够向数字内容项处理器204返回针对与在所述调用中所包含的数字内容项标识符相对应的数字内容项的语义标签。基于图的标注***150能够包括下文所描述的如在图2B中所示的功能。
图2B图示了根据本公开的一些实施例的与基于图的标注***150通信的数字内容项处理器204的实施例的操作的示例性流程244。流程244的部分能够是作为在线操作来实施的,而流程244的其他部分则能够是作为离线或近线操作来实施的。例如,由数字内容项处理器204和标注器252执行的操作能够是作为在线操作来实施的,而由成图器254、嵌入器256和/或模型训练器258执行的操作则能够是作为离线操作来实施的。
在图2B的示例中,数字内容项处理器204经由通信耦合230接收来自用户***110(用户1)的传入数字通信,和/或经由通信耦合232接收来自功能202的传入数字通信。响应于传入数字通信,数字内容项处理器204经由通信耦合242向零个或更多个用户***110(用户0……N,其中,N是正整数)和/或功能202发送传出数字通信。
数字内容项处理器204能够从用户***110(用户1)接收到的数字通信的示例为包含数字内容项、数字内容项标识符、数字内容项标识符和实体标识符或者包括数字内容项标识符和/或实体标识符的命令的信号。数字内容项处理器204能够从用户***110(用户1)接收到的命令的示例包括上载、发布、评论和分享。
数字内容项处理器204能够从功能202接收到的数字通信的示例为数字内容项、数字内容项标识符、数字内容项标识符和实体标识符或者包括数字内容项标识符和/或实体标识符的调用。能够向数字内容项处理器204发出调用的功能202的示例包括馈送服务、搜索引擎和推荐器***。
例如,在馈送服务将数字内容项包含在用户的馈送中之前,馈送服务能够将所述数字内容项提交给数字内容项处理器204。例如,馈送服务能够使用由基于图的标注***150产生的标签来确定是否将所述数字内容项包含在用户的馈送中。
在搜索引擎将数字内容项包含到用户的搜索结果中之前,所述搜索引擎能够将所述数字内容项提交给数字内容项处理器204。例如,搜索引擎能够使用由基于图的标注***150产生的标签来确定是否将所述数字内容项包含在搜索结果中。
在推荐器***将包括数字内容项的推荐通知发送给用户之前,所述推荐器***能够将所述数字内容项提交给数字内容项处理器204。例如,搜索引擎能够使用由基于图的标注***150产生的标签来确定是否将所述数字内容项包含在推荐通知中。
数字内容项处理器204能够经由通信耦合242发送给零个或更多个用户***110的传出数字通信的示例包括含有或涉及将要被包含在一个或多个用户***110的馈送、搜索结果或者推荐通知中的数字内容项的网络消息。
在图2B的示例中,数字内容项处理器204包括评估器234和分发器240。评估器234检查从用户***110和/或功能202接收到的通信,以获得语义标签和/或能够指示在所述通信中识别的数字内容项已经包含能够用于控制应用***130中的所述数字内容项的分发的语义标签的其他元数据。
如果评估器234确定在所述通信中识别的数字内容项已经包含能够用于控制应用***130中的所述数字内容项的分发的语义标签,并且标签预测模型260处在预测模式中,那么评估器234经由通信耦合238将所述通信转发给分发器240。如果评估器234确定在所述通信中识别的数字内容项已经包含能够用于控制应用***130中的所述数字内容项的分发的语义标签,并且标签预测模型260处在训练模式当中,那么评估器234经由双向通信耦合236将所述通信转发给基于图的标注***150。为了确定标签预测模型260处在训练模式还是预测模式中,评估器234能够检查由例如模型训练器258为标签预测模型260设置的标志的值。
如果评估器234确定在所述通信中识别的数字内容项不包含能够被用于控制应用***130中的所述数字内容项的分发的语义标签,那么评估器234经由双向通信耦合236将所述通信转发给基于图的标注***150。
响应于从评估器234接收到的通信,基于图的标注***150生成能够被用于控制应用***130中的在所述通信中识别的数字内容项的分发的语义标签。基于图的标注***150将所生成的标签返回到评估器234。响应于从基于图的标注***150接收到标签,评估器234将所接收到的标签转发给分发器240。
响应于从评估器234接收到标签,分发器240将所述标签与所存储的策略或者一组策略(诸如一组垃圾信息策略和/或内容审核策略)进行比较。为此,分发器240能够确定所述标签是否匹配与预定策略或者所述一组策略中的任意策略相关联的标签。如果所述标签与策略相匹配,那么分发器240遍历匹配所述标签的策略,以确定由具有所述标签的策略所关联的内容分发指令。如果所述标签不匹配策略,那么分发器240经由通信耦合242将所述数字内容项分发给应用***130内的多达N个用户***,其中,N是正整数。
如果所述标签匹配策略,则分发器240执行通过所匹配的策略与所述标签关联起来的内容分发指令。由此,分发器240根据内容分发指令将与所述标签相关联的数字内容项分发给应用***130内的零个或者少于N个用户***110(用户0……N)。
如果所述内容分发指令指示:基于所述标签,所述数字内容项的分发不受限制,那么分发器240能够将所述数字内容项分发给大于零个并且多达N个的用户***。如果内容分发指令指示所述数字内容项的分发是受限的,那么分发器240能够将所述数字内容项分发给零个或者少于N个的用户***。
策略能够是相对于社交图212定义的。例如,策略能够包含内容分发指令,所述指令使包含“个人”标签的数字内容项的分发限于与所述数字内容项相关联的用户的第一度连接或者使包含“政治”标签的数字内容项的分发仅限于关注生成政治帖子的实体的用户。作为另一示例,策略能够包含内容分发指令,所述指令将被标注为“工作不宜”或“诈骗”的数字内容项路由至另一目的地,诸如已经被指定为蜜罐、垃圾信息陷阱或隔离区的用户***110。
策略的示例包括用户指定的垃圾信息策略(例如,取消订阅、取消关注、订阅、关注)和内容审核策略。策略能够是基于实体数据206、活动数据208和/或社交图212而导出的。例如,策略能够包含内容分发指令,所述指令使被标注为“机器学习”的数字内容项的分发限于具有“软件工程师”的职位名称的实体,或者使被标注为“棒球”的数字内容项的分发仅限于先前已经浏览或点赞过与棒球相关的数字内容项的实体。
策略和相关联的内容分发指令能够是例如使用布尔逻辑或者查找操作(其遍历将标签映射至内容分发指令的数据结构)来实施的。
在图2B的示例中,基于图的标注***150包括标注器252、成图器254、嵌入器256、模型训练器258和标签预测模型260。成图器254、嵌入器256、模型训练器258和标签预测模型260分别通过双向通信耦合262、264、266、268被通信地耦合至标注器252。
标注器252与评估器234双向通信。例如,标注器252接收来自评估器234的数字内容项通信,获得标签预测模型260产生标签预测所需的输入,并且将标签预测模型260响应于接收到的数字内容项所预测的标签提供给评估器234。作为替代实施方式,标签预测模型260能够将标签预测数据直接传达给评估器234,在这种情况下,标注器252对标签预测模型260生成标签预测所需的输入进行汇编,但是不向评估器234传达标签预测。
在接收到来自评估器234的数字内容项通信之后,标注器252获得供标签预测模型260产生标签预测输出的该组输入。该组输入包括针对数字内容项的由成图器254生成的内容图和由嵌入器256生成的嵌入。如果标签预测模型260处在训练模式中,那么该组输入也包括由模型训练器258确定的标签。
标注器252从评估器234接收标识数字内容项和相关联的实体标识符的数字通信。响应于接收到标识数字内容项的通信,标注器252将数字内容项标识符数据经由通信耦合262转发给成图器254并且经由通信耦合264转发给嵌入器256。如果标签预测模型260处在训练模式中,那么标注器252也将所述数字内容标识符数据转发给模型训练器258。
有多种替代方案来实施成图器254。在一种实施方式中,周期性地运行离线过程,以生成表示应用***中的所有内容项的一幅完全内容图或者一组内容图。之后,当成图器254接收到来自标注器252的数字内容项标识符时,成图器254提取较大的先前创建并且存储的内容图的子图,其中,所述子图是特定于从标注器252接收到的数字内容项标识符的。在该示例中,在接收到来自标注器252的通信时需要由成图器254执行的操作可以包括对先前创建的内容图的简单的一组查询。
在另一实施方式中,成图器254在接收到来自标注器252的数字内容项标识符时“即时”生成内容图。在该示例中,成图器254查询非图数据库以获得通过从标注器252接收到的数字内容项标识符识别的数字内容项的数据记录,从所述非图数据记录中提取属性和关系数据,并且使用图基元将所提取的数据从非图形式转换成图。在该示例中,成图器254按需创建特定于内容项的内容图。
在任何情况下,由成图器254响应于来自标注器252的通信而创建的内容图能够是相对小的图,其包括针对所请求内容项的节点以及相邻节点和边。换言之,出于对来自标注器252的通信做出响应的目的,成图器254可以不必生成应用***中的所有内容项的完全内容图。
因此,响应于接收到来自标注器252的数字内容项标识符数据,成图器254生成针对所述数字内容项的内容图。为此,成图器254能够在被存储在例如内容项数据210中的现有内容图中定位于所述数字内容项相对应的节点,并且从所述内容图提取包含与所述数字内容项相对应的节点的子图。例如,由成图器254生成的子图能够包括与在来自评估器234的数字通信中识别的数字内容项相对应的节点以及相邻节点(例如,与对应于所述数字内容项的节点一条边或者从该节点“跳走”的节点)。成图器254能够提取来自内容图的数据,例如,其方式是发出对照存储所述内容图的图数据库的查询以及取回来自所述图数据库的查询结果。
替代地,在一些实施方式中,内容项数据是按照非图数据结构来存储的,诸如键-值存储库或者关系数据库(例如,内容项数据210的)。在这些实施方式中,成图器254能够发出从所述数据结构提取针对所述数字内容项的关系数据的查询,其中,例如,所述关系数据可以是基于键值来确定的。利用例如图基元,成图器254将针对所述数字内容项的非图节点关系数据转换成内容图,在所述内容图中,所述数字内容项被表示为节点,相关的数字内容项被表示为相邻节点,并且利用关系类型数据来标注该数字内容项与相邻节点之间的边。
内容项间或者节点间关系类型数据的示例包括时间依赖性,诸如文章-评论、评论-回复以及评论-评论。关系类型数据的其他示例包括语义关系和基于社交图的关系。例如,在内容项具有相同内容类型、模态、语言或标签时,成图器254能够在对应节点之间创建边。
作为另一示例,成图器254能够在表示异构内容项的节点之间创建边。例如,如果所述评论与所述文本文章之间具有依赖性关系(例如,该评论是在与该文章相关联的线程中提交的),成图器254能够在文本文章与图像评论之间创建边。为了进一步例示,成图器254能够在例如与一个帖子相关联的线程的视频评论与另一包含视频的帖子之间创建边,即使在所述视频评论和所述视频帖子之间没有依赖性关系,前提是成图器254确定存在某种其他原因在视频评论与视频帖子之间创建边;例如,视频评论和该视频帖子两者都描绘了跳舞的大象。
由成图器254选择用于创建内容图的数字内容项或者由成图器254选择的内容子图可以视情况包括已经被标注了语义标签(分发器240能够用于控制应用***130内的数字内容项的分发的)的一些数字内容项。内容项可能先前已经通过例如基于图的标注***的先前操作、通过预先存在的二元分类器或者通过先前的基于人工的标注过程被标注。然而,在许多使用情况下,仅有很少的已经被标注的内容项。如果内容项先前已经被标注,那么对所述内容项的标签的指示能够被存储在所述节点的属性中。
可能出现可以存在少量的经标注的内容项的情况的示例,例如,在策略变化之后,或者在引入新类型的内容项之后(例如,检测到内容类型属性或模态属性的新值——例如,当先前已经在其他内容项上将“播客”视为模态时,检测到作为模态的播客)。因此,由成图器254产生的内容图往往仅存在很稀少的标注,因为相对于特定任务/策略而言,无标注节点的数量会大于已标注节点的数量。例如,已标注节点与无标注节点的比率能够是1:M,其中,M是比1大X的正整数,其中,X能够是作为偏移量或倍数的实数。
作为示例,假设在所述应用***中实施了新垃圾信息策略。为了对所述新垃圾信息策略进行初始化,相对小数量的内容项被人工地识别为触发所述新垃圾信息策略,并且被手动标注有新垃圾信息标签。基于图的标注***150使用针对所述新垃圾信息策略的这一初始的一组经验证的/基础事实标签和由成图器254产生的内容图来确定是否对所述应用***中的其他无标注内容项施加所述新垃圾信息标签。
例如,当成图器254接收到来自标注器252的识别出无标注内容项的通信时,由成图器254针对所识别出的无标注内容项创建的图可以包含或者可以不包含表示已经被人工标注有所述新垃圾信息标签的内容项中的任意内容项的节点。下文所描述的针对标签预测模型260的该组输入包括由成图器254针对所识别出的无标注内容项产生的图数据。因此,针对所述无标注内容项的图数据中的任何已标注节点的存在或不存在被反映在针对标签预测模型260的输入中,并且因此被反映在由标签预测模型260针对该特定无标注内容项输出的标签预测中。
由成图器254产生的所述内容图能够包括与异构数字内容项相对应的节点。异构数字内容项能够指代具有不同内容类型、模态和/或语言的两个或更多个数字内容项。例如,文章和评论能够是异构的,因为评论中的文本的长度通常比文章长度短得多。图像和文本能够是异构的,因为图像数据(例如,像素数据)不同于字母数字的文本。两个不同文本项能够是异构的,如果其是以不同语言写的。
由成图器254产生的内容图能够包含表达在异构内容类型之间的依赖性或者其他类型的关系的边。例如,一对节点能够分别表示文本文章和图像评论,并且该对节点的节点之间的边能够指示该文本文章与该图像之间的依赖性关系;例如,所述图像是对该文本文章的评论。
成图器254能够通过例如比较数字内容项的日期/时间戳来确定依赖性关系,使得具有较晚时间戳的数字内容项能够具有对具有较早时间戳的数字内容项的依赖性。替代地或另外地,当数字内容项是按照非图数据结构存储的并且因此能用于由图器254从非图数据结构中提取时,能够使依赖性关系(诸如帖子-评论和评论-回复)是显式的。
成图器254将所生成的内容图返回给标注器252或者替代地直接返回给标签预测模型260或模型训练器258。
响应于从标注器252接收到数字内容项标识符数据,嵌入器256生成针对所识别出的数字内容项的嵌入。嵌入能够指代基于数字内容项的特征的值与其他数字内容项的对应特征的值的比较所生成的针对所述数字内容项的语义表示。嵌入能够被实施为向量,其中,所述向量的每个维度包含与数字内容项的不同特征相对应的、促进对其语义含义的确定的值。数字内容项的特征能够包括从所述数字内容项提取的原始特征,诸如像素和n-gram,以及/或者计算出的特征,诸如计数、概率、平均值以及原始特征的均值。
为了生成嵌入,嵌入器256能够对所述数字内容项的一个或多个部分应用已知嵌入技术,诸如BERT(来自变换器的双向编码器表征量)、Inception或NetVLAD(局部聚合描述符向量神经网络),以生成所述嵌入。替代地或另外地,嵌入器256能够对所述数字内容项应用通用语言模型(ULM),诸如TULR-v3(图灵通用语言表示),以生成嵌入,特别是在所述数字内容项是多模态和/或多语言内容项的情况下。替代地或另外地,嵌入器256能够对所述数字内容项应用下文参考图4C或图4D所描述的嵌入技术中的一种或多种嵌入技术,以生成所述嵌入。嵌入器256将所生成的嵌入返回给标注器252或者替代地直接返回给标签预测模型260或模型训练器258。
当标签预测模型260处在训练模式中时,标注器252调用模型训练器258。在训练模式中,响应于从标注器252接收到数字内容项标识符,模型训练器258获得针对所述数字内容项的已知语义标签(例如,先前在较早的一轮训练期间或者由另一标注***已经标注过所述数字内容项),从嵌入器256获得针对所述数字内容项的嵌入,并且从成图器254获得针对所述数字内容项的内容图。集合性地,针对所述数字内容项的已知标签、针对所述数字内容项的嵌入以及针对所述数字内容项的内容图构成了针对未经训练的或者部分训练的标签预测模型260的训练数据实例。
为了获得用于训练数据的已知标签,模型训练器258能够例如查询被存储在非图数据库中的内容项数据210或者遍历现有的内容图以获得先前标注的节点(在先前创建并且存储了内容图的情况下)。模型训练器258将未经训练的或者部分训练的标签预测模型260应用于训练数据,以产生标签预测模型260的经训练的版本。
将模型应用于训练数据能够包括对包括所述训练数据的指定的一组输入执行机器学习算法,以生成与该组输入相对应的一组输出。因此,未经训练的模型能够指代通过计算机代码实施的不关涉任何数据集的一种机器学习算法或者一组机器学习算法。
另一方面的经训练的模型能够指代这些组的输入与通过对那些组的输入应用所述机器学习算法而产生的输出之间的关系,所述关系将被反映在机器学习算法参数的值中。亦即,对训练数据应用所述机器学习算法将迭代地调整机器学习参数的值,直至发现将产生统计学上可靠的输出(例如,预测或分类)的参数值为止。能够使用损失函数来计算模型误差(例如,模型生成值与经验证的或基础事实值的比较),以确定所述模型是否正在产生可靠输出或者是否要调整参数值。对机器学习算法、损失函数和相关联的参数值的选择能够取决于特定应用***的要求;例如,希望产生的输出的类型以及输入的性质。
机器学习算法能够指代被应用于单组输入的单一算法、同一算法针对不同输入的多次迭代或者被应用于不同输入的不同算法的组合。例如,在神经网络中,节点与针对所述节点的一个或多个输入执行以产生一个或多个输出的算法相对应。如果一组节点中的每个节点都对同一组输入中的不同输入执行相同算法,那么能够将该组节点称为神经网络的层。神经网络层的输出能够构成对所述神经网络的另一层的输入。神经网络能够包括接收并操作一个或多个原始输入并且将输出传送给一个或多个隐藏层的输入层,并且还包括接收并操作由所述一个或多个隐藏层产生的输出以产生最终输出的输出层。
标签预测模型260是具有训练模式和预测模式的机器学习模型。在训练模式中,如上文所描述的,由模型训练器258向未经训练的或者部分训练的标签预测模型260应用训练数据。部分训练能够指代仅利用一个小的训练数据集进行了训练的模型,或者可以指代已经利用训练数据进行了训练但是现在所述训练数据已经过时或者需要刷新或更新的模型。
在预测模式中,标签预测模型260响应于各组输入生成标签预测,所述各组输入包括针对给定数字内容项由成图器254产生的内容图以及由嵌入器256产生的嵌入。标注器252将由标签预测模型260产生的标签预测经由通信耦合236转发给评估器234,或者替代地经由不同通信耦合直接转发给分发器240。
下文将参考图4A以及图4B1、图4B2和图4B3描述标签预测模型260的示例性实施例。
图3是根据本公开的一些实施例的用于处理设备对数字内容项进行标注的示例性方法300的流程图。方法300能够由能够包括硬件(例如,处理设备、电路***、专用逻辑、可编程逻辑、微代码、设备的硬件、集成电路等)、软件(例如,在处理设备上运行或执行的指令)或者其组合的处理逻辑来执行。在一些实施例中,方法300由图1的基于图的标注***150来执行。
尽管是按照特定序列或顺序示出的,但是除非另行指出,否则可以对过程的顺序做出修改。因此,所例示的实施例仅应当被理解成示例,并且所例示的过程可以按照不同的顺序执行,并且一些过程可以并行执行。此外,在各种实施例中,可以省略一个或多个过程。因此,在每一实施例中并不需要所有过程。其他过程流也是可能的。
在操作302处,所述处理设备确定能由应用***基于社交图通过网络分发给多个用户***的稀疏标注的一组数字内容项,其中,所述稀疏标注的一组数字内容项包括无标注数字内容项。操作302能够通过由处理设备查询内容项数据库以获得一组异构数字内容项来执行,其中,所述异构数字内容项中的每者具有与所述无标注数字内容项的至少一种类型的关系。
在方法300处,过程流302、304、310能够与过程流302、306、308、310并行执行并且/或者独立于其执行。亦即,能够在没有内容图的情况下完成确定嵌入数据的过程。
在操作304处,所述处理设备确定针对所述无标注数字内容项的嵌入数据。为此,操作304能够包括上文参考图2B所描述的嵌入器256的功能的部分。操作304能够对所述内容项应用跨模态模型以产生跨模态嵌入。在下文所描述的图4C和图4D中示出了能够由操作304用于生成跨模态嵌入的跨模态模型的示例。
替代地,操作304能够对与社交图中所表示的实体相关联的数据应用实体活动模型,以产生实体活动嵌入和/或实体活动内容项嵌入。在下文所描述的图4C和图4D中示出了能够由操作304用于生成实体嵌入和/或实体活动内容项嵌入的实体活动模型的示例。作为另一替代方案,操作304能够通过所述模型的嵌入层来机器学习与所述无标注节点相对应的内容项的嵌入数据。例如,嵌入器256的输出能够被完全连接至标签预测模型260的输入。
在操作306处,所述处理设备生成包括所述无标注数字内容项的该组异构数字内容项的内容图。为此,操作306能够包括上文参考图2B所描述的成图器254的功能的部分。操作306能够包括将非图查询结果转换为一组异构数字内容项和内容项间关系的图表示。替代地,操作306能够包括遍历现有的内容图并且提取所述现有内容图的包含所述无标注数字内容项的子集。
通过操作306生成的内容图包括与该组异构数字内容项中的内容项相对应的节点以及指示该组异构数字内容项中的内容项之间的关系的边,其中,所述节点包括的无标注节点多于标注节点。
在操作308处,所述处理设备从通过操作306产生的内容图中提取针对所述无标注内容项的相邻数据。针对无标注内容项而提取的相邻数据的量是能基于特定设计或实施方式的要求配置的。在一些实施例中,相邻数据包括与对应于所述无标注内容项的节点存在N度连接的节点的所有节点属性数据和边关系数据,其中,N是正整数并且N=1。在其他实施例中,N可以是任何正整数。
相邻数据能够包括无标注节点与相邻节点之间的边的边数据。相邻数据能够包括节点属性数据,诸如针对所述无标注节点的模态数据以及针对所述相邻节点的不同模态数据。所述模态数据能够指示所述无标注节点对应于具有某种模态的内容,例如,所述模态为文本、图像、视频或音频,并且所述不同模态数据能够指示所述相邻节点对应于具有不同模态的内容,例如,所述不同模态为文本、图像、视频或音频。亦即,所述无标注节点和所述相邻节点能够具有不同模态;例如,所述无标注节点的模态能够是视频,而所述相邻节点的模态为文本,或者所述无标注节点的模态可以是文本,而所述相邻节点的模态是实况流媒体音频。
相邻数据能够包括来自所述内容图的所述无标注节点和所述相邻节点的节点属性数据,诸如内容类型数据和/或模态数据。相邻数据能够包括针对所述无标注节点的内容类型或模态数据以及针对所述相邻节点的不同内容类型或模态。例如,相邻数据能够指示:无标注节点对应于文章,并且所述相邻节点对应于评论。
替代地或另外地,相邻数据能够指示:针对所述无标注节点的语言数据不同于针对所述内容图中的相邻节点的语言数据。另外地或替代地,针对任何节点(例如,该无标注节点或者该相邻节点)的节点属性数据能够指示与所述节点相关联的内容项包含以多种不同语言写或说的文本。
在操作310处,所述处理设备确定标注模型处在训练模式还是预测模式中。为此,所述处理设备能够检查由模型训练器258设置的标志的值。如果所述处理设备确定所述标注模型处在训练模式中,那么所述处理设备进行至操作312。如果所述处理设备确定标注模型处在预测模式中,那么所述处理设备进行至操作316。下文描述的图4A和图4B2示出了标注模型的示例。
在操作312处,所述处理设备获得针对所述内容图的子图的标签训练数据。亦即,在操作306处生成的所述内容图是稀疏标注的,使得仅有所述内容图的子集包含已标注节点。操作312能够使用例如模型训练器258获得训练数据,如上文所描述的。在操作314处,所述处理设备对包括所述嵌入数据、相邻数据和在操作312中获得的标签训练数据的一组输入应用未经训练的或者部分训练的标注模型。作为操作314的结果,能够调整所述标注模型的一个或多个参数值,以例如提高该标注模型的预测准确性。
在操作316处,所述处理设备对包括在操作304中生成的嵌入数据和在操作308中从该内容图提取的相邻数据的一组输入应用所述经训练的标注模型。被包含在该组输入中的所述相邻数据能够包括针对所述无标注节点的模态数据以及针对所述相邻节点的不同模态数据。被包含在该组输入中的所述相邻数据能够包括针对所述无标注节点的内容类型数据和针对所述相邻节点的不同内容类型数据。被包含在该组输入中的相邻数据能够包括针对所述无标注节点的语言数据和针对所述相邻节点的不同语言数据。
在操作318处,所述处理设备使用所述标注模型的输出来生成针对所述数字内容项的标签数据。操作318能够包括将所述标签数据提供给所述应用***。操作318能够包括基于由所述标注模型响应于该组输入产生的输出而生成针对所述内容项的标签,将标签分配给所述内容项,以及/或者利用一组预定义标签(诸如一组垃圾信息标签)中的标签来标注所述内容项。操作318能够包括将所述标签提供给所述应用***。
图4A是根据本公开的一些实施例的用于标注数字内容项的模型架构400的示例。图4A的模型架构能对一组模型输入402做出响应。该组模型输入402包括一组异构图节点412,其中,节点412的每个节点包含数字内容项的属性。属性的示例包括模态数据和内容类型数据。在一个实施例中,该组异构图节点包括最多相互离开N条边(第N度连接)的节点,其中,N是正整数并且N=2。在其他实施例中,N是任意正整数。
该组异构图节点412包括第一类型的节点的子集和第二类型的节点的另一子集,其中,例如,不同节点类型指示:所述节点表示具有不同内容类型、模态和/或语言的不同的数字内容项。例如,该组异构图节点412的获得方式是:查询预先存在的内容图或者通过例如将按照一个或多个非图数据结构存储的内容项数据转换成图形式来生成内容图。
在一些实施例中,该组模型输入402包含针对该组异构图节点412中的节点的每者的内容嵌入数据X。能够使用嵌入服务或者嵌入服务(诸如针对文本的通用语言模型(ULM)、针对图像的Inception和针对视频的NetVLAD)的组合来生成跨异构内容类型和/或模态表示多模态、多语言内容的嵌入。异构内容类型和/或模态的示例包括例如馈送帖子—文本更新、馈送帖子—图像、评论—文本、评论—视频、文章等。
为了生成文本嵌入,ULM是基于大规模变换器架构的深度学习语言模型,其从来自因特网的文本数据集(例如,Wikipedia)学习了数十亿的参数。能够被用于针对节点412中的每个节点的文本生成嵌入数据X的ULM的示例是能从微软公司获得的图灵通用语言表示(TULR-V3)。能够针对特定领域使用情况对ULM嵌入模型进行细调。能够使用其他自然语言处理(NLP)模型;然而,ULM的益处是ULM支持多语言NLP任务,并且能够跨很宽范围的各种各样的应用来使用。在一些实施例中,所述嵌入模型的输出被完全连接至所述标签预测模型架构的输入。
为了生成由节点412表示的内容项的图像部分和视频部分的嵌入,能够分别采用Inception和NetVLAD。因此,表示多模态内容项的节点412能够具有多个不同嵌入,其是通过不同嵌入服务生成的。下文将参考图4C和图4D描述能够被用于合并这些不同嵌入的技术的示例。
可以独立于内容图来计算内容项的嵌入。例如,能够在生成内容图之前并且在无需图结构的情况下针对碰巧由所述图中的节点表示的内容项而计算嵌入。例如,能够从非图数据库向嵌入服务提供关于内容项的数据,或者能够提供原始内容项的部分作为对嵌入服务的输入。因此,能够独立于内容图并且独立于与所述内容图中的其他内容项之间的任何边关系而生成内容嵌入。例如,能够由不同于内容图的生成的过程来调用嵌入服务。
该组模型输入402包含边关系数据414。边关系数据指示作为相邻矩阵A而存储的该组异构图节点412中的节点之间的边关系。边关系数据414能够包括一对一关系以及一对多关系。一对一关系的示例是馈送帖子对关于该馈送帖子的评论对针对该评论的回复。一对多关系的示例是馈送帖子对两个不同评论。边关系数据414能够是通过例如查询内容图以取回边数据而获得的。
当所述标注模型处在训练模式中时,该组模型输入402包含部分标签Y^。部分标签指示该组模型输入402是稀疏标注的。例如,在图4A中,存在三个类型1节点和四个类型2节点,三个类型1节点中的一个类型1节点被标注并且所述四个类型2节点中的两个类型2节点被标注。因此,在图4A的示例中,50%或更少的节点被标注。一组节点被视为稀疏标注的阈值是可变的,取决于特定设计或实施方式的要求。同样地,尽管所描述的技术非常适合稀疏标注数据集,但是其并不限于与稀疏标注数据集结合使用。
模型架构404是基于图变换器的神经网络架构,其使用标签传播算法,通过迭代地执行标签传播步骤而对无标注节点做出标签预测。与二元分类器不同,图变换器能够捕获内容项间关系(例如,对话上下文和/或(例如)帖子-评论、文章-评论、评论-评论内容项对之间的关系)。
模型架构404能够被实施为神经网络,所述神经网络具有针对每个模态和/或内容类型的单独层。例如,模型架构404能够具有针对文章的层和针对评论的层。所述模态和/或内容类型特有的层每者能够包括多个层。所述模态和/或内容类型特有的层被连接起来;例如,文章层的输出构成评论层的输入,或者评论层的输出形成针对文章层的输入。因此,不同的模态和/或内容类型特有层能够在其间共享信息,以便跨模态和/或内容类型来传播标签。
模态和内容类型数据每者能够被反映在针对节点的属性中。因此,具有两个不同内容类型的内容项,例如,文章和评论或者评论和回复,能够具有位于其间的边而不管所述内容项中的每个内容项的模态如何。例如,文章能够具有文本的模态,但是可以与具有图像的模态的评论共享一条边。
在操作中,针对起始节点K以及一个或多个Q邻居(或相邻)节点,将模型架构404应用于输入X、A和Y^。在查询所述内容图时,起始(或源)节点K被指定为键,并且邻居节点Q变为值。能够针对所有邻居节点Q(例如,K的所有n度连接,其中,n能够是任意正整数)生成邻居向量。节点K和Q能够被分别称为源节点和目的地节点,或者能够被集体称为边对。
额外的输入V是在所有的Q邻居节点上在节点K与每个邻居节点Q之间的边关系数据的聚合。能够将所述聚合计算为例如K的所有邻居节点Q上的边关系数据的均值或平均值。
如果源节点是已标注节点并且目的地节点是无标注节点,那么模型架构404能够生成针对目的地节点的标签预测,例如,源节点的标签同样适用于目的地节点的概率。如果源节点是无标注节点,并且目的地节点是已标注节点,那么模型架构404将生成针对源节点的标签预测,例如,目的地节点的标签同样适用于源节点的概率。
模型架构404包括多头注意力机制,其包括线性变换层428、缩放点积注意力层426、乘法层424和联接层422。多头注意力机制能够并行地运行注意力机制若干次。线性变换层428对所述输入应用线性变换操作,例如,标量函数。
缩放点积注意力层426能够将作为数的向量的输入转换成概率的向量,其中,每个值的概率与所述向量中的每个值的相对尺度成比例。例如,缩放点积注意力层426能够计算所述输入的点积,并且对其进行缩放,使之归纳为1,其中,h是可以指代输入层与输出层之间的隐藏状态的数量的正整数。
乘法层424对所述输入应用乘法函数。联接层422对乘法层424的各独立输出进行联接,以产生表示标签适用于无标注节点的概率的最终输出。
模型架构404产生模型输出406,其在数学上被作为P(Yu|X,A,Y)给出,或者其可以是在给定输入X(内容嵌入)、A(包括内容关系边数据的相邻矩阵)和先前观测/预测出的标签Y^(如果处在训练模式中)的情况下该无标注内容Yu的概率。因此,模型输出能够包括针对输入X的无标注节点的一组标签预测数据432。
在图4A中,标签预测数据423如下示出了由模型架构404基于部分标注数据集416预测的标签:标签预测数据集432中的带阴影(新标注)节点对应于部分标注数据集416中的无阴影(无标注)节点,并且标签预测数据集432中的无阴影节点对应于数据集416的带阴影节点。换言之,数据集416与标签预测数据集432是同一数据集,只是标签预测数据集432包含针对该数据集中的所有节点的标签,而部分标注数据集416则仅包含针对所述数据集的部分节点的标签。
与二元分类器不同,所述标签传播算法能够跨相关/相连内容类型捕获标签。这允许该标注模型利用部分标签信息,以例如将标签从已经标注的文章帖子自动传播至关于同一文章帖子的无标注评论,或者将标签从已标注评论自动传播至先前未标注的主文章帖子。因此,与二元分类器相比,能够利用少得多的标签对所述标注模型进行训练。
与二元分类器不同,模型架构404能够在将单个模型用于不同内容类型的情况下进行训练和预测,并且捕获对话上下文以及同种与不同种内容类型之间的相互依赖性,其方式是将这些依赖性建模为内容图。
图4B1、图4B2和图4B3图示了根据本公开的一些实施例的用于标注数字内容项的模型架构的输入。
图4B1的部分440示出了从包含异构图节点412的内容图提取的数据。能够使用过程441针对内容图的每个节点来计算嵌入X。在过程441中,示例性输入节点是异构的,即使其具有相同模态,即文本。例如,类型1节点能够对应于评论,而类型2节点则能够对应于文章,或者反之。
在过程441中,基于变换器的神经网络被分别应用于每个输入节点,以生成针对每个输入节点的嵌入。例如,所述基于变换器的神经网络生成针对类型1节点的嵌入X1和针对类型2节点的嵌入X2。基于变换器的神经网络能够被用于多种不同节点类型,或者能够将不同嵌入机制用于不同节点类型。由所述基于变换器的神经网络产生的节点嵌入是对所述标注模型(例如,模型架构404)的输入。
所述基于变换器的神经网络允许异构内容类型被输入到所述标注模型中。能够被用于生成针对文本(例如,文章和评论)的内容嵌入的基于变换器的神经网络框架的示例包括图灵TuringULRv3和mBERT。由过程441产生的内容嵌入能够被表示为多维向量。例如,mBERT产生作为768维向量的嵌入,并且TULRv3产生作为1024维向量的嵌入。针对图像输入而言,Inception v3产生作为2048维向量的嵌入,并且针对视频而言,NetVLAD产生作为1024维向量的嵌入。
过程441能够由嵌入器256来执行。
图4B2的部分442图示了相邻矩阵A,其包括描述异构图节点412之间的关系的边关系数据414。边关系数据414和相邻矩阵A更一般而言能够捕获包括异构内容项之间的多级依赖关系的对话线程结构。在所例示的实施例中,最大相邻度是N度,其中,N是可高达并且包括2的正整数。在其他实施例中,N可以是任意正整数。
图4B2的部分450图示了在异构内容项(例如,具有不同内容类型、语言或模态的节点)之间的边关系的计算。能够在使用时间戳作为键的情况下使用先序树遍历计算所述边关系。例如,在时间t0处,类型1的文章A被发布给馈送,馈送在内容图中被表示为节点443。在时间t1处,发布了关于文章A的具有类型2的评论B,其在内容图中被表示为节点445。基于时间t1与时间t0的比较(例如,时间t1在时间t0之后),从文章A→评论B或者在内容图中从节点443到节点445创建了边444。
在时间t2处,发布了关于文章A的具有类型2的评论C,其在内容图中被表示为节点447。基于时间t2与时间t0和时间t1的比较(例如,时间t2在时间t0和时间t1之后),从文章A→评论C或者在内容图中从节点443到节点447创建了边446。
在时间t3处,发布了作为对评论B的回复的具有类型2的评论D,其在内容图中被表示为节点449。基于时间t3与时间t0、t1和t2的比较(例如,时间t3在时间t0、t1和t2之后),从评论C→评论D或者在内容图中从节点447到节点449创建了边448。
尽管图4B2仅图示了两级内容项依赖性,但是边的枚举并不限于两级。同样地,尽管图4B2仅图示了两种内容类型,但是在所述内容图中的节点的任意组合能够以任意数量的方式是异构的。例如,节点445能够与包含不同模态(例如,图像而非文本)的内容项相关联,并且将按照类似方式计算边关系。
图4B3图示了确定用于标注模型的训练数据的示例454,所述标注模型能够被实施为模型训练器258。当所述模型处在训练模式中时,所述输入节点包括标注有经验证的或基础事实标签的节点,从而反映已经标注过的训练数据集中的内容项的示例。由于训练数据集仅包括一些已标注节点,例如,不到一半的节点被标注,因而训练数据集包含部分标注数据集416的部分标签,如在图4B3的部分452中所示。
为了获得训练数据,所述模型训练器能够遍历内容图,并且在每个节点处,检查所述节点是否已经被标注。如果所述节点已经被标注,那么将所述节点添加至所述内容图的包含已标注节点的子集。如果所述节点尚未标注,那么将所述节点添加至所述内容图的包含无标注节点的不同子集。
所述训练数据包括异构节点,例如,一些类型1内容项的已标注节点以及其他的类型2内容项的已标注节点。无标注节点也能够是异构的,例如,既包括类型1内容项又包括类型2内容项。所述标注模型使用所述已标注节点进行标签传播。
一旦如上文所描述地创建了嵌入和内容项依赖性(图相邻性),就在模型架构401的图变换器核心中计算标签传播和基于关系的标签学习/预测。例如,所述标注模型针对每个无标注节点计算已标注节点的标签适用于所述无标注节点的概率。
图4C是根据本公开的一些实施例的生成针对数字内容项的嵌入的模型架构的示例。能够由模型架构(诸如在图4C中所示的)产生的跨模态嵌入能够被用作上文的图4A和图4B1中的嵌入输入X。以这种方式,图4A和图4B2的标签预测模型架构能够被扩展为包括针对多模态内容项的多模态嵌入。
对跨模态模型460的输入462能够包括具有多种不同模态的内容项,所述模态包括文本、图像、视频、评论、导出的元数据(例如,由光学字符识别或语音识别产生的文本)和稀疏元数据(例如,井字标签、话题)。单个内容项能够包括多种不同模态。输入462也能够包括实体相关嵌入,诸如邻居嵌入和实体活动嵌入。
跨模态模型460将内容项分类作为跨模态的共享任务来对待,其中,能够按照联合方式学习语义。因此,针对多模态内容项而言,初始将不同模态分开并且针对内容项的每个不同模态部分创建个体嵌入,并且然后将这些个体嵌入融合起来,以创建针对多模态内容项的统一或跨模态嵌入。
跨模态模型460利用中间门控融合策略组合来自多种不同模态的语义,以生成跨模态嵌入472。跨模态嵌入472能够被用作图4A和图4B1中的输入嵌入X。因此,如果数字内容项包含多种不同模态,那么图4A和图4B1中的输入嵌入X不是必须仅反映单一模态(例如,文本、图像或视频)。换言之,使用跨模态模型460以生成跨模态嵌入472能够使得图4A和图4B2的模型架构能够为多模态内容项预测标签。
如在图的右侧所示的,跨模态内容嵌入472能够是以具体的一组损失函数(例如,关于难分负样本的聚焦损失(focal loss))以及预测组件结束的机器学习末端。跨模态模型460包括每模态共享层,包括嵌入服务464和全面连接层466。嵌入服务的示例包括BERT、Inception、NetVLAD、基于变换器的嵌入器和查找服务。跨模态模型460也包括预测组件476,其为具有单头的多标签的预测组件。
响应于跨模态嵌入472,预测组件476基于内容项的跨模态嵌入472来输出目标标签480适用于所述内容项的概率。跨模态模型460的部分478能够受到单独训练或者能够与例如参与相关受监督任务联合接受训练。
按照特定应用***所需,目标标签能够是粗略定义和/或精细定义的。粗略定义的标签的示例为SPAM和CLEAR。精细定义的标签的示例包括不同类型的垃圾信息内容,诸如金融诈骗或NSFW,以及不同类型的非垃圾信息内容,诸如教育视频或健康生活方式。
在生成或细调用户活动嵌入468的同时,跨模态内容嵌入472能够被冻结,如在图的左侧所示的。换言之,跨模态内容嵌入472和用户活动嵌入468能够是使用不同输入单独创建的,并且然后使用例如联接进行融合。用于生成用户活动嵌入468的用户活动数据能够是通过例如查询实体数据206、活动数据208和/或社交图212获得的。例如,活动数据208能够包括指示哪些内容项已经由应用***130中的某一用户以及何时发布、评论、查看和分享过。用户活动数据和用户概况数据能够被表示在社交图212中。
跨模态内容嵌入472能够被公布,以供下游应用使用。例如,跨模态内容嵌入472能够被馈送排序***和/或内容审核***消耗。跨模态内容嵌入472的优点在于下游***不必检查内容项的模态,而是能够针对内容项调用跨模态模型460而不管模态如何,即使内容项包含了多种模态。
跨模态模型460能够被作为后端服务来实施,例如,存储多模态内容嵌入472以供其他下游***查询和取回的数据库或云服务。例如,下游***(诸如新闻馈送)能够具有其自己的内容分类器,并且能够使用跨模态内容嵌入472作为对其分类器的输入。跨模态模型460能够通过替代用于进行垃圾信息检测和内容审核的50+个个体二元分类器来提高***资源的利用率。
能够使跨模态内容嵌入472与所生成或经细调的用户活动嵌入468合并或融合(例如,通过联接),以产生用户内容嵌入470。用户内容嵌入470能够将通常或历史上独立并且关联的信息结合到一起。亦即,用户内容嵌入470能够在社交图212与活动数据208之间创建先前不存在的联系。
用户活动确认468是基于预先存在的嵌入(包括邻居嵌入和活动嵌入)生成的。活动嵌入是基于用户在其会话馈送中的活动(例如,点击、点赞和分享)而生成的,所述活动是采用活动数据208确定的。邻居嵌入创建针对用户的邻居(例如,第一度连接)的类似活动嵌入,所述邻居是使用社交图212来确定的。
响应于用户内容嵌入470,预测组件474能够在给定被分配至特定目标标签480的内容项的情况下生成并且输出所述应用***的用户将参与所述应用***中的特定类型的活动的概率。例如,预测组件474能够通过权重来调整预测组件476的输出,其中,所述权重值对应于用户活动嵌入468。预测组件474的输出的示例包括用户将查看垃圾信息的可能性、用户将分享垃圾信息的可能性、用户将查看未被标注为垃圾信息的内容项的可能性以及用户将分享未被标注为垃圾信息的内容项的可能性。
图4D是根据本公开的一些实施例的用于生成针对数字内容项的嵌入的模型架构490的另一示例。
图4D的模型架构490与图4C类似,因为该模型架构是利用每模态的共享层的用于内容标注的统一架构的示例。替代具有单头的多标签预测组件,模型架构490的预测组件使用来自各个模态特有头的辅助损失,如由concat/线性求和组件492、全面连接层494和任务层496所例示的。例如,concat/线性求和组件492组合针对输入(稀疏元数据、活动推导元数据、评论、文本文章、图像、视频)中的每个输入生成的单模态嵌入,并且concat/线性求和组件492的输出被提供给模态特有分类任务(例如,文本任务、图像任务、视频任务),另外还能用于创建组合的用户内容嵌入470,将通过该合并用户内容嵌入对用户嵌入和内容嵌入进行联合标注。
图5是根据本公开的一些实施例的控制数字内容项的分发的示例性方法500的流程图。
方法500可以由包括硬件(例如,处理设备、电路***、专用逻辑、可编程逻辑、微代码、设备的硬件、集成电路等)、软件(例如,在处理设备上运行或执行的指令)或者其组合的处理逻辑执行。在一些实施例中,方法500的部分由图1的应用***130和/或基于图的标注***150执行。尽管是按照特定序列或顺序示出的,但是除非另行指出,否则可以对过程的顺序做出修改。因此,所例示的实施例仅应当被理解成示例,并且所例示的过程可以按照不同的顺序执行,并且一些过程可以并行执行。此外,在各种实施例中,可以省略一个或多个过程。因此,在每一实施例中并不需要所有过程。其他过程流也是可能的。
在操作502中,所述处理设备接收能由应用***分发给用户的数字内容项的数字内容项数据。操作502能够包括执行上文所描述的数字内容项处理器204的功能。操作502能够包括接收在网络上向用户***分发数字内容的应用***处的内容项,并且将所接收到的内容项和标识所接收到的内容项在网络上的起源的地址转发给为数字内容生成标签的标注***。
在操作504中,所述处理设备确定针对所述数字内容项的基于图的模型输入。操作504能够包括执行上文所描述的成图器254和嵌入器256的功能。例如,操作504能够包括生成内容图,所述内容图包括与能由所述应用***分发的包括在操作502处接收到的内容项的一组数字内容项中的内容项相对应的节点以及指示包括接收到的内容项的该组数字内容项中的内容项之间的关系的边。
在操作506处,所述处理设备将标注模型应用于在操作504中确定的基于图的模型输入。操作506能够包括执行上文所描述的标签预测模型260的功能。例如,操作506能够包括从内容图提取出针对对应于所接收到内容项的节点与相邻节点之间的边的边数据,并且将针对所述内容图的已标注节点被训练的模型应用于一组输入,该组输入包括针对所接收到的内容项的边数据和嵌入数据。在上文所描述的图4A和图4B2中示出了标注模型的示例。
在操作508处,所述处理设备确定操作506的所述标注模型的输出是否触发数字内容项分发策略。操作504能够包括执行上文所描述的基于图的标注***150和/或分发器240的功能。如所述果处理设备确定所述标注模型输出不触发数字内容分发策略,那么所述处理设备进行至操作510。如果所述处理设备确定所述标注模型输出触发数字内容分发策略,那么所述处理设备进行至操作512。
在操作510处,所述处理设备利用与所述标注模型的所述输出相关联的零个或更多个标签来标记该数字内容项。在操作512处,所述处理设备基于所述标注模型的所述输出利用一个或多个标签来标记该数字内容项。利用一个或多个标签来标记数字内容项能够包括将标签值存储在内容项数据210中的与所述数字内容项相关联的数据记录中。
在操作514处,所述处理设备根据在操作512中用于标注该数字内容项的所述一个或多个标签和所触发的内容分发策略来控制对该数字内容项的分发。操作514能够包括将该标签转发给应用***。操作514能够包括在该应用***处根据该标签向网络上的多个其他地址分发所述的所接收到的内容项。操作514能够包括在该应用***处基于该标签确定所接收到的内容项触发了策略。操作514能够包括在该应用***处根据所触发的策略控制所述的所接收到的内容项在该网络上的分发。该标签可以对应于内容类别,例如,垃圾信息、工作不宜、个人、成人内容、煽动性、仇恨言论、非法、违禁或者其他类别的可被容易地觉察的不想要内容。
图6图示了计算机***600的示例性机器,在该机器内可以执行一组指令,从而使该机器执行本文讨论的方法中的任何一者或多者。在一些实施例中,计算机***600可以对应于联网计算机***(例如,图1的计算机***100)的组件,其包括并且耦合至或者利用机器执行操作***,从而执行对应于图1的基于图的标注***150的操作。该机器可以连接至(例如,联网至)局域网(LAN)、内联网、外联网和/或因特网中的其他机器。该机器可以以客户端-服务器网络环境中的服务器或客户端机器的身份工作,或者可以作为对等(或分布式)网络环境中的对等机工作,或者可以作为云计算基础设施或环境中的服务器或客户端机器工作。
该机器可以是个人计算机(PC)、智能电话、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、Web用具、服务器或者能够执行规定该机器所采取的动作的一组指令(顺序指令或其他指令)的任何机器。另外,虽然图示了单一机器,但是应当将“机器”一词理解为包括任意集合的机器,所述机器单独地或共同地执行一组(或多组)指令以执行本文论述的方法中的任何一者或多者。
示例性计算机***600包括处理设备602、主存储器604(例如,只读存储器(ROM)、闪速存储器、动态随机存取存储器(DRAM)(诸如同步DRAM(SDRAM)或Rambus DRAM(RDRAM)等))、存储器606(例如,闪速存储器、静态随机存取存储器(SRAM)等)、输入/输出***‘Z10以及数据存储***640,它们通过总线630相互通信。
处理设备602标识一个或多个通用处理设备,诸如微处理器或中央处理单元等。更具体地讲,所述处理设备可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或者实施其他指令集的处理器或实施指令集组合的处理器。处理设备602还可以是一个或多个专用处理设备,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)或者网络处理器等。处理设备602被配置为执行指令612,以执行本文论述的操作和步骤。
计算机***600可以还包括通过网络620进行通信的网络接口设备608。网络接口设备608可以提供对网络的双路数据通信耦合。例如,网络接口设备608可以是综合业务数字网(ISDN)卡、有线调制解调器、卫星调制解调器或者提供通往对应类型的电话线的数据通信连接的调制解调器。作为另一示例,网络接口设备608可以是局域网(LAN)卡,以提供对兼容LAN的数据通信连接。也可以实施无线链路。在任何这样的实施方式中,网络接口设备608都可以发送和接收承载表示各种类型的信息的数字数据流的电信号、电磁信号或光学信号。
网络链路可以通过通往其他数据设备的至少一个网络提供数据通信。例如,网络链路可以通过(例如)通往主机计算机或者由因特网服务提供商(ISP)运营的数据设备的本地网提供对通常被称为“因特网”的世界范围分组数据通信网络的连接。本地网络和因特网使用通往和来自计算机***600的携带数字数据的电信号、电磁信号或光学信号。
计算机***600可以通过网络和网络接口设备608发送消息和接收数据(包括程序代码)。在因特网示例中,服务器可以通过因特网628和网络接口设备608传输用于应用的所请求代码。所接收到的代码可以由处理设备602在其被接收到之时执行,并且/或者可以被存储到数据存储***640或其他非易失性存储设备中,以供以后执行
输入/输出***610可以包括输出设备,例如,用于向计算机用户显示信息的显示器(诸如液晶显示器(LCD)或触摸屏显示器)、扬声器、触觉设备或者其他形式的输出设备。输入/输出***610可以包括输入设备,例如,被配置为向处理设备602传达信息和命令选择的字母数字键和其他键。替代地或另外地,输入设备可以包括光标控制,诸如鼠标、轨迹球或光标方向键,从而向处理设备602传达方向信息和命令选择并且控制显示器上的光标移动。替代地或另外地,,输入设备可以包括传声器、传感器或传感器阵列,从而向处理设备602传达感测到的信息。例如,感测到的信息可以包括语音命令、音频信号、地理位置信息和/或数字图像。
数据存储***640可以包括机器可读存储介质642(又称为计算机可读介质),所述介质上存储着一组或多组体现在本文中所描述的方法或功能中的一者或多者的指令644或软件。指令644还可以在其被计算机***600执行期间完全或至少部分地驻留在主存储器604内和/或处理设备602内,主存储器604和处理设备602也构成机器可读存储介质。
在一个实施例中,指令626包括实施对应于数字内容项标注组件(例如,图1的基于图的标注***150)的功能的指令。尽管在示例性实施例中机器可读存储介质642被示为单个介质,但是“机器可读存储介质”一词应当被理解为包括存储一组或多组指令的单个介质或多个介质。“机器可读存储介质”还应当被理解为包括任何能够对将由机器执行并且使所述机器执行本公开的方法中的一者或多者的一组指令进行存储或编码的介质。“机器可读存储介质”一词应当被相应地理解为包括但不限于固态存储器、光学介质和磁介质。
前文的详细描述的一些部分是按照算法以及对计算机存储器中的数据位所做的操作的符号表示来呈现的。这些算法描述和表示是数据处理领域的技术人员所使用的将其工作实质传达给该领域其他技术人员的方式。算法在这里一般是指通向所希望的结果的操作的自给序列。操作是那些需要对物理量进行物理操纵的操作。通常,尽管不是必须的,但这些量采用能够受到存储、组合、比较以及其他方式的操纵的电信号或磁信号的形式。有时(主要出于常见使用习惯的原因)将这些信号称为位、值、元、符号、字符、项、数字等被证明是很方便的。
然而,应当牢记的是,所有这些以及类似的术语都与适当的物理量相关联,并且只是应用于这些量的方便标签。本公开可以涉及计算机***或类似电子计算设备的动作和过程,其将被表示为该计算机***的寄存器和存储器内的物理(电子)量的数据操纵并且变换成被类似地表示为该计算机***的存储器或寄存器或者其他这样的信息存储***内的物理量的其他数据。
本公开还涉及一种用于执行本文的操作的设备。这种设备可以是出于预期目的专门构建的,或者其可以包括通用计算机,该通用计算机将由存储在该计算机中的计算机程序选择性地激活或重新配置。例如,响应于计算机***或其他数据处理***(例如,计算***100)的处理器执行包含在存储器或者其他非暂态机器可读存储介质中的计算机程序(例如,指令的序列),该计算机***或其他数据处理***可以实施上文描述的计算机实施方法,包括图2B所示的方法、方法300和方法500。这样的计算机程序可以存储在计算机可读存储介质中,诸如但不限于任何类型的盘(包括软盘、光盘、CD-ROM和磁光盘)、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光卡或者适合用于存储电子指令的任何类型的介质,它们每者均耦合至计算机***总线。
本文中介绍的算法和显示并不固有地与任何特定计算机或其他设备相关。各种通用***可以与根据本发明的教导的程序一起使用,或者可以证明可以方便地构建更加专用的设备来执行该方法。根据下文的描述中的阐释,用于各种各样的这些***的结构将变得显而易见。此外,未参照任何特定的编程语言描述本公开。应当理解,可以采用各种各样的编程语言实施在本文中所描述的本公开的教导。
可以将本公开提供成计算机程序产品或软件,其可以包括具有存储于其上的指令的机器可读介质,所述指令可以用于对计算机***(或其他电子设备)编程,以执行根据本公开的过程。机器可读介质包括用于以机器(例如,计算机)可读的形式存储信息的任何机制。在一些实施例中,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质,诸如只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光学存储介质、闪速存储器组件等。
下文将提供在本文中所公开的技术的说明性示例。所述技术的实施例可以包括下文所描述的示例中的任意示例或者其组合。
在示例1中,一种方法包括:针对由应用***从用户***接收到的一组数字内容项生成并且存储内容图。所述应用***能够基于社交图和一组垃圾信息标签通过网络向所述用户***分发数字内容。所述内容图包括与所述一组数字内容项中的具有垃圾信息标签的子集相对应的已标注节点、与所述一组数字内容项中的不具有垃圾信息标签的子集相对应的无标注节点、以及指示在所述一组数字内容项的子集之间的关系的边。所述内容图包括比已标注节点更多的无标注节点。所述方法也包括查询所述内容图以取回针对在无标注节点与相邻节点之间的边的边数据。所述无标注节点与不具有垃圾信息标签的数字内容项相对应。所述相邻节点对应于不同的数字内容项。所述边数据指示在所述无标注节点与所述相邻节点之间的关系。所述方法也包括:响应于包括所取回的边数据和与所述无标注节点相关联的嵌入数据的一组输入,由针对所述内容图的已标注节点和边被训练的机器学习模型向所述无标注节点分配所述一组垃圾信息标签中的标签。
示例2包括示例1的主题,还包括:查询所述内容图以取回针对所述无标注节点的模态数据和针对所述相邻节点的不同模态数据,并且响应于包括针对所述无标注节点的所述模态数据和针对所述相邻节点的所述不同模态数据的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。示例3包括示例1或示例2的主题,还包括:查询所述内容图以取回针对所述无标注节点的内容类型数据和针对所述相邻节点的不同内容类型数据,并且响应于包括所述内容类型数据和所述不同内容类型数据的所述一组输入,由所述机器学习模型确定针对所述无标注节点的标签。示例4包括示例1-3中的任意示例的主题,还包括:由针对具有不同模态的数字内容项被训练过跨模态模型生成针对所述数字内容项的跨模态嵌入,并且响应于包括所述跨模态嵌入的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。示例5包括示例1-4中的任意示例的主题,还包括:响应于与所述数字内容项相关联并且在社交图中表示的实体的活动数据,由针对从所述应用***提取的实体活动数据被训练的实体活动模型来生成实体活动-内容项嵌入,并且响应于包括所述实体活动-内容项嵌入的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。示例6包括示例1-5中的任意示例的主题,还包括:由所述机器学习模型的嵌入层来机器学习与所述无标注节点相关联的所述嵌入数据,并且响应于包括所机器学习的嵌入数据的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。
在示例7中,一种***,包括至少一个处理器以及***作地耦合至所述至少一个处理器的至少一个计算机存储器。所述至少一个计算机存储器包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器:针对由通过网络向多个用户***分发数字内容的应用***接收的一组异构数字内容项生成内容图;所述内容图包括具有与所述一组异构数字内容项中的具有垃圾信息标签的内容项相对应的已标注节点和与所述一组异构数字内容项中的不具有垃圾信息标签的内容项相对应的无标注节点的节点以及指示在所述节点之间的内容项间关系的边数据;以及针对包括所述内容图的一组输入来训练神经网络模型,以产生经训练的神经网络模型。
示例8包括示例7的主题,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器从所述内容图提取节点的内容类型数据,从所述内容图提取针对相邻节点的不同内容类型数据,并且针对包括所述内容类型数据和所述不同内容类型数据的所述一组输入来训练所述神经网络模型。示例9包括示例8的主题,其中,所述内容类型数据指示所述节点对应于以下内容:第一类型为帖子、文章、评论或回复,并且所述不同内容类型数据指示所述相邻节点对应于不同于所述第一类型的第二类型。示例10包括示例7-9中的任意示例的主题,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器从所述内容图提取针对节点的模态数据,从所述内容图提取针对相邻节点的不同模态数据,并且针对包括所述模态数据和所述不同模态数据的所述一组输入来训练所述神经网络模型。示例11包括示例7-10中的任意示例的主题,其中,所述模态数据指示所述节点对应于具有第一模态的内容,所述第一模态为文本、图像、视频或音频;并且所述不同模态数据指示所述相邻节点对应于作为不同于所述第一模态的模态的第二模态。示例12包括示例7-11中的任意示例的主题,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器对所述一组异构数字内容项中的内容项应用跨模态模型,以产生跨模态嵌入,并且针对包括所述跨模态嵌入的所述一组输入来训练所述神经网络模型。示例13包括示例7-12中的任意示例的主题,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器对与社交图中表示的实体相关联的数据应用实体活动模型,以产生实体活动嵌入,并且对包括所述实体活动嵌入的所述一组输入来训练所述神经网络模型。示例14包括示例7-13中的任意示例的主题,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器通过所述神经网络模型的嵌入层来机器学习嵌入数据,并且使用所机器学习的嵌入数据作为对所述神经网络模型的另一层的输入。
在示例15中,一种方法包括:在基于一组垃圾信息标签控制在网络上分发多个用户***的数字内容的应用***处接收内容项;将所接收到的内容项转发给针对数字内容生成标签的标注***;在所述标注***处,(i)生成并且存储内容图,所述内容图包括与能由所述应用***分发的包括所接收到的内容项的一组数字内容项中的内容项相对应的节点以及指示包括所接收到的内容项的所述一组数字内容项中的内容项之间的关系的边,(ii)查询所述内容图以取回针对在与所接收到的内容项相对应的节点与相邻节点之间的边的边数据,以及(iii)响应于包括所述边数据和针对所接收到的内容项的嵌入数据的一组输入,在针对所述内容图的已标注节点和边被训练的机器学习模型处,将所述一组垃圾信息标签中的标签分配给所接收到的内容项。
示例16包括示例15的主题,还包括在该标注***处将分配给所接收到的内容项的标签转发给该应用***。示例17包括示例15或示例16的主题,还包括在该应用***处根据该标签在所述网络上将所接收到的内容项分发给所述多个用户***。示例18包括示例15-17中的任意示例的主题,还包括在该应用***处基于该标签确定所接收到的内容项触发了策略。示例19包括示例15-18中的任意示例的主题,还包括在该应用***处根据所触发的策略控制在所述网络上对所接收到的内容项的分发。示例20包括示例15-20中的任意示例的主题,其中,对应于所接收到的内容项的节点和所述相邻节点是异构的。
在前面的说明书中,已经参考本公开的具体示例性实施例描述了本公开的实施例。显然,可以对本公开的示例性实施例做出各种修改,而不脱离下述权利要求中阐述的本公开的实施例的更宽的实质和范围。相应地,应当从例示的意义上而非从限定的意义上来考虑说明书和附图。

Claims (20)

1.一种方法,包括:
针对由应用***从用户***接收到的一组数字内容项,生成并且存储内容图;
所述应用***能够基于社交图和一组垃圾信息标签通过网络向所述用户***分发数字内容;
所述内容图包括与所述一组数字内容项中的具有垃圾信息标签的子集相对应的已标注节点、与所述一组数字内容项中的不具有垃圾信息标签的子集相对应的无标注节点、以及指示在所述一组数字内容项的子集之间的关系的边;
所述内容图包括比已标注节点更多的无标注节点;
查询所述内容图以取回针对在无标注节点与相邻节点之间的边的边数据;
所述无标注节点与不具有垃圾信息标签的数字内容项相对应;
所述相邻节点与不同的数字内容项相对应;
所述边数据指示在所述无标注节点与所述相邻节点之间的关系;
响应于包括所取回的边数据和与所述无标注节点相关联的嵌入数据的一组输入,由针对所述内容图的已标注节点和边被训练的机器学习模型向所述无标注节点分配所述一组垃圾信息标签中的标签。
2.根据权利要求1所述的方法,还包括:查询所述内容图以取回针对所述无标注节点的模态数据和针对所述相邻节点的不同模态数据,以及响应于包括针对所述无标注节点的所述模态数据和针对所述相邻节点的所述不同模态数据的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。
3.根据权利要求1所述的方法,还包括:查询所述内容图以取回针对所述无标注节点的内容类型数据和针对所述相邻节点的不同内容类型数据,以及响应于包括所述内容类型数据和所述不同内容类型数据的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。
4.根据权利要求1所述的方法,还包括:由针对不同模态的数字内容项被训练的跨模态模型生成针对所述数字内容项的跨模态嵌入,以及响应于包括所述跨模态嵌入的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。
5.根据权利要求1所述的方法,还包括:响应于与所述数字内容项相关联并且在社交图中表示的实体的活动数据,由针对从所述应用***中提取的实体活动数据被训练的实体活动模型生成实体活动-内容项嵌入,以及响应于包括所述实体活动-内容项嵌入的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。
6.根据权利要求1所述的方法,还包括:由所述机器学习模型的嵌入层来机器学习与所述无标注节点相关联的所述嵌入数据,以及响应于包括所机器学习的嵌入数据的所述一组输入,由所述机器学习模型确定针对所述无标注节点的所述标签。
7.一种***,包括:
至少一个处理器;
***作地耦合至所述至少一个处理器的至少一个计算机存储器;
所述至少一个计算机存储器包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器:
针对由通过网络向多个用户***分发数字内容的应用***接收到的一组异构数字内容项生成内容图;
所述内容图包括:节点,所述节点包括与所述一组异构数字内容项中的具有垃圾信息标签的内容项相对应的已标注节点、和与所述一组异构数字内容项中的不具有垃圾信息标签的内容项相对应的无标注节点;以及边数据,所述边数据指示在所述节点之间的内容项间关系;以及
针对包括所述内容图的一组输入来训练神经网络模型以产生经训练的神经网络模型。
8.根据权利要求7所述的***,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器:从所述内容图中提取针对节点的内容类型数据,从所述内容图中提取针对相邻节点的不同内容类型数据,以及针对包括所述内容类型数据和所述不同内容类型数据的所述一组输入来训练所述神经网络模型。
9.根据权利要求8所述的***,其中,所述内容类型数据指示所述节点与以下内容相对应:所述内容是第一类型的帖子、文章、评论或回复,并且所述不同内容类型数据指示所述相邻节点与不同于所述第一类型的第二类型相对应。
10.根据权利要求7所述的***,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器:从所述内容图中提取针对节点的模态数据,从所述内容图中提取针对相邻节点的不同模态数据,以及针对包括所述模态数据和所述不同模态数据的所述一组输入来训练所述神经网络模型。
11.根据权利要求10所述的***,其中,所述模态数据指示所述节点与以下内容相对应:所述内容具有第一模态的文本、图像、视频或音频;并且所述不同模态数据指示所述相邻节点与第二模态相对应,所述第二模态是不同于所述第一模态的模态。
12.根据权利要求7所述的***,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器:对所述一组异构数字内容项中的内容项应用跨模态模型以产生跨模态嵌入,以及针对包括所述跨模态嵌入的所述一组输入来训练所述神经网络模型。
13.根据权利要求7所述的***,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器:对与在社交图中表示的实体相关联的数据应用实体活动模型以产生实体活动嵌入,以及针对包括所述实体活动嵌入的所述一组输入来训练所述神经网络模型。
14.根据权利要求7所述的***,其中,所述至少一个计算机存储器还包括指令,所述指令当由所述至少一个处理器运行时能够使得所述至少一个处理器:由所述神经网络模型的嵌入层来机器学习嵌入数据,以及使用所机器学习的嵌入数据作为对所述神经网络模型的另一层的输入。
15.一种方法,包括:
在基于一组垃圾信息标签控制在网络上向多个用户***分发数字内容的应用***处接收内容项;
将所接收到的内容项转发给针对数字内容生成标签的标注***;
在所述标注***处,(i)生成并且存储内容图,所述内容图包括与能由所述应用***分发的包括所接收到的内容项的一组数字内容项中的内容项相对应的节点、以及指示在包括所接收到的内容项的所述一组数字内容项中的内容项之间的关系的边,(ii)查询所述内容图以取回针对在与所接收到的内容项相对应的节点和相邻节点之间的边的边数据,以及(iii)响应于包括所述边数据和针对所接收到的内容项的嵌入数据的一组输入,在针对所述内容图的已标注节点和边被训练的机器学习模型处,将所述一组垃圾信息标签中的标签分配给所接收到的内容项。
16.根据权利要求15所述的方法,还包括在所述标注***处将分配给所接收到的内容项的所述标签转发给所述应用***。
17.根据权利要求15所述的方法,还包括在所述应用***处根据所述标签将所接收到的内容项在所述网络上分发给所述多个用户***。
18.根据权利要求15所述的方法,还包括在所述应用***处基于所述标签确定所接收到的内容项触发了策略。
19.根据权利要求18所述的方法,还包括在所述应用***处根据所触发的策略来控制在所述网络上对所接收到的内容项的分发。
20.根据权利要求15所述的方法,其中,与所接收到的内容项相对应的所述节点和所述相邻节点是异构的。
CN202211209381.5A 2021-10-05 2022-09-30 对异构数字内容项的基于图的标注 Pending CN115952415A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/494,628 2021-10-05
US17/494,628 US20230106416A1 (en) 2021-10-05 2021-10-05 Graph-based labeling of heterogenous digital content items

Publications (1)

Publication Number Publication Date
CN115952415A true CN115952415A (zh) 2023-04-11

Family

ID=83689638

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211209381.5A Pending CN115952415A (zh) 2021-10-05 2022-09-30 对异构数字内容项的基于图的标注

Country Status (3)

Country Link
US (1) US20230106416A1 (zh)
EP (1) EP4163805A1 (zh)
CN (1) CN115952415A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230353652A1 (en) * 2022-04-28 2023-11-02 Meta Platforms, Inc. Presenting Personalized Content during Idle Time for Assistant Systems
CN116304066B (zh) * 2023-05-23 2023-08-22 中国人民解放军国防科技大学 一种基于提示学习的异质信息网络节点分类方法
CN116561446B (zh) * 2023-07-10 2023-10-20 中国传媒大学 多模态项目推荐方法、***及设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10839304B2 (en) * 2017-01-25 2020-11-17 Pearson Education, Inc. Platform-agnostic Bayes net content aggregation system and method

Also Published As

Publication number Publication date
EP4163805A1 (en) 2023-04-12
US20230106416A1 (en) 2023-04-06

Similar Documents

Publication Publication Date Title
Wang et al. A graph-based context-aware requirement elicitation approach in smart product-service systems
US11086896B2 (en) Dynamic composite data dictionary to facilitate data operations via computerized tools configured to access collaborative datasets in a networked computing platform
US11068847B2 (en) Computerized tools to facilitate data project development via data access layering logic in a networked computing platform including collaborative datasets
US11657043B2 (en) Computerized tools to develop and manage data-driven projects collaboratively via a networked computing platform and collaborative datasets
CN107735804B (zh) 用于不同标记集合的转移学习技术的***和方法
CN107251011B (zh) 用于序列标签器的训练***和方法
US20190121807A1 (en) Computerized tools to develop and manage data-driven projects collaboratively via a networked computing platform and collaborative datasets
US20220327119A1 (en) Generating and analyzing a data model to identify relevant data catalog data derived from graph-based data arrangements to perform an action
US9990422B2 (en) Contextual analysis engine
US10430806B2 (en) Input/output interface for contextual analysis engine
US20190279101A1 (en) Flexible and scalable artificial intelligence and analytics platform with advanced content analytics and data ingestion
CN115952415A (zh) 对异构数字内容项的基于图的标注
US20150106157A1 (en) Text extraction module for contextual analysis engine
US11120093B1 (en) System and method for providing a content item based on computer vision processing of images
US20180260389A1 (en) Electronic document segmentation and relation discovery between elements for natural language processing
US11429792B2 (en) Creating and interacting with data records having semantic vectors and natural language expressions produced by a machine-trained model
Shi et al. A survey on cross-media search based on user intention understanding in social networks
Suri et al. Leveraging organizational resources to adapt models to new data modalities
Abebe et al. Overview of event-based collective knowledge management in multimedia digital ecosystems
CN114662002A (zh) 对象推荐方法、介质、装置和计算设备
Chen Semantic Matching Efficiency of Supply and Demand Text on Cross‐Border E‐Commerce Online Technology Trading Platforms
Zhou et al. Cross‐Modal Search for Social Networks via Adversarial Learning
Martin et al. Fusion-based Representation Learning Model for Multimode User-generated Social Network Content
Cao E-Commerce Big Data Mining and Analytics
Ji et al. Mobile social multimedia analytics in the big data era: an introduction to the special issue

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