使用自然语言处理生成主题索引的制作方法

文档序号:13561378阅读:254来源:国知局
使用自然语言处理生成主题索引的制作方法

本公开涉及会议领域,并且具体地涉及生成会话事件的主题索引。



背景技术:

诸如互联网上的媒体协作(例如,视频会议、远程医疗等)的会话事件正变得越来越普遍,因为利用宽带连接的宽带接入和应用激增。支持会话事件的应用可以是基于浏览器的,也可以独立于浏览器运行。



技术实现要素:

以下呈现本公开的各个方面的简要总结以便提供对这些方面的基本理解。该总结不是本公开的广泛概述。其意图既不是识别本公开的关键或重要元素,也不是描述本公开的具体实施方式的任何范围或权利要求的任何范围。其唯一目的是以简化的形式呈现本公开的一些概念,作为稍后呈现的更详细的描述的序言。

在本公开的一个方面中,一种方法包括:由处理设备从对应于会话事件的第一内容项中提取多个主题,并且生成该会话事件的主题索引。该主题索引将所述多个主题中的每一个与来自第一内容项的内容片段相关联。该方法还包括识别所述多个主题内的一个或多个主题的子集,并且生成包括该主题子集的所述一个或多个主题中的每一个的相应内容片段的第二内容项。

公开了用于执行上述方法以及这里描述的各种实施方式的操作的计算设备。还公开了存储用于执行与上述方法和本文描述的各种实施方式相关联的操作的指令的计算机可读介质。

附图说明

在附图中,通过示例而非限制的方式来示出本公开,其中:

图1示出根据本公开的实施方式的示例系统架构;

图2是示出根据本公开的实施方式的会议平台和内容索引组件的框图;

图3a是示出根据本公开的实施方式的包括主题索引的内容项记录的框图;

图3b是示出根据本公开的实施方式的主要主题索引的框图;

图4是示出根据本公开的实施方式的媒体协作服务/应用的示例性图形用户界面窗口的框图;

图5是示出根据本公开的实施方式的用于生成会话事件的主题索引的方法的流程图;

图6是示出根据本公开的实施方式的媒体协作界面的框图;

图7a是示出根据本公开的实施方式的使用主题索引用于从第一媒体项生成第二媒体项的框图;

图7b是示出根据本公开的实施方式的使用主题索引用于从多个媒体项生成媒体项的框图;

图8是示出根据本公开的实施方式的用于排名主题的方法的流程图;和

图9是示出根据本公开的实施方式的示例性计算机系统的框图。

具体实施方式

本公开的方面和实施方式涉及基于自然语言处理技术来生成用于会话事件的主题索引。所公开的系统和方法可以应用于实况内容、预先记录的内容和媒体协作。实况内容是指实时广播或流传输的内容(例如,有或没有无意的延迟,或者创建内容的指定时间限制内(例如,小于50微秒))。预先记录的内容是指从其创建时间起以有意延迟进行广播或流传输的内容(例如,在内容创建和内容广播或流传输之间没有指定的时间限制)。媒体协作(例如,音频和/或视频会议、音频和/或视频聊天、音频和/或视频会议室、音频和/或视频聊天室等)是指参与者/用户之间的通信,其中内容/媒体流(例如,实况音频和/或视频内容,记录的音频和/或视频内容等)由一个或多个参与者/用户的设备传送,并且可以被组合成合成内容/媒体流。

如本文所使用的,术语“会话事件”是指在两个或更多个用户之间进行的会话,其中会话的口头语言和/或书面语言使用两个或更多个用户的相应客户端设备在两个或更多个用户之间交换。会话事件可以包括实况或预先记录的内容,并且可以以诸如视频和/或音频会议、基于文本的聊天、幻灯片放映演示、在线讲座/研讨会、短消息服务通信、音频通信等的媒体协作的形式。

如本文所使用的,术语“内容项”包括音频剪辑、电影剪辑、电视剪辑和音乐视频以及诸如视频博客的内容、短的原始视频、图片、照片、其他多媒体内容等。内容项还可以指代其他类型的内容,包括产品的表示(例如,来自在线商家的产品列表)、文章(例如,评论、新闻文章、产品描述等)、聊天会话、幻灯片演示或可以使用显示器和/或音频设备呈现的任何其他类型的背景数据。

这里在各种实施方式中描述了允许使用自然语言处理(nlp)技术从会话事件中提取主题的技术。nlp用于从与会话事件(例如,实况视频/音频流、预先记录的视频/音频流、基于文本的会话等)相关联的内容中执行主题提取。例如,可以使用各种知识提取技术将说出或键入的语言解析为概念主题。主题可用于生成主题索引,主题索引又可以用于查找与会话事件相关联的内容的感兴趣部分。主题还可以用于为会话事件的集合建立“主要”主题索引,使得关键字搜索可以返回到与感兴趣的主题相关的视频和/或视频的部分。此外,主题索引可用于生成内容推荐、生成会话事件的突出显示、多个会话事件的剪辑等。

这里描述的一些实施方式可以被集成到在各种客户端设备上操作的用户界面中。用户界面可以在一个部分中显示视频内容,并且还显示索引主题的列表。对于实况视频流,当nlp从视频流中提取主题时,该列表可以实时更新。在一些实施方式中,会话事件的用户/参与者可以点击列表中的主题,这可能导致视频流从对应于讨论主题时的时间开始。

相应地,实施方式提供了若干优点,包括但不限于在会话事件发生时实时地对会话事件进行索引,在没有来自编辑者的输入的情况下自动索引和识别会话事件的部分,并且利用来自会话事件参与者的直接或间接反馈以促进索引。

图1示出了根据本公开的实施方式的示例系统架构100。系统架构100包括客户端设备110a-110z、网络105、数据存储106、会议服务器120、自然语言处理(nlp)服务器130和自然语言数据库140。系统架构100的各种设备可以经由网络105彼此连接。在一个实施方式中,网络105可以包括公共网络(例如,互联网)、专用网络(例如,局域网(lan)或广域网wan))、有线网络(例如,以太网)、无线网络(例如,802.11网络或wi-fi网络)、蜂窝网络(例如,长期演进(lte)网络)、路由器、集线器、交换机、服务器计算机和/或其组合。

在一个实施方式中,数据存储106可以是存储器(例如,随机存取存储器)、高速缓存、驱动器(例如,硬盘驱动器)、闪存驱动器、数据库系统或能够存储数据的另一类型的组件或者设备。数据存储106还可以包括也可以跨越多个计算设备(例如,多个服务器计算机)的多个存储组件(例如,多个驱动器或多个数据库)。在一些实施方式中,数据存储106可以是基于云的。系统架构100的一个或多个设备可以利用数据存储106来存储公共和私有数据,并且数据存储106可以被配置为为私有数据提供安全存储。数据存储106可以是客户端设备110a-110z、会议服务器120和nlp服务器130中的任何一个之间的一部分或在客户端设备110a-110z、会议服务器120和nlp服务器130中的任何之间分布。

在一个实施方式中,客户端设备110a-110z可以包括诸如个人计算机(pc)、膝上型计算机、移动电话、智能电话、平板计算机、上网本计算机等的一个或多个计算设备。客户端设备110a-110z也可以被称为“用户设备”或“移动设备”。个人用户可以与一个或多个客户端设备(例如,一个或多个客户端设备110a-110z)相关联(例如拥有和/或使用)。客户端设备110a-110z可以由在不同地理位置处的不同用户拥有和使用。参与媒体协作(例如,视频会议)的用户在这里可以被称为“会议参与者”。

客户端设备110a-110z可以分别实现用户界面111a-111z。用户界面111a-111z中的每一个可以允许相应客户端设备110a-110z的用户向会议服务器120和nlp服务器130中的一个或多个发送和接收信息。例如,用户界面111a-111z中的一个或多个可以是可以访问、检索、呈现和/或导航由会议服务器120提供的内容(例如,诸如超文本标记语言(html)页面的web页面)的web浏览器界面。在一个实施方式中,用户界面111a-111z中的一个或多个可以是允许相应客户端设备110a-110z的用户向会议服务器120和/或nlp服务器130发送和接收信息的独立应用(例如,移动app、会议软件等)。在一个实施方式中,用户界面111a-111z中的一个或多个可以是允许会议参与者参与视频会议、音频会议、聊天和/或即时消息中的一个或多个的会议界面。关于图4更详细地描述示例用户界面(例如,图形用户界面窗口)。

每个客户端设备110a-110z还包括媒体查看器112a-112z。在一个实施方式中,媒体查看器112a-112z可以是允许用户查看诸如图像、视频、web页面、文档等内容的应用。例如,媒体查看器112a可以是可以访问、检索、呈现和/或导航由web服务器提供的内容(例如,诸如超文本标记语言(html)页面的web页面、数字媒体项等)的web浏览器。媒体查看器112a可以向用户渲染、显示和/或呈现内容。媒体查看器112a还可以显示嵌入在web页面中的嵌入式媒体播放器(例如,可以提供关于由在线商家销售的产品的信息的web页面)。在另一示例中,媒体查看器112a可以是允许用户查看数字媒体项(例如,数字视频、数字图像、电子书等)的独立应用(例如,移动app)。在一个实施方式中,媒体观看器112a-112z可以进一步允许视频从一个或多个源接收并在相应的用户界面111a-111z内显示。例如,客户端设备110a可以从会议服务器120接收视频数据,其可以对应于由一个或多个附加客户端设备生成的视频流。媒体查看器112a可以基于接收到的视频数据生成用于显示(例如,在用户界面111a内)的对应于每个视频流的视频。在一些实施方式中,用户界面111a-111z分别与媒体查看器112a-112z集成。

在一个实施方式中,会议服务器120可以是一个或多个计算设备(诸如机架安装服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、膝上型计算机、平板计算机、桌面型计算机等)、数据存储(例如,硬盘、存储器、数据库)、网络、软件组件、硬件组件或其组合,其可以适于实现本文所述的各种特征。在一些实施方式中,会议服务器120可以使用例如流传输视频或ip语音(voip)技术来实现媒体协作服务,诸如音频和/或视频会议(例如,在客户端设备110a-110z的用户之中),并且可以用于个人、娱乐、商业、教育或面向学术的互动。会议服务器120可以专用于提供视频会议服务,或可以提供视频会议服务以及包括例如新闻服务、社交网络服务和/或内容托管服务的其他服务。

在一个实施方式中,会议服务器120包括会议平台200。如图2所示,会议平台200包括托管模块202、接口模块204和内容档案206。或多或少的组件可以被包括在会议平台200中而不失一般性。例如,两个或更多个模块可以被组合成单个模块,或者模块中的一个可以被分成两个或更多个模块。在一个实施方式中,一个或多个模块可以驻留在不同的计算设备上(例如,不同的服务器计算机上,在单个客户端设备上,分布在多个客户端设备中等)。

在一个实施方式中,托管模块202可以被会议平台200利用来发起和支持诸如音频/视频会议、聊天室、视频聊天等的媒体协作。例如,托管模块202可以接收来自用户的创建媒体协作会话的请求,可以允许用户在接收到来自用户的请求时加入预先存在的媒体协作会话,可以便于向用户发送允许用户加入预先存在的媒体协作会话的邀请等。

在一个实施方式中,会议平台200可以利用接口模块204从各种参与者的一个或多个客户端设备110a-110z中接收多个音频和/或视频流,并生成包括与每个接收到的流相关联的数据的复合流。然后可以在媒体协作会话(例如,视频会议)中将复合流提供给各种参与者的一个或多个客户端设备110a-110z。在一些实施方式中,复合流可以包括格式化数据,客户端设备110a-110z可以使用格式化数据用于提取单个视频流并且布置视频流用于由相应用户界面111a-111z呈现。相应地,视频会议的每个用户/参与者可以同时观看单个界面/屏幕内的一些或全部内容流,如图6所示。

在一些实施方式中,由会议平台200托管的媒体协作中的一个或多个参与者可以提供/投影音频内容(例如,参与者口头的语音、音乐等),其在被客户端设备(例如,客户端设备110a-110z中的一个)时可以被客户端设备发送或以其他方式提供作为可以并入媒体协作中的音频流。在一些实施方式中,可以独立于视频流(例如,在媒体协作期间提供仅音频输入的参与者)来提供这样的音频流,而在其他实施方式中,可以结合视频流(例如,组合流、参与者讲话的合并同步视频和音频)提供这样的音频流。

在一个实施方式中,会议平台200可以利用内容档案206来存储媒体协作数据(例如,存储视频和/或音频流数据、聊天数据等),其可以由一个或多个参与者经由他们各自的客户端设备在晚些时候访问。在一些实施方式中,内容档案可以与数据存储106组合。内容档案可以存储与公共会话事件(例如,公共视频聊天、公共音频聊天、公共基于文本的聊天、公共演示等)相关联的内容,使得公共会话事件可在晚些时候搜索和检索。

在一个实施方式中,图1中所示的nlp服务器130包括内容索引组件250。如图2所示,内容索引组件250包括内容提取模块252、主题识别模块254、关联模块256和内容生成模块258。更多或更少的组件可以包括在内容索引组件250中而不失一般性。例如,两个或更多个模块可以被组合成单个模块,或者模块中的一个可以被分成两个或更多个模块。在一个实施方式中,一个或多个模块可以驻留在不同的计算设备上(例如,不同的服务器计算机上,在单个客户端设备上,分布在多个客户端设备中等)。

在一个实施方式中,内容索引组件250可以利用内容提取模块252和主题识别模块254来识别会话事件内的会话主题。例如,内容提取模块252可以被用来将音频转录成由主题识别模块254从其提取主题标识符的文本。可以利用各种算法/技术用于识别和提取来自口头和书面语言的场境(contextual)信息,包括但不限于,语音识别和处理、语音分割、主题分割以及单词分割和消歧。在一些实施方式中,内容索引组件250可以访问图1中所示的自然语言数据库140,其可以包括单词和短语的数据库以促进主题提取/识别。

在一个实施方式中,内容索引组件250可以利用关联模块256将内容项的部分/片段与所标识的主题相关联。可以通过生成一个或多个内容项记录280a-280z(例如,其存储在数据存储106中)来进行关联。每个内容记录280a-280z包括相应的内容标识符282a-282z和相应的主题索引284a-284z。

图3a和图3b示出了用于将内容项与主题索引相关联的不同数据结构。在一个实施方式中,内容项记录300可以对应于单个内容项(例如,内容项记录280a-280z中的一个或多个)。内容标识符310可以是可以用于定位或索引内容项的规范标识符(例如,如果内容项是电影,则内容标识符310是电影的名称)。在一些实施方式中,内容标识符310是内容的唯一标识符(例如,序列号)。内容项记录300还包括主题索引320,该主题索引320包括一个或多个主题标识符325a-325z。每个主题标识符325a-325z还可以与内容项的内容片段330a-330z相关联。例如,如果内容项是视频剪辑,则内容片段330a可以对应于在视频剪辑内发生的剪辑的部分(例如,从内容项的两分钟标记开始的一分钟长的剪辑)。关于内容片段330a-330z的大小/长度和在内容项内的位置的信息可以被包括在主题索引320内,从而使得内容项本身和内容项内的片段可通过主题来搜索。

在一些实施方式中,主要主题索引350可以与内容项记录300相似,除了主要主题索引包括分别与内容标识符列表365a-365z相关联的多个主题标识符360a-360z之外。对于列表中的每个内容标识符,内容标识符列表365a-365z可以包括与内容相关的信息,诸如主题相关片段及其在其相应内容项内的位置。在一些实施方式中,主题标识符360a-360z还可以包括可以用于确定主题的相关性的关联分数/排名。关于图8更详细地描述主题的评分。

在一个实施方式中,内容索引组件250可以利用图2中所示的内容生成模块来基于与一个或多个其他内容项相关联的内容索引从一个或多个其他内容项生成内容项。生成的内容项可以是在事件期间或之后确定的会话事件的重要时刻的事后总结或升级,或者可以是在事件期间实时确定的事件中的重要时刻的总结的实时视图。在事实之后和实时生成的内容项即使它们涉及相同的事件也可以是实质不同的。内容生成模块258的功能将参考图5和图7更详细地描述。

一般地,在一个实施方式中被描述为由会议服务器120或nlp服务器130中的任何一个执行的功能也可以适当地在其他实施方式中由一个或多个客户端设备110a-110z执行。例如,客户端设备110a可以实现执行内容索引组件250的功能的软件应用。另外,属于特定组件的功能可以由不同或者一起操作的多个组件执行。在一些实施方式中,nlp服务器130可以作为通过适当的应用编程接口提供给其他系统或设备的服务来访问。

会议平台200和内容索引组件250被分别描述为由会议服务器120和nlp服务器130实现,但是可以由客户端设备110a-110z、会议服务器120或nlp服务器130中的任何一个来实现。作为示例,客户端设备(例如,客户端设备110a)可以被编程为执行会议平台200和/或内容索引组件250的一些或全部功能。作为另一个示例,会议平台200和内容索引组件250可以在会议服务器中被组合在一起。在其中在客户端设备上实现会议平台200和/或内容索引组件250的实施方式中,关于会议平台200和/或内容索引组件250描述的“接收”、“传送”、“检索”、“识别”、“确定”等任何功能被理解为是指由客户端设备内的子系统或子模块执行的功能,而不是跨网络(例如,网络105)执行的功能,如本领域的普通技术人员所理解的。

图4是示出根据本公开的实施方式的媒体协作服务/应用的示例性图形用户界面(gui)窗口400的图。在一个实施方式中,gui窗口400包括主区域402、缩略图区域404a-404c、头部区域406、聊天区域408和选项区域410。在一些实施方式中,少于全部缩略图区域404a-404c可以在gui窗口400中呈现,或者可以呈现附加缩略图区域。gui窗口400可以与客户端设备的媒体查看器(例如,客户端设备110a的用户界面111a和媒体查看器112a)组合地生成用于显示为用户界面。

在一些实施方式中,每个区域可以包含、描绘或以其他方式呈现由媒体协作中的特定参与者提供的媒体内容(例如,视频内容)。例如,主区域402可以是媒体播放器并且可以呈现由第一参与者(例如,在视频会议中的第一或主要参与者的“房间”、由第一参与者共享的视频剪辑等)传送的视频流,而每个缩略图区域404a-404c可以包含由一个或多个附加参与者传送的视频流的缩小版本,与附加参与者相关联的静态图像(例如,头像等),与附加参与者相关联的视频流的缩小版本或其组合。应该注意的是,尽管gui窗口400的区域被描绘为矩形,但是一个或多个区域可以具有一些其他形状(例如,圆形、梯形等)。此外,gui窗口400的形状、大小和/或布局可以取决于将在其上呈现gui窗口400的设备。例如,如图4所示,gui窗口400以适合于移动设备的方式被格式化。

在一个实施方式中,主区域402和缩略图区域404a-404c中的每一个可以与由视频协作中的一个或多个参与者(例如,视频会议参与者)的相应客户端设备生成的视频流相关联。此外,在某些实施方式中,特定区域可以取决于与该区域相关联的参与者是否正在讲话(例如,使用接口模块204)来改变(例如,从缩略图区域到主区域)或交换显示在不同区域中的视频流。这样的改变可以自动执行(例如,不需要接收任何用户请求或检测到任何用户交互)。在一些实施方式中,会议平台200可以接收视频流并识别(例如,使用接口模块204)哪个视频流对应于当前发言者或一般关注的焦点(例如,视频流对应于托管媒体协作的参与者、讲话者的音量级别、特定参与者的托管选择等)。在一些实施方式中,实现gui窗口400的客户端设备可以接收由会议平台200的接口模块204生成的复合内容流(例如,包括由一个或多个客户端设备110a-110z生成的视频/音频流数据)。客户端设备可以被配置为从复合内容流提取内容(例如,一个或多个视频/音频流)。在一个实施方式中,复合内容流包括指定对应于gui窗口400的区域的几何特性的元数据,使得视频流可以从复合内容流提取并映射到gui窗口400内的适当区域。

在一个实施方式中,缩略图区域404a-404c中的一个可以变换或转换到主区域402中(例如,响应于参与者在缩略图区域上选择/点击或以其他方式激活缩略图区域),反之亦然。在一些实施方式中,当特定参与者在视频会议期间正在讲话时,参与者的视频流可以被显示在主区域402内。例如,如果对应于第一参与者的视频流被显示在主区域402中并且第一参与者没有讲话,第二参与者的视频流可以从缩略图区域404a-404c中的一个“升级”到主区域402,而第一参与者的视频流“降级”到缩略图区域404a-404c中的一个。

在一个实施方式中,复合内容流可以包括实时聊天数据。例如,聊天数据可以被显示在聊天区域308内。聊天区域308可以向用户/参与者提供机会输入聊天消息并且传送聊天消息(例如,传送到会议服务器120,其将聊天消息路由到其他参与者的客户端设备)。在一个实施方式中,可以向用户呈现可用或相关聊天的列表。在一个实施方式中,可以向用户呈现与聊天讨论相关联的主题的列表。响应于接收到用户对主题中的一个的选择,用户可以被呈现与该主题相关的类似聊天的列表,或者当前聊天讨论可以滚动到其中讨论所选主题的部分。

在一个实施方式中,选项区域410可以向用户提供可选择的选项。例如,可选择的选项可以允许用户调整媒体协作的设置(例如,显示特征、音量等),邀请另外的用户参与媒体协作,接收内容推荐,提供内容推荐,对媒体协作期间呈现的媒体协作和/或内容进行评价或投票,请求与媒体协作的主题相关的内容(例如,当前讨论的主题)等。关于图5更详细地描述与主题索引的生成和利用相关的选项。

图5是示出根据本公开的实施方式的用于生成会话事件的主题索引的方法500的流程图,并且图8是示出根据本公开的实施方式的用于排名主题的方法800的流程图。方法500和800可以通过包括硬件(例如,电路、专用逻辑、可编程逻辑、微代码等)、软件(例如,在处理设备上运行以执行硬件模拟的指令)或者其组合的处理逻辑来执行。在一些实施方式中,方法500和800可以由如关于图1和图2所描述的内容索引组件250来执行。在描述方法500和800时,参考图6、图7a和图7b以示出各种实施方式。要注意的是,图6、图7a和图7b意图用于示出目的,并且不被认为是限制性实施方式。

根据系统架构(例如,系统架构100)的各种实施方式,可以对媒体协作,并且特别是会话事件(例如,视频会议、音频会议、实况视频广播、基于文本的聊天、其组合等)来执行方法500和/或800的操作。在一个实施方式中,诸如由客户端设备(例如,客户端设备110a-110z)生成/捕获的视频流的内容流可以被传送到会议服务器(例如,会议服务器120的会议平台200),其然后被传送到nlp服务器(例如,nlp服务器130的内容索引组件250)用于主题提取。在另一个实施方式中,内容流在被会议服务器接收之前被传送到nlp服务器用于主题提取,然后被传送到客户端设备(例如,作为组合内容流)。在另一个实施方式中,内容流由第一客户端设备(例如,客户端设备110a)生成/捕获,并且被传送到执行主题提取的会议服务器120。在另一个实施方式中,内容流由第一客户端设备(例如,客户端设备110a)生成/捕获,并且被传送到一个或多个附加设备(其中第一客户端设备和/或一个或多个附加客户端设备执行主题提取)。

参考图5,当从对应于第一会话事件的第一内容项中提取多个主题时,方法500在框510处开始。在一些实施方式中,框510由内容提取模块252和主题识别模块254执行。在一个实施方式中,第一会话事件可以对应于实况视频记录、预先记录的视频、视频会议、视频聊天、音频会议、音频聊天、基于文本的聊天或其组合。在一些实施方式中,如果会话事件包括音频分量,则将口语转录成文本(例如,使用内容提取模块252),并且可以使用主题识别模块254从文本中提取一个或多个主题的列表。在其他实施方式中,如果会话事件完全是基于文本的(诸如聊天消息序列),则主题识别可以直接执行而不需要转录。在一些实施方式中,在会话事件期间实时发生主题提取。

在一个实施方式中,会话事件可以是经由在用户的相应客户端设备上实现的媒体协作界面(例如,用户界面111a-111z)多个用户可访问的媒体协作。例如,媒体协作界面可以类似于gui窗口600,如图6所示。gui窗口600包括主区域602,其可以显示会话事件的参与者相关联的视频流、实况视频流、预先记录的内容(例如,点播内容)、静态图像(例如,以幻灯片放映的形式)、伴随音频的演示、其组合等。缩略图604a-604c可以表示媒体协作的各种参与者的视频流(例如,与缩略图604a相关联的第一参与者、与缩略图604b相关联的第二参与者等)。在一个实施方式中,主区域602的视频流的缩略图版本被显示为缩略图(例如,缩略图604c)。

在一些实施方式中,主区域602是呈现实况视频流的媒体播放器,实况视频流可以是与会话事件的参与者相关联的视频流、实况广播等。在其他实施方式中,呈现在主区域602中的内容可以对应于预先记录的视频、预先记录的音频剪辑、演示等。在这样的实施方式中,主区域602可以包括回放区域610,回放区域610可以显示为覆盖主区域602或与主区域602相邻。回放区域610包括回放指示符612和全屏切换614,以在全屏模式和窗口模式(如所图示)之间切换主区域602。也可以向gui窗口600的用户呈现赞成指示符606和不赞成指示符608(例如,覆盖主区域602、与主区域602相邻等),以允许用户对会话事件评级。在其他实施方式中,主区域602被完全省略(例如,如果会话事件不包括视频流)。

在一些实施方式中,gui窗口600可以包括聊天窗口616。会话事件的各种参与者可以在其相应客户端设备处(例如,使用消息字段618)输入消息,该消息可以被传送到会议服务器(例如,会议服务器120)并且可用于会话事件的一些或全部参与者。在一些实施方式中,聊天窗口616与在主区域602中呈现的内容一起被显示。

回头参考图5,在框520处,为第一会话事件(例如,使用关联模块256)生成第一主题索引。第一主题索引将多个主题中的每一个与来自第一内容项的内容片段相关联。例如,为第一会话事件生成第一内容项记录(例如,内容记录280a-280z或内容项记录300中的一个),其中第一内容项记录包括第一内容标识符(例如,内容标识符282a-282z或内容标识符310中的一个)和第一主题索引(例如,主题索引284a-284z或主题索引320中的一个)。第一主题索引可以在将内容呈现给一个或多个用户之前已经被生成,可以在呈现内容的同时被实时生成,或者可以在呈现内容之后被生成。在一个实施方式中,所生成的主题索引被添加到主题索引(例如,存储在数据存储106中)的数据库中,其中数据库的一个或多个主题索引对应于会话事件(例如,与会话事件相关联的内容)。数据库的每个会话事件可以由会话事件的至少一个相应主题搜索。在一些实施方式中,主题和内容片段可以与其他数据相关联,诸如讨论主题的讲话者/作者的身份(例如,用户名)、讨论主题的日期/时间(例如,讨论主题开始的时间、讨论主题的相关时间持续时间等)、与主题相关的情感数据(例如,会话事件中的参与者的赞成/不赞成)、表达情感的参与者的身份(例如,用户名)或其他相关数据。例如,可以执行搜索以识别与用户a对其表达负面情绪的的主题t相关的内容片段。

在一个实施方式中,如果内容是预先记录的内容,则用户的客户端设备可以使用gui窗口600来接收内容并且呈现内容。客户端设备还可以接收与内容相关联的内容记录(例如,内容标识符可以是用于识别内容的规范标识符),并且gui窗口600可以生成用于显示的来自主题列表620中的主题索引的主题列表。

在一个实施方式中,如果内容是实况内容(例如,实况视频流、实况音频流、实时聊天等),则可以为内容生成内容记录,并且在内容被流传输时主题索引可以实时更新。例如,在从会话事件的内容项(例如,使用内容提取模块252和主题识别模块254)提取新主题时,新主题可被添加到主题列表620。例如,如果内容项是实况视频流(例如,呈现在主区域602中),则可以从实况视频流中提取主题(例如,通过处理口语)并添加到主题索引,其可以被添加到主题列表620。作为另一示例,如果内容项是聊天(例如,在聊天窗口616中呈现),则主题可以从聊天消息中提取并添加到主题索引,其可以被添加到主题列表620。

回头参考图5,在框530处,识别包括来自多个主题的一个或多个主题的主题子集,在一些实施方式中,指定主题对应于指定为感兴趣的主题。在一些实施方式中,子集可以包括单个主题。例如,基于用户反馈,单个主题可以被指定为最感兴趣的主题。在一些实施方式中,子集可以包括多个主题。例如,基于用户反馈,主题可以已经被指定为在最感兴趣的主题之中。参照图8更详细地描述基于用户反馈识别主题的子集。在一些实施方式中,可以从客户端设备接收内容请求,其中内容请求包括主题指示符和讲话者的标识符(例如,谁可以是与该主题相关联的讲话者)。可以基于主题指示符和讲话者的标识符来识别主题的子集。

在框540处,生成第二内容项。第二内容项包括子集的每个主题的相应内容片段(第一内容项的内容片段)。作为示例,图7a示出了根据主题索引(例如,关于图5描述的第一主题索引)已经被索引的第一内容项700。可以基于n个主题(主题1到主题n)对第一内容项700进行索引,使得每个内容片段710a-710z对应于n个主题中的一个或多个。在一些实施方式中,多于一个的内容片段710a-710z可以对应于相同主题(例如,内容片段710b和内容片段710f都可对应于主题“dinosaurs(恐龙)”)。在一些实施方式中,相同的主题可以在特定内容项中多次出现。

在一些实施方式中,内容片段710a-710z中的每一个可以对应于视频流(例如,实况视频流或预先记录的视频流)、音频流(例如,实况音频流或预先记录的音频流)、演示(例如,幻灯片放映)或基于文本的聊天的内容片段。例如,如果第一内容项是视频和/或音频流,则每个内容片段710a-710z可以具有开始时间和结束时间(例如,内容片段710a具有开始时间t0和结束时间t1)。内容片段710a-710z的每一个的开始和结束时间可以与主题索引一起存储,使得可以通过主题来定位第一内容项内的相关时间。作为另一个示例,如果第一内容项是幻灯片放映,则内容片段710a-710z可以都对应于幻灯片放映的一个或多个幻灯片。作为另一个示例,如果第一内容项是基于文本的聊天,则内容片段710a-710z可以都对应于基于文本的聊天的一个或多个消息(例如,在聊天窗口616中显示的一个或多个消息)。在一些实施方式中,内容片段710a-710z中的每一个可以对应于第一内容项700内的连续和相邻序列,使得内容片段710a-710z共同定义第一内容项(例如,每个片段是一起形成整个视频的视频剪辑)。在一些实施方式中,内容片段710a-710z可以对应于与主题已经相关联的片段,使得内容片段710a-710z不整体共同定义第一内容项700(例如,第一内容项700的“无主题”片段不被索引)。

主题子集包括用于识别对应于主题标识符的内容片段的主题标识符。例如,如果主题子集715包括主题1、4和6,则内容生成模块258可以生成第二内容项720,该第二内容项720包括对应于主题1、4和6的内容片段,即分别是内容片段710a、710d和710f。所生成的内容项可以被存储(例如,在数据存储106中)和/或被传送到请求使内容项生成的客户端设备(例如,客户端设备110a-110z中的一个)(例如,客户端设备可以已经提交了对第一内容项700的精彩片段的请求)。在一个实施方式中,内容片段710a、710d和710f可以基于内容片段的相关性(例如,用户生成的评分/评级)、内容片段的持续时间、人类编辑者等中的一个或多个按时间顺序排列在第二内容项720中。

在一个实施方式中,可以使用主要主题索引(例如,主要主题索引350)来从多个内容项中生成内容项,如图7b所示,以便从多个内容项中产生主题相关部分/剪辑的蒙太奇。第一内容项750可以包括内容片段755a-755c,其中每个分别对应于主题1、2和3。类似地,第二内容项760和第三内容项770可以分别都包括内容片段765a-765c和内容片段775a-775b。主题子集780包括单个主题(主题2),虽然多于一个的主题可以被包括在该子集中。可以生成包括内容片段755b、765c和775b的第四内容项790。在一个实施方式中,内容片段755b、765c和775b可以基于内容片段的相关性(例如,用户生成的评分/评级)、内容片段的持续时间、人类编辑者等中的一个或多个按时间顺序排列在第四内容项790中。

在一个实施方式中,(例如,基于来自主题列表620的用户选择在客户端设备处)可以接收包括至少一个主题指示符的内容请求。至少一个主题指示符可以用于识别主题索引内的主题子集。在一些实施方式中,内容请求可以导致生成内容项,如上面关于框540所描述的,并且生成的内容项可以被传送给用户的客户端设备(例如,用于在gui窗口600内呈现)。在其他实施方式中,内容请求可以改变在gui窗口600中呈现给用户的内容,而不一定导致生成新的内容项。用户可以从gui窗口600的主题列表620中选择一个或多个主题指示符(例如,主题指示符622),其可以自动用作内容请求。在一些实施方式中,该请求可以使得当前呈现的内容移动到与所选主题相关的部分或从该部分回放。例如,如果选择了主题指示符622,则主区域602或聊天窗口616中的一个或多个可以呈现与该主题相关的内容的一部分。例如,602的视频流可以从其中主题对应于“dinosaurs”的较早部分开始回放。作为另一个示例,聊天窗口616可以滚动到其中主题对应于“dinosaurs”的较早部分,如图6所示。

在一些实施方式中,gui窗口600可以包括选项624。用户可以选择选项624以找到相似内容(例如,基于一个或多个所选主题或会话事件的最相关主题),并且客户端设备可以(例如,向会议服务器或向另一个源)提交对内容的搜索请求。例如,gui窗口600可以显示类似内容的列表(例如,与当前或选择的主题相关的其他视频)和/或向用户自动呈现不同的内容(例如,在主区域602中)。

在一些实施方式中,gui窗口600可以包括选项626。用户可以选择选项626以查找与当前聊天相似的其他聊天。例如,响应于用户选择选项626,gui窗口600可以基于当前聊天主题、所选聊天主题等显示其他可用聊天的列表和/或将用户自动转移到另一个聊天。例如,如果当前主题(基于正在被实时更新的主题索引)是“dinosaurs”,则可以向用户呈现加入与“dinosaurs”相关的不同聊天的选项。

在一些实施方式中,gui窗口600可以包括选项628。用户可以选择选项628来搜索主题。例如,gui窗口600可以向用户呈现用户可以键入要搜索的主题的输入字段。在一个实施方式中,主题被传送到nlp服务器,该nlp服务器从主要主题索引(例如,主要主题索引350)中识别内容项并且返回内容项列表(其可以包括视频、音频、或基于文本的内容项中的一个或多个)。可以呈现内容项列表然后用于gui窗口600显示。

在一些实施方式中,gui窗口600可以包括选项630。用户可以选择选项630来观看精彩片段。例如,当前显示的内容(例如,在主区域602中,在聊天窗口616中等)可以被该内容的示出内容的感兴趣部分的精彩片段替换,同时省略不太感兴趣的部分。精彩片段可以已经以与关于图7a所描述的相似的方式为内容生成。内容的感兴趣部分可以根据各种实施方式来确定,诸如关于图8所描述的那些。

在一些实施方式中,gui窗口600可以包括用于推荐内容的推荐区域632。例如,可以基于来自与会话事件(例如,会话事件的当前主题,由用户选择的主题等)相关联的主题索引的主题来生成内容推荐。

参考图8,当在实况视频广播期间从多个用户接收到反馈时,方法800在框810处开始。需要说明的是,方法800不限于实况视频广播,也可以适于预先记录的内容等。在一个实施方式中,在实况视频广播期间接收反馈。例如,接收实况视频广播的客户端设备的用户可以在实况视频广播期间指示赞成或不赞成。例如,实现gui窗口600的客户端设备的用户可以在实况视频馈送的广播期间一次或多次点击赞成指示符606或不赞成指示符608中的一个。作为另一个示例,可以基于在会话事件期间口头地(例如,用户发声他们的赞成/不赞成)、非口头地(例如,如果用户在消息字段618中键入他/她喜欢/不喜欢在主区域602中呈现的内容、切换到不同的内容、将内容指定为“喜欢的内容”等)等做出的评论来确定赞成或不赞成。赞成或不赞成数据可以由会议服务器(例如,会议服务器120)或nlp服务器(例如,nlp服务器130)来收集。

在框820处,为实况视频广播生成主题索引,其中多个主题中的每一个与实况视频广播的内容片段相关联(例如,第一主题与第一内容片段相关联,第二主题与第二内容片段相关联等)。可以根据本文描述的任何实施例,诸如关于图5所描述的那些(例如,框520)来生成(例如,使用关联模块256)主题索引。

在框830处,基于从多个用户接收的反馈对多个主题中的每一个进行评分。在一些实施方式中,可以基于用户提供他/她的赞成或不赞成的定时将分数映射到特定主题。例如,如果在由图7a的第一内容项700的t1和t2定义的持续时间期间选择了赞成指示符606的用户选择,则这可以用作主题2的赞成指示符。在一些实施方式中,可以对于主题计算分数,作为对于该主题已经接收到赞成指示的次数与作为对于该主题已经接收到不赞成指示的次数之间的差(例如,对于从多个客户端设备收集的赞成和不赞成指示)。在其它实施方式中,可以利用对主题评分的其他方式。对于每个主题,为主题生成的分数可以存储在主题索引中(例如,与相应的主题标识符325a-325z一起存储,或者与相应的主题标识符360a-360z一起存储)。

在框840处,从多个主题中识别主题的子集。例如,通过确定主题满足评分条件来识别来自多个主题的主题。所有这些满足评分条件的主题可以包含在子集中。在一些实施方式中,评分条件可以是主题超过阈值分数。在一些实施方式中,评分条件可以是主题排名在阈值排名之上(例如,被识别的主题对应于顶部10个评分最高的主题)。在一些实施方式中,人类编辑者可以确定是否应该将更多或更少的主题添加到主题子集(例如,使用客户端设备110a-110z中的一个)。

在框850处,从与子集的每个主题相关联的内容片段中生成内容项。内容项可以根据本文所描述的实施方式中的任一个来生成,诸如关于图5(例如,框540)、图7a和图7b所描述的那些。

为了简化说明,将本公开的方法的各种实施方式描绘和描述为一系列动作。然而,根据本公开的动作可以以各种顺序和/或同时,并且可以与本文未呈现和描述的其他动作一起发生。此外,为实现根据所公开的主题的方法,并非可能需要所有示出的动作。此外,本领域的技术人员将会理解并认识到,方法可以可替选地经由状态图来表示为一系列相互关联的状态或一系列事件。此外,应该理解的是,本说明书中公开的方法的实施方式能够被存储在制品上,以便于将这样的方法传递和转移到计算设备。这里使用的术语“制品”旨在包含可从任何计算机可读设备或存储介质访问的计算机程序。

图9示出了以计算机系统900的示例性形式的机器的图形表示,在该计算机系统900内可以执行用于使机器执行这里讨论的任何一个或多个方法的指令集。在替代实施方式中,机器可以连接(例如,联网)到lan、内联网、外联网或互联网中的其他机器。该机器可以在客户端-服务器网络环境中以服务器或客户端机器的能力操作,或作为对等(或分布式)网络环境中的对等机器操作。机器可以是个人计算机(pc)、平板计算机、机顶盒(stb)、个人数字助理(pda)、蜂窝电话、web设备、服务器、网络路由器、交换机或桥接器,或者能够(顺序或以其他方式)执行指定了该机器要采取的动作的指令集的任何机器。此外,虽然仅示出单个机器,但是术语“机器”也应被理解为包括单独或联合执行指令集(或多个指令集)以执行本文讨论的任何一个或多个方法的机器的任何集合。计算机系统900的一些或全部组件可以被客户端设备110a-110z、数据存储106、会议服务器120、nlp服务器130或自然语言数据库140中的一个或多个执行或示出。

示例性计算机系统900包括经由总线908彼此通信的处理设备(处理器)902、主存储器904(例如,只读存储器(rom)、闪存、诸如同步dram(sdram)或rambusdram(rdram)的动态随机存取存储器(dram)等)、静态存储器906(例如,闪存、静态随机存取存储器(sram)等)以及数据存储设备918。

处理器902表示一个或多个通用处理设备,诸如微处理器、中央处理单元等。更具体地说,处理器902可以是复杂指令集计算(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器,或实现其他指令集的处理器或实现指令集组合的处理器。处理器902还可以是一个或多个专用处理设备,诸如专用集成电路(asic)、现场可编程门阵列(fpga)、dsp、网络处理器等。处理器902被配置为执行用于执行这里讨论的操作和步骤的指令926。

计算机系统900还可以包括网络接口设备922。计算机系统900还可以包括视频显示单元910(例如,液晶显示器(lcd)、阴极射线管(crt)或触摸屏屏幕)、字母数字输入设备912(例如,键盘)、光标控制设备914(例如,鼠标)和信号生成设备920(例如,扬声器)。

数据存储设备918可以包括非暂时性计算机可读存储介质924,在其上存储实施本文描述的方法或功能中的任何一个或多个的一个或多个指令集926(例如,软件)。在由计算机系统900执行期间,指令926还可以完全或至少部分地驻留在主存储器904内和/或处理器902内,主存储器904和处理器902也构成计算机可读存储介质。指令926可以进一步经由网络接口设备922通过网络974(例如,网络105)被传送或接收。

在一个实施方式中,指令926包括用于一个或多个内容索引组件250的指令,该内容索引组件250可以对应于关于图1和图2描述的同名对应部件。虽然计算机可读存储介质924在示例性实施方式中被示出为单个介质,但是术语“计算机可读存储介质”或“机器可读存储介质”应当被认为包括存储一个或多个指令集的单个介质或者多个介质(例如,集中式或分布式数据库,和/或相关联的高速缓存和服务器)。术语“计算机可读存储介质”或“机器可读存储介质”也应该被认为包括能够存储、编码或携带指令集以供机器执行并且使机器执行本公开的方法中的任何一个或多个的任何暂时性或非暂时性计算机可读存储介质。因此,术语“计算机可读存储介质”应被认为包括但不限于固态存储器、光学介质和磁性介质。

在前面的描述中,阐述了许多细节。然而,对于受益于本公开内容的本领域普通技术人员而言显而易见的是,可以在没有这些具体细节的情况下实践本公开。在一些情况下,为了避免混淆本公开,以框图形式而不是详细地示出公知的结构和设备。

详细描述的一些部分可能已经根据对计算机存储器内的数据位的操作的算法和符号表示来呈现。这些算法描述和表示是数据处理领域的技术人员用来最有效地将其工作的实质传达给本领域其他技术人员的手段。本文中的算法一般被认为是导致期望结果的自洽的步骤序列。这些步骤是需要对物理量进行物理操纵的步骤。通常,但不一定,这些量采取能够被存储、传送、组合、比较和以其他方式操纵的电或磁信号的形式。主要出于常用的原因,有时将这些信号称为比特、值、元素、符号、字符、术语、数字等被证明是方便的。

然而,应该记住的是,所有这些和类似的术语都与适当的物理量相关联,并且仅仅是适于这些量的方便的标签。除非特别声明,否则从以下讨论中可以明显看出,在整个说明书中,利用诸如“接收”、“传送”、“生成”、“引起”、“添加”、“减去”、“插入”、“包括”、“移除”、“提取”、“分析”、“确定”、“启用”、“识别”、“修改”等的术语是指计算机系统或类似的电子计算设备的动作和过程,其将在计算机系统的寄存器和存储器内表示为物理(例如,电子)量的数据操纵和转换成类似地表示为计算机系统存储器或寄存器或其它这样的信息存储、传输或显示设备内的物理量的其它数据。

本公开还涉及用于执行本文的操作的装置、设备或系统。该装置、设备或系统可以为了所需目的而专门构造,或者可以包括通过计算机中存储的计算机程序选择性地激活或重新配置的通用计算机。这样的计算机程序可以存储在计算机或机器可读存储介质中,例如但不限于包括软盘、光盘、光盘只读存储器(cd-rom)的任何类型的盘以及磁光盘、只读存储器(rom)、随机存取存储器(ram)、eprom、eeprom、磁卡或光卡或适于存储电子指令的任何类型的介质。

在这里讨论的系统收集关于用户的个人信息或者可以利用个人信息的情况下,可以向用户提供控制程序或特征是否收集用户信息(例如,关于用户的社交网络、社交行为或活动、专业、用户的偏好或用户的当前位置),或者控制是否和/或如何从内容服务器接收可能与用户更相关的内容的机会。另外,某些数据在存储或使用之前可以以一种或多种方式进行处理,因此可以删除个人可识别信息。例如,可以对用户的身份进行处理,使得不能为用户确定个人可识别信息,或者在获得位置信息的情况下可以将用户的地理位置一般化(例如到城市、邮政编码或州级),使得不能确定用户的特定位置。因此,用户可以控制如何收集关于用户的和由内容服务器使用的信息。

这里使用词语“示例”或“示例性”来表示用作示例、实例或说明。在此描述为“示例”或“示例性”的任何方面或设计不一定被解释为比其他方面或设计优选或有利。相反,使用词语“示例”或“示例性”意图以具体的方式呈现概念。如在本申请中所使用的,术语“或”旨在表示包含性的“或”而不是排他性的“或”。也就是说,除非另有规定,或者从上下文清楚的,“x包括a或b”意在表示任何自然的包含性排列。也就是说,如果x包含a,x包括b;或者x包括a和b,则在上述任何情况下都满足“x包括a或b”。另外,除非另有说明或者从上下文来看清楚是指单数形式,否则本申请和所附权利要求书中使用的冠词“一(a/an)”通常应解释为表示“一个或多个”。在整个说明书中对“实施方式”或“一个实施方式”的引用意指结合实施方式描述的特定特征、结构或特性被包括在至少一个实施方式中。因此,贯穿本说明书的各个地方出现的短语“实施方式”或“一个实施方式”并不一定都指相同的实施方式。而且,应注意的是,参照附图中的某些元素所使用的“a-z”符号并不旨在限于特定数量的元素。因此,“a-z”被解释为具有一个或多个存在于特定实施方式中的元件。

应该理解的是,以上描述旨在是说明性的而不是限制性的。在阅读和理解以上描述之后,许多其他实施方式对于本领域技术人员来说将是显而易见的。因此,本公开的范围应该参考所附权利要求以及这些权利要求的等同物的全部范围来确定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1