稀疏业务环境中的动态内容建议的制作方法

文档序号:13426434
稀疏业务环境中的动态内容建议的制作方法
稀疏业务环境中的动态内容建议

背景技术:
在许多上下文中,计算机向用户提供建议。这是有帮助的,因为用户可以拥有的大量选择事实上可能是令人费解的。例如,在在线购物上下文中,用户可以购买物品,但是不知道第二物品通常是与购买的该物品相结合来使用的。然而,接收第一物品的购买信息的计算机系统可以将该第二物品识别为当第一物品被购买时由其它用户最常购买的物品。此信息对该用户是有帮助的,这是由于他或她可能还完全不知道该第二物品的存在和/或必要性。在线购物系统(例如Amazon)和/或在线内容系统(例如Netflix)能够分析数百万用户的活动,以便对针对相对较小的产品(即电影)的集合的购买事件进行改进或优化。然而,当用户业务量不够丰富和/或当将被推荐的潜在物品的集合非常大时,用于生成给用户的推荐的方法在这种高业务量/小产品集合场景中可能无法有效地工作。此外,当业务的量和/或物品的量显着变化时,现有的方法可能无法有效地工作。提供上面的讨论仅用于一般的背景信息,并且不旨在用作确定所要求保护的主题的范围的辅助。

技术实现要素:
提供了一种用于动态地显现相关文档的计算机系统。计算机系统包括处理器,该处理器作为计算机系统的功能组件并且被配置为执行指令。处理器可操作地耦合到具有指示多个文档和关系的信息的信号存储装置。用户接口组件耦合到处理器并且被配置为接收对第一文档的用户选择。动态建议组件被配置为与用户接口组件进行交互以接收对第一文档的指示并且访问信号存储装置,以基于信号存储装置中的多个文档与其它用户之间的关系来提供动态文档建议。提供本发明内容以便以简化的形式来引入在下面的具体实施方式中进一步描述的概念的选择。本发明内容不是要识别所要求保护的主题的关键特征或主要特征,也不是要用作确定所要求保护的主题的范围的辅助。所要求保护的主题不限于解决在背景技术中所提到的缺点中的任何或所有缺点的实现方式。附图说明图1是表示根据本文所描述的实施例的在提供动态内容建议方面有用的多个企业对象和关系的示意图。图2是根据一个实施例的在稀疏业务环境中向用户提供动态内容建议的示例性计算系统的框图。图3是根据一个实施例的相对于初始文档生成候选文档的集合的方法的流程图。图4是示出了根据本文所描述的实施例的将被过滤的用户/文档信号信息的图表。图5是根据一个实施例的经过滤的图4的图表。图6是根据一个实施例的结果集,其指示将过滤的信号(由用户、文档)减少为包括文档发现的时间戳的单个记录。图7是根据一个实施例的用于建立由用户和文档进行分类的候选文档的示例性输出表。图8是根据一个实施例的提供动态文档的经排序的集合的表。图9是示出了根据本文中的实施例的静态内容和生成的一个或多个动态建议的文档的示意性用户界面。图10是图2所示的架构的框图,除了其元件中的一些被布置到云计算架构中。图11是可以用作其中可以部署本系统(或其部分)的用户的手持设备的手持式或移动计算设备的一个说明性实施例的简化框图。图12是根据本文所述的实施例的可以使用的智能电话的示意图。图13示出了其中可以部署本文所述的实施例的计算环境的一个示例。具体实施方式如上所阐述的,当用户业务量不够丰富和/或当将被推荐的潜在项的集合非常大时,用于生成给用户的推荐的方法在高业务量/小产品集合场景中可能无法有效地工作。这样的环境的一个示例是在公司环境中的。通常,公司将雇用成千上万的员工并生成数百万个文档。另外,在公司环境中,所有用户活动都不一定是相等的。例如,下一个办公室中的同事的活动可以与用户的活动更相关,而不是与在被派驻到另一国家的工作人员的那些活动更相关。类似地,相同的团队或公司的部门中的工作人员的活动可以比其它团队中的工作人员的那些活动更相关。另外,与由公司生成和/或存储的潜在文档的数量相比,用户活动可以被认为是稀疏的业务。因此,与数百万观众可以租用的电影不同,公司中的给定文档可以只能被访问(创建、查看、修改等)相对较少的次数(即100次)。为了更好地对企业环境进行建模,已经引入了相对较新的技术,其允许企业的所有对象被建模为图上的节点,而这些对象之间的所有关系可以被建模为节点之间的边或连接。图1是这样的图的非常简化版本的示意图。在图1中,用户A被建模在节点100处。用户A已经查看文档2(在附图标记102处所指示的)。用户A已经查看了文档2的事实被反映在关系“查看”中,如在边104所阐述的。在另一示例中,文档1(在附图标记106处所指示的)已经被共享给用户A。这种“共享”关系是在边108所阐述的。用户可以具有与彼此的关系。例如,在图1中,用户B(在附图标记110处所指示的)可以具有与用户A的关系。例如,用户B可以直接向用户A报告,如在边112所阐述的。类似地,另一用户(用户C-在附图标记114处所指示的)可以是与用户B一起的团队成员。该“团队成员”关系是在边116所指示的。另外,当文档1已经被共享给用户A时,用户C可以已经修改了文档1。文档1和用户C之间的“修改”关系是在边118所指示的。附加的公司对象是在附图标记120处所指示的。节点120反映电子邮件消息。电子邮件消息120已由用户A读取,并且因此凭借在边122所指示的“读取”关系与用户A相关。此外,消息120还包括文档1作为附件。因此,存在指示文档1与电子邮件消息120相关的边124。在图1的示例中的附加对象是在附图标记126处所指示的演示1和在附图标记128处所指示的(消息板讨论)。可以理解,企业中几乎每一个对象的这种对象/关系建模允许捕获大量的关系信息。此外,随着发生日常的用户活动,创建了各种新的边。根据本文所述的实施例,当企业内的用户读取文章(例如维基页面或博客帖子)时,用户可以对了解关于相关主题的其它文章或文档(更具体的、更一般的或类似的)或他/她的亲近的同事在阅读这篇文章后阅读的文档感兴趣。此外,文章的作者也可以希望将关于相关主题的其它文档添加到他/她的文章中,使得如果读者有另外的问题,他们将能够发现关于该主题的所有相关信息。本文描述的实施例总体上提供对在节点边图中捕获的大量企业信息的高效操纵,以快速过滤允许基于对第一文档的用户识别来确定条件概率估计的信息。因此,对第一文档的用户识别或选择可以自动地显现来自企业内的动态建议的相关材料。图2是根据一个实施例的用于动态地显现相关文档的计算系统的示意图。计算系统150包括一个或多个处理器152,每个处理器152能够以编程方式执行指令的序列,以便执行一个或多个功能。另外,计算系统还包括爬取器组件154,其被配置为与存储在企业内部和/或针对企业存储的各种对象进行交互以便识别关系材料,该关系材料可适用于对如节点边图中的边进行建模。然而,在节点边图中自动描绘或在创建关系时以其它方式指示关系的情况下可以实践实施例。计算系统150还包括信号存储装置156。信号存储装置156被配置为存储指示相对于企业的各种对象和关系的所有信息。因此,在节点边图的上下文中,信号存储装置156存储所有节点和边。然而,在可以采用其它数据结构以便将用户与企业的对象的各种交互进行建模的情况下可以实践实施例。计算系统150还包括UI组件158,其被配置为生成用户界面以与系统150进行各种用户交互。UI组件158可以通过网络162向使用客户端设备160的一个或多个用户提供HTML信息。在企业环境中,网络162可以是局域网。然而,网络162还可以包括广域网的部分,或者可以是整个广域网。根据一个实施例,计算系统150包括动态建议组件166,其被配置为识别经由UI组件158的对第一文档的用户选择,并与信号存储装置156进行交互以基于对第一文档的用户选择和在查看由用户识别的相同文档之后对文档的其它用户的识别,来识别针对用户的一个或多个潜在建议文档。如本文所阐述的,文档包括包含由用户可感知的信息的任何计算机文件。因此,文档可以是文字处理文档、演示、图片文件、视频文件等。图3是根据一个实施例的提供相对于对第一文档的用户选择的候选文档的经排名的集合的方法的流程图。方法180开始于方框182,其中用户选择了文档。接下来,在方框182,动态建议组件(例如,组件166(图2所示))访问信号存储装置(例如,信号存储装置156),以获得相对于企业关的用户/文档使用信息。如可以理解,即使相对较少数量的用户与大量文档的集合进行交互,也可以在信号存储装置中生成大量的信息。在图4所指示的图表中阐述了这样的文件使用信息的一个示例。在一个实施例中,输入表是从信号存储装置接收的,其中输入表具有FromContentId(来源内容Id(指示用户))和ItemContentId(项目内容Id(指示文档))的列。接下来,提供了信号类型的列,例如查看、修改、其它等。最后,最后一列指示特定信号被生成的时间戳。本文所述的实施例总体上寻求识别由以第一文档的发现为条件用户发现第二文档的相关概率或可能性来排名的文档的集合。本文所述的实施例使用这种可能性对推荐的文件进行排名。在该上下文下,发现表明第一次查看该文档,而不是文档之间的典型条件的转换。回到图3,一旦已经接收到信号存储信息,就对其进行过滤,如方框184所指示的。在所示的示例中,首先由用户对输入表进行过滤。因此,图4的表成为图5所示的表。另外,忽略与对文档的用户发现无关的任何信号。因此,在所示示例的过滤步骤中仅保留查看/修改信号。在框184处,一旦对输入信号信息进行了过滤,则控制转到方框186,其中计算发现的文档的集合。此步骤将由(用户、文档)过滤的信号减少为包括文档发现的时间戳的单个记录。在一个实施例中,该步骤还包括优化,其丢弃了未由超过某些阈值数量的用户(例如三个用户)发现的任何文档。由于这个基于阈值的丢弃过程是在该过程的早期完成的,所以它显着地减少了候选文档表的大小,其通常具有二次复杂度。一旦完成了减少过滤的信号的步骤,则现在将图5所示的表减少为图6所示的表。回到图3,在框188,动态建议组件166接下来基于图6所指示的排序的表来建立候选文档的集合。对于图6所示的表中的给定用户的每个文档,其余文档中的每一个都被添加到记录中。因此,输出表成为图7所示的输出表。可以看出,添加了两个附加的列;Candidate和CandidateEarlier(候选者和早前候选者)。由于本文所述的技术通常估计基于第一文档的发现而发现第二文档的概率或可能性,因此文档发现的优先级或顺序是重要的。CandidateEarlier?列实现此顺序的跟踪。在这里,CandidateEarlier?=FALSE表示候选文档不是在原始文档之前被发现的。为了以后准确计算条件概率,该信息是很重要的。为了限制图7所示的表的大小,可以实行某些限制。这样的限制的示例包括每个用户的文档的最大数量(丢弃访问太多文档的用户)、文档之间的最大分钟数(丢弃被发现的但是间隔太多时间的文档对,通常这表示它们并不相关)、连续文档的最大数量(丢弃在访问超过n个其它文档后发现的文档)。一旦生成了输出表,控制转到方框190,其中结果是根据基于第一查看文件2的用户识别文档1的条件概率来进行排名的。在一个示例中,该概率是如下来估计的:这里,左侧的条件表示先前使用了第二文档(doc2),但是未使用doc1,这表示后发现了doc1。该分式涉及正结果与所有可能的结果。所有可能的结果包括除了文档1在文档2之前被查看以外的文档2被查看的次数,其中文档1在文档2之前被查看将违所实行的顺序。当文档1和文档2都被某些用户看到时,会发生正输出。在这个示例中,文档2和文档1之间的转换的长度被忽略,这简化了计算。当然,在过滤中实行特定转换的情况下可以实践实施例,如上所阐述的。提供了条件概率计算的结果作为如图8中所指示的经排名的集合。边指示在文档ID后将被发现的前若干个候选文档。在一个实施例中,每个边包含权重,其对应于特定文档被发现的条件概率。因此,在所提供的示例中,对于文档1,发现的首选候选者是文档2。文档2之后,对于文档1第二最可能的发现是文档3。因此,如果用户选择了文档1,则可以向用户提供指示文档2和3的动态建议。权重可以根据下列方程来计算:(1,000×usersSeenCandidateLater)/(totalUsersSeenDocument–userersSeenCandidateEarlier)。然后可以将边添加到节点边图,使得可以在给定源文档的情况下再次检索边。相信本文提供的用于过滤企业对象使用信息和计算条件概率以便向用户提供动态建议的技术比其它技术更有效。图9是具有嵌入在其中的用户选择或创作的静态内容196的用户界面的示意图。当用户将静态内容196嵌入在图9所示的网页或用户界面198中时,动态建议组件166访问信号存储装置156并执行关于图3所述的方法。该执行的结果是提供了经排名的文档200、202和204的集合,其被提供作为在相关文档标题206下所示的动态建议1、2和3。以这种方式,基于对静态内容196的选择,计算机系统能够自动地针对用户或其它用户识别企业内的潜在相关材料。此外,由于本文所述的实施例访问了基本上实时更新的信号存储装置,所以动态建议的材料可以随着用户与企业内的各种文档进行交互而改变。这有助于确保将向用户提供新鲜和相关的内容。此外,用户被自动提供有潜在感兴趣的相关资料,而无需搜遍企业内的庞大的文档库。本讨论提到了处理器和服务器。在一个实施例中,处理器和服务器包括具有相关联的存储器和定时电路的计算机处理器,未单独示出。它们是它们所属的并且被其激活的系统或设备的功能部件,并且促进这些系统中的其它组件或项目的功能。此外,已经讨论了许多用户界面显示。它们可以采用广泛的各种不同的形式,并且可以具有设置在其上的广泛的各种不同的用户可启用的输入机制。例如,用户可致动的输入机制可以是文本框、复选框、图标、链接、下拉菜单、搜索框等。它们也可以以广泛的各种不同的方式被致动。例如,可以使用指向和点击设备(如轨迹球或鼠标)来致动它们。可以使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等来致动它们。也可以使用虚拟键盘或其它虚拟执行器来致动它们。另外,在其上显示它们的屏幕是触敏屏幕的情况下,可以使用触摸姿势来致动它们。此外,在显示它们的设备具有语音识别组件的情况下,可以使用语音命令来致动它们。还已经讨论了许多数据存储装置。将会注意到它们各自可以被分成多个数据存储装置。对于访问它们的系统所有这些都可以是本地的、所有这些都可以是远程的、或者一些可以是本地的而另一些则是远程的。本文中考虑所有这些配置。此外,附图示出了具有归因于每个方框的功能的多个方框。将会注意到可以使用较少的方框,因此功能由较少的组件来执行。而且,更多的方框可以用于分布在更多组件之间的功能。图10是图2所示的架构的框图,除了其元件中的一些被布置到云计算架构500中。云计算提供不需要终端用户了解传送服务的系统的物理位置或配置的计算、软件、数据访问和存储服务。在各种实施例中,云计算使用适当的协议通过广域网(例如因特网)来传送服务。例如,云计算提供方通过广域网来传送应用,并且可以通过Web浏览器或任何其它计算组件来对该应用进行访问。架构100的软件或组件以及相对应的数据可以存储在远程位置的服务器上。云计算环境中的计算资源可以在远程数据中心位置进行整合,或它们可以被分散。云计算基础架构可以通过共享数据中心传送服务,即使它们作为用户的单个访问点。因此,本文所述的组件和功能可以是从远程位置处的使用云计算架构的服务提供方提供的。可替代地,它们可以是从常规服务器提供的,或者它们可以直接或以其它方式被安装在客户端设备上。该描述旨在包括公共云计算和私有云计算。云计算(公共和私有)提供了充分的无缝的资源池,以及减少了对管理和配置底层硬件基础架构的需求。公共云由供应商来管理,并且通常支持使用相同基础架构的多个消费者。此外,公共云,而不是私有云,可以使终端用户从管理硬件中解放。私有云可以由组织本身来管理,并且基础架构通常不会与其它组织共享。组织仍然在某种程度上维护硬件,例如安装和维修等。在图10所示的实施例中,一些项目类似于图2所示的项目并且它们以类似的方式被编号。图10具体示出了计算机系统150位于云502中(其可以是公共的、私有的或其中部分是公共的而其它是私有的组合)。因此,用户使用设备160通过云502访问这些系统。图10还描绘了云架构的另一实施例。图10示出了还可以考虑的是系统150中的一些元件被布置在云502中而另一些不是。作为示例,信号存储装置156可以被布置在云502的外部,并且通过云502被访问。无论它们位于何处,它们可以由设备160直接通过网络(广域网或局域网)访问,它们可以由服务托管在远程站点,或者它们可以通过云被提供为服务或由驻留在云中的连接服务访问。这里考虑了这些架构中的所有架构。还将注意到,架构或其部分可以被布置在广泛的各种不同的设备上。这些设备中的一些设备包括服务器、台式计算机、膝上型计算机、平板计算机或其它移动设备,例如掌上计算机、蜂窝电话、智能电话、多媒体播放器、个人数字助理等。图11是可以用作其中可以部署本系统(或其部分)的用户或客户端的手持设备16的手持式或移动计算设备的一个说明性实施例的简化框图。图11提供了可以运行计算机系统150的组件或与计算机系统150进行交互或两者的客户端设备16的组件的一般框图。在设备16中,提供了通信链路13,其允许手持式设备与其它计算设备进行通信,并且在一些实施例下通信链路13提供了用于自动接收信息的信道,例如,通过扫描。通信链路13的示例包括红外端口、串行/USB端口、有线网络端口(例如以太网端口)以及允许通过包括以下的一个或多个通信协议进行通信的无线网络端口:用于提供对网络的蜂窝接入的无线服务的通用分组无线业务(GPRS)、LTE、HSPA、HSPA+和其它3G和4G无线电协议、1Xrtt和短消息服务、以及提供到网络的本地无线连接的802.11和802.11b(Wi-Fi)协议、以及蓝牙协议。在其它实施例下,应用或系统是在连接到SD卡接口15的可移动安全数字(SD)卡上接收的。SD卡接口15和通信链路13沿着总线19与处理器17进行通信,总线19也连接到存储器21和输入/输出(I/O)组件23、以及时钟25和位置系统27。在一个实施例中,I/O组件23被提供以用于促进输入和输出操作。用于设备16的各种实施例的I/O组件23可以包括输入组件(例如,按钮、触摸传感器、多点触摸传感器、光学或视频传感器、语音传感器、触摸屏、近距离传感器、麦克风、倾斜传感器和重力开关)以及输出组件(例如,显示设备、扬声器和打印机端口)。也可以使用其它I/O组件23。时钟25说明性地包括输出时间和日期的实时时钟组件。其也可以说明性地向处理器17提供定时功能。位置系统27说明性地包括输出设备16的当前地理位置的组件。这可以包括例如全球定位系统(GPS)接收机、LORAN系统、航位推算系统、蜂窝三角测量系统、或其它定位系统。它还可以包括例如生成所需地图、导航路线和其它地理功能的地图软件或导航软件。存储器21存储操作系统29、网络设置31、应用33、应用配置设置35、数据存储装置37、通信驱动器39以及通信配置设置41。存储器21可以包括所有类型的有形易失性和非易失性计算机可读存储器设备。它还可以包括计算机存储介质(如下所述)。存储器21存储计算机可读指令,计算机可读指令当由处理器17执行时使处理器根据指令执行计算机实现的步骤或功能。类似地,设备16可以具有可以运行各种业务应用或以其它方式与系统150进行交互的客户端业务系统24。例如,根据本文所述的实施例,在设备16上执行的应用可以显现动态相关的内容建议。网络设置31的示例包括诸如代理信息、因特网连接信息和映射之类的东西。应用配置设置35包括针对特定企业或用户定制应用的设置。通信配置设置41提供用于与其它计算机通信的参数,并且包括诸如GPRS参数、SMS参数、连接用户名和密码之类的项目。应用33可以是先前已经存储在设备16上的应用或在使用期间安装的应用,尽管它们也可以是操作系统29的部分,或被托管在设备16外部。图12是根据本文所述的实施例的可以使用的智能电话的示意图。智能电话71具有显示图标或图快或其它用户输入机制75的触敏显示器73。用户可以使用机制75来运行应用、进行呼叫、执行数据传输操作等。通常,智能电话71是建立在移动操作系统上的,并且提供比功能电话更高级的计算能力和连接性。应该注意,移动设备16的其它形式是可能的。图13示出了其中可以部署本文所述的实施例的计算环境的一个示例。参考图13,用于实现一些实施例的示例性系统包括计算机810形式的通用计算设备。计算机810的组件可以包括但不限于处理单元820、系统存储器830和系统总线821,系统总线821将包括系统存储器的各种系统组件耦合到处理单元820。系统总线821可以是包括存储器总线或存储器控制器、外围总线和使用各种总线架构中的任何一个的本地总线的若干类型的总线结构中的任何一个。作为示例而非限制,这种架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围组件互连(PCI)总线也称为夹层总线。计算机810通常包括各种计算机可读介质。计算机可读介质可以是可由计算机810访问的任何可用的介质,并且包括易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质不同于并且不包括调制的数据信号或载波。其包括硬件存储介质,包括以用于存储信息(例如,计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪速存储器或其它存储器技术、CD-ROM、数字通用盘(DVD)或其它光盘存储器、磁带盒、磁带、磁盘存储装置或其它磁存储设备、或可用于存储所需信息并且可由计算机810访问的任何其它介质。通信介质通常体现为计算机可读指令、数据结构、程序模块或传输机制中的其它数据,并且包括任何信息传送介质。术语“调制的数据信号”表示以对信号中的信息进行编码的这样的方式来设置或改变其特性中的一个或多个的信号。作为示例而非限制,通信介质包括有线介质(例如有线网络或直接有线连接)和无线介质(例如声学、RF、红外和其它无线介质)。上述中的任何的组合也应被包括在计算机可读介质的范围内。系统存储器830包括易失性和/或非易失性存储器(例如只读存储器(ROM)831和随机存取存储器(RAM)832)形式的计算机存储介质。包含有助于(例如在启动期间)在计算机810内的元件之间传输信息的基本例程的基本输入/输出系统833(BIOS)通常被存储在ROM831中。RAM832通常包含可由处理单元820立即访问的数据和/或程序模块,和/或目前正由处理单元820操作的数据和/或程序模块。作为示例而非限制,图13示出了操作系统834、应用程序835、其它程序模块836和程序数据837。计算机810还可以包括其它可移动/不可移动的易失性/非易失性计算机存储介质。仅作为示例,图13示出了从不可移动的非易失性磁性介质读取或写入不可移动的非易失性磁性介质的硬盘驱动器841、从可移除的非易失性磁盘852读取或写入可移除的非易失性磁盘852的磁盘驱动器851、以及从可移动的非易失性光盘856(例如,CDROM或其它光学介质)读取或写入可移动的非易失性光盘856的光盘驱动器855。可以在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于磁带盒、闪存卡、数字通用盘、数字视频磁带、固态RAM、固态ROM等。硬盘驱动器841通常通过不可移动的存储器接口(例如,接口840)连接到系统总线821,并且磁盘驱动器851和光盘驱动器855通常通过可移动存储器接口(例如,接口850)连接到系统总线821。可替代地或附加地,本文所述的功能可以至少部分地由一个或多个硬件逻辑组件来执行。例如但不限于,可以使用的硬件逻辑组件的说明性类型包括现场可编程门阵列(FPGA)、程序专用集成电路(ASIC)、程序特定标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。上面所述的并在图13中所示的驱动器及其相关联的计算机存储介质向计算机810提供了计算机可读指令、数据结构、程序模块和其它数据的存储。在图13中,例如,硬盘驱动器841被示为存储操作系统844、应用程序845、其它程序模块846和程序数据847。应该注意,这些组件可以与操作系统834、应用程序835、其它程序模块836和程序数据837相同或不同。操作系统844、应用程序845、其它程序模块846和程序数据847在这里被给予不同的数字,以说明至少它们是不同的副本。用户可以通过输入设备(例如,键盘862、麦克风863和指示设备861,例如鼠标、轨迹球或触摸板)将命令和信息输入到计算机810中。其它输入设备(未示出)可以包括操纵杆、游戏手柄、卫星碟型天线、扫描仪等。这些和其它输入设备通常通过耦合到系统总线的用户输入接口860连接到处理单元820,但是可以通过其它接口和总线结构(例如并行端口、游戏端口或通用串行总线(USB))被连接。视觉显示器891或其它类型的显示设备也经由接口(例如视频接口890)连接到系统总线821。除了监视器之外,计算机还可以包括其它外围输出设备,例如扬声器897和打印机896,其可以通过输出外围接口895被连接。计算机810使用到一个或多个远程计算机(例如远程计算机880)的逻辑连接在联网环境中工作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它公共网络节点,并且通常包括上述与计算机810相关的元件中的许多或全部。图13中描绘的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但也可以包括其它网络。这样的联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。计算机810当在LAN联网环境中被使用时通过网络接口或适配器870连接到LAN871。计算机810当在WAN联网环境中被使用时通常包括调制解调器872或用于通过WAN873(例如互联网)建立通信的其它单元。可以是内部或外部的调制解调器872可以经由用户输入接口860或其它适当的机制连接到系统总线821。在联网环境中,所描绘的与计算机810相关的程序模块或其部分可以被存储在远程存储器存储设备中。作为示例而非限制,图13示出了驻留在远程计算机880上的远程应用程序885。将会理解,所示的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其它单元。还应当注意,本文所述的不同实施例可以以不同的方式进行组合。也就是说,一个或多个实施例的部分可以与一个或多个其它实施例的部分进行组合。本文中考虑了这些中的所有。示例1是提供了用于动态地显现相关文档的计算机系统。计算机系统包括处理器,其是计算机系统的功能组件并且被配置为执行指令。处理器可操作地耦合到具有指示多个文档和关系的信息的信号存储装置。用户接口组件耦合到处理器并且被配置为接收对第一文档的用户选择。动态建议组件被配置为与用户接口组件进行交互以接收对第一文档的指示并且访问信号存储装置,以基于信号存储装置中的多个文档之与其它用户间的关系来提供动态文档建议。示例2是任何或所有前述示例所述的计算机系统,其中,信号存储装置是计算机系统的组件。示例3是任何或所有前述示例所述的计算机系统,其中,动态文档建议包括多个文档。示例4是任何或所有前述示例所述的计算机系统,其中,多个文档是基于用户在发现第一文档之后发现每个相应文档的条件概率来进行排名的。示例5是任何或所有前述示例所述的计算机系统,其中,动态建议组件基于在查看第一文档之后对相应文档的其它用户的选择来确定每个文档的条件概率。示例6是任何或所有前述示例所述的计算机系统,其中,第一文档是文字处理文件。示例7是任何或所有前述示例所述的计算机系统,其中,第一文档是演示文件。示例8是任何或所有前述示例所述的计算机系统,其中,第一文档是图像文件。示例9是任何或所有前述示例所述的计算机系统,其中,第一文档是视频文件。示例10是任何或所有前述示例所述的计算机系统,其中,信号存储装置包括节点边图,其中,文档被表示为节点并且关系被表示为边。示例11是任何或所有前述示例所述的计算机系统,其中,当用户与文档进行交互时,信号存储装置基本上实时地被自动更新。示例12是任何或所有前述示例所述的计算机系统,并且还包括被配置为与文档进行交互以识别关系信息并且将关系信息存储到信号存储装置中的爬取器组件。示例13是用于显现相关文档的计算机实现的方法。所述方法包括:接收对第一文档的用户选择并且访问具有与多个文档相关的关系信息的信号存储装置。至少一个建议文档是基于在发现所选择的第一文档之后发现至少一个建议文档的条件概率来提供的。示例14是任何或所有前述示例所述的计算机实现的方法,其中,访问信号存储装置包括从信号存储装置接收输入表,其中用户信息与每个文档以及信号类型信息相关。示例15是任何或所有前述示例所述的计算机实现的方法,并且还包括基于信号类型来过滤输入表。示例16是任何或所有前述示例所述的计算机实现的方法,并且还包括从输入表中丢弃未被高于所选择的阈值的多个用户发现的文档。示例17是任何或所有前述示例所述的计算机实现的方法,其中多个建议文档是通过基于第一文档的发现的其发现的条件概率来进行排名的。示例18是任何或所有前述示例所述的计算机实现的方法,并且还包括对建议文档的集合强制实行至少一个限制。示例19是任何或所有前述示例所述的计算机实现的方法,其中限制包括每个用户的文档的最大数量。示例20是提供用于动态显现相关文件的计算机系统。计算机系统包括处理器,其作为计算机系统的功能组件并且被配置为执行指令。处理器可操作地耦合到具有指示多个文档和关系的信息的信号存储装置。用户接口组件耦合到处理器并且被配置为接收用户创作的静态内容。动态建议组件被配置为与用户接口组件进行交互以接收用户创作的静态内容,并且访问信号存储装置以基于对相关文档的发现的条件概率的估计来动态地建议多个相关文档。尽管已经以结构特征和/或方法动作特有的语言描述了主题,但是应当理解,所附权利要求中限定的主题不一定限于上述具体特征或动作。相反,上述具体特征和动作被公开作为实现权利要求的示例形式。...
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1