公司排序数据的生成的制作方法

文档序号:11830038阅读:228来源:国知局
公司排序数据的生成的制作方法与工艺

本申请涉及软件和/或硬件技术的技术领域,并且在一个示例性实施例中,涉及用以利用在线社交网络数据来确定公司排序数据的系统和方法。



背景技术:

可将在线社交网络视为在虚拟空间中与人类联系的平台。在线社交网络可以是基于网络的平台,诸如像社交联网网站,并且可以由用户经由网络浏览器或经由在移动电话、平板电脑等上提供的移动应用程序来访问。在线社交网络可以是针对行业团体具体地设计的行业聚焦社交网络,其中,注册会员建立其知道并在专业上信任的人的网络并编档。可用会员简档来表示每个注册会员。会员简档可包括一个或多个网页,或者采用XML(可扩展标记语言)、JSON(Java脚本对象表示)等的会员信息的结构表示。社交联网网站的会员简档网页可强调关联会员的职业历史和教育。

附图说明

在附图的图中以示例而非限制的方式图示出本发明的实施例,其中,相同的附图标记指示类似元件,并且在所述附图中:

图1是在其内部可实现将利用在线社交网络来确定公司排序的示例性方法和系统的网络环境的图解表示;

图2是根据一个示例性实施例的将利用在线社交网络数据来确定公司排序的系统的框图;

图3是根据示例性实施例的将利用在线社交网络数据来确定公司排序的方法的流程图;

图4是在其内部可执行一组指令以便促使机器执行本文中所讨论方法中的任何一个或多个的计算机系统形式中的示例性机器的图解表示。

具体实施方式

描述了一种用以利用在线社交网络数据来确定公司排序数据的方法和系统。在以下描述中,出于说明的目的,阐述了许多特定细节以便提供本发明的实施例的透彻理解。然而,对于本领域的技术人员而言将显而易见的是:可在没有这些特定细节的情况下实施本发明。

可在包括或排他意义上理解如本文所使用的术语“或”。同样地,术语“示例性”仅仅意指某物的示例或例子而不一定是实现目标的优选或理想手段。另外,虽然下面所讨论的各种示例性实施例可利用基于Java的服务器和相关环境,但在公开中仅仅是为了明了起见而给出实施例。因此,包括各种系统架构的任何类型的服务器环境可采用本文所述的应用中心资源系统和方法的各种实施例,并且认为在本发明的范围内。

出于本描述的目的,可将短语“在线社交联网应用程序”称为短语“在线社交网络”或者仅仅为“社交网络”并可与之互换使用。还将注意的是:在线社交网络可以是任何类型的在线社交网络,诸如像专业网络、基于兴趣的网络或者允许用户作为注册会员加入的任何在线联网系统。出于本描述的目的,可将在线社交网络的注册会员简单地称为会员。

用会员简档(也称为会员的简档或者简单地为简档)来表示在线社交网络的每个会员。社交网络会员的简档信息可包括个人信息,诸如像会员的姓名、会员的当前和先前地理位置、会员的当前和先前职业信息、与会员的教育有关的信息、关于会员的专业成就的信息、出版物、专利等。社交网络会员的简档信息还可包括关于会员的专业技能的信息,诸如像“产品管理”、“专利申请”、“图像处理”等。会员的简档还可包括关于会员的当前和过去职业的信息,诸如公司标识、由关联会员在各公司拥有的专业职称以及会员在那些公司的任职日期。

在一个实施例中,可利用相对于正在排序的公司的人的所谓流入和流出来实现公司排序的确定。与没有或较少的人趋向于从其他公司向其变迁的那些公司(其被识别为较低排序公司)相反,趋向于吸引人的公司、例如人们趋向于从其他公司变迁到的那些公司被识别为较高排序公司。

出于本描述的目的,可将用于确定用于由电子存储数据集中的项目所表示的公司(一组公司)的各排序的计算机实现系统称为公司排序系统。为了生成用于一组公司的各排序或分数,可将公司排序系统配置成利用集中于其会员的专业简档的社交网络系统。在一个实施例中,可将公司排序系统配置成检查表示在线社交网络的各会员的会员简档并提取所谓的变迁数据。该变迁数据中的项目指示在线社交网络系统的会员从一个公司到另一公司的变迁。公司排序系统可访问会员简档,根据简档的职业部分来确定由会员简档所表示的人离开了公司A并加入公司B,并且增加从公司A变迁到公司B的雇员的计数。提取变迁数据的此过程可持续至已检查所有简档(或者社交网络系统中的简档的预定子集)为止。在某些实施例中,可基于特定行业来选择简档的子集。例如,可将公司排序系统配置成仅选择已被识别为与高科技行业相关联的那些简档以用于检查。因此,然后可使用所提取变迁数据来对已被识别为高科技公司的公司进行排序。在一个实施例中,可基于某种准则(诸如特定行业,例如高科技、银行业、建筑等)来选择正在被检查以确定公司排序的简档。

可处理变迁数据以确定哪些公司是更合意的以及哪些公司是不那么合意的。根据变迁数据,公司排序系统可导出进一步的数据,诸如有多少雇员在称为目标时段(例如,一年或过去三年或某个其他时段)的时间段期间从其他公司变迁到该公司,以及还有多少雇员在整个目标时段内留在该公司。

公司排序系统然后可构造所谓的公司变迁图表,其具有表示各公司的节点和表示雇员从一个公司到另一个的变迁的边缘。如果变迁数据指示与从公司B至公司A相比更多的雇员从公司A移动至公司B,则边缘具有从一个节点(例如,表示公司A的节点A)到另一节点(例如,表示公司B的节点B)的方向。例如,如果有九个人离开公司A而为公司B工作且一个人离开公司B而为公司A工作,则从节点A至节点B的边缘将被分配90%的权值,其表示在这两个公司A和B之间移动的人中的90%正在从公司A移动至公司B。在另一实施例中,分配给连接第一节点和第二节点的边缘的权值是基于从第一公司变迁至第二公司的雇员的数目和/或从第二公司变迁至第一公司的雇员的数目。例如,如果10个人从节点A所表示的公司A移动至节点B所表示的公司B且15个人从公司B移动至公司A,则从节点B至节点A的定向边缘将被给定5的权值。在一个实施例中,仅在表示具有所谓雇员变迁关系的公司的节点之间创建公司变迁图表中的边缘。例如,如果在目标时段期间没有雇员从公司A移动至公司B或从公司B移动至公司A,则在公司变迁图表中将不存在连接A和B的边缘。

可通过对图表应用排序算法(诸如像PageRank算法)来确定用于公司变迁图表的每个节点的排序或节点分数。用于公司变迁图表中的节点的节点分数指示在线网络系统的会员变迁至由该节点所表示的公司的可能性。节点分数可以是0与1之间的值,并且公司变迁图表中的所有节点分数的和等于1。节点的节点分数指示在将来时间由节点所表示的公司的计划大小(projected size),条件是雇员的相同变迁趋势继续。在一个实施例中,公司排序系统可计算用于公司变迁图表中的每个节点的计划大小值。可通过将节点的节点分数乘以已检查的会员简档的数目来确定用于节点的计划大小值以便构造公司变迁图表。例如,如果在构造公司变迁图表中正在考虑的所有会员简档的数目是30M且用于表示公司A的节点A的节点分数是一个百分数,则公司A的计划大小将是30M的1%,其为3M。

在某些实施例中,针对公司变迁图表中的节点生成的各种分数可包括例如由节点所表示的公司的当前大小与计划大小之间的差、公司的当前大小与计划大小的比、指示与由公司变迁图表中的其他节点所表示的公司相比而言公司的当前大小与计划大小之间的比或差的值。还可将针对公司变迁图表中的各节点生成的分数称为公司分数。

在一个实施例中,可用受到在目标/样本时间段期间或在某个预定时间段期间仍在公司被雇佣的人数影响的值来增加针对表示公司的节点生成的分数。例如,针对仍被公司雇佣达一年的每个人,增加表示该公司的节点的排序。可用变迁图表中的自循环类型的边缘来表示留在公司的人数。

可在数据库中存储公司分数以供将来使用,并且可用于各种目的,诸如像估计特定公司的雇员的薪水、基于会员已被雇佣的公司的各排序来确定归因于会员的成功程度、基于大学毕业生变成顶级公司雇员的百分比来确定大学的排序等。可在图1中所示的网络环境100的背景下实现利用在线社交网络来确定公司排序的示例性方法和系统。

如图1中所示,网络环境100可包括客户端系统100和120以及服务器系统140。客户端系统120可以是移动设备,诸如像移动电话或平板电脑。在一个示例性实施例中,服务器系统140可托管在线社交网络系统142。如上文所解释的,用会员简档来表示在线社交网络的每个会员,所述会员简档包含关于会员的个人和专业信息,并且可与指示会员到在线社交网络中的其他会员简档的联系的社交链路相关联。可将会员简档和相关信息存储在数据库150中作为会员简档152。

客户端系统110和120可能能够利用例如在客户端系统110上执行的浏览器应用程序112或在客户端系统120上执行的移动应用程序经由通信网络130来访问服务器系统140。通信网络130可以是公共网络(例如,因特网、移动通信网络或能够传送数字数据的任何其他网络)。如图1中所示,服务器系统140还托管公司排序系统144,其可被有利地用来确定用于由公司标识符的一个或多个电子存储集合中的项目所表示的公司(也称为公司集合)的各公司排序(也称为公司分数)。可将公司排序系统144配置成利用社交网络142来确定用于各种公司的排序(也称为公司分数)。公司排序系统144检查表示在线社交网络系统的各会员的会员简档并提取变迁数据。如上文所揭示的,变迁数据中的项目指示在线社交网络系统142的会员从一个公司到另一公司的变迁。可基于特定行业来选择简档以用于检查。根据变迁数据,公司排序系统144可导出进一步的数据,诸如有多少雇员在目标时间段期间从该公司变迁至其他公司以及还有多少雇员在整个目标时段内仍留在公司。

可将公司排序系统144配置成构造公司变迁图表,其具有表示各公司的节点和表示雇员从一个公司到另一个的变迁的边缘。如上所述,如果变迁数据指示与从公司B至公司A相比更多的雇员从公司A移动至公司B,则边缘具有从一个节点(例如,表示公司A的节点A)到另一节点(例如,表示公司B的节点B)的方向。可通过对图表应用排序算法(诸如像PageRank算法)来确定用于公司变迁图表的每个节点的排序或节点分数。如更早前所述,用于公司变迁图表中的节点的节点分数指示在线网络系统的会员变迁至该节点所表示的公司的可能性,并且可以是0与1之间的值,其中,公司变迁图表中的所有节点分数的和等于1。可使用节点分数来生成其他值,诸如像由节点所表示的公司的当前大小与计划大小之间的差、公司的当前大小和计划大小的比等。可将也称为公司分数的生成分数存储在数据库150中作为公司排序154以供将来使用。在图2中图示出示例性公司排序系统144。

图2是根据一个示例性实施例的将利用在线社交网络数据来确定公司排序的系统200的框图。如图2中所示,系统200包括变迁数据收集器210、图表生成器220、权值计算器230、排序模块240以及存储模块250。可将变迁数据收集器210配置成从一组会员简档中提取变迁数据。来自该组会员简档的会员简档表示图1的在线社交网络系统142的会员。可将变迁数据收集器210配置成基于行业类型而从保持在在线社交网络系统142中的所有会员简档中选择该组会员简档。变迁数据的项目指示会员从第一公司到第二公司的变迁。

可将图表生成器220配置成利用变迁数据来生成公司变迁图表。公司变迁图表中的节点表示来自该组公司的各公司,并且连接公司变迁图表的两个节点的边缘指示一个或多个会员从由第一节点所表示的第一公司变迁至由第二节点所表示的第二公司。可将权值计算器230配置成向连接第一节点和第二节点的边缘分配权值。边缘的权值可反映从第一公司变迁至第二公司的会员数目。

可将排序模块240配置成对公司变迁图表应用诸如像PageRank算法之类的排序算法以获得用于公司变迁图表中的节点的节点分数。还可将排序模块240配置成通过将用于节点的节点分数乘以已被变迁数据收集器210检查的会员简档集合中的项目的数目来生成用于节点的计划大小值。还可将排序模块240配置成针对公司集合中的项目确定指示在某个时间段内留在由公司列表中的项目所表示的公司的雇员数目的值。可将存储模块250配置成将节点分数在数据库中存储为与公司列表中的条目相关联。可参考图3来描述由系统200执行的某些操作。

图3是根据一个示例性实施例的将利用社交网络会员的在线社交网络数据来确定公司排序的方法300的流程图。可由处理逻辑来执行方法300,该处理逻辑可包括硬件(例如,专用逻辑、可编程逻辑、微代码等)、软件(诸如在通用计算机系统或专用机器上运行)或两者的组合。在一个示例性实施例中,处理逻辑常驻于图1的服务器系统140处,并且具体地在图2中所示的系统200处。

如图3中所示,当图2的变迁数据收集器210从由图1的在线社交网络系统142保持的一组会员简档提取变迁数据时,方法300在操作310处开始。如上文所解释的,变迁数据的项目指示会员从第一公司到第二公司的变迁。在操作320处,图2的图表生成器220利用变迁数据来生成公司变迁图表。公司变迁图表中的节点表示来自该组公司的各公司,并且连接公司变迁图表的两个节点的边缘指示一个或多个会员从第一节点所表示的第一公司变迁至第二节点所表示的第二公司。在操作330处,图2的权值计算器230向在公司变迁图表中连接节点的各边缘分配权值。边缘的权值可反映从第一公司变迁至第二公司的会员数目。

在操作340处,图2的排序模块240对公司变迁图表应用诸如像PageRank算法之类的排序算法以获得用于公司变迁图表中的节点的节点分数。图2的存储模块250将节点分数存储为与公司列表中的条目相关联以供将来使用。

本文所述的示例性方法的各种操作可至少部分地由被临时地配置成(例如,用软件)或永久地配置成执行相关操作的一个或多个处理器执行。无论是临时地还是永久地配置,此类处理器可组成进行操作以执行一个或多个操作或功能的处理器实现模块。在某些示例性实施例中,在本文中提及的模块可包括处理器实现模块。

同样地,本文所述的方法可以是至少部分地处理器实现的。例如,可由一个或多个处理器或处理器实现模块来执行方法操作中的至少一些。可将某些操作的执行分布在一个或多个处理器之中,不仅仅是常驻于单个机器内,而是跨许多机器部署。在某些示例性实施例中,一个或多个处理器可位于单个位置上(例如,在家庭环境、办公室环境内或者作为服务器群),而在其他实施例中,可将处理器跨许多位置分布。

图4是在其内可执行一组指令以便促使机器执行本文中所讨论方法中的任何一个或多个的计算机系统700的示例性形式中的机器的图解表示。在替换实施例中,机器作为独立设备操作或者可连接(例如,联网)到其他机器。在联网部署中,机器可在服务器——客户端网络环境中的服务器或客户端机器的容量中或者作为端对端(或分布式)网络环境中的对端机器操作。该机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝式电话、网络设备、网络路由器、交换机或桥接器或能够执行指定将由该机器采取的动作的一组指令(顺序的或以其他方式)的任何机器。此外,虽然仅图示出单个机器,但还应将术语“机器”理解成包括单独地或共同地执行一组(或多组)指令以执行本文所讨论的方法中的任何一个或多个的机器的任何集合。

示例性计算机系统700包括处理器702(例如,中央处理单元(CPU)、图形处理单元(GPU)或两者)、主存储器704和静态存储器706,其经由总线707相互通信。计算机系统700还可包括视频显示单元710(例如,液晶显示器(LCD)或阴极射线管(CRT))。计算机系统700还包括字母数字输入设备712(例如,键盘)、用户接口(UI)导航设备714(例如,光标控制设备)、磁盘驱动单元716、信号生成设备718(例如,扬声器)和网络接口设备720。

磁盘驱动单元716包括机器可读介质722,在其上面存储了一个或多个指令集和数据结构(例如,软件724),其体现了本文所述方法或功能中的任何一个或多个或被其利用。软件724还可在其被计算机系统700执行期间完全地或至少部分地常驻于主存储器704内和/或处理器702内,其中主存储器704和处理器702还指定机器可读介质。

还可利用许多众所周知的传输协议(例如,超文本传输协议(HTTP))中的任何一个经由网络接口设备720通过网络726来传送或接收软件724。

虽然在示例性实施例中将机器可读介质722示为单个介质,但应将术语“机器可读介质”理解成包括存储一个或多个指令集的单个介质或多个介质(例如,集中式或分布式数据库,和/或关联高速缓存器和服务器)。还应将术语“机器可读介质”理解成包括能够将一组指令存储和编码以便由机器执行并且促使机器执行本发明的实施例的方法中的任何一个或多个或者能够存储和编码由此类指令集利用或与之相关联的数据结构的任何介质。因此应将术语“机器可读介质”理解成包括但不限于固态存储器、光学介质以及磁介质。在没有限制的情况下,此类介质还可包括硬盘、软盘、存储器卡、数字视频磁盘、随机存取存储器(RAM)、只读存储器(ROM)等。

可在包括安装在计算机上的软件的操作环境中、在硬件中或在软件和硬件的组合中实现本文所述的实施例。在本文中可为了方便起见而单独地或共同地仅仅用术语“发明”来提及发明主题的此类实施例,并且并不意图自愿地使本申请的范围局限于任何单个发明或发明概念,如果事实上公开了超过一个的话。

模块、部件和逻辑

在本文将某些实施例描述为包括逻辑或许多部件、模块或机制。模块可组成软件模块(例如,(1)在非临时机器可读介质上或者(2)在传输信号中体现的代码)或硬件实现模块。硬件实现模块是能够执行某些操作的有形单元,并且可以某种方式来配置或布置。在示例性实施例中,可用软件(例如,应用程序或应用程序部分)将一个或多个计算机系统(例如,独立式、客户端或服务器计算机系统)或一个或多个处理器配置为进行操作以执行如本文所述的某些操作的硬件实现模块。

在各种实施例中,可以机械方式或以电子方式来实现硬件实现模块。例如,硬件实现模块可包括专用电路或逻辑,其被永久地配置(例如,作为专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC))以执行某些操作。硬件实现模块还可包括用软件临时地配置成执行某些操作的可编程逻辑或电路(例如,包含在通用处理器或其他可编程处理器内)。将认识到的是:以机械方式、在专用且永久配置的电路中或在临时配置的电路中(例如,用软件配置)实现硬件实现模块的判定可由成本和时间考虑驱动。

因此,应将术语“硬件实现模块”理解成涵盖有形实体,作为被物理地构造、永久地配置(例如,硬接线)或暂时地或临时地配置(例如,编程)成以某种方式操作和/或执行本文所述的某些操作的实体。考虑其中临时地配置(例如编程)硬件实现模块的实施例,不需要在任何一个时刻配置或实例化每个硬件实现模块。例如,在硬件实现模块包括使用软件配置的通用处理器的情况下,可在不同时间将通用处理器配置为各不同的硬件实现模块。软件可因此将处理器例如配置成在一个时刻组成特定硬件实现模块以及在不同的时刻组成不同的硬件实现模块。

硬件实现模块可以向其他硬件实现模块提供信息并从其接收信息。因此,可将所述硬件实现模块视为被通信耦合。在同时地存在多个此类硬件实现模块的情况下,可通过连接硬件实现模块的信号传输(例如,通过适当电路和总线)来实现通信。在其中在不同时间对多个硬件实现模块进行配置或实例化的实施例中,可例如通过多个硬件实现模块可访问的存储器结构中的信息的存储和检索来实现此类硬件实现模块之间的通信。例如,一个硬件实现模块可执行操作,并且将该操作的输出存储在其被通信耦合到的存储器件中。另一硬件实现模块然后可在稍后的时间访问存储器件以检索并处理存储输出。硬件实现模块还可发起与输入或输出设备的通信,并且可以对资源(例如,信息集合)进行操作。

本文所述的示例性方法的各种操作可至少部分地由被临时地配置(例如,用软件)或永久地配置成执行相关操作的一个或多个处理器执行。无论是临时地还是永久地配置,此类处理器可组成进行操作以执行一个或多个操作或功能的处理器实现模块。在某些示例性实施例中,在本文中提及的模块可包括处理器实现模块。

同样地,本文所述的方法可以是至少部分地处理器实现的。例如,可由一个或多个处理器或处理器实现模块来执行方法操作中的至少一些。可将某些操作的执行分布在一个或多个处理器之中,不仅仅常驻于单个机器内,而且跨许多机器部署。在某些示例性实施例中,一个或多个处理器可位于单个位置上(例如,在家庭环境、办公室环境内或者作为服务器群),而在其他实施例中,可将处理器跨许多位置分布。

一个或多个处理器还可操作以支持“云计算”环境中的相关操作的执行或者作为“软件即服务”(SaaS)。例如,操作中的至少一些可由一组计算机(作为包括处理器的机器的示例)执行,这些操作可经由网络(例如,因特网)和经由一个或多个适当接口(例如,应用程序接口(API))来访问。

因此,已描述了用以利用在线社交网络数据来确定公司排序的方法和系统。虽然已参考特定示例性实施例描述了实施例,但将显而易见的是:在不脱离发明主题的更宽范围的情况下可对这些示例进行各种修改和改变。因此,将以说明性而不是限制性意义来考虑本说明书和附图。

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