CN112534424A - 在线系统中基于神经网络的内容分发 - Google Patents
在线系统中基于神经网络的内容分发 Download PDFInfo
- Publication number
- CN112534424A CN112534424A CN201980051918.XA CN201980051918A CN112534424A CN 112534424 A CN112534424 A CN 112534424A CN 201980051918 A CN201980051918 A CN 201980051918A CN 112534424 A CN112534424 A CN 112534424A
- Authority
- CN
- China
- Prior art keywords
- feature
- user
- feature vector
- content items
- content
- 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
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 53
- 238000009826 distribution Methods 0.000 title description 16
- 239000013598 vector Substances 0.000 claims abstract description 307
- 230000004931 aggregating effect Effects 0.000 claims abstract description 15
- 238000000034 method Methods 0.000 claims description 41
- 230000003993 interaction Effects 0.000 claims description 20
- 238000013527 convolutional neural network Methods 0.000 claims description 4
- 230000002776 aggregation Effects 0.000 claims 1
- 238000004220 aggregation Methods 0.000 claims 1
- 239000000284 extract Substances 0.000 abstract description 8
- 230000006835 compression Effects 0.000 description 23
- 238000007906 compression Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000012549 training Methods 0.000 description 9
- 238000003860 storage Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000006855 networking Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/535—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23418—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2408—Monitoring of the upstream path of the transmission network, e.g. client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/251—Learning process for intelligent management, e.g. learning user preferences for recommending movies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Library & Information Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
- Information Transfer Between Computers (AREA)
- Collating Specific Patterns (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
在线系统从第三方内容提供者接收内容项。对于每个内容项,在线系统将图像输入神经网络,并从神经网络的隐藏层提取特征向量。在线系统通过为每个特征值分配标签来压缩每个特征向量,该标签表示特征值是否高于阈值。在线系统识别用户已经交互的一组内容项,并通过聚合该组内容项的特征向量来确定用户特征向量。对于新的一组内容项,在线系统将内容项的压缩的特征向量与用户特征向量进行比较。在线系统基于比较来选择一个或更多个新内容项,并向用户发送选择的内容项。
Description
背景
发明领域
本公开总体上涉及在线系统的内容分发,并且具体地涉及在线系统对包括图像的内容项(content item)的基于神经网络的分发。
相关技术描述
诸如社交网络系统的在线系统允许用户关连(connect)到在线系统的其他用户并与之通信。在线系统向用户提供内容项,例如,由第三方系统提供的内容项。内容项通常包括图像或视频。在线系统旨在向可能与在线系统交互的用户提供内容项。在线系统使用诸如机器学习技术的各种技术来预测用户对给定内容项感兴趣的可能性。
内容项经常呈现给可能对内容并不感兴趣的用户,从而提供较差的用户体验。一个原因是,传统系统对于内容包含的确切信息是有限的,诸如关于内容项中呈现的图像中出现的实体的细节的确切信息是有限的。并且传统系统没有高效的方法来将潜在的数百万内容项中的内容项的细节映射到在线系统的潜在的数百万用户的特定兴趣。传统技术不能有效地将内容项分发给对所呈现的内容项的内容感兴趣的用户,从而提供较差的用户体验。
概述
在线系统将从第三方内容提供者接收的内容项分发给在线系统的用户。在线系统例如使用神经网络生成描述与内容项相关联的图像的内容特征向量,并将每个内容特征向量与在线系统的用户所关联的用户特征向量进行比较。内容特征向量包括描述图像包括特定特征的可能性的特征值阵列。基于内容项的内容特征向量和用户特征向量的比较,选择一组内容项在在线系统内呈现给用户。
在一个实施例中,在线系统从第三方内容提供者接收多个内容项。多个内容项中的每个内容项包括至少一个图像,为该图像生成特征向量。在线系统提取包括内容项的特征值阵列的特征向量,并通过为每个特征值分配标签(label)来压缩特征向量。对于压缩的特征向量,分配的标签表示相应的特征值是否高于阈值。另外,在一些实施例中,因为与分配给初始提取的特征向量的特征值范围相比,分配给压缩的特征向量的标签是二进制值,所以压缩的特征向量更有效地存储在计算机存储器内或存储设备上,并且占用更少的存储空间。在线系统识别用户过去交互过的一组内容项,并通过聚合(aggregate)对应于所识别的内容项的压缩的特征向量来确定用户特征向量。
在线系统接收新的一组内容项。对于每个内容项,在线系统将内容项的压缩的特征向量与用户特征向量进行比较。在线系统基于比较从新的一组内容项中选择一个或更多个内容项,并向在线系统的用户发送一个或更多个选择的项。
附图简述
图1是根据本发明实施例的系统环境的高级框图。
图2是根据实施例的在线系统140的系统架构的框图
图3示出了根据本发明实施例的由特征提取器维护的示例性神经网络的示意图。
图4A示出了根据实施例的为在线系统的用户生成特征向量的过程。
图4B示出了根据实施例的为在线系统的用户生成特征向量的过程的流程图。
图5A示出了根据实施例的用于向在线系统的用户分发内容的过程。
图5B示出了根据实施例的用于向在线系统的用户分发内容的过程的流程图。
附图仅出于说明的目的描绘了本发明的各种实施例。本领域中的技术人员从下面的讨论中将容易认识到本文示出的结构和方法的可选的实施例可以被采用而不偏离本文所述的原理。
详细描述
综述
内容提供者使用诸如社交网络系统的在线系统来分发内容。诸如社交网络系统的在线系统中的内容提供者可以是在线系统或第三方系统的用户。在一些实施例中,在线系统通过自动生成内容项(例如基于用户动作或其他事件生成的动态消息(news feed))来充当内容提供者。例如,社交网络系统可以基于用户上传的视频的图像生成缩略图,并且向其他用户提供缩略图以及视频的简要描述。内容提供者提供内容项,例如教育内容项、描述体育的内容项、描述当前新闻的内容项等等。根据每个内容项中包含的内容或内容类别,在线系统的用户可能对该内容项感兴趣,也可能不感兴趣。例如,一些内容项可以包括某一用户群(demographic of users)感兴趣并与之交互的内容,而另一用户群可以忽略该内容项。对于在线系统,呈现用户不感兴趣的内容项降低了在线系统提供的用户体验的质量。
此外,分发用户不太可能感兴趣的内容项会浪费计算和通信资源。例如,用于发送用户从未访问过的所有内容项的计算资源和通信资源被浪费了。因此,所公开的技术提高了在线系统的计算和通信效率。例如,与只能以2%的成功率预测用户访问内容项的可能性的在线系统S2或不执行任何预测分析并向任何用户分发任何内容的在线系统S2相比,能够以20%的成功率预测用户访问内容项的可能性的在线系统S1明显更高效。因此,与浪费计算机计算资源的任一系统S2相比,系统S1更有效地使用通信和计算资源。实施例将内容项的表示与用户对内容项的兴趣的表示进行比较,以识别具有高用户交互可能性的内容项。
系统架构
图1是根据实施例的系统环境100的框图。在图1所示的实施例中,系统环境包括用户设备120、内容提供者系统130、网络110和在线系统140。然而,在其他实施例中,系统环境100可以包括不同的和/或附加的组件。
内容提供者系统130是具有数据处理和数据通信能力的能够接收用户输入的计算设备。内容提供者系统130的示例包括台式计算机、膝上型计算机、便携式计算机、个人数字助理、智能电话或包括计算功能和数据通信能力的任何其他设备。内容提供者系统130通过网络110与在线系统140通信。在一个实施例中,内容提供者系统130执行允许内容提供者系统130的用户与在线系统140交互的客户端应用。内容提供者系统130也可以由用户使用,其向在线系统140提供与第三方相关联的内容项,以便分发给在线系统140的用户。第三方可以与第三方网站相关联。第三方网站向客户端设备提供网页,客户端设备向第三方网站发送请求,例如超文本传输协议(HTTP)请求。
类似地,用户设备120是具有数据处理和数据通信能力的能够接收输入的计算设备。在功能上,内容提供者系统130的上述描述也可以应用于用户设备120。用户设备120可以由消费在线系统140提供的服务的在线系统140的用户(例如,社交网络系统的成员)使用。在线系统140从内容提供者系统130接收的内容被定位(target)并通过用户设备120呈现给在线系统140的用户。
内容提供者系统130、用户设备120和在线系统140之间的交互通常经由网络110来执行,这实现了在用户设备120、内容提供者系统130和在线系统140之间的通信。在一个实施例中,网络110使用标准通信技术和/或协议,包括但不限于使用诸如以太网、802.11、全球微波接入互操作性(WiMAX)、3G、4G、LTE、数字用户线路(DSL)、异步传输模式(ATM)、InfiniBand和PCI Express高级交换等技术的链路。网络110还可以利用专用的、定制的或私有的通信链路。网络110可以包括使用有线和无线通信系统的局域网和/或广域网的任意组合。
如下文进一步描述的,在线系统140提供从内容提供者经由用户设备120向用户分发内容的媒介。在线系统140经由网络110从内容提供者系统130接收内容,并处理接收的内容。在处理接收到的内容之后,在线系统140可以识别应该向其提供内容的在线系统140的用户,并相应地呈现该内容。在一个实施例中,在线系统140包括内容储存器205、特征提取器210、向量压缩模块220、用户历史记录230、用户特征向量生成器235和内容比较模块245,下面将参考图2描述每一个。在一些实施例中,在线系统140包括额外的模块或组件,如将参考图2进一步描述的。
图2是根据实施例的在线系统140的系统架构的框图。在线系统140包括内容储存器205、特征提取器210、特征向量储存器215、向量压缩模块220、压缩的特征向量储存器225、用户历史记录230、用户特征向量生成器235、用户特征向量储存器240、特征比较模块245、内容排名模块250、内容分发模块255和web服务器260。
内容储存器205存储内容项,例如,从内容提供者接收的内容项(例如,从内容提供者系统130接收的内容项)。内容储存器205还存储与在线系统140中的每个内容项相关联的元数据,例如,与内容提供者系统130相关联的用户账户、与描述内容项应该被定向到的用户的属性的内容项相关联的定位标准(targeting criteria)等。
在各种实施例中,内容项包括能够被在线系统140识别和检索的各种组件。内容项的示例组件包括:标题、文本数据、图像数据、音频数据、视频数据、登陆页面、与内容项相关联的用户或任何其他合适的信息。在一些实施例中,在线系统140可以识别或检索用于呈现的内容项的一个或更多个特定组件。例如,在线系统140可以从内容项中识别图像,并提供该图像用于呈现,而不是内容项的整体。
各种内容项可以与在向用户呈现内容项中所包括的内容时内容项的内容提供者期望该用户执行的意图(objective)相关联。示例意图包括:安装与内容项相关联的应用、指示对内容项的偏好、与其他用户分享内容项、与和内容项相关联的对象进行交互、或者执行任何其他合适的交互。当来自内容项的内容被呈现给在线系统用户时,在线系统140记录被呈现内容项的用户和内容项之间的交互或者用户和与内容项相关联的对象之间的交互。另外,当在线系统用户与内容项执行满足内容项中所包括的意图的交互时,在线系统140接收来自与内容项相关联的内容提供者或用户的报酬(compensation)。
在特定实施例中,在线系统140内的内容可以与一个或更多个隐私设置相关联。尽管本文讨论的示例是在在线社交网络的上下文中,但是这些隐私设置可以应用于任何其他合适的计算系统。内容项的隐私设置(也称为“访问设置”)可以以任何合适的方式(例如与授权服务器上的索引中的内容项相关联)、以另一种合适的方式或以合适方式的任何组合被存储。对象的隐私设置可以指定在在线系统140中可以如何访问、存储或以其他方式使用(即,查看、共享、修改、复制、执行、展示(surface)或识别)内容项。在一个实施例中,在线系统140的用户可以为用户账户指定隐私设置,该隐私设置标识可以访问用户账户上的工作经历信息的一组用户,从而排除其他用户访问该信息。类似地,隐私设置可以指定不能访问与对象相关联的某些信息的用户或其他实体的“黑名单(blocked list)”,包括内容提供者。例如,用户可以指定不能访问与该用户相关联的图像的一组用户,从而排除他们访问图像,同时允许不在指定的该一组用户内的某些用户访问图像。
与内容项相关联的隐私设置可以指定允许访问或拒绝访问的任何合适的粒度。例如,可以为在线系统140的特定用户、指定分离度内的在线系统用户、特定群体或网络内的用户、或与第三方内容提供者相关联的用户指定访问或拒绝访问。本文描述的隐私设置可以描述允许访问或拒绝访问的任何合适的粒度。
在一些实施例中,与某个用户相关联的相同类型的不同内容项可以具有不同的隐私设置。与用户相关联的不同类型的对象可以具有不同类型的隐私设置。例如,第一用户可以指定第一用户的发布内容可供公众观看,但是由第一用户共享的任何图像只供在线社交网络中的第一用户的朋友使用。作为另一个示例,第一用户可以指定可以观看由第一用户发布的视频的用户群组,同时防止视频可供关连到第一用户的某些用户使用。在一些实施例中,在线系统140可以为不同的用户群组(users group)或用户群(user demographics)建立不同的隐私设置。
在一些实施例中,用户可以指定与第一用户相关联的特定类型的内容项或信息是否可以被在线系统150访问、存储或使用。例如,第一用户可以指定由第一用户通过在线系统140发送的图像不可以被在线系统140存储。作为另一示例,第一用户可以指定从第一用户发送给特定第二用户的消息不可以被在线系统140存储。作为又一个示例,第一用户可以指定通过特定应用发送的所有内容项可以由在线系统140保存。
在另外的实施例中,隐私设置可以允许第一用户指定是否可以从特定提供者访问与第一用户相关联的特定内容项或信息。隐私设置可以允许第一用户选择加入或选择退出从特定设备(例如,用户的客户端设备上的电话簿)、从特定应用(例如,消息传递应用)或从特定系统(例如,电子邮件服务器)访问对象或信息。在线系统140可以提供关于每个设备、系统或应用的默认隐私设置,和/或可以提示第一用户为每个上下文指定特定的隐私设置。例如,第一用户可以利用在线系统140的位置服务特征来提供用户附近的餐馆或其他地方的推荐。第一用户的默认隐私设置可以指定在线系统140可以使用从第一用户的客户端设备提供的位置信息来提供基于位置的服务,但是在线系统140不可以存储第一用户的位置信息或将其提供给任何内容提供者。第一用户然后可以更新隐私设置,以允许第三方图像共享应用使用位置信息,以便对照片进行地理标记(geo-tag)。
特征提取器210接收包括至少一个图像的内容项,并提取描述图像的图形属性的特征向量。在一个实施例中,特征提取器210实现自动编码器,该自动编码器获取输入,对输入进行编码,并重新生成与输入匹配的输出。例如,自动编码器可以被配置为接收序列作为输入,将该序列编码为特征向量表示,并重新生成输入序列作为输出。特征向量表示是输入序列的压缩版本,例如图像的像素。在一个实施例中,特征向量表示具有固定数量的维度(或元素),与输入序列的大小无关。特征向量可以存储为特征值阵列,每个特征值描述图像的特征或属性。例如,特征向量包括描述蓝色存在的一个特征值和描述篮球存在的第二特征值。可以为每个特征值分配一个整数标签,用于描述该特征的置信度或严重程度。在一个实施方式中,特征值是限定的范围内的整数(whole number),其中更接近特定极限(例如,范围的上限)的数字指示图像中该特征存在的更高置信度。在另一实施方式中,特征值是两个预定值(例如0和1)之间的小数(fraction),其中更接近1的值表示更高的置信度。下面参考向量压缩模块220和用户特征向量生成器235进一步描述特征向量及其应用。
为了提取特征向量,特征提取器210使用神经网络来生成具有表示图像特征的一个或更多个维度的向量表示。神经网络包括输入层和输出层以及可选的一个或更多个隐藏层。在一个实施例中,神经网络是将图像作为输入的卷积神经网络。在一个实施例中,神经网络是自动编码器,其被配置为将图像作为输入,并且生成输入图像作为输出。神经网络减少了在隐藏层中表示图像的维度。在一些示例中,与输入图像相比,输出图像可以具有较低的分辨率。
特征提取器210从向神经网络的输出层提供输入的神经网络的隐藏层中选择特征向量。在一个实施例中,特征提取器210接收其中大多数图像未被标记的数据集。在一次迭代中,仅使用来自原始数据集的标记的样本来训练神经网络。在一个实施方式中,基于特征值与阈值特征值的比较来分配每个样本的标签。在替代实施方式中,基于用户是否已经与特征向量的内容交互或与特征向量相关的指示,将标签分配给训练数据集的每个特征向量。在每次迭代结束时,经过训练的神经网络在整个数据集上进行正向过程(forwardpass),以生成表示特定层的样本数据的特征向量。这些数据样本然后被标记,并被添加到标记的样本集,该样本集被提供作为下一次训练迭代的输入数据。一旦被提取,内容项的特征向量被存储在特征向量储存器215中。下面参考图3进一步描述神经网络和特征向量。
特征向量储存器215的特征向量被输入到向量压缩模块220,以被重新配置成压缩的特征向量,使用在计算机存储器中比未压缩的特征向量占据更少存储空间的格式来表示该压缩的特征向量。向量压缩模块220确定每个特征值的阈值,将潜在特征值的范围二分(bifurcate)为指示特征存在于图像中的第一范围和指示特征不存在于图像中的第二范围。任何高于阈值的值被分配指示该特征存在的公共标签,而任何低于阈值的值被分配指示该特征不存在的替代标签。在替代实施例中,低于阈值的值被分配指示特征存在的公共标签,而高于阈值的值被分配指示特征不存在的替代标签。
结果,具有不同特征值阵列的特征向量被处理成具有二进制特征值阵列的压缩的特征向量。例如,对于阈值为0.6的特征值,0.0和0.6之间的任何特征值都被分配“0”,而0.6和1之间的特征值被分配“1”。作为另外的示例,在阈值为0.5时,特征向量<0.1,0.6,0.7,0.2>被压缩成压缩的特征向量<0,1,1,0>。鉴于存储二进制特征值阵列所需的减少的数据量,与初始特征向量相比,压缩的特征向量更有效地存储在计算机存储器中。这种压缩的特征向量存储在压缩的特征向量储存器225中。
在特征值等于阈值的实施例中,可以基于由在线系统140的管理员或授权人员规定的一组规则来分配适当的标签。在一些实施例中,阈值是从在线系统140的授权用户接收的。在替代实施方式中,阈值由在线系统140(例如使用机器学习技术)基于描述分配给先前图像或内容项的标签的反馈来确定。机器学习技术的示例包括但不限于线性回归、决策树、支持向量机、分类器(例如朴素贝叶斯分类器(Bayes classifier))、模糊匹配和梯度增强。
用户历史记录230存储描述用户已经与之交互或表示出兴趣的内容项的历史记录。在线系统140的用户和内容项之间的交互的示例包括但不限于查看内容项、悬停在内容项上方、点击内容项、转发内容项或保存内容项。在一些实施方式中,可以基于交互的类型为内容项和用户之间的交互分配权重。例如,如果用户保存第一内容项并点击第二内容项,则第一内容项可以被分配权重,该权重指示与第二内容项相比,用户更大的兴趣级别。
用户特征向量生成器235从压缩的特征向量储存器225接收用户已经与之交互或表示感兴趣的内容项的压缩的特征向量,并将它们聚合成表示用户可能感兴趣的图像特征的用户特征向量。一旦被生成,用户特征向量的阵列包括描述用户已经与之交互的图像是否反映该特征的二进制标签。在一个实施例中,用户特征向量生成器235通过对描述图像或内容项的多个压缩的特征向量中的相同特征的特征值应用二进制“与”运算符,来将压缩的特征向量聚合成用户特征向量。使用二进制“与”运算,用户特征向量生成器235从压缩的特征向量中移除在用户交互的图像中非公共的特征值,并将剩余的特征值聚合到用户特征向量中。在一些实施方式中,用户特征向量是通过将尚未压缩的特征向量聚合成二进制特征阵列来生成的。在一些实施例中,如果超过阈值百分比的用户交互的内容项具有相应特征的值V,则用户特征向量生成器235将特定值V分配给用户特征向量的特征。例如,如果超过90%的用户交互的内容项具有值为1的特征F,则用户特征向量生成器235在用户特征向量中为该特征分配值1。在其他实施例中,用户特征向量生成器235基于描述内容项的特征的统计信息使用其他标准来确定相应用户特征的值。一旦被生成,用户特征向量被存储在用户特征向量储存器240中。下面参考图4A-图4B进一步描述用户特征向量生成器235。
特征比较模块245从用户特征向量储存器240接收用户特征向量,并从压缩的特征向量储存器225接收表示内容项的图像的压缩的特征向量。压缩的特征向量表示存储在内容储存器205中的内容项的图像,其是要呈现给在线系统140的用户的候选。用户特征向量表示基于用户已经交互的内容项的历史记录的聚合特征向量。特征比较模块245比较用户特征向量和压缩的特征向量的相应特征值,并基于该比较确定分数。与共享少量特征值的压缩的特征向量相比,与用户特征向量共享大量特征值的压缩的特征向量得分更高。由于两个序列的特征向量具有相同数量的元素,因此压缩的特征向量表示允许对可能具有不同数量元素的两个序列进行高效的比较。因此,实施例使用诸如欧几里德距离或汉明距离度量的距离度量来比较序列的特征向量表示。
使用每个内容项的分数,内容排名模块250按照从最高分数到最低分数的顺序对内容项进行排名,或者在替代实施方式中按照从最低分数到最高分数顺序对内容项进行排名。从由内容排名模块250生成的排名列表中,内容分发模块255选择并呈现与在线系统140的用户相关的内容项。内容分发模块255识别并排除对应于低比较分数的内容项。内容分发模块255从剩余的内容项中选择一个或更多个剩余的内容项。在一个实施例中,内容分发模块255将内容的分发限制到比较分数高于阈值分数的内容项。
web服务器260通过网络110将在线系统140链接到一个或更多个用户设备120以及一个或更多个提供者130。web服务器260提供网页以及其他内容,诸如XML等。web服务器260可以接收消息并在在线系统140和用户设备120之间路由该消息(例如即时消息、排队消息(例如,电子邮件)、文本消息、短消息服务(SMS)消息或使用任何其他合适的消息传送技术发送的消息)。用户可以向web服务器260发送上传存储在内容储存器205中的信息(例如,图像或视频)的请求。另外,web服务器260可以提供应用编程接口(API)功能,以将数据直接发送到本机客户端设备操作系统,诸如ANDROIDTM或BlackberryOS。
为了从与内容储存器205或用户历史记录230的内容项相关联的图像中提取特征向量,特征提取210实现神经网络来接收图像作为输入。图3示出了根据本发明实施例的由特征提取器(例如,特征提取器210)维护的示例性神经网络的示意图300。神经网络310存储在与在线系统(例如,在线系统140)相关联的特征提取器210中。神经网络310包括输入层320、一个或更多个隐藏层330a-330n和输出层340。神经网络310的每一层(即,输入层320、输出层340和隐藏层330a-330n)包括一组节点,使得输入层320的一组节点是神经网络310的输入节点,输出层340的一组节点是神经网络310的输出节点,并且每个隐藏层330a-330n的一组节点是神经网络310的隐藏节点。通常,一层的节点可以向另一层提供输入,并且可以从另一层接收输入。每个隐藏层的节点与两个层(前一层和下一层)相关联。隐藏层接收前一层的输出作为输入,并将隐藏层生成的输出作为输入提供给下一层。节点特征可以表示数据,诸如像素和使用神经网络310处理的其他数据。节点特征值可以是与神经网络310的节点相关联的任何值或参数。神经网络310也可以被称为深度神经网络。
每个节点都有一个或更多个输入和一个或更多个输出。节点的一个或更多个输入中的每一个包括到前一层中的相邻节点的连接,并且节点的输出包括到下一层中的一个或更多个节点中的每一个的连接。也就是说,节点的一个或更多个输出中的每一个都是下一层中的节点的输入,使得每个节点经由其输出连接到下一层中的每个节点,并且经由其输入连接到前一层中的每个节点。这里,节点的输出由激活函数定义,该激活函数将一组权重应用于神经网络310的节点的输入。示例激活函数包括恒等函数(identity function)、二进制阶跃函数(binary step function)、逻辑函数(logistic function)、TanH函数、ArcTan函数、线性整流函数(rectilinear function)或其任意组合。通常,激活函数是能够随着神经元的一个或更多个输入值的变化而在神经元的输出中提供平滑过渡的任何非线性函数。在各种实施例中,节点的输出与对应于由节点执行的计算的一组指令相关联。这里,对应于神经网络的多个节点的一组指令可以由一个或更多个计算机处理器执行。
在一个实施例中,输入向量310是描述与内容项相关联的图像的向量。神经网络310的隐藏层330a-330n生成输入向量的数字向量表示,也称为嵌入。数字向量是映射到潜在空间(latent space)(例如,潜在空间156)的输入向量的表示。
神经网络310的节点之间的每个连接(例如,网络特征)可以由权重(例如,在训练/学习过程中确定的数值参数)来表示。在一些实施例中,两个节点之间的连接是网络特征。连接的权重可以表示连接的强度。在一些实施例中,一个级别的节点可以仅连接到相邻层级分组级别中的一个或更多个节点。在一些实施例中,网络特征包括神经网络310的节点之间的连接的权重。网络特征可以是与神经网络的节点连接相关联的任何值或参数。
在每次训练迭代期间,神经网络310生成表示不同层的样本输入数据的特征向量。特征向量表示对于不同的输入数据集具有相同数量的元素,即使对应于输入数据集的数据量具有不同的大小。
生成用户特征向量
图4A-图4B描述了根据实施例为在线系统140的用户生成特征向量的过程。图4A呈现了遵循用户特征向量生成的示意图。如上所述,用户历史记录230存储内容项,包括用户先前在在线系统140中交互过的至少一个图像。对于每个内容项,例如第一用户图像410a、第二用户图像410b和第三用户图像410c的图像被输入到神经网络310的输入层。在实施例中,输入图像被编码为向量,使得向量的每个元素描述图像的像素。对于每个用户图像410,神经网络310从隐藏层提取特征向量,例如对应于用户图像410a-410c的特征向量430a、430b和430c。对于每个特征向量430a-430c,神经网络310从相同的特征F1、F2、F3和F4提取特征值。如上所述,特征向量430a-430c的特征值是描述神经网络310确定图像中存在的特征的确定性的范围内的整数值。例如,特征向量430a的F1、F2、F3和F4分别具有特征值0.1、0.7、0.8和0.2。特征向量430b的F1、F2、F3和F4分别具有特征值0.6、0.7、0.8和0.7。特征向量430c的F1、F2、F3和F4分别具有特征值0.7、0.8、0.2和0.3。
一旦从隐藏层被提取,特征向量由向量压缩模块220处理以生成压缩向量440a-440c,每个压缩向量440a-440c基于相应的特征向量430a-430c和用户图像410a-410c。在一个实施例中,向量压缩模块220接收阈值,特征值与该阈值进行比较。基于每个特征值与阈值的比较,向量压缩模块220通过用指示特征值是否满足阈值水平的二进制标签替换特征值范围来压缩特征向量。
继续特征向量430a-430c的F1、F2、F3和F4的示例值,在阈值为0.5时,与压缩向量440a-440c相关联的二进制标签是0和1,其中0表示低于阈值0.5的特征值(即,在0.0至0.5的范围内),并且1表示高于阈值0.5的特征值(即,在0.5至1的范围内)。因此,对于特征向量430a,F1和F4被替换为标签“0”(0.1<0.5、0.2<0.5),而F2和F3被替换为标签“1”(0.7>0.5、0.8>0.5)。根据压缩向量440a,可以解释为第一用户图像410a包括对应于F2和F3(而非F1或F4)的特征。对于特征向量430b,F1、F2、F3和F4被替换为标签“1”(0.6>0.5、0.7>0.5、0.8>0.5以及0.9>0.5)。因此,压缩向量440b指示第二用户图像410b包括对应于F1、F2、F3和F4的特征。对于特征向量430c,F1和F2被替换为标签“1”(0.7>1、0.8>1),而F3和F4被替换为标签“0”(0.2<1、0.3<1)。因此,压缩向量440c指示第三用户图像410c包括对应于F1和F2(而非F3或F4)的特征。
在另一个实施例中,向量压缩模块220是学习的变换函数,其接收特征向量并将特征向量的每个特征值转变成二进制标签,例如“0”或“1”。向量压缩模块220可以识别两个或更多个特征值范围,其以很大的可能性指示特征存在或不存在,并且将“0”或“1”标签分配给该范围内的任何特征值。可以使用包括先前准确压缩的特征向量的训练数据集来训练向量压缩模块220。可以基于授权用户的检查向训练数据集中的特征向量分配二进制标签。使用训练数据集,向量压缩模块220生成所有潜在特征值和二进制标签之间的映射,使得该映射被引用并用于将二进制标签分配给每个提取的特征向量。在另一个实施例中,向量压缩模块220基于训练数据集识别两个特征值聚类(cluster):一个聚类包括指示特征存在的特征值,并且第二个聚类包括指示特征不存在的特征值。在接收到特征向量之后,向量压缩模块220可以基于所识别的聚类对,向每个特征值分配二进制标签。在另一个实施例中,为特征生成的标签具有两个以上的可能值,例如四个或八个值。因此,该特征需要两位(bit)或三位来分别表示四个或八个值。结果,向量压缩模块220实现了压缩,因为用于表示特征的位数可以从8位或16位减少到2位或3位。在一个实施例中,向量压缩模块220是经训练的模型,其将输入图像映射到多个图像聚类之一,例如四个聚类之一。
如图所示,用户特征向量生成器235聚合压缩的特征向量440a-440c以生成用户特征向量450。在一些实施例中,可以聚合更多或更少的压缩向量440a-440c来生成用户特征向量450。因为用户特征向量450表示用户已经与之交互的项的集合,所以用户特征向量450可以以各种确定性水平描述用户对内容项的各种特征的兴趣。在一个实施例中,用户特征向量450包括二进制标签,因此与如参考压缩向量440a-440c所述的最初生成的特征向量430a-430c相比,在计算机存储器中需要更少的存储空间。在替代实施例中,用户特征向量450包括整数范围(例如百分比),如上文参考特征向量储存器215的最初提取的特征向量所述。在这样的实施例中,用户特征向量450内的每个特征值可以与阈值进行比较,该阈值将值的范围二分成两部分,并且如上所述将二进制标签分配给二分后范围的每一侧。或者,内容特征值和用户特征值都可以是整数或浮点值。用户特征值是通过聚合相应的内容特征值并可选地归一化聚合值来获得的,使得内容特征值和用户特征值是可比较的。系统将每个内容特征值与相应的用户特征值进行比较,以确定用户是否可能对该内容项感兴趣。在又一实施例中,用户特征值和内容特征值是可比较的字母数字值。如上所述,在一个实施方式中,用户特征向量生成器235实现二进制“与”运算符来生成描述用户的特征向量。因为二进制“与”运算要求两个输入都是1,以输出为1的结果(例如,第一输入为1且第二输入为0导致结果输出为0,第一输入为0且第二输入为0导致结果输出为0,但是第一输入为1且第二输入为1导致结果输出为1),所以用户特征向量450仅包括存储在历史记录内的所有图像中存在的特征,因此具有更高的准确度。所示实施例描述了二进制“与”运算的实施方式。因为在压缩向量440a、440b和440c的每一个中只有F2被分配了标签1,所以用户特征向量450只包括特征F2的标签“1”。因为F1不存在于压缩向量440a中,并且因此被分配了标签“0”,所以“与”运算导致用户特征向量450中F1的标签“0”。类似地,F3和F2都不存在于压缩向量440c中,因此被分配标签“0”,并且“与”运算导致用户特征向量450中F3和F4的标签“0”。在该实施例中,用户特征向量描述了从其提取特征向量的每个图像中存在的特征。因此,用户特征向量450描述了用户已经表达了高度兴趣的内容项的一组特征。在一个实施例中,用户特征向量生成器235确定用户与之交互的内容项的特征的值的百分比。用户特征向量生成器235通过将百分比值与阈值进行比较,将用户特征的值确定为二进制值。在一个实施例中,用户特征向量生成器235确定对应于用户与之交互的内容项的特征的加权聚合值,以确定该特征的分数。分配给内容项的权重可以取决于交互的类型,例如,与表示访问内容项的用户交互相比,发布评论的用户交互被分配更高的权重。用户特征向量生成器235可以进一步使用阈值来将分数转换为二进制值,例如,大于或等于阈值的分数值被转换为1,并且低于阈值的分数值被转换为0。
在替代实施方式中,用户特征向量生成器235实现二进制“或”运算来生成描述用户的特征向量。因为二进制“或”运算要求只有一个输入是1就输出为1的结果(例如,第一输入为1且第二输入为0导致结果输出为1,第一输入为1且第二输入为1导致结果输出为1,但是第一输入为0且第二输入为0导致结果输出为0),用户特征向量450包括存储在历史记录中的至少一个图像中存在的特征,因此具有较低的准确度。尽管准确度较低,但是在该实施方式中,用户特征向量450描述了用户已经表示出兴趣的更广泛的特征集合。假设使用压缩向量440a-440c的所示标签实现二进制“或”运算符来生成用户特征向量450,则用户特征向量450将改为包括F1、F2、F3和F4中每一个的标签“1”,因为所有的特征F1、F2、F3和F4都存在于与压缩向量440b相关联的第二用户图像410b中。
在另一实施方式中,用户特征向量生成器235可以基于用户已经交互的内容的特征向量来确定每个特征的二进制标签的平均值,并将该平均值与阈值特征值进行比较。高于阈值特征值的平均值可被分配标签“1”,并且低于阈值特征值的平均值可被分配标签“0”。从一组二进制标签确定的平均值的范围在0.0和1.0之间,例如0.6。如果从授权用户接收的或使用机器学习模型随时间确定的阈值特征值是0.5,则该特征将在用户特征向量中被分配标签“1”。如果阈值特征值为0.7,则该特征将被分配标签“0”。
图4B描述了根据一个实施方式的用于生成用户特征向量的过程的流程图。在特征提取器210实现神经网络310并从隐藏层330提取特征向量的实施方式中,使用在线系统140中存储的一组内容项来训练460卷积神经网络310。神经网络310的训练可以使用不同的内容项在多次迭代中进行。在线系统140记录465用户与在线系统140中的内容项交互的历史。如上所述,内容项和用户之间的交互可以采取各种形式,但是在每种情况下都表达了用户对内容项的兴趣。不同类型的交互可以表达不同级别的兴趣,例如,将内容项转发给另一个用户可以指示比仅仅查看内容项更高的兴趣级别。在一些实施方式中,用户历史记录230不仅存储用户已经与之交互的内容项的记录,还存储要提供给特征提取器210的内容项的表示。如本文所述,存储在用户历史记录230中的内容项被称为“用户内容项”。当向用户呈现来自内容储存器205的新内容项时,以周期性间隔动态更新用户历史记录230。例如,当内容分发模块255向用户呈现内容项时,如将参考图5A-图5B进一步描述的,用户历史记录230被更新以包括该内容项。用户历史记录230可以存储内容项和由在线系统140的其他用户生成的已经呈现给用户的内容项。
对于每个用户内容项,特征提取器210从神经网络310的隐藏层提取470特征向量。向量压缩模块220将二进制标签分配给提取的特征向量的每个特征值,以压缩特征向量的数据,并减少在计算机存储器中存储特征向量所需的存储量。例如,向量压缩模块220分配二进制标签“0”和“1”,二进制标签“0”和“1”分别表示特征值低于置信阈值和高于置信阈值。用户特征向量生成器235通过对每个特征值的标签执行二进制运算并用二进制运算的结果的特征值填充用户特征向量,将每个用户内容项的压缩向量聚合为用户特征向量。步骤470、475和480的描述与上述特征提取器210、向量压缩模块220、用户特征向量生成器235和图4A的描述一致。
向在线系统用户分发内容
图5A-图5B是根据本发明的实施例的用于向在线系统140的用户分发内容的过程的流程图。
图5A-图5B描述了根据实施例的用于向在线系统140的用户分发内容的过程。图5A呈现了遵循比较用户特征向量420和内容特征向量520以向在线系统140的用户分发内容的示意图。如上所述,内容项510包含以在线系统140的用户为目标的多个内容项510,并且每个内容项510包括待由用户查看的至少一个图像。内容项可以描述由具有在线系统140的账户的第三方提供者创建或提供的用户可能感兴趣的商品、服务、新闻或附加信息。在一些实施例中,第三方提供者可以是个体实体或组织实体,例如企业、学校或项目。为了提高内容项510以用户为目标的效率以及用户将与内容项510交互以表达他们的兴趣的可能性,针对用户历史上表现出兴趣的某些特征来分析内容项510内的图像。如上所述,通过比较用户特征向量和内容特征向量来解决该内容分发问题。
内容项510被输入到特征提取器210,特征提取器210生成内容特征向量520。与关于图4A的用户特征向量的向量压缩模块220的描述一致,向量压缩模块220将二进制标签分配给内容特征向量的特征值,产生如图所示的内容特征向量520。用户特征向量520和内容特征向量520的压缩的特征向量都被输入到特征比较模块245。在一个实施例中,特征比较模块245可以被配置为接收用户特征向量420和内容特征向量520的非压缩的特征向量。
特征比较模块245接收用户特征向量420和内容特征向量520,并比较每个特征的二进制特征值。基于用户特征向量420和内容特征向量520的二进制值之间的相似度的数量,特征比较模块245确定内容项510的比较分数。特征比较模块245可以通过递增指示用户特征向量420和内容特征向量520之间的特征的存在的匹配二进制标签的数量来确定内容项510的比较分数。例如,如图5A所示的用户特征向量420和内容特征向量520将具有为3的分数,因为F2、F5和F6在用户特征向量420和内容特征向量520的每一个中被分配了标签“1”。
在一个实施例中,特征比较模块245可以根据特征值对用户的重要性来加权内容的特征值。例如,用户历史记录230可以指示用户对包括表示狗的特征的图像比对包括表示球的特征的图像更感兴趣。结果,包括狗和球的内容项可以比只包括狗的图像得分高,而只包括狗的图像比只包括球的图像得分高。在一个实施例中,系统基于描述用户与之交互的所有内容项的特征值的统计信息来确定特征值的权重。例如,如果用户交互的所有内容项具有一致的高特征值,则系统为该特征值分配更高的权重。相比之下,如果特征值在值的范围内更均匀地分布,则系统确定该特定特征对于用户来说不是非常重要,并为该特征分配较低的权重。
基于存储在内容储存器205中的每个内容项的比较分数,内容排名模块250以升序或降序对内容项进行排名。在一个实施例中,内容排名模块250选择内容储存器205中具有最高比较分数的内容项510。在替代实施例中,内容排名模块250可以根据在线系统140可以向用户呈现内容的机会的数量来选择多个内容项510。最后,内容分发模块255接收有资格呈现给用户的内容项510,并通过在线系统140分发内容。
图5B描述了根据一个实施方式的用于生成用户特征向量的过程的流程图。在用户特征向量420是在内容项的比较之前生成的实施方式中,特征比较模块245访问560用户特征向量,内容特征向量将与该用户特征向量进行比较。与关于用户内容项的描述一致,特征提取器210从内容储存器205接收565内容项,并使用神经网络310提取570内容项的特征向量。向量压缩模块220向内容特征向量520的每个特征值分配575二进制标签。使用用户特征向量420和内容特征向量520的相应特征的二进制标签,特征比较模块245将内容项的特征向量与用户特征向量进行比较580,并基于匹配特征的权重数来确定比较分数。内容排名模块250基于在线系统140向用户呈现内容项的可用机会的数量和每个内容项的比较分数来选择590一个或更多个内容项,并且内容分发模块255向在线系统140的用户呈现595该内容项。
可选实施例
为了说明的目的提出了实施例的前述描述;它并不旨在是无遗漏的或将专利权限制到所公开的精确形式。相关领域中的技术人员可以认识到,按照上面的公开,许多修改和变化是可能的。
本描述的一些部分从对信息的操作的算法和符号表示方面描述了实施例。数据处理领域的技术人员通常使用这些算法描述和表示来向本领域的其他技术人员有效地传达他们工作的实质。这些操作虽然在功能上、计算上或逻辑上进行了描述,但应理解为将由计算机程序或等效电路、微代码等来实现。此外,将操作的这些布置称为模块有时候也被证明是方便的而不失一般性。所描述的操作和它们的相关模块可以体现在软件、固件、硬件或其任何组合中。
可以利用一个或更多个硬件或软件模块单独地或与其他设备组合地来执行或实现本文描述的任何步骤、操作或过程。在一个实施例中,利用包括包含计算机程序代码的计算机可读介质的计算机程序产品来实现软件模块,该计算机程序代码可以由计算机处理器执行,用于执行所描述的任何或全部步骤、操作或过程。
实施例也可以涉及用于执行本文的操作的装置。该装置可以被特别构造成用于所需的目的,和/或它可以包括由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算设备。这种计算机程序可以存储在非暂时性的、有形的计算机可读存储介质中,或者任何类型的适于存储电子指令的介质中,其可以耦合到计算机系统总线。此外,说明书中提到的任何计算系统可以包括单个处理器,或者可以是采用多处理器设计来提高计算能力的架构。
实施例也可以涉及由本文所述的计算过程产生的产品。这样的产品可以包括由计算过程产生的信息,其中信息被存储在非暂时性的、有形计算机可读存储介质上且可以包括计算机程序产品或本文所述的其他数据组合的任何实施例。
最后,在说明书中使用的语言主要为了可读性和指导目的而被选择,并且它可以不被选择来描绘或限制专利权利。因此,意图是专利权的范围不受该详细描述限制,而是受基于此的申请所发布的任何权利要求限制。因此,实施例的公开内容意图对本专利权的范围是说明性的,而不是限制性的,在所附的权利要求中阐述了本专利权的范围。
Claims (20)
1.一种计算机实现的方法,包括:
从第三方内容提供者接收多个内容项,每个内容项包括至少一个图像;
对于所述多个内容项中的每一个内容项:
将对应于所述内容项的图像作为输入提供给神经网络;
从所述神经网络的隐藏层提取特征向量,其中,所述特征向量包括特征值阵列;
通过将标签分配给每个特征值来压缩所述特征向量,其中,所述标签表示相应的特征值是否高于阈值;
识别用户交互的一组内容项;
通过聚合对应于所述一组内容项的特征向量来确定用户特征向量;
接收新的一组内容项;
对于所述新的一组内容项中的每个内容项,将所述内容项的压缩的特征向量与所述用户特征向量进行比较;
基于对应于所述内容项的压缩的特征向量与所述用户特征向量的比较,来从所述新的一组内容项中选择一个或更多个内容项;和
向用户发送一个或更多个选择的内容项。
2.根据权利要求1所述的方法,其中,所述用户特征向量包括分配给所述向量的每个特征的标签阵列,并且表示与在线系统的用户相关联的一组兴趣。
3.根据权利要求1所述的方法,其中,聚合特征向量来确定用户特征向量包括:
对于所述一组内容项中的每个内容项,识别所述压缩的特征向量中的具有指示相应的特征值低于阈值的标签的特征;和
从所述压缩的特征向量中移除所识别的特征;和
对于剩余特征,将所述多个内容项中的所有内容项共有的特征聚合到所述用户特征向量中。
4.根据权利要求1所述的方法,其中,聚合特征向量来确定用户特征向量包括:
确定所述特征向量的每个特征值的平均值,所述平均值基于所述一组内容项的特征向量;和
基于所述平均值和阈值特征值的比较来将所述标签分配给每个特征。
5.根据权利要求1所述的方法,其中,分配给压缩的特征向量中的特征值的标签是指示相应的特征值是否高于阈值的二进制标签。
6.根据权利要求1所述的方法,其中,使用二进制“与”运算符将内容项的压缩的特征向量与所述用户特征向量进行比较。
7.根据权利要求1所述的方法,其中,所述压缩的特征向量比所述特征向量在计算机存储器中占据更少的存储空间。
8.根据权利要求1所述的方法,其中,所述神经网络是卷积神经网络。
9.根据权利要求1所述的方法,其中,使用一组内容项来训练所述神经网络,每个内容项与表示相应的特征值是否高于阈值的预定标签相关联。
10.一种计算机实现的方法,包括:
从第三方内容提供者接收多个内容项,每个内容项包括至少一个图像;
对于所述多个内容项中的每一个内容项:
提取每个内容项的特征向量,其中,所述特征向量包括特征值阵列;
通过将标签分配给每个特征值来压缩所述特征向量,其中,所述标签是表示相应的特征值是否高于阈值的二进制标签;
从特征向量数据库中访问用户的用户特征向量,所述用户特征向量表示多个压缩的特征向量的聚合,每个压缩的特征向量包括分配给每个特征值的二进制标签并对应于用户先前交互的图像;
比较每个压缩的特征向量和用户特征;
基于对应于所述内容项的压缩的特征向量与所述用户特征向量的比较,来从接收的多个内容项中选择一个或更多个内容项;和
向用户发送一个或更多个选择的内容项。
11.根据权利要求10所述的计算机实现的方法,还包括:
接收用户交互的一组内容项,每个内容项包括至少一个图像;
对于所述一组内容项中的每个内容项,提取特征向量,其中,所述特征向量包括描述与内容项相关联的图像中每个特征的存在的特征值阵列;
对于所述一组内容项中的每个内容项,通过给每个特征值分配标签来压缩所述特征向量,其中,所述标签是表示相应的特征值是否高于阈值的二进制标签;和
通过聚合所述一组内容项中每个内容项的压缩的特征向量来生成所述用户特征向量。
12.根据权利要求11所述的计算机实现的方法,其中,聚合特征向量来确定用户特征向量包括:
对于所述一组内容项中的每个内容项,识别所述压缩的特征向量中的具有指示相应的特征值低于阈值的标签的特征;和
从所述压缩的特征向量中移除所识别的特征;和
对于剩余特征,将所述多个内容项中的所有内容项共有的特征聚合到所述用户特征向量中。
13.根据权利要求11所述的计算机实现的方法,其中,聚合特征向量来确定用户特征向量包括:
确定所述特征向量的每个特征值的平均值,所述平均值基于所述一组内容项的特征向量;和
基于所述平均值和阈值特征值的比较来将所述标签分配给每个特征。
14.根据权利要求10所述的计算机实现的方法,其中,使用二进制“与”运算符将内容项的压缩的特征向量与所述用户特征向量进行比较。
15.根据权利要求10所述的计算机实现的方法,其中,所述压缩的特征向量比所述特征向量在计算机存储器中占据更少的存储空间。
16.根据权利要求10所述的计算机实现的方法,其中,与每个内容项相关联的图像被作为输入提供给神经网络,以提取所述特征向量。
17.根据权利要求16所述的计算机实现的方法,其中,所述神经网络是卷积神经网络。
18.根据权利要求16所述的计算机实现的方法,其中,使用一组内容项来训练所述神经网络,每个内容项与表示相应的特征值是否高于阈值的预定标签相关联。
19.一种存储指令的非暂时性计算机可读介质,包括:
从第三方内容提供者接收多个内容项,每个内容项包括至少一个图像;
对于所述多个内容项中的每一个内容项:
将对应于所述内容项的图像作为输入提供给神经网络;
从所述神经网络的隐藏层提取特征向量,其中,所述特征向量包括特征值阵列;
通过将标签分配给每个特征值来压缩所述特征向量,其中,所述标签表示相应的特征值是否高于阈值;
识别用户交互的一组内容项;
通过聚合对应于所述一组内容项的特征向量来确定用户特征向量;
接收新的一组内容项;
对于所述新的一组内容项中的每个内容项:
将所述内容项的压缩的特征向量与所述用户特征向量进行比较;和
基于所述比较来确定所述内容项的分数;
基于所述内容项的分数值来从所述新的一组内容项中选择一个或更多个内容项;和
向用户发送一个或更多个选择的内容项。
20.根据权利要求19所述的非暂时性计算机可读介质,其中,聚合特征向量来确定用户特征向量包括:
对于所述一组内容项中的每个内容项,识别所述压缩的特征向量中的具有指示相应的特征值低于阈值的标签的特征;和
从所述压缩的特征向量中移除所识别的特征;和
对于剩余特征,将所述多个内容项中的所有内容项共有的特征聚合到所述用户特征向量中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/054,871 | 2018-08-03 | ||
US16/054,871 US10602207B2 (en) | 2018-08-03 | 2018-08-03 | Neural network based content distribution in an online system |
PCT/US2019/044914 WO2020028808A1 (en) | 2018-08-03 | 2019-08-02 | Neural network based content distribution in an online system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112534424A true CN112534424A (zh) | 2021-03-19 |
Family
ID=67766270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980051918.XA Pending CN112534424A (zh) | 2018-08-03 | 2019-08-02 | 在线系统中基于神经网络的内容分发 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10602207B2 (zh) |
EP (1) | EP3794463A1 (zh) |
CN (1) | CN112534424A (zh) |
WO (1) | WO2020028808A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579079A (zh) * | 2024-01-15 | 2024-02-20 | 每日互动股份有限公司 | 一种数据压缩的处理方法、装置、设备及介质 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11228817B2 (en) | 2016-03-01 | 2022-01-18 | Comcast Cable Communications, Llc | Crowd-sourced program boundaries |
US11087170B2 (en) * | 2018-12-03 | 2021-08-10 | Advanced Micro Devices, Inc. | Deliberate conditional poison training for generative models |
US11113588B2 (en) * | 2019-10-02 | 2021-09-07 | United States Of America As Represented By The Secretry Of The Navy | Randomization-based hierarchical and associatively assisted vector learning for machine vision |
US11495038B2 (en) | 2020-03-06 | 2022-11-08 | International Business Machines Corporation | Digital image processing |
US11494588B2 (en) | 2020-03-06 | 2022-11-08 | International Business Machines Corporation | Ground truth generation for image segmentation |
US11556852B2 (en) * | 2020-03-06 | 2023-01-17 | International Business Machines Corporation | Efficient ground truth annotation |
US11361146B2 (en) | 2020-03-06 | 2022-06-14 | International Business Machines Corporation | Memory-efficient document processing |
US20210365965A1 (en) * | 2020-05-25 | 2021-11-25 | Microsoft Technology Licensing, Llc | Self-supervised system generating embeddings representing sequenced activity |
US11789944B2 (en) * | 2021-04-12 | 2023-10-17 | Microsoft Technology Licensing, Llc | User-specific computer interaction recall |
US20220382424A1 (en) * | 2021-05-26 | 2022-12-01 | Intuit Inc. | Smart navigation |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101064009A (zh) * | 2006-04-28 | 2007-10-31 | 夏普株式会社 | 图像处理装置、图像形成装置、图像读取装置及图像处理方法 |
US20100166266A1 (en) * | 2008-12-30 | 2010-07-01 | Michael Jeffrey Jones | Method for Identifying Faces in Images with Improved Accuracy Using Compressed Feature Vectors |
US20110271146A1 (en) * | 2010-04-30 | 2011-11-03 | Mitre Corporation | Anomaly Detecting for Database Systems |
CN102254188A (zh) * | 2011-08-04 | 2011-11-23 | 汉王科技股份有限公司 | 掌纹识别方法及装置 |
US20130144414A1 (en) * | 2011-12-06 | 2013-06-06 | Cisco Technology, Inc. | Method and apparatus for discovering and labeling speakers in a large and growing collection of videos with minimal user effort |
CN104573696A (zh) * | 2014-12-29 | 2015-04-29 | 杭州华为数字技术有限公司 | 用于处理人脸特征数据的方法和装置 |
CN104823212A (zh) * | 2012-11-30 | 2015-08-05 | 谷歌公司 | 提供包括从社交网络得到的信息的内容的系统和方法 |
CN104956365A (zh) * | 2012-11-30 | 2015-09-30 | 脸谱公司 | 基于在线系统中的用户动作询问特征 |
US20160048887A1 (en) * | 2014-08-18 | 2016-02-18 | Fuji Xerox Co., Ltd. | Systems and methods for gaining knowledge about aspects of social life of a person using visual content associated with that person |
CN106133721A (zh) * | 2014-03-17 | 2016-11-16 | 微软技术许可有限责任公司 | 并行决策树处理器架构 |
CN106331730A (zh) * | 2016-08-22 | 2017-01-11 | 上海交通大学 | H.264视频同量化因子双重压缩检测方法 |
US20170255878A1 (en) * | 2016-03-07 | 2017-09-07 | Micron Technology, Inc. | Space efficient random forests implementation utilizing automata processors |
CN107220852A (zh) * | 2017-05-26 | 2017-09-29 | 北京小度信息科技有限公司 | 用于确定目标推荐用户的方法、装置和服务器 |
US20180004847A1 (en) * | 2016-06-30 | 2018-01-04 | Facebook, Inc. | Dynamic creative optimization for effectively delivering content |
CN107634897A (zh) * | 2016-09-12 | 2018-01-26 | 腾讯科技(深圳)有限公司 | 群推荐方法和装置 |
JP2018048890A (ja) * | 2016-09-21 | 2018-03-29 | 株式会社日立製作所 | 姿勢推定システム、姿勢推定装置、及び距離画像カメラ |
US20180211333A1 (en) * | 2017-01-23 | 2018-07-26 | Facebook, Inc. | Demographic-based targeting of electronic media content items |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5915250A (en) * | 1996-03-29 | 1999-06-22 | Virage, Inc. | Threshold-based comparison |
FR2965377A1 (fr) * | 2010-09-24 | 2012-03-30 | Univ D Avignon Et Des Pays De Vaucluse | Procede de classification de donnees biometriques |
US9870376B2 (en) * | 2011-04-01 | 2018-01-16 | Excalibur Ip, Llc | Method and system for concept summarization |
US8831358B1 (en) * | 2011-11-21 | 2014-09-09 | Google Inc. | Evaluating image similarity |
KR101829770B1 (ko) * | 2013-05-31 | 2018-02-19 | 인텔 코포레이션 | 온라인 소셜 페르소나 관리 |
US10311288B1 (en) * | 2017-03-24 | 2019-06-04 | Stripe, Inc. | Determining identity of a person in a digital image |
KR102570278B1 (ko) * | 2017-07-31 | 2023-08-24 | 삼성전자주식회사 | 교사 모델로부터 학생 모델을 트레이닝하는데 사용되는 학습 데이터를 생성하는 장치 및 방법 |
-
2018
- 2018-08-03 US US16/054,871 patent/US10602207B2/en not_active Expired - Fee Related
-
2019
- 2019-08-02 CN CN201980051918.XA patent/CN112534424A/zh active Pending
- 2019-08-02 WO PCT/US2019/044914 patent/WO2020028808A1/en unknown
- 2019-08-02 EP EP19759103.5A patent/EP3794463A1/en not_active Withdrawn
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101064009A (zh) * | 2006-04-28 | 2007-10-31 | 夏普株式会社 | 图像处理装置、图像形成装置、图像读取装置及图像处理方法 |
US20100166266A1 (en) * | 2008-12-30 | 2010-07-01 | Michael Jeffrey Jones | Method for Identifying Faces in Images with Improved Accuracy Using Compressed Feature Vectors |
US20110271146A1 (en) * | 2010-04-30 | 2011-11-03 | Mitre Corporation | Anomaly Detecting for Database Systems |
CN102254188A (zh) * | 2011-08-04 | 2011-11-23 | 汉王科技股份有限公司 | 掌纹识别方法及装置 |
US20130144414A1 (en) * | 2011-12-06 | 2013-06-06 | Cisco Technology, Inc. | Method and apparatus for discovering and labeling speakers in a large and growing collection of videos with minimal user effort |
CN104823212A (zh) * | 2012-11-30 | 2015-08-05 | 谷歌公司 | 提供包括从社交网络得到的信息的内容的系统和方法 |
CN104956365A (zh) * | 2012-11-30 | 2015-09-30 | 脸谱公司 | 基于在线系统中的用户动作询问特征 |
CN106133721A (zh) * | 2014-03-17 | 2016-11-16 | 微软技术许可有限责任公司 | 并行决策树处理器架构 |
US20160048887A1 (en) * | 2014-08-18 | 2016-02-18 | Fuji Xerox Co., Ltd. | Systems and methods for gaining knowledge about aspects of social life of a person using visual content associated with that person |
CN104573696A (zh) * | 2014-12-29 | 2015-04-29 | 杭州华为数字技术有限公司 | 用于处理人脸特征数据的方法和装置 |
US20170255878A1 (en) * | 2016-03-07 | 2017-09-07 | Micron Technology, Inc. | Space efficient random forests implementation utilizing automata processors |
US20180004847A1 (en) * | 2016-06-30 | 2018-01-04 | Facebook, Inc. | Dynamic creative optimization for effectively delivering content |
CN106331730A (zh) * | 2016-08-22 | 2017-01-11 | 上海交通大学 | H.264视频同量化因子双重压缩检测方法 |
CN107634897A (zh) * | 2016-09-12 | 2018-01-26 | 腾讯科技(深圳)有限公司 | 群推荐方法和装置 |
JP2018048890A (ja) * | 2016-09-21 | 2018-03-29 | 株式会社日立製作所 | 姿勢推定システム、姿勢推定装置、及び距離画像カメラ |
US20180211333A1 (en) * | 2017-01-23 | 2018-07-26 | Facebook, Inc. | Demographic-based targeting of electronic media content items |
CN107220852A (zh) * | 2017-05-26 | 2017-09-29 | 北京小度信息科技有限公司 | 用于确定目标推荐用户的方法、装置和服务器 |
Non-Patent Citations (2)
Title |
---|
V. MONGA等: "Perceptual image hashing via feature points: performance evaluation and tradeoffs", 《IEEE TRANSACTIONS ON IMAGE PROCESSING》, vol. 15, no. 11, 16 October 2006 (2006-10-16), pages 3452 - 3465, XP055357459, DOI: 10.1109/TIP.2006.881948 * |
段雄: "基于深度特征的手绘草图检索图像方法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》, no. 8, 15 July 2018 (2018-07-15), pages 138 - 1767 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117579079A (zh) * | 2024-01-15 | 2024-02-20 | 每日互动股份有限公司 | 一种数据压缩的处理方法、装置、设备及介质 |
CN117579079B (zh) * | 2024-01-15 | 2024-03-29 | 每日互动股份有限公司 | 一种数据压缩的处理方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
US10602207B2 (en) | 2020-03-24 |
EP3794463A1 (en) | 2021-03-24 |
WO2020028808A1 (en) | 2020-02-06 |
WO2020028808A8 (en) | 2020-12-30 |
US20200045354A1 (en) | 2020-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10602207B2 (en) | Neural network based content distribution in an online system | |
US10637826B1 (en) | Policy compliance verification using semantic distance and nearest neighbor search of labeled content | |
US20190179796A1 (en) | Method of and system for generating a training set for a machine learning algorithm | |
US10853431B1 (en) | Managing distribution of content items including URLs to external websites | |
CN107193974B (zh) | 基于人工智能的地域性信息确定方法和装置 | |
CN108108743B (zh) | 异常用户识别方法和用于识别异常用户的装置 | |
AU2021218110A1 (en) | Learning from distributed data | |
US10606910B2 (en) | Ranking search results using machine learning based models | |
US11645585B2 (en) | Method for approximate k-nearest-neighbor search on parallel hardware accelerators | |
CN113434716B (zh) | 一种跨模态信息检索方法和装置 | |
CN113313170B (zh) | 基于人工智能的全时全域训练大数据平台 | |
WO2016011946A1 (en) | System and methods for analysis of user-associated images to generate non-user generated labels and utilization of the generated labels | |
Li et al. | Automatic fast double KNN classification algorithm based on ACC and hierarchical clustering for big data | |
CN110909222A (zh) | 基于聚类的用户画像建立方法、装置、介质及电子设备 | |
Tous et al. | Automated curation of brand-related social media images with deep learning | |
Khan et al. | Unsupervised domain adaptation using fuzzy rules and stochastic hierarchical convolutional neural networks | |
JP5973309B2 (ja) | 配信装置及びコンピュータプログラム | |
CN109685091B (zh) | 使用贝叶斯方式的数字体验目标确定 | |
US20210199457A1 (en) | System and Method Using Deep Learning Machine Vision to Analyze Localities | |
US20200210760A1 (en) | System and method for cascading image clustering using distribution over auto-generated labels | |
Zhou et al. | A novel locality-sensitive hashing algorithm for similarity searches on large-scale hyperspectral data | |
CN111639260B (zh) | 内容推荐方法及其装置、存储介质 | |
Noor et al. | Sherlock in oss: A novel approach of content-based searching in object storage system | |
Akhilesh et al. | Automatic image annotation using an ant colony optimization algorithm (ACO) | |
CN111615178A (zh) | 识别无线网络类型及模型训练的方法、装置及电子设备 |
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 | ||
CB02 | Change of applicant information |
Address after: California, USA Applicant after: Yuan platform Co. Address before: California, USA Applicant before: Facebook, Inc. |
|
CB02 | Change of applicant information |