CN101203847A - 用于管理列表的系统和方法 - Google Patents

用于管理列表的系统和方法 Download PDF

Info

Publication number
CN101203847A
CN101203847A CNA2006800158945A CN200680015894A CN101203847A CN 101203847 A CN101203847 A CN 101203847A CN A2006800158945 A CNA2006800158945 A CN A2006800158945A CN 200680015894 A CN200680015894 A CN 200680015894A CN 101203847 A CN101203847 A CN 101203847A
Authority
CN
China
Prior art keywords
data set
classification
database
module
extracting
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.)
Granted
Application number
CNA2006800158945A
Other languages
English (en)
Other versions
CN101203847B (zh
Inventor
亚当·海德
桑迪普·康纳
约瑟夫·廷
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.)
Yahoo Inc
Original Assignee
Yahoo Inc
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
Priority claimed from US11/173,470 external-priority patent/US7702674B2/en
Priority claimed from US11/173,656 external-priority patent/US7707203B2/en
Priority claimed from US11/173,837 external-priority patent/US7680854B2/en
Application filed by Yahoo Inc filed Critical Yahoo Inc
Priority claimed from PCT/US2006/008906 external-priority patent/WO2006099299A2/en
Publication of CN101203847A publication Critical patent/CN101203847A/zh
Application granted granted Critical
Publication of CN101203847B publication Critical patent/CN101203847B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种用于捕捉、管理和呈现经由因特网从多个通常不相关的公告获得的数据从而让用户进行检查的计算机系统和方法。该系统包括抓取模块,抓取模块具有一个或多个可操作的抓取引擎以从公司站点和网站、直接提要以及其他源上的列表抓取信息数据集,其中,抓取模块接收抓取到的列表信息数据集并将其存储在数据库中。该系统还具有管理平台,管理平台协调源、系统管理员和处理模块的所有操作和它们之间的通信。在该平台中的处理模块包括:抓取管理模块,分析存储在数据库中的挑选的抓取的数据;以及分类模块,检查存储在该数据库中的每个数据集并将其分类到一个或多个类别的预定集中,并将分类的数据集返回到该数据库。

Description

用于管理列表的系统和方法
技术领域
本公开涉及计算机软件以及更具体地涉及一种用于管理数据列表的软件系统和方法。
背景技术
需要管理数据列表以及向客户例如房地产经纪人、雇用招聘者和旅行社呈现数据列表的公司共有的一个挑战是以简洁和智能的方式传输它们具有的信息,以致于这些数据的用户得到他们以最优的、有效率的和有效的方式在最短的搜索时间内搜索的特定信息。另一个挑战是需要跟踪在使用列表数据的多个营业单位和管理机构之间的数据流和信息传送。
一个说明性例子涉及雇用招聘的领域。对于搜索以吸引有才能的雇员的公司来说挑战是为空缺职位找到最好的候选人组。对于求职者来说挑战是找到适合的工作。在人力资源部门中的一个标准实践是为每个开放职位创建职位描述,然后将该职位连同描述一起广告宣传。招聘者和求职者然后需要查看和分析这些描述,从而确定在求职者和特定工作之间的匹配。
在因特网上搜索的人员可以使用很多搜索工具来基于他或她的技能来寻找适当的工作。当前可用的典型的搜索工具要求求职者以关键词例如期望位置、工作类型、期望薪酬水平等形式来选择多个标准。相似地,招聘者除了工作描述之外,还提供特定工作需要考虑的技术水平、教育背景、经验年限等。然后,搜索工具在工作描述的数据库中查找搜索者的关键词,并返回或显示包含求职者的关键词的那些工作描述。然而,可用的搜索工具依然经常需要每个招聘者和求职者仔细查看大量的所谓搜索结果,或者如果提供的标准太特别或太窄时,该搜索工具可能返回无搜索结果。
通常,在因特网上搜索以列表形式编译的任何数据例如在特定区域中的新住宅的人员可以使用许多搜索工具。当前可用的典型的房地产搜索工具需要购房者或购房者的经纪人以关键词例如期望位置、住宅类型、占地面积、学校系统、街道位置选择、价格范围等的形式来选择多个标准。列表房地产经纪人除了住宅描述之外,还典型地在多重列表服务中提供图片和其他数据例如占地的平方英尺数、房屋的平方英尺数、卧室和浴室的数量。然后,搜索工具在住宅的数据库中查找用户的关键词,并返回或显示包含用户的关键词的那些住宅。然而,可用的搜索工具依然或者经常要求用户或者要求房地产经纪人或潜在购房者或其他用户每个都仔细查看在多个站点上的大量所谓搜索结果。然后,需要提供搜索管理系统,该搜索管理系统更有效地收集列表数据,对数据标准化,以及管理在列表数据的用户和提供者之间的接口。
发明内容
在这里描述的系统包括用于高级列表管理软件系统的平台,该高级列表管理软件系统用于管理用于任何类型的列表数据例如职位告示、简历列表、房地产列表、产品列表等的搜索工具。该系统可以完全分布在多个机器之中并且是可扩展的。在软件系统中的以下描述的每个模块是可扩展的,并且可以包括由要在其中操作和处理的数据量所指定的多个实例。
在这里所述的系统的实施例是计算机软件系统,用于管理通过数据网络从多个源捕捉的列表信息数据的捕捉和处理,从而将数据编译为可搜索数据结构。该系统包括:通过网络接口提供系统管理和操作控制的管理入口模块;以及一个或多个列表管理器模块,响应于经由管理入口模块提供的指令,可操作以控制对于源的访问、控制对于列表信息数据的检索以及处理从那些源接收到的列表信息数据。每个列表管理器模块控制任务管理器以对列表信息数据分类、检查分类的列表信息数据的部分是否符合预定的质量标准,以及存储分类的列表信息数据用于在搜索区中使用。
每个列表管理器模块包括一个或多个任务管理器,每个任务管理器包括抓取管理模块,该抓取管理模块协调一个或多个抓取引擎的操作和这些引擎之间的通信,以从由管理入口模块中的站点管理模块识别的站点获得抓取数据集,以将抓取数据集存储在数据库中。列表管理器模块还优选地包括:质量管理模块,该质量管理模块被连接到抓取管理模块,分析在数据库中存储的每个抓取数据集是否符合预定质量规定;以及列表数据分类模块,可操作以检查数据库中存储的每个数据集并将其分类到一个或多个种类的预定集中并将分类的数据集返回到数据库;以及搜索区同步器,与数据库通信,用于将来自数据库的分类的数据集编译和传输到搜索区。
示例性系统的实施例通过使用访问列表信息的任何可用方法来操作。这样的方法可以包括直接提要(direct feeds)、基于网络的提要(webbased feeds)、XML提要(XML feeds)以及使用抓取技术以搜索网页并从在因特网以及具体在万维网上可以访问的站点获得列表信息,然而,因为列表信息可以被分布在现在已知或将变得已知的其他网络上,所以在这里描述的系统和功能适用于任何分布式的信息环境,由该分布式的信息环境可以利用手动系统或自动系统来获得信息。
作为示例性的实现,在这里描述了求职者和职位描述以及职位告示。然而,管理系统具有比简单的职位搜索更广泛的应用。其可以利用任何类型的数据管理系统来实现,在该数据管理系统中要管理数据的列表或数据记录的其他编译。在这里描述的系统是模块化的以及可扩展的,并且可以被实现为在单个计算机上的独立系统,或者该系统的模块化功能可以被分布在通过适当的网络接口通信的异构计算机、服务器等之中。
当搜索关于职位的信息的求职者使用在这里描述的系统的实施例时,该求职者将需要查看较大范围的职位描述。特别地,系统使用抓取技术来建立以职位描述构成的数据库。数据库还可以包括来自其他源的职位描述,该其他源例如由搜索申请者的公司提供和/或由除了通过抓取以外的方法提供的职位描述。系统接收职位描述,以及然后使用内部分类和质量管理方法,使得在每个独立职位描述中包含的信息的质量最佳,以最大化对于用户的用途以及改进用户在使用这里描述的系统时的总体职位搜索体验。
根据本公开的获得、处理和编译列表数据集的方法包括:从可以通过因特网访问的一个或多个站点上的一个或多个列表获得列表信息数据集;将对应于每个抓取列表的数据集存储在数据库中;分析在数据库中存储的每个数据集是否符合预定质量标准;以及将数据库中存储的每个数据集分类到一个或多个预定类别中;以及将分类的数据集返回到数据库。该方法进一步可以包括通过XML提要、RSS提要以及从多个源的直接输入从一个或多个客户站点获得列表信息数据集。分类操作优选地包括对于在预定类别的每个中的每个数据集确定和分配置信值。该确定优选地以及更具体地包括比较每个获得数据集的文本和在分类数据库中的之前分类的数据集的文本,以及确定用于每个获得的数据集的每个预定类别中的置信值。
本公开的方法的优选实施例包括这些操作:访问和/或抓取来自一个或多个公司职业网站或职位版上的一个或多个职位列表的职位信息;将对应于每个抓取的数据列表的抓取的职位描述数据存储在数据库中;分析存储在数据库中的每个抓取的职位描述数据是否符合预定质量标准;将存储在数据库中的每个职位描述分类到一个或多个预定职位类别中并将分类的职位描述返回到数据库;以及将分类的职位描述数据从数据库传送到搜索区。
分类操作优选地包括这些操作:比较每个抓取职位描述的文本和分类数据库中的之前分类的职位描述文本;以及确定在用于每个抓取职位描述的每个预定类别中的置信值。更优选地,该方法包括对具有低于预定值的置信值的每个分类的抓取职位描述进行标记用于手动查看,以及提供手动查看接口,以允许查看者验证任何标记的分类。
附图说明
结合附图并参考以下的描述,本公开的上述特征和目的将变得更加明显,在附图中相同的附图标记表示相同的单元,其中:
图1A是根据本公开的实施例的列表管理平台系统的总体方块图。
图1B是在图1A的管理平台系统中的示例性列表管理模块的总体功能方块图。
图1C是在图1B的列表管理模块中的每个任务管理器的总体功能方块图。
图2是使用图1A-1C所示的管理平台系统的实施例的职位搜索系统的总体方块图。
图3是用在图2所示的示例性系统的实施例中的示例性用户(求职者)搜索输入查询接口。
图4是用在图2所示的示例性系统的实施例中的示例性用户(求职者)搜索结果接口。
图5是通过图2所示的系统的简化数据处理流程。
图6是在图1所示的系统的实施例中的职位分类控制模块的框图。
图7是根据图1B所示的系统的实施例的职位分类过程的操作流程图。
图8是用于职位分类过程的示例性文档分类平台服务用户接口的屏幕截图。
图9是用于职位分类手动查看接口模块的处理流程图。
图10是用于职位分类手动查看接口模块的示例性用户接口的屏幕截图。
图11是正被手动查看的职位描述的示例性用户接口的屏幕截图。
图12是在图1所示的系统中的去重复模块中的数据去重复过程的流程图。
图13是图1B和1C所示的质量引擎过程的流程图。
图14是示出质量管理员报告的用户接口的示例性屏幕截图。
图15是根据本公开的实施例的抓取的工作原理图。
图16是图1所示的系统的报告模块中产生的产业报告的屏幕截图。
图17是在图1A的用户管理模块中使用的用户接口的屏幕截图。
图18是在图2所示的系统的两个任务管理器之间共享数据的任务管理器的框图。
具体实施方式
在图1A中示出了根据本公开的实施例的使用用于高级列表管理(PALM)系统100的平台的示例性系统10的高层次方块图。系统10是分布式软件系统,该分布式软件系统被设计为:经由因特网112或其他网络接入来从多个站点110获得列表信息数据集;在PALM系统100中处理该数据集;将处理后的数据集存储在一个或多个数据库12中;以及然后填充一个或多个搜索区109,用于由用户120通过网络服务器集群进行访问。
图1A以宏观视图显示了示例性系统10。图1B是一个列表管理器模块104的详细方块图。图1C是描述在每个列表管理器模块104中示出分布式功能的PALM任务管理器131的功能性的方块图。
PALM平台100是列表生命周期管理平台系统,该系统有助于用于内容采集、分类、质量、性能和显示的商业处理的自动化和定制。在参考图2的以下的更详细描述的示例性应用实施例中,在雇用/职位搜索和工作安排环境中使用PALM系统100。然而,要知道,可以使用包括PALM系统100的系统10来管理包括大量的数据集的任何复杂列表模式。
返回参考图1A,系统10通常将列表管理系统的所有潜在管理功能性包括在系统100中的模块化形式中。由此,系统100基本上具有入口部分102、一系列列表管理器104以及优选地具有外部处理集成模块160。此外,系统100包括平台应用编程接口(API)106、客户自服务入口107和管理接口入口API 108。基本上,系统100例如经由因特网112与外部输入站点110和其他源接口连接。管理操作人员114具有通过内联网116经由管理入口108对于PALM入口102的接入。如果一些付费客户117被给予了对于PALM系统100的管理接入,则这些付费客户117还可以通过自服务端口107通过因特网112接口连接到PALM入口102中。
在PALM系统100中,处理从外部站点和源110检索到的列表数据。然后PALM系统100填充一个或多个搜索区109。然后在用户120提出查询之后,由网络服务器集群118访问搜索区109中的信息用于经由因特网112显示。
PALM系统100允许管理操作员114加速数据列表的采集、处理以及显示的可用性。PALM系统100优选地包括一个或多个PALM处理机器或列表管理器模块104。系统还通过适当的PALM应用编程接口(API)进行交互,用于外部通信,例如用于管理访问、控制、检查和报告功能以及会计、财务、销售和客户信息功能。
PALM入口102包括许多功能模块,可以使用这些功能模块来访问、控制和询问由在PALM系统100中的PALM列表管理器104执行的处理。
用户管理单点登录模块122提供对于所有授权的管理员的基于角色的访问控制,以及支持用于管理用户访问、许可和角色的创建、查看、更新和删除(CRUD)用例,支持独立授权或通过集中式企业认证(也被称为单点登录)行为,以及提供批准以及管理员工作流程。该模块122还允许管理员执行单点登录行为从而在PALM入口102中访问他被授权的任何功能性。
在图17中示出用于用户管理模块的用户管理用户接口的示例性屏幕截图。在图17中,用户管理屏幕1700被示出为列出示例性被许可的用户名1702以及他们的访问许可1704,该访问许可1704示出他们被管理地授权以在PALM系统100中执行或编辑子例程。用于让自服务客户117通过自服务入口107进入的用户接口屏幕将被限制更多,因为这样的客户将优选在系统100中具有仅仅受限的功能访问。
代理/站点管理模块124控制在下面参考特定实施例更详细地讨论的抓取引擎的操作,该特定实施例包括对于利用抓取获得的职位信息的管理。
该模块124支持用于管理站点和站点属性例如代理自动访问远程站点所需要的用户名和口令的CRUD用例。该模块还启用、禁用、批准以及拒绝对于代理/站点的请求。这些站点属性包括:
Seed URL(s)
Throttle speed
Frequency
Preferred Day/Time of scraping
Display/Non-display schedules
Agent instructions for staying within a given list of“hosts”
Blacklist sites(those that are not to be scraped)
Stay within a given SLD e.g.<anything>.ibm.com
Crawling up to one host away (e.g.www.ibm.com has a link towww.ibm.peopleclick.com.Then get all listings from peopleclick.com)
质量查看模块126提供允许操作员来查看列表质量、查看内容的问题和错误、以及确认或无效列表的手动工具。例如,确认操作可以包括对于测试、无用数据以及损坏的内容列表的无效。最终,质量查看模块126提供用于参考图13如下描述的自动质量查看任务的详细手动查看机制。其实,质量查看模块允许操作员从数据库中检索已经被标记为没有满足预定质量标准的数据集。
列表生命周期模块128允许在列表数据输入和输出的操作控制中对于PALM系统的吞吐量选项和性能进行精细调节和调整。例如,该模块可以利用国家、人口统计(DMA)、Verticals、质量或其他参数来回填列表。例如,在具有很少的付费列出农业职位的国家的区域中,显示给用户120的结果被补充有也就是回填有来自这样的区域的抓取列表,或者可以被其本来将基于质量级确定被排除的列表来填充。因此,可以使用该模块来调整在抓取显示信息和付费显示信息之间的混合调节器、利用参数例如国家、DMA或Verticals来改变抓取列表和付费列表的百分比。其包括用于比较付费、抓取和溢价列表(premiumlisting)的统计和性能的功能性。其提供用于管理列表类型和属性的CRUD用例,以及管理内容/列表显示和到期的时间表。
报告模块130在其他标准之中利用产业和人口统计来支持许多报告任务。例如,该模块130允许比较付费和抓取列表的历史表现、便利跟踪列表点进和对于付费和抓取列表感兴趣的表达、以及跟踪通信重定向。该报告模块130还跟踪新列表的数量、付费和抓取信息数据集的数量。最终,销售和市场组可以使用这种工具来基于相似的这样的列表的之前历史来出售溢价列表。在图16中示出了产业报告1600的示例性屏幕截图。在图14中示出了示例性质量管理器报告1400。
类别查看模块132提供这样的机制,在该机制中,可以对不能被自动分类或归类到适当类别中的列表信息进行手动地查看以及或者适当地分类或删除。以下,在职位搜索和列表信息管理的领域中,参考PALM系统100的特定实现的实施例,更详细地解释了类别查看模块132。然而,以下描述的类别查看原理适用于其中根据预定和动态确定的标准来系统地获得、查看和分类数据列表的任何系统。在2004年8月17日提交的名为“Automatic Product Categorization”的美国专利申请序列号10/920,588中描述了开发的并且转让给本公开的专利权受让人的示例性自动分类技术。
搜索区同步器模块154从数据库12取得净化的以及分类的数据集、对这些数据集进行适当的格式化以及然后将副本填充到适当的一个搜索区109中。相似地,付费搜索区同步器156取得源自付费列表客户的净化和分类的数据集、为了搜索对这些数据集进行适当的格式化、以及利用副本填充搜索区109以用于搜索。当数据集满足用户的搜索标准时,这样的付费列表优选被给予对于用户120的较高级别的可见度,并由此显示给终端用户120。
配置生成器模块158分析正在由系统100处理的数据容量,并且生成用于每个可用PALM列表管理器模块104的配置参数,以及确定要分配给每个PALM列表管理器模块104的PALM任务管理器/调度程序的数量和大小。基于列表管理器模块的可用性、正被发送到系统100中的数据容量、抓取操作的结果,如下进一步描述,以及管理输入,管理操作员告知配置管理器模块158优化和平准系统100中数据吞吐量所需要的信息。
PALM系统100包括如由硬件可用性以及配置管理器模块158确定的从1到n个的PALM列表管理器模块104。一个示例性的PALM列表管理器模块在图1B中示出。PALM列表管理器模块104具有对于在整个PALM系统100的数据库12中的数据的访问以及使用,该数据库12包括PALM元数据存储器162、
暂存数据库(staging database)164和已加工数据库166连同于输入到PALM系统100中的每个输入相关联的局部数据库。通常,将管理信息提交到元数据存储器162。暂存数据库164是在初始数据处理期间使用的临时数据库。一旦已经完成了初始处理,将处理后的数据存储在已加工数据库166中。
每个列表管理器模块104优选地包括主任务调度程序131,该主任务调度程序131管理和调度一系列任务,在从外部源例如站点110和客户自服务块117进入到系统100中的每个数据集上必须执行这些任务。由主任务调度程序131控制的任务包括但是不限制于抓取管理器模块134、数据源适配器任务136、数据拆分器任务133、数据净化器任务138、数据去重复任务139、自动分类引擎任务140、基于规则的质量引擎任务142和业务规则任务144。
抓取管理器模块134具有对于抓取或获得来自外部站点110的列表信息的工具的全局控制和管理。使用两种大体类型的抓取工具:站点专用抓取工具,例如最初由Kelkoo公司开发的Kelkoo,该Kelkoo公司现在是Yahoo公司的子公司;以及URL爬取引擎例如也由Yahoo公司开发的Café/Kelsa抓取引擎。该爬取引擎以种子URL开始,以及搜索它所遇到的每个和每一个链接,由此通向远离原始地址的位置和信息。抓取管理器模块134通过主任务调度程序131,将这些抓取工具的操作与代理/站点管理模块124进行协调,以确保被抓取和爬取的站点不被行为所压倒,而是被频繁地访问,从而确保处理当前的列表信息。
数据源适配器任务模块136从不同数据源取得数据,像从系统100的多个输入接收到的数据集一样,将数据存储在局部数据库中,并将这些不同类型的数据集都转换为一种标准化类型的标准化数据集。例如,可以将数据集作为文本文件、XML、HTML或RSS数据提要馈给到系统100中。这些不同类型的数据集可以在进一步处理之前被进行标准化。数据源适配器任务模块136确保所有数据集为通用的标准化类型。
现在参考图1C,每个PALM主任务调度程序131调度和控制一系列任务,这些任务的一些管理多任务线程。主任务调度程序131调度数据净化器任务管理器138、数据去重复任务管理器139、分类任务管理器140、质量引擎任务管理器142以及业务规则任务管理器144,其中每个管理器管理n个任务线程。
数据拆分器任务133将数据集的块划分为不同的具有大概相似特性的分组,以致于将利用相同的任务序列线程来处理具有相似属性的数据集。该任务133确定数据集到不同线程的分配。数据拆分任务首先检测在可用PALM主任务调度程序131的数量上是否具有配置变化。如果有变化,那么将来自抓取场和其他源的暂存数据再散列为新的分组。如果没有配置变化,则仅仅评估新近添加的数据集。在职位列表的情况中,数据拆分任务133基于预定字段例如职位名称、公司和职位状态的ASCII的散列,拆分列表数据。该散列特定地为((ascii(职位名称)+ascii(职位公司)+ascii(职位状态1))%NUM_CK_RUNNERS),其中,NUM_CK_RUNNERS是如由配置管理器158确定的PALM主任务调度程序131可用的线程数。数据拆分任务的子例程是使用均匀散列函数,该均匀散列函数总是将相同的数据集拆分到相同的“散列表元”中,以致于相同的数据记录优选地利用相同线程进行处理。
数据净化器任务管理器138控制在线程161中的每个数据集或记录的检查以及格式化的移除,以致于在每个抓取列表中的列表信息具有相同的格式和内容结构。特别地,该任务138控制从数据字段剥除所有HTML标记、验证名称并在地址和位置数据中放入适当的代码,例如用于US国内列表的2字母的州代码。对于国际列表,其放入到适当的国际位置缩写(省/地区)中。在该任务模块138中的每个线程161还执行在数据列表中的字段例如每个URL的操作检查,从而确保其始于“http:”或“https:”,以及剥除亵渎词、验证数据字段、检查在每个字段中的无效字符例如在城市字段中的所有数字。最终,每个线程161优选地提供正确基本标点操作,例如确保在句子中的第一个字母是大写的,并且开始每个新句子之前空两个格。
数据去重复任务管理器139管理和调度多线程任务163,该任务为:从数据净化器管理器模块138取得数据记录或列表数据集;以及将数据集与在现有数据库164和166中的记录进行比较,以确保PALM系统100没有重复已经接收、检查和存储的数据。当与现有数据库内容相比被标记为复制的任何数据集被从数据库12中移除。由此术语“去复制”或“去重复”。
分类任务管理器模块140管理线程165,该线程165自动地执行操作以确定特定列表数据集可能属于的类别。例如,在Mobile Alabama中的住宅出售列表可以被根据其位置、大小、形式、单栋或联式等来分类。可以利用领域、工作时间、教育、位置等来对职位数据集进行分类。因此,分类引擎任务管理器140控制和管理根据预定类别自动地对主题列表数据集进行分类所需要的操作。该任务管理器140是多线程的并且同时地协调达到n个类别确定的实例165。该类别任务优选地还包括对于确定分类的置信度的确定。在2004年8月17日提交的美国专利申请序列号No.10/920,588以及在这里描述的相关申请中公开了示例性分类技术,这些申请全都转让给了Yahoo公司。
基于规则的质量引擎任务管理器模块142提供规则序列,根据这些规则来详查每个列表数据集,从而确保数据集满足特定标准并包含特定的最小级的详细信息。该标准可以包括例如用于住宅房地产列表的街道地址、或用于职位列表的职位名称或用于任一这样实现的城市位置。在下面参考系统100的职位搜索实现来更详细地解释该模块142的一个示例性实施例。质量引擎任务管理器142调度两个基本的线程序列:URL链接检查线程167,接着是数据验证线程169。这些检查167和169验证URL实际上是当前有效的URL,以及还执行在数据库记录词和从URL下载的网页之间的词匹配例程从而确保列表描述匹配。数据验证线程169从数据集随机地选择词,以及将这些选择的词与下载的网页匹配,并且优选地选择其中具有多于5个字符的词。如果数据集与下载的网页不匹配,则设置出错标记。以下参考图13,参考PALM系统100的职位搜索实现,来解释该任务的更详细的例子。
业务规则任务模块144向企业提供应用区分规则来显示或不显示列表、过滤列表、基于产业位置来显示部分的列表、或即使之前可能已经爬取了数据也完全阻止用于显示的站点数据的能力。例如,在职位搜索应用程序中,对于Boston区域,一个人可以在预定的时期中选择用于卫生产业的抓取或爬取数据的仅仅10%的显示。当新鲜列表到达时,业务规则引擎遍历整个数据集,以及可以根据预定的规则清除或标记所有列表。
根据PALM系统100的以上描述,应该清楚系统是可扩展的、多线程的以及分布式的,以致于可以在计算机器的不同组合上执行模块的功能性,例如多个模块104,该计算机器适当地操作性地连接到一起,从而执行描述的功能。
在图2中示出了根据本公开的实施例的包括图1A-1C所示的PALM系统100的一个实施例的职位搜索系统200的总体结构图。可以认为系统200具有三个部分:外部输入部分201、数据处理部分203以及输出处理部分205。基本上,数据处理部分从外部输入部分201取得职位数据、处理该数据、组织和验证该数据的有效性、对职位数据进行分类以及将该数据提供给输出部分,该输出部分可以经由因特网112由求职者207最终访问。
外部输入部分201包括来自例如法人和公司职业站点和许多其他职位版202的职位告示,可以由数据处理部分来访问该职位告示。这些法人职业站点和职位版202当前由几千个公司职业站点组成。雇主/招聘者204还可以通过因特网112直接地向雇主/招聘者接口应用程序206提供职位列表信息。该招聘者接口应用程序向雇主/招聘者提供用户接口屏幕,以向数据处理部分203输入职位信息和以适当格式提交独立的列表。
系统网关/提要208可以与客户站点210通信,以及以预定格式拉入职位信息,客户站点210为此目的之前已经存储了该预定格式。网关/提要208允许客户站点来提交信息以及将系统提要提供到系统200的数据处理部分203中。可选择地,客户站点可以使得职位信息可以通过网络服务212来得到。这里,系统200经由简单对象访问协议(SOAP)来访问客户站点210,从而获得职位列表信息。另一种从客户站点获得职位信息的方法是通过RSS 214。“真正简单的整合”的缩写RSS是被设计用于共享新闻、博客、产品数据以及很多其他类型的网络内容的轻量级XML格式。RSS已经发展为在包括BBC、Yahoo、CNET、CNN、Disney、Forbes、Motley Fool、Red Herring以及很多其他的站点之间共享内容的流行方法。还可以经由因特网112通过直接XML提要216从客户站点210获得职位信息。
还向数据处理部分203提供输入的是抓取引擎场218。抓取引擎场218具有几个抓取引擎220,抓取引擎220通常使用不同的抓取技术和方法,可以根据设计选择而开发这些抓取技术和方法,但是在这里优选地具体针对用于在全球电子网络例如因特网112上进行搜索的优选实施例,并且每个引擎220被针对特定类型的抓取任务或特定类型或法人站点集来优化。例如,将由现在是Yahoo公司的子公司的欧洲的Kellkoo公司开发的Kellkoo抓取引擎进行优化以详尽地搜索预定的已知法人站点或列表站点。Kellkoo抓取引擎被优化以跟随在站点内的内部链接到达特定的内部位置以提取职位信息数据集。然而,Kellkoo抓取引擎不跟随外部链接。由Yahoo公司开发并且在2005年2月22日提交的名为“Techniques for Crawling Dynamic Web Content”的美国专利申请序列号No.11/064,278中描述的Café/Kelsa抓取引擎场被优化,以系统地检查种子URL以及跟随站点内的每个链接,以及在该URL上提供的每个内部和外部链接以及其在“爬取”上找到的链接。
输入部分201将来自这些多个源的数据经由总线224馈给到暂存数据库222,该暂存数据库222是整个数据库12的一部分。然后,利用用于高级列表管理(PALM)系统100的平台,在数据处理部分203中访问暂存数据库222。PALM系统100还具有提供输入到管理系统100中的几个模块。例如,客户关系管理器(CRM)模块226和其他外部应用模块228可以提供信息以及提取报告和在PALM系统100中唯一可获得的其他信息。项目管理、操作、销售和市场职员230还可以经由企业内部网232向PALM系统100提供输入以及对于PALM系统100的控制,如下将更详细地描述。
数据输出部分205包括职位搜索网络服务器/客户机集群248以及到该集群248的许多数据源模块。抓取搜索区246是这些数据源模块之一。利用职位搜索网络服务器/客户机集群248对广告系统溢价列表模块250、付费搜索区252、序曲系统内容匹配模块254以及链接构造器模块256进行询问。
广告系统溢价列表模块250利用系统200的主机,组织以及向集群248提供来自特定雇主或招聘者的广告,这些特定的雇主或招聘者具有付费的溢价帐号。可以响应特定的搜索请求,将这些溢价广告以在特定框中、大标题、突出显示或以另外与其他可能呈现给求职者207的列表区分开的方式显示给求职者207。
付费搜索区模块252是特定的搜索区,雇主会员260可以在向系统200的主机付费之后访问该付费搜索区模块252。该付费搜索区模块252识别、存储以及跟踪来自那些付费以确保他们的公告职位列表在呈现给求职者207的用户接口上得到较高或强调放置的职位招聘者雇主或公司的职位列表。由此,经由会员桌上型电脑262或网关264由会员公司直接地将付费公告提供到搜索区252中。付费搜索区252包含由这样的职位列表实体提供的信息,这些职位列表实体已经向这里描述的系统200的运营商付出额外费用以推动与用户提供的特定需要搜索类别有关的列表,以致于利用溢价支付来换取经由用户接口406将这些搜索结果在突出位置中提供给用户。
序曲系统内容匹配模块254询问其数据库中是否有匹配职位搜索者的搜索标准的任何广告。这些广告被预先存储在付费数据库中或链接到付费数据库以供系统200的主机使用。这些广告的例子在图4所示的搜索结果用户接口屏幕截图中示出。
链接构造器模块256提供链接cookie和地址以链接到匹配由求职者207提供的搜索项的其他职位源。在一些例子中,为了查看职位描述,必须将求职者转到特定网站以见到列表。在这样的环境中,站点可能在可以查看职位信息之前需要特定的安全元件例如cookie等。因此,在站点需要特定cookie或其他标识符的情况中,链接构造器模块256提供必需的接口特性。链接构造器模块256管理过程以构造URL,该URL包括站点要访问职位列表所需要的必需信息,例如会话cookie。除了根据求职者的搜索请求所感兴趣的特定职位之外,还可以将链接构造器模块256的结果提供给求职者207。
接着参考图4,网络服务器集群248作为到求职者207的网关接口,该求职者207搜索以使用这里描述的系统200。为了在系统200上起动搜索请求,优选地向求职者207呈现与图3所示相似的用户接口。然后集群248搜索以从系统搜索区252、254、246和250获得信息,并且以容易使用和有效率的方式将这些信息呈现给发出询问的求职者207,例如就在图4所示的示例性结果接口中那样。
在图3所示的用户接口300中输入搜索请求302的求职者207与服务器集群248接口连接,该服务器集群248如图4所示将总结果依次呈现给求职者207。由此,如下所述,通过提供由广告系统溢价列表模块250、职位搜索存储体252、搜索区254、250、246识别的列表,用户将看到溢价列表,以及用户将看到来自搜索区256的爬取职位。
现在转到图4,示出用户询问结果接口400的示例性屏幕截图。该用户接口400给予求职者查看所有匹配其询问的职位信息的机会。此外,该用户接口400允许求职者提交不同的或更精确的询问。显示部分402给予用户查看所有将匹配特定搜索标准的职位信息的机会,例如在图4中,该特定搜索标准为在Illinois的软件开发员职位。求职者可以查看针对软件开发员职位的搜索结果的所有可用职位信息,或可以仅仅查看在过去的24个小时、7天或其他预选时期中更新过的那些描述。并且,求职者还可以利用经验级、位置或在职位描述中的其他特性或子类来构建他或她的搜索。
接口400还显示由多个优选结果分组分开的结果部分。由此,系统200可以呈现用于从广告系统溢价列表模块250获得的溢价列表404的部分,其允许系统200的主机来通过给企业搜索雇主提供机会来使用系统200作为收益增强工具,该机会是让企业搜索雇主来付出额外费用来使得他们的职位列表获得在呈现给求职者207的用户接口400的结果部分中的更突出位置。
用户接口400还优选地包括第二子部分406,该第二子部分406呈现来自付费职位搜索区252的搜索结果。第三子部分408呈现非溢价算法的搜索结果,该非溢价算法的搜索结果是对抓取搜索区246进行搜索的直接结果。第四部分410提供来自序曲系统内容匹配模块254的更通常的付费链接。最终,可以根据对于广告系统溢价列表模块250的搜索,来显示若干广告409。
抓取包括图15所示的以下部分:Kelkoo Sniffer 220;搜索网站202以寻找职位的一系列代理1502,优选地为MySQL数据库,例如暂存数据库222,以存储抓取的职位和代理日志;以及Runner脚本1504,由PALM系统100中的代理/站点管理模块124来管理该Runner脚本1504以运行代理1502。
下面是数据流如何优选地通过系统200中的抓取场220的概述。在抓取周期开始时,在整个数据库12的另一部分也就是已加工数据库236中的“job_current”表626被截取,并且将该表626的内容复制到存档表(未示出)。优选地仅仅将抓取职位的存档存储有限的时间(例如7天)。
在抓取引擎220中的Kelkoo“Sniffer”是Java程序,该程序被用于运行适配器(也叫做代理1502)。抓取引擎220经由代理1502对职位版202进行抓取。每个代理1502优选地由三个文本文件组成:agent.info、agent.props以及agent.sql。使用单个代理来抓取单个网站。将代理文件存储在代理专用目录中。然后,代理1502将抓取得到的职位转储到“职位”表(注意可以有几个职位表)1506中,图15中示出了两个职位表。Runner 1504将来自“职位”表1506的职位记录复制到“job_current”表626中。Runner 1504下游的部件例如质量管理器模块142和分类器模块132和140接收职位记录的副本并在job_current表626中的记录上执行质量管理和分类操作,job_current表626优选为已加工数据库236的一部分。然后将结果传递到图2所示的已加工数据库236。
Kelkoo Sniffer搜索引擎220将代理1502考虑为虚拟SQL表格。在代理的sql文件中限定了虚拟表格的模式。Info文件是Sniffer搜索引擎220相对于虚拟表格运行的SELECT声明。Props文件包含用来填充虚拟表格的抓取逻辑。抓取逻辑是由不同的过滤器执行的步骤序列。过滤器是构成适配器开发包(ADK)的Java类。顺序地执行过滤器,并且过滤器可以读取变量以及将变量写入到通用上下文中。具有过滤器以:在html页中寻找字符串或模式并保存该字符串或模式;操纵上下文的变量;在重复出现的模式上循环并且执行循环中的其他过滤器;转到由URL识别的页面以及检索其内容等。
代理1502的输出是包含对于每个抓取的职位的SQL INSERT声明的文本文件。Sniffer搜索引擎220使用该数据文件来将抓取的职位记录加载到称为“职位”(实际的表格名为配置参数)的MySQL表格1506中。经由多个命令行参数和在命令行上载入的任何数量的属性文件来配置Sniffer 220。Sniffer搜索引擎220的最重要的配置参数为:MySQL数据库的名称、数据库用户名和口令、将抓取的记录转储在里面的表格的名称、以及通往代理请求文件的路径、以及包含代理1502的目录。
Sniffer搜索引擎220优选是单线程的:其每次加载和运行一个代理1502。在运行代理1502之后,Sniffer搜索引擎220利用关于以下的信息向“报告”表格1508插入记录:运行时间、代理1502的名称和路径、抓取记录(职位)的数量以及可能的错误。
将代理文件存储在CVS储存库中。利用特定的CVS标记来标记已经通过QA的代理1502的版本。这种机制允许代理开发者、测试者和生产系统来在相同的子目录上工作,从而避免在生产中运行未被测试过的代理。
代理运行器1504是为系统200开发的Per1脚本。运行器1504要求可以在本地文件系统上使用代理文件。在起动运行器1504之前,将本地CVS子目录与生产标记同步,从而下载要运行的所有代理文件。运行器1504执行以下的步骤:
1.其读取其配置文件。这包含要运行的代理1502的列表。每个运行器具有作为配置的一部分被载入的id。
2.其基于其自身的配置生成用于Sniffer 220的配置文件。
3.其从job_current表格626删除属于要运行的代理1502的所有记录(因为优选每天要截取job_current表格626,所以在多数情况下是非必需的)。
4.其激活运行代理1502的Sniffer搜索引擎220。
5.其优选地处理在职位表格中的每个记录,以从html标记剥除职位描述。每个运行器具有其“自身的”职位表格1506,使用运行器的id(例如“job1”)来生成该职位表格1506的名称。
6.其将来自职位表格1506的所有记录转储到job_current表格626。职位记录包含运行器的id,该id帮助下游部件来容易地识别来自特定运行器1504的记录。
7.其将运行代理的汇总写入到其日志文件。分别地经由对于职位表格1506、job_current表格626和报告表格1508的询问来检索该信息。
8.最终,其经由ssh调用质量管理器管理模块124,从而其可以在独立的机器上执行。将运行器1504的id传递到数据净化器任务138、数据去重复任务139、质量管理器任务142、分类任务140的每一个,以致于当主任务调度程序131要求这些任务来处理记录时,每个任务都知道要处理来自job_current表格626的哪个记录。
PALM系统100控制和管理从输入部分201到输出部分205的吞吐量。优选地一天一次或者以一些其他预定的时间间隔,指示一个或多个PALM列表管理器104来访问暂存数据库222中的数据、处理该数据并且在输出部分205中更新搜索区246和252。因为可能要处理极大量的数据,所以PALM系统100典型地包括许多PALM列表管理器104,每个PALM列表管理器104相对独立地在来自暂存数据库222的数据上进行操作。
系统100可以包括许多PALM列表管理器模块104,所有PALM列表管理器模块104基本上独立地以及并行地操作,每个PALM列表管理器模块104在数据拆分任务中首先指定给该特定管理器的运行器号的数据上进行工作。PALM列表管理器104接收来自配置生成器158的配置信息。配置生成器158将运行器号指定给系统200中可用的PALM列表管理器104。
每个PALM列表管理器104接收来自PALM元数据数据库238的元数据,以及将元数据存储到PALM元数据数据库238,该PALM元数据数据库238优选地是整个分布式数据库12的一部分。优选地如图18所示共享该数据库12。例如,机器1的PALM列表管理器104取得来自例如暂存数据库222的输入1802,执行任务A,并生成任务输出1804。例如,然后将该任务A的输出1804输入到任务B。同时,可以将该任务A的输出1804临时地存储在暂存数据库222中。并且,将任务B的输出1808适当地临时存储在暂存数据库222或元数据数据库238中,从而由在该例子机器2中的其他PALM列表管理器104的一个使用。机器2按照需要,将机器2所需要的如果在暂存数据库222中不可得到的输入1808从元数据数据库238拉入,以执行任务C。可以相似地将任务C的输出1812回存在数据库222或238中,用于另一列表管理器的任务的使用。通过使用该机制来临时地镜像数据,多个操作PALM列表管理器104不一定需要排队等待其他列表管理器104来完成它们的任务。以这种方式,可以增加整个处理的吞吐量。
在系统200中的PALM系统100中的每个PALM列表管理器104具有主任务调度程序131,该主任务调度程序131控制任务堆栈以在通过因特网112访问的多个站点抓取的数据以及通过RSS提要214、XML提要216、网络服务SOAP 212和/或雇主/招聘者应用程序206从客户站点210和其他源获得的职位信息数据集上进行操作。在图2所示的实施例中,关于雇用列表和职位搜索应用程序,这些列表数据集的每个,不管从哪里获得,最初都被存储在暂存数据库222中。PALM系统100在暂存数据库222中的数据上操作,并使用中间PALM元数据存储器238,将该数据传递到已加工的、被净化以及分类的数据库236。一旦职位列表数据集被加工,则将该数据集传递到输出部分205,尤其是填充搜索区246和252。
在图5中示出每个由PALM主任务调度程序131控制的n个PALM列表管理器104的每个中的基本处理流程操作。操作流程始于初始化操作502,在该操作502处,PALM系统100根据预定的进度表来开始其处理周期。首先,PALM系统100确定哪个列表管理器104将处理什么任务。
一旦由配置管理器158指定特定PALM列表管理器104来处理一块或一批数据集,则PALM主任务调度程序131控制操作504到510。然后,如下面参考操作512到528所述的那样,每个相应的单独任务管理器138、139、140、142和144将以并行线程处理暂存数据库222中的数据集。
控制转到操作504,以开始将暂存数据库222中的数据集分配到可用的PALM任务线程。这是在数据拆分器任务模块133中管理和执行的数据拆分任务。在操作508中,将数据拆分任务133的输出数据连同数据被分配到的对应PALM任务线程的运行器号返回到暂存数据库。
数据拆分任务133首先检测如由配置生成器158确定的可用PALM任务线程数量1-n是否有配置变化。如果有变化,则将来自抓取场和其他源的暂存数据再散列到新分组中。如果没有变化,则仅仅评估最新添加的数据集。数据拆分任务基于职位名称、公司和职位状态字段的ASCII的散列,来对列表数据集进行拆分。该散列特别地是((ascii(jobtitle)+ascii(jobcompany)+ascii(jobstatel))%NUM_CK_RUNNERS)))))),其中,NUM_CK_RUNNERS是如有配置生成器158确定的可用的PALM线程的数量。数据拆分任务的子例程是使用均匀散列函数,该均匀散列函数总是将相同的职位拆分到相同的“散列表元”中,以致于由相同的线程来处理相同的数据记录例如职位列表。
然后控制转到询问操作510。在询问操作510中,做出在暂存数据库222中是否有没有被分配PALM任务线程的另一条目的询问。如果答案为是,控制转回到操作504,这里从暂存数据库检索下一个列表数据集并对其进行检查。如果答案为否,则不再有要拆分的数据集,并且将控制转到操作512。
在具有对应于在特定PALM任务管理器104中将数据集分配给其的线程的运行器ID的每个数据集上,优选地并行地由PALM任务管理器的每个来优选地执行操作512到528。
在操作512中,主任务调度程序131利用其运行器ID号来拉出第一暂存数据库条目,以及执行由数据净化器任务管理器138管理的数据净化任务。数据净化任务管理器138线程从暂存数据库222拉出完整的数据记录,以及去除所有的格式化,以致于每个职位列表数据集采用相同的格式以及内容结构。特别地,任务从数据字段剥除所有HTML标记,验证美国州名并放入2字母州代码。对于国际列表,其放入适当的国际位置缩写(省/地区)。净化任务线程检查URL以确保其始于“http:”或“https:”。接着,该任务剥除所有亵渎词、验证数据字段、检查在每个字段中的无效字符例如在城市字段中的所有数字。该任务还检查在字段中的词的最大数量。例如,城市名中不能有15个词。该任务还将国家名放入3字母国家代码格式中,校正在例如职位标题、描述的字段中的拼写。最终,该任务提供正确的基本标点例如大写句子中的首字母以及两个空格从而开始每个新的句子。
一旦在线程中已经在职位列表数据集上执行了数据净化任务线程,则在操作514中将列表返回到暂存数据库222。控制然后转到询问操作516。在询问操作516中,询问是否有另外的具有该PALM主任务调度程序131的运行器ID的数据集。如果有,则控制传送回到操作512并且检索和净化下一个数据集。如果没有,则控制转到操作518。
在操作518中,从暂存数据库222检索数据集并将该数据集发送到去重复模块139中的列表级去重复任务1200。在图12中示出了列表级去重复任务。在以下的暂存表格、已加工数据表格和去重复表格中示出了表格条目的示例性集。
  标题  描述   城市   州   运行器ID
  SW工程师  Java,C++   San Jose   CA   2
  经理  管理5个工程师的队伍   Fremont   CA   2
暂存表格1
    标题   描述   城市   州   运行器ID
    SW工程师   Java,C++   San Jose   CA    2
    建筑师   开发和传达建筑蓝图   St.Louis   MO    3
    总经理   负责所有CWT商务   Holland   MI    2
    顾问   人力资源顾问   Phoenix   AZ    3
已加工表格2
    标题   描述   城市   州   运行器ID
    SW工程师   Java,C++   San Jose   CA   2
    建筑师   开发和传达建筑蓝图   St.Louis   MO   3
    经理   管理5个工程师的队伍   Fremont   CA   2
    顾问   人力资源顾问   Phoenix   AZ   3
已加工表格3
首先,去重复任务1200在已加工数据表格2中寻找暂存表格1中的行1。行1在那里。因此忽略行1。然后将暂存表格中的行2与已加工数据库进行比较,以看看行2是否在该已加工数据库里。行2不在该已加工数据库里。因此,将已加工数据表格2的行2添加到去重复的已加工数据表格3中。接着,对于在暂存数据库中的每个和每一个条目重复相同的过程。当该忽略或添加的过程已经完成之后,将与运行器号2相关联的已加工数据表格2的行与暂存表格1进行比较,以确定在暂存数据库中是否有不在已加工数据库表格2中的任何运行器2行。在该例子中,在已加工表格2中的第三条目不在暂存表格1中。因此删除该条目也就是总经理行。结果是每天一次或者每由系统管理者限定的时期一次地,再生和验证去重复已加工数据库。
在图12中示出去重复任务过程的更大体的图。当已经在具有存储在暂存数据库中的线程运行器ID的数据集上完成了数据拆分任务和净化任务时,调用过程1200。控制始于操作1202,这里,完成去重复模块139的初始化。然后,控制转到操作1204,这里,检索暂存数据库222中的第一行并相对于在已加工数据库236中的行条目来检查该第一行。控制转到询问操作1206。
在询问操作1206中,做出这样的询问:在已加工数据库中是否有相同的行。如果有,则控制转到操作1208,删除被检查的暂存行。然后,控制转回到操作1204,这里,检索和检查在暂存数据库中的下一行。然而,如果在询问操作1206中的答案为否,则在已加工数据库236中没有相同的行,然后在操作1210中将该行添加到已加工数据库中。然后,控制转到询问操作1212,做出这样的询问:是否还有暂存数据库行。如果是,则控制转回到操作1204,这里,检索下一个暂存数据库行,并且重复该过程。如果否,那么已经检查了最后一个暂存数据库行,然后控制转到询问操作1214。
在询问操作1214中,将具有相同运行器ID的在已加工数据库236中的行与暂存数据库中的条目进行比较。如果在已加工数据库中具有在暂存数据库中没有的任何相同运行器ID行,则从已加工数据库中删除这些行。这样做的理由是,如果暂存数据库不具有该职位列表,则该列表一定已经由雇主拉出或者填充,并因此被从电子公告板或职业列表去除,并因此不再是对于求职者的有效职位机会,并因此在该就业机会系统中没有用处。另一方面,如果在已加工数据库236中的所有相同运行器ID行都在暂存数据库222中,那么全部都是最新的,并且控制转到返回操作1218。
既然PALM主任务调度程序131已经通过拆分任务、净化任务和去重复任务访问了数据集,以及现在针对特定的数据集对于已加工数据库236进行去重复,所以将输入到已加工数据库236的内容中的每个新条目提交给分类任务522和质量管理器任务524。下面参考图6和7来描述分类任务。参考图13来描述质量管理器任务。
通过抓取引擎218获得的抓取职位不具有类别分配,例如会计、银行业、工程、医学、牙科等。为了让我们支持求职者最熟悉的“按类别浏览”特征,很多人类分类员需要花费大量时间来手动地对抓取到的职位进行分类。然而,这具有很多缺点。这是很耗时的过程。到手动分类了职位的时候,职位可能已经过期了。这样的过程需要很多人力资源。此外,不同分类员可能不以相同的一致的方式进行分类。为此,PALM系统200包括图6所示的自动职位分类系统600。该系统600能够在几分之一秒中对职位进行分类。这充分快于人类分类员,并且系统600的分类是一致的。
该职位分类系统600包含几个模块。职位分类(职位分类)服务模块602执行实际的分类例程。利用图1描述的职位分类引擎模块140管理在已加工数据库236中的Job_current表格626、手动类别数据库628以及职位类别(类别)服务模块602之间的通信。使用由类别查看模块132执行的分类训练过程606来提高和/或维持职位分类服务602的精确度级。该分类训练过程606包括使用职位分类手动查看接口模块132和分类专家,这些分类专家具有经由图1A所示的企业内部网116的接入。
如上所述,一旦已经对抓取的职位进行了净化和去重复,则将这些抓取的职位添加到已加工数据库236中的MySQL job_current表格626中,然后,职位分类过程600将从job_current表格626取得每个职位,并通过职位分类控制过程模块622将该职位发送到职位分类服务模块602,以得到类别和置信度分配。然后,将抓取的职位发送回分类控制过程模块622并将抓取的职位返回到job_current表格626。然而,如果职位落到预定置信度阈值以下,则该职位被标记也就是标记集,以及当该职位通过分类控制过程模块622时,还将副本发送到手动分类数据库628,用于经由手动查看接口模块132进行手动查看。然后,由分类训练过程606使用在查看模块132中执行的手动查看过程的结果,以调整新的职位分类服务值来代替旧的值。将分类的结果写回到job_current表格626,有时候写回到手动分类表格628。手动查看模块132提供UI以查看在job_current和手动分类表格中的职位。
图7是职位分类过程600的实现的操作流程图。当已经执行了职位抓取序列时,该过程始于操作702。控制转到操作704。在操作704中,从job_current表格626检索下一个职位的职位属性,并且适当地格式化职位描述。然后将该职位属性传送到职位分类服务602,以找到适当的类别。然后控制转到操作706,这里,将职位类别和该分类的置信度与职位进行配对。然后,控制转到询问操作708。
询问操作708询问在手动分类表格中是否存在针对最近的特定职位描述的匹配URL。如果存在,则控制转到操作710。如果不存在,则该职位是新的职位,并且控制转到操作716。
在操作710中,在具有相同URL的最后职位上执行字符串比较例程。然后控制转到询问操作712。询问操作712询问在手动分类表格628中的列表是否和正在被检查的当前职位相同。如果职位字符串比较是相同的,则答案为是,因为该职位看起来是相同的职位,所以控制转到操作714。另一方面,如果答案为否,则职位是新的,并且控制再次转到操作716。
询问操作714询问dcp_cat是否与具有相同URL的最近职位的man_cat匹配。如果答案为是,则将man_cat和dcp_cat设置为相等,并且将dcp_cat置信度设置为等于1。职位参数返回给job_current表格626,并且控制转到询问操作718。询问操作718询问在job_current表格中是否还有要分类的抓取职位。如果否,则控制转到返回操作720。如果还有要分类的抓取职位,则控制转回到操作704,并且检索和格式化下一个职位的职位参数。
回到询问操作708,如果在手动分类表格中不存在该URL,则控制转到操作716。在操作716中,设置Dcp_cat和dcp_confidence,并且相对于已经预定的阈值来检查置信值,如果阈值大于置信值,则将review_flag设置为等于1。然后,将职位参数传送到job_current表格626,并且再次,控制转到询问操作718。
回到询问操作714,如果当前职位具有在手动分类表格628中的URL,该职位与具有相同URL的最近的职位相同,但是最近职位的dcp_cat和an_cat不匹配,则可能发生了错误或故障,并且将职位参数传给操作724和726。操作724设置dcp_cat、dcp_confidence的值,将expert_review flag设置为等于1,并且将该数据馈给到job_current表格626。操作726将expert_review flag设置为等于1,并且将该职位的参数的副本发送到手动分类数据库628,以致于将执行手动查看。并行地,如前所述,控制再次转到询问操作718。
因此,对于每个职位,职位分类控制过程从job_current表格取得职位属性,对它们进行格式化,并将它们发送到职位分类服务(由被称为Apache的公知公共域例程管理,method=POST),取回类别和置信度得分,通过决策问题的链,并且将结果写回到表格中。
职位分类服务602还提供网络UI,该网络UI允许管理员和系统操作员来输入职位(至少职位描述)并且将该职位提交给职位分类服务,用于与系统100的正常操作分开地进行分类。在图8中示出了这样的示例性用户接口800。
职位分类服务模块602依赖公知的网络服务器Apache来进行图6所示的分类训练过程606。职位分类服务602包含作为PHP扩展的共享库并且还包括分类库的二进制软件包。构建职位分类服务602首先需要职位类别和相关联的独特ID号的一组基本定义也就是分类法608。在以下的表1中示出了示例性定义组。
Cat_id  Cat_name
 1  Accounting_Finance
 2  Advertising_Public_Relations
 3  Arts_Entertainment_Publishing
 4  Banking_Mortgage
 5  Clerical_Administrative
 6  Construction_Facilities
 7  Customer_Service
 8  Education_Training
 9  Engineering_Architecture
 10  Government
 11  Health_Care
 12  Hospitality_Travel
 13  Human_Resources
 14  Insurance
 15  Internet_New_Media
 16  Law_Enforment_Security
 17  Legal
 18  Management_Consulting
 19  Manufacturing_Operations
 20  Marketing
 21  Non_Profit_Volunteer
 22  Pharmaceutical_Biotech
 23  Real_Estate
 24  Restaurant_Food_Service
 25  Retail
 26  Sales
 27  Technology
 28  Telecommunications
 29  Transportation_Logistics
 30  Work_At_Home
表1
训练职位描述也就是训练数据610的示例性表格与表1中的每个类别相关联。使用该组描述加上手动分类数据库628的内容来指导服务从预分类提供的职位描述参数识别分类。该表格的例子在以下的表2中示出。
字段  类型 无效 注释
Pindex  Varchar(11) 否,Primarykey
Title  Varchar(11)
Ldesc  文本
Mancat  Varchar(101) 实际上最初被设置为第一工业设置
Gid  Int 组id,由HJ内部使用一些id用于测试,它们将不被用于训练
Hiretype  Varchar(21)
Companyname  Varchar(101)
Salarytype  Varchar(21)
Sdesc  Varchar(101)
Sourcetype  Varchar(11)
Source  Varchar(21)
Duration  Varchar(3)
Position  Varchar(21) 经验级
Degrees  Varchar(31)
Salaryform  Float
Salaryto  Float
Ownerid  Varchar(11)
Creatorid  Varchar(11)
Editorid  Varhcar(11)
Ctime  Date 创建的日期
Mtime  Data 修改的日期
Score  Int YSS得分,未使用
表2
对于新的训练会话,优选使用来自该表格中的职位以及在手动分类表格中的那些职位。随着越来越多的手动查看的职位变得可用,优选最后删除来自只读数据库的原始训练集。
在优选的实施例中,该表2的列与手动分类表格不同,并且该不同将维持,以及创建训练文件的脚本将进行所有需要的映射。训练过程606由几个PEARL脚本组成。“create-training-file.pl”脚本从手动分类表格628和训练数据表格610取得职位,并且以DCP可接受格式来写出包含所有职位的文件,以生成合并的训练数据612。使用“train-hj-dcp.pl”脚本来调整一些对于分类最有用的参数。指定的每个配置将留下包含构建职位分类服务数据分组所需要的所有参数以及日志文件的输出目录。“parse-training-log.pl”脚本读取由train-hj-dcp.pl生成的每个日志文件并生成关于每个配置的精确度的报告。使用“archive-training-results.pl”脚本来在使用配置用于调度之后对该配置的训练结果进行存档。
训练过程614基本上是手动过程,其从训练数据612提取分类法608以及规则和模式集616。还可以使用多种词典和调整参数620。结果包括利用被提供到图6所示的职位分类服务602中的结果来对新分类器参数620进行优化。因为训练过程614主要是手动的,所以优选在几个参数上进行训练,手动地检查结果例如分类的详细页面、特征项权重等,以及手动地改变一些规则和词典,并且以不同配置重复该过程,从而找到用于调度的最佳设置。当获得这样的最佳配置时,将新分类器参数620传送到职位分类服务602。一旦建立和运行该职位分类服务602,则可以如上所述处理抓取的职位。
以下的讨论提供了使用示例性职位分类过程的本公开的列表分类过程的详细解释。
在示例性词法分析中,处理三个文本字段:(1)名称,(2)职位描述以及(3)公司类别。Lexer(词法分析模块)可以执行以下的处理步骤:
1.将通用的HTML字符实体参引用它们对应的ASCII字符来替代。
2.然后,通过将任何非字母数字字符作为分隔符处理(单引号被作为字母数字字符处理),来将文本字段拆分为字符串。
3.对所有字符串进行职位名称测试。将职位名称限定为满足regex[0-9]*[A-Z]+[A-Z0-9]*的任何字符串。将所有字符串还原到小写字体。
4.使用Porter词干提取器(stemmer)来对所有字符串提取词干(M.F.Porter.“An algorithm for suffix stripping”,Program,14(3):130-137,1980.Reprinted in Sparck Jones,Karen,and PeterWillet,1997,Readings in Information Retrieval,San Francisco:MorganKaufmann,ISBN 1-55860-454-4,这里表示为“Porter”)
5.使用停止词的预定列表来从文本字段中过滤掉非常常见的特征。完全由数字组成的字符串也被去除。
停止词的例子为:
job description    be able               right candidate         qualified applicants
job id             your resume           qualified candidate     interested candidate
job title          seeking               equal opportunity       interested candidates
job summary        be considered         eoe                     interested applicants
such as            can enjoy             qualified candidates    duties
currently seeking  ideal candidate       contact information     focused on
are seeking        ideal candidates      remain                  emphasis on
click here         successful candidate  find out                depending on
selected candidate further information   come join               are met
highly desired     should forward        please note             follow through
strongly desired   without regard        please sent             work closely
strongly preferred subject line          please indicate         board range
strong             online below          please submit           wide range
preferred          listed below          please visit            wide variety
are encouraged     when applying         primary responsibility  conjunction with
button below       when submitting                               word attachment
make sure          be contacted
                   contact us
一些二元语法(两词短语)被检测为单个标记。在分类中还使用更高阶的n-元语法。
以下的为例子:
human resources     at least             self starter            tuition reimbursement
equal opportunity   power point          accounts payable        customer service
pay rate            click here           seque appli             positively impacting
problem solving     ajilonfinance com    funct subfu             human resource
dv                  boehringer ingelheim registered trademark    San Francisco
more than           immediate            los angeles             award winning
united states       consideration        full time               decision making
cover letter        new york             spirited                metropolitan area
ideal candidate     track record         entrepreneurial         credit union
long term           stock purchase       bames noble             benefits package
job description     loss prevention      ad hoc                  wide range
job title           ag 2002              wild kingdom            multi task
job summary         ajilon finance       voice messaging         sarbanes oxley
duties              fortune 500          affirmative action      p sou
air force           fastest growing      iras cancer             valid driver
kaiser permanente   general ledger       tuition assistance
deutsche telekom    real estate
                    test plans
                    journal entries
从这些步骤得到的每个独特的字符串构成独特的标记。对某些标记添加额外权重并且在weight.dict文件中跟踪这些标记。这里是文件的职位特定样本:
general ledger 2    per week 3            technical sales 3        development
inpatient 2         nurse 3               planning analyst 2       lifecycles 2
outpatient 2        registered nurse 3    budget planning 3        operating systems 2
claims adjusting 3  human resource 3      financial planning 3     programming
estimate damage 3   college degree 3      financial statements 3   languages 3
ASIC design 3           hs degree 3             financial reports 3        business skills 2
logic design 3          systems administrator   corporate tax 3            communication
residential purchase    3                       worker compensation        disorders 2
3                       accounts receivable 3   3                          speech language  2
refinance products 3    accounts payable 3      business                   speech therapy 2
mortgage products 3     fixed assets 3          development 3              speech pathology 2
mortgage loan 4         medical terminology 3   market development         speech therapist 2
mortgage brokers 3      legal terminology 3     3                          speech pathologist 2
mortgage lender 3       public relations 3      trade shows 4              switchboard 2
call center 3           product marketing 3     forklift operator 2        telephone skills 2
customer service 3      clinical research 3     forklift certified 2       blood drives 2
answers telephone 3     clinical trials 3       food service 3             blood centers 2
inventory control 3     clinical data 3         real estate 3              plasmapheresis
quality assurance 3     direct sales 3          social services 4          process 2
object oriented 4                               internet publishing2       hlebotomist 2
对应于每个文本标记的“特征”可以仅仅是在文档中标记的每文档出现次数。可以对每个标记实例分配权重,该权重取决于该标记实例从其提取的字段以及可取决于在字段中的该特征的位置。特别地,人们可以在将来自名称和公司类别的标记数添加到总数之前,将该标记数乘以2。可以不变地得到描述项数。人们可以实现的职位相关的规则为:尝试加重名称的最后词的权重,从而找到在名词短语(也就是名称)中的主要名词,其可以导致精确度的稍微增加。
人们还可以使用标记特征聚类(例如分布式聚类),其中几个标记(单个集群的成员)被作为相同的标记进行处理。
如上所述,职位记录可以包含不是自由文本的字段。它们可以包括:  (1)公司id以及(2)薪酬以及其他。其中使用这些特征的实施例在标题为类别细分中进行描述。
可以利用类别变量通过各个特征的交互信息I(C,X)来对该各个特征X进行排序,从而执行特征选择:
I ( C , X ) = &Sigma; c &Sigma; x = 0 1 p ( c , x ) log p ( c , x ) p ( c ) p ( x )
其中,x求和是在x=0和x=1上,以及c求和是在所有类别(类)上。通过简单的计算获得对于p(c,x)的概率估计,并且二进制变量x指示相关项的存在(x=1)或不存在(x=0)。根据术语,严格说来,这是与在用于实际分类的分类器(例如
Figure S2006800158945D00372
Bayes)中使用的相关项数不同的特征。这对于数值理由来说是有利的。备选方案为在从0到无穷大的所有可能项数上求和,其可能导致由相关概率估计的势函数稀疏(potential sparseness)所导致的问题。
为了减少交互信息而对排序的列表进行处理。对于每m数量的特征,使用来自列表的开始m个,来训练分类器,并且使用交叉验证来测量该分类器的精确度。添加特征直到以这种方式测量的精确度开始下降。
还可以通过设置频率阈限,来控制特征的数量。可以去除其频率小于阈限的特征。如由交叉验证所报告的,可以有产生最好精度数据的阈值和特征数的两个或三个组合。
根据本公开的一个方面,提供了用于以多次遍历对职位机会进行分类的方法。第一个步骤是执行第一分类,以将职位与第一类别相关联。如果第一职位类别在联合可细分的职位类别的集中,则在联合可细分的职位类别中执行第二分类,从而将职位机会与第二职位类别相关联。进一步地,第二职位在联合可细分的职位类别的集中,第一职位在职位的第一集中,以及该联合可细分的职位类别的集是职位的第一集的真子集。联合可细分的职位类别的集被定义为如下的职位类别的集:利用任何方法已经被确定为具有被混淆(相互)的相对较高的可能性;或者在该集中具有被选来代替该集中的另一职位类别的一个职位类别。
选择用在第二遍中的那些类别、联合可细分的职位类别是基于你查看的类别来选择的。例如,可以基于将其他类别混淆为特定类别的可能性来确定联合可细分的职位类别。确定两个类别是否经常被混淆的一种方法是执行职位集的手动分类。手动分类将被认为是正确的一黄金标准。然后,执行对于相同的职位集的自动分类。在矩阵中绘制出结果,其中,一个轴表示由黄金标准(在该情况下为手动)分配器选择的类别,而另一轴表示由自动分类器选择的类别。去除矩阵中手动和自动分类选择了相同的类别处的所有元素(可能沿着对角,取决于实现),具有最高概率的元素表示最可能被混淆的类别。然后,联合可细分的产品类别的集可以基于最可能被混淆的元素,以及实际上可以包含多个不同的联合可细分的产品类别的集,并且这些集每个可以包含与其他集不同的类别数量。
这里提供了类别细分的一个例子。这里描述的技术不受限于该实施例。考虑基于
Figure S2006800158945D00381
Bayes分类器构建的自动分类器。在以下的文档中描述了示例性的
Figure S2006800158945D00382
Bayes分类器:David D.Lewis的“
Figure S2006800158945D00383
(Bayes)at forty:The independence assumption in information retrieval”;ClaireN’edellec和C’eline Rouveirol等的1998的Chemnitz,DE的第10届机器学习欧洲会议(European Conference on Machine Learning)的Proceedings ofECML-98的number 1398第4-15页,这里被称为“Lewis”。该分类器可以具有两个或多个分类级。在顶(根)级处,可以执行单层分类,这里,如在名为
Figure S2006800158945D00384
Bayes的部分中描述的,利用单个多项分布来描述每个类别。可以使用多项的混合来为一些类别的特征项概率分布进行建模。严格说来,这违反了
Figure S2006800158945D00385
Bayes条件独立假设,但是可以简单地设想可以将一些类别进一步分解为遵循该条件独立假设的其他类别,但是先验未知这些其他类别是什么。
然后,在联合可细分的类别的集中的一些类别上执行第二分类。该类别可以是在以下列表中的那些,该列表已经被划分为三个“混淆分组”。在每个分组中的顶级结点具有执行恰好到混淆分组中的类别中的第二分类的分类器。
对于公司id,可以使用最简单的可能模型-贝努利多项式(multi-Bernoulli)。也就是说,可以具有对于每个对(类别,公司)的不同的概率值估计。也就是说,可以具有对于值的集{p(c|m)}的估计,其中m表示公司id。这些值由{ψc,m}表示。
利用对数正态分布来描述薪酬统计:薪酬可以根据对数正态分布来近似地分布,其仅仅意味着对数-价格是根据简单正态/高斯分布来分布的。使得z=log(价格)。得到以下结果,其中μc和σc是正态分布的均值和标准方差:
p ( z | c ) = 1 &sigma; c 2 &pi; exp { - 1 2 [ ( z - &mu; c ) / &sigma; c ] 2 } - - - ( 1 )
用于文本的
Figure S2006800158945D00392
Bayes分类器
在机器学习和模式分类中,要分类(或“归类”)的对象是由称为“特征矢量”的x表示的,x包含用来确定文档属于的最可能类别的信息。通常所说的用于文档的“
Figure S2006800158945D00393
Bayes”分类器采用被称为“词袋”模型的某事物(见Lewis)。这意味着忽略词的特定顺序而仅仅使用它们的计数。当短语被检测为标记以及就像它们是独立的特征项进行处理时,在某种程度上规避该限制。在(
Figure S2006800158945D00394
Bayes)情况下,特征矢量可以采取这样的形式:
x=(k1,k2,...,km)
其中,ki表示第i个特征项(在要分类的文档中)的出现次数,以及m是在lexicon中的特征项的总数,其在该情况下是表示在停止词去除等之后被用于进行分类的特征项集。
Bayes分类器可以下面的方式来使用概率模型:给出特征矢量x,计算假设文档的特征矢量是x时文档属于类别c的条件概率。为了执行分类,为c选择使得p(c|x)最大的值c’(也就是将文档分配到类别)。在数学上这可以表示为:
c’=arg maxcp(c|x)
该条件概率p(c|x)可以被如下分解:
p(c|x)=(p(x|c)p(c))/p(x)
因为可以可能仅仅对c’的值感兴趣而对p(c’|x)的特定值不感兴趣,所以可以忽略其仅仅取决于x而不是c的边缘概率p(x):
c’=arg maxc[p(x|c)p(c)]    (5)
在该等式中的概率为联合概率p(x,c):
p(x,c)=p(x|c)p(c)
为了执行实际的分类过程,需要用于p(c)和p(x|c)的特定公式。Bayes/词袋模型可以对此使用多项分布。也就是:
p ( x | c ) = ( n { k i } ) &Pi; j = 1 m &theta; c , j k i - - - ( 6 )
该公式包括以下的称为“多项式系数”的事物的简写表示:
( n { k i } ) = n ! &Pi; i = 1 m k i ! - - - ( 7 )
这里n!表示“n的阶乘”并且表示这样的乘积:
n!≡n(n-1)(n-2)(n-3)...3×2
因为该多项式系数仅仅是文档而不是类的函数,所以可以在分类过程中忽略。参数{θi}经常被称为“贝努利”参数,并且可以根据训练数据来估计。该(“{....}”)是简写集符号。例如,{θi}实际上表示{θi|i=1,2,...,m},也就是这些参数值的全集。
对于每个类别,可以具有p(x|c)和p(c)的值,以及这些值的每个可以具有它们自身的估计参数值。类别c中的用于特征项i的贝努利参数如下来表示和估计:
&theta; i , c &prime; = n i , c + 1 n c + m - - - ( 8 )
其中ni,c是在类别-c训练文档的全集中的特征项i的实例的总数,nc是在类别-c训练文档的全集中的所有特征项(在分类lexicon中的特征项,不是停止词等)的实例的总数,以及m是在lexicon中的特征项的总数。公式(8)被称为“拉普拉斯定律”或者“拉普拉斯连续定律”。
为了利用(5)所描述的来执行分类,需要对于边缘类概率{p(c)}的估计。可以利用φc′以及还对它们使用拉普拉斯定律来表示这些估计:
&phi; c &prime; = v c + 1 N + | C | - - - ( 9 )
其中,vc是在训练集中的类别-c文档的总数,N是在训练集中的文档(所有类别)的总数,以及|C|是类别的总数。如果这些数量({vc}和N)不表示最终要分类的文档的总体,则可以将正确的估计(利用任何方式获得)用于{φc′}。
“判别函数”d(x,c)可以被定义为:
d ( x , c ) = &phi; c &prime; &Pi; i = 1 m &theta; i , c k i - - - ( 10 )
据此,由(5)描述的分类的实现可以表示为如下:
c’=arg maxcd(c,x)    (11)
使用(10)的对数作为用于数值和计算理由的判别函数是有利的。由此可以具有:
d ( x , c ) = log &phi; c &prime; + &Sigma; i = 1 m k i log &theta; i , c - - - ( 12 )
示例性用户接口800的屏幕截图使用网络浏览器通过企业内部网116呈现给管理员、操作员或分类专家。如所示,接口800经由下拉菜单提供三个不同的模式802。“所有类别”模式列出所有类别以及它们对应的置信值,按置信度降序排列。“详细统计”模式示出关于为何选择特定类别的细节。这种模式对于调整系统200的操作员是有用的。“最佳类别”模式只显示职位及其置信度的最顶上的类别。这与“所有类别”模式中示出的第一个结果相同,除了在这里我们示出类别ID号而不是字符串。这种模式意图用于对于数据库中的职位的自动分类,其中,相对于类别名称更优选地使用类别ID号。
图9示出了在职位分类手动查看模块132中发生的职位分类手动查看过程900的操作流程图。当在操作902中,管理操作员或分类专家经由PALM管理入口102登录时,操作流程开始。当管理员登录时,在操作904中向他或她呈现图10所示的用户接口1000。该用户接口1000允许管理员或专家查看者选择职位类别1002、公司1004,以及选择要执行的查看类型1006。然后,控制转到操作906。在操作906中,根据管理员在操作904中的预先选择,从手动分类数据库628或已加工数据库236中的job-current文件626检索第一/下个职位描述。向管理员呈现例如图11所示的示例性接口1100的用户接口。
该用户接口1100显示第一/下个职位描述1102连同针对每个类别确定的类别置信度。在该例子中,职位是在IBM公司的博士后职位。置信度对于除了Engineering_Architecture和Pharmaceutical_Biotech之外都是零,以及没有置信度100%匹配。该职位已经被分类为工程结构,但是置信度仅仅是0.657,所以其被标记用于手动查看。
返回参考图9,当在操作906中检索到职位描述时,控制转到操作908,这里管理员基于完全的职位描述来分析分类。然后,管理员具有三个行为选择。首先,他可以在询问操作910中使得该职位无效。第二,他可以通过点击职位URL 1110来在询问操作912中获得更多的职位细节,从而改进他的查看。第三,他可以在询问操作914中更新类别定义或插入新类别。如果他的决定是在操作910中使得该职位无效,然后控制转到操作916,这里从数据库126以及从手动分类数据库628中去除该职位。然后,控制转到询问操作918。询问操作918询问在手动分类数据库628的队列中或expert_review标记=1的job_current表格626中是否还有另外的职位描述。如果是,则控制转回到操作906,这里,检索下一个职位用于查看。
然而,如果在操作910中的决定不是将该职位无效,则控制复位expert_review标记=0,将职位返回到job_current表格626,并且控制转到询问操作918。如果在操作908中的选择是得到更多的职位细节,则控制转到操作920,这里检索细节,并且控制再次转回到操作908。如果管理员然后不选择得到更多的细节,则在复位expert_review标记=0之后,将职位描述记录再次返回到job_current表格626,并且控制再次转到询问操作918。如果在操作908中的选择是在询问操作914中更新类别,则控制转到操作922。
在操作922中,职位描述的类别被改变,或添加并保存新的一个类别。expert_review标记被设置为0,并且然后将职位描述传送到job_current表格626,然后,控制转到询问操作918。如果不再有expert_review标记为1的职位描述,则控制转到返回操作924,并且查看会话完成。
另外,优选职位分类控制过程模块622周期性地查看在已加工数据库236中的信息,从而精确地对每个职位列表进行分类。重要的是将职位列表放置在适当的职位类别例如信息技术、卫生保健、会计等中。职位分类控制过程模块622优选是自动的,或者通过手动查看接口模块134可以利用来自分类专家的输入进行扩充,分类专家优选是人类。然而,如关于之前讨论的列表查看者实体的情况那样,随着这样的系统变得越来越复杂,在未来专家的功能可选择地是自动的例程。职位分类控制过程模块622优选是自动的,同时手动查看过程模块134提供关于质量的检查,从而在职位分类中提供较高的精确度。将该分类过程的结果存储在“手动分类”数据库628中,“手动分类”是手动分类数据库的缩写名称。
在图13所示的质量管理器任务中,检索在已加工数据库中的每个条目行,并在两个层次上进行评估:URL验证和内容验证。在URL验证中,该任务首先检查和核实到http和https资源的链接是有效的。实际上,系统访问URL以核实链接连接。第二个操作包括检查是否还有任何警告响应消息。如果是,则可以对列表进行标记用于手动查看。URL验证操作还检测是否有任何链接已经被重定向或以另外方式修改,并且确定对于会话cookie的支持。在质量管理器任务的内容验证部分中,检查数据中的不一致性。例如,多种检查,例如执行特定规则、核实职位描述、在描述上执行匹配算法以及核实在城市、州和国家之间的匹配。最终,可以利用并行操作的n个独立线程,来实现质量管理器过程。每个质量管理器任务线程操作流程在图13中示出。
基于规则的质量引擎任务模块142在通过图5所示的序列500处理的每个数据集上执行一系列操作。配置管理器158确定多少列表管理器模块104是可用的。此外,在每个列表管理器模块104中,质量管理器任务144可以管理“N”个质量管理器任务线程167和169。特别地,在操作524,质量引擎模块任务管理器142调用操作序列1300。每个质量管理器任务模块142可以具有对于“n”个线程1300的控制。每个序列1300始于操作1302,这里,初始化需要的寄存器。然后,控制转到操作1304。在操作1304中,根据多少质量引擎管理器142线程可用,以及分配了多少个线程1300,如由配置生成器158确定的,检索要检查质量的在已加工数据库236中的数据集。然后,控制转到操作1306。这里,将数据集拆分为n个分区。由此,在一个分区中的数据集的数量对应于在该分区中可用的线程1300的数量。然后,控制转到操作1308。并行地,对于每个分区中的每个数据集执行以下的操作。
在操作1308中,相对于文档规则的集来比较每个数据集。例如,这些规则包括对于以下问题的确定:职位描述文本字段中是否有至少5个或更多个词;职位名称字段是否被填充也就是不是空的;职位公司名称字段是否被填充也就是不是空的;以及职位位置字段是否被填充也就是不是空的。如果这些字段的任何一个是空的或违反规则,则数据集违反文档规则,并且将不被索引。然后,控制转到询问操作1310。在询问操作1310中,询问数据集是否通过规则测试的问题。如果答案为是,则控制转到操作1316。如果答案为否,则控制转到操作1312,这里设置出错标记,然后转到操作1314,这里将遗漏数据的记录发送到报告模块130。然后,控制转到操作1316。
在操作1316中,检查数据集的位置字段,以核实城市的位置对应于在州字段中列出的州,以及相应地对应于国家字段。然后,控制转到操作1318。询问操作1318询问数据集是否通过了每个位置验证测试。如果答案为是,则控制直接转到操作1324。如果答案为否,则在操作1320中再次设置出错标记,并且在操作1322中将位置出错报告发送给报告模块130。然后,控制转到操作1324。
在操作1324中,将正在检查的在数据集中的每个字段的内容与亵渎词或不许用词的集进行比较,以确定在数据集中是否有任何亵渎或另外不接受的词。然后,控制转到询问操作1326,其询问是否找到了任何亵渎或不可接受的语言。如果找到了不可接受的词,则控制转到操作1328,这里设置出错标记,并且控制转到操作1330,这里,将不可接受语言的出错报告发送到报告模块130。另一方面,如果没有找到亵渎,则控制直接转到操作1332。
在操作1332中,任何初步的URL地址被访问和检查,以确定在访问时是否生成任何出错消息。此外,如果在操作中需要任何会话cookie,则在该操作中记录这些会话cookie。在需要访问信息的一些站点中,例如在用户到达期望的URL之前,可能呈现或需要Pre-URL地址和cookie信息。该操作核实在数据集中的任何初步的URL信息是当前的和正确的。如果有任何出错消息,对这些出错消息进行注释。然后,控制转到询问操作1334。询问操作1334询问当调用Pre-URL地址时是否接收到任何出错消息。如果答案为否,则控制直接转到操作1340。如果答案为是,则有出错,再次在操作1336中设置出错标记,并且在操作1338中将出错报告发送给报告模块130。然后,控制转到操作1340。
在操作1340中,调用最终URL地址,以及记录需要的任何会话cookie。此时,对任何出错消息进行注释。该操作是重要的,从而核实在数据库中的数据集依然保持为最新的。尤其在职位公告数据集的情况中,可能恰好在前一天已经填充了职位。在这样的情况下,公告可以被清除,而数据库依然认为该职位是最新的。该操作1340尝试捕捉这样的最近变化情况并适应这样的行为。在很多实例中,该操作是成功的,并且帮助确保数据库被维持为最新的。然后,控制转到询问操作1342,这里,询问是否有任何例如指示职位已经被拉出的出错消息。如果没有接收到出错消息,则控制转到操作1348。然而,如果接收到了出错标记,则转到操作1346,这里将出错报告发送到报告模块130。然后,因为如果接收到错误则URL是无效的,所以控制转到返回操作1360,并且数据集将不被索引并被返回到已加工数据库236。
在操作1348中,下载在URL处的网页用于检查。然后,控制转到操作1350,这里,如在数据净化器模块139中已经做过的那样,从网页上清除HTML数据。然后,控制转到操作1352。在操作1352中,将数据集内容逐词地匹配到网页内容。该操作核实数据集是否正确地反映网页内容。其是验证列表是否为最新的另一机制。然后,控制转到询问操作1354。询问操作1354询问在匹配操作1352中是否有任何错误。如果有错误,则数据集被损坏,或职位公告以某种方式不同,并且因此,将数据集返回到已加工数据库,并且不被索引以转送到搜索区246。因此,答案为是,则控制转到操作1356,这里,设置出错标记,然后控制转到操作1358,这里,将出错报告发送到报告模块130,然后,控制转到返回操作1360。
在设置出错标记的每个情况下,操作1312、1320、1328、1336、1344、1356,设置标记将防止数据集被索引并返回到已加工数据库用于转送到搜索区。然而,将使得在已加工数据库中的数据集的副本可用,从而让管理员在质量查看模块126中进行检查。
返回操作1360将控制返回到操作524处的任务500,该任务500然后将控制转到操作526,这里执行另一系列的基于规则的任务。整个控制然后在操作528中返回。
虽然这里描述的功能部件、模块、软件单元、硬件单元以及特征和功能可以被示出或描述为固定在软件或硬件或其他中,本领域技术人员将知道,这里描述的特征和功能可以以多种软件、硬件和/或固件组合的方式来实现,并且这里描述的功能可以被分布到网络上的多个部件或子部件中并且不被固定到如这里描述的任何一个特定部件。因此,所述的数据库可以被分开、统一、联合或以另外方式构造,以最佳地适应这里描述的特征和功能的实现者的优先选择。并且,这里描述为优选手动执行的功能可以手动地执行或被划分为子任务,这些子任务可以被自动化并由智能子系统最终执行,智能子系统模拟人类操作员的交互,例如可以由人类操作训练并且最终独立运行的人工智能系统。在下面进一步所附的描述以及那里包含的图中找到了另外的特征、功能和技术说明书。
虽然根据目前认为最实用和优选的实施例已经描述了设备和方法,但是要知道,本公开不被限于所公开的实施例。意图覆盖包括在权利要求的精神和范围中的多种修改和类似配置,权利要求的范围将根据最广泛的解释以包括所有这样的修改和相似结构。本公开包括以下权利要求的任何和所有实施例。这里描述、参考和讨论的所有的专利、专利申请和印刷出版物通过引用全部包括在这里。

Claims (72)

1.一种计算机系统,用于管理对于通过数据网络从多个源捕捉的列表信息数据的捕捉和处理,从而将所述列表信息数据编译为可搜索的数据结构,所述系统包括:
管理入口模块,通过网络接口提供系统管理和操作控制;以及
一个或多个列表管理器模块,响应经由所述管理入口模块提供的指令,操作用于:控制对于所述源的访问;控制列表信息数据的检索并且处理从所述源接收到的所述列表信息数据;对所述列表信息数据进行分类;检查所述分类的列表信息数据的部分是否符合预定质量标准;以及将所述分类的列表信息数据存储在搜索区中以供使用。
2.根据权利要求1所述的系统,其中,所述数据网络是因特网。
3.根据权利要求1所述的系统,其中,每个列表管理器模块包括一个或多个任务管理器,所述每个任务管理器包括:
抓取管理模块,协调一个或多个抓取引擎的操作以及这些抓取引擎之间的通信,以从由所述管理入口模块中的站点管理模块识别的站点获得抓取的数据集,并且将所述抓取的数据集存储在数据库中;以及
质量管理模块,连接到所述抓取管理模块,分析存储在所述数据库中的每个抓取数据集是否符合预定的质量标准。
4.根据权利要求3所述的系统,其中每个任务管理器模块进一步包括:
列表数据分类模块,操作用于对在所述数据库中存储的每个数据集进行检查并将所述数据集分类到一个或多个类别的预定集中,并且将分类的数据集返回到所述数据库;以及
搜索区同步器,与所述数据库通信,用于对来自所述数据库的分类的数据集进行编译并将其传送到所述搜索区中。
5.根据权利要求1所述的系统,其中,所述分类模块包括:
分类数据库;以及
文档分类平台服务,通过将每个抓取的数据集的文本与在所述分类数据库中的之前分类的列表数据文本进行比较,来为每个抓取的列表信息数据集确定在每个预定类别中的置信值。
6.根据权利要求4所述的系统,其中,所述管理入口包括分类查看模块,所述分类查看模块允许查看者来核实由所述文档分类平台服务确定的分类。
7.根据权利要求4所述的系统,其中,返回到所述数据库的每个数据集包括由所述分类模块确定的分配类别以及用于该类别的分配置信值。
8.根据权利要求7所述的系统,其中,返回到所述数据库的每个数据集进一步包括每个预定类别的置信值。
9.根据权利要求5所述的系统,其中,如果所述分配置信值低于预定阈值,则返回到所述数据库的每个数据集包括手动查看标记设置。
10.根据权利要求1所述的系统,其中,所述质量管理模块与不满足预定标准的每个数据集相关联地设置质量标记。
11.根据权利要求10所述的系统,其中,所述管理入口进一步包括质量查看模块,所述质量查看模块与所述质量管理模块通信,并允许查看者来手动地检查已经设置了所述质量标记的数据集。
12.一种获得、处理和编译列表数据集的方法,包括:
从通过因特网可访问的一个或多个站点上的一个或多个列表,获得列表信息数据集;
将与每个列表对应的数据集存储在数据库中;
分析所述数据库中存储的每个数据集是否符合预定质量标准;以及
将存储在所述数据库中的每个数据集分类到一个或多个预定的类别中,并将所述分类后的数据集返回到所述数据库。
13.根据权利要求12所述的方法,进一步包括通过XML提要从一个或多个客户站点获得列表信息数据集。
14.根据权利要求12所述的方法,其中,所述分类操作进一步包括:
对每个预定类别的每个数据集分配置信值。
15.根据权利要求12所述的方法,其中,所述分类操作包括:
将每个获得的数据集的文本与在分类数据库中的之前分类的数据集的文本进行比较;以及
为每个获得的数据集确定在每个预定类别中的置信值。
16.根据权利要求15所述的方法,进一步包括:
对具有低于预定值的置信值的每个分类的数据集进行标记,用于手动查看;以及
提供手动查看模块,允许查看者来通过管理入口核实任何标记的分类。
17.根据权利要求12所述的方法,进一步包括:为分配给返回到所述数据库的每个数据集的所述类别分配置信值。
18.根据权利要求17所述的方法,进一步包括:对具有低于预定阈值的分配置信度的返回到所述数据库的任何数据集进行标记。
19.根据权利要求12所述的方法,进一步包括:
响应用户提出的询问,通过网络客户机服务器集群,将来自搜索区的挑选的分类的数据集传送到所述用户。
20.根据权利要求12所述的方法,其中,所述获得操作进一步包括:
通过因特网访问一个或多个所述站点;
从所述一个或多个站点抓取列表数据集;
对不满足所述预定质量标准的任何抓取数据集进行标记;
允许对于返回到所述数据库的标记的数据集进行手动查看,并且所述分类操作进一步包括:
将在每个抓取的数据集中的数据与在分类数据库中的之前分类的数据集数据进行比较;以及
为每个抓取的数据集确定在每个预定类别中的置信值。
21.根据权利要求20所述的方法,还包括:
对具有低于预定值的置信值的每个分类的抓取的数据集进行标记,用于手动查看;以及
在管理入口中提供手动查看模块,允许查看者来核实任何标记的分类。
22.根据权利要求20所述的方法,还包括:
响应用户做出的询问,将挑选的分类的数据集从搜索区通过网络服务器传送到所述用户。
23.一种计算机可读介质,对指令的计算机程序进行编码,以执行用于获得和处理列表数据的计算机处理过程,所述计算机处理过程包括:
从通过因特网可以访问的站点上的一个或多个列表,抓取列表信息数据;
与每个抓取的列表信息对应地,将抓取的数据集存储在数据库中;
分析所述数据库中的每个抓取的数据集是否符合预定质量标准;以及
将存储在所述数据库中的每个数据集分类到一个或多个预定类别中,并将所述分类的数据集返回到所述数据库。
24.根据权利要求23所述的计算机可读介质,其中,所述处理过程进一步包括:
对不满足预定质量标准的任何抓取的数据集进行标记;
允许对于返回到所述数据库的标记的数据集进行手动查看,并且其中,所述分类操作进一步包括:
将在每个抓取的数据集中的文本与分类数据库中的之前分类的数据集文本进行比较;以及
为每个抓取的数据集确定在每个预定类别中的置信值。
25.一种计算机系统,用于管理通过数据网络从多个职位相关源捕捉的职位列表信息数据的捕捉和处理,从而将所述数据编译为可搜索的数据结构,所述系统包括:
管理入口模块,通过网络接口提供系统管理和操作控制;以及
一个或多个任务管理器模块,响应经由所述管理入口模块提供的指令,操作用于控制对于所述职位相关源的访问、控制对职位列表信息数据集的检索以及处理从所述源接收到的所述职位信息数据集、对所述职位列表信息数据集进行分类、检查所述分类的职位信息数据集的部分是否符合预定质量标准、以及将所述分类的职位信息数据集存储在职位搜索区中以供使用。
26.根据权利要求25所述的系统,其中,所述数据网络包括因特网。
27.根据权利要求25所述的系统,其中,每个任务管理器模块包括:
抓取管理模块,协调一个或多个职位抓取引擎的操作以及它们之间的通信,从而从由在所述管理入口模块中的站点管理模块识别的公司职业站点和职位版获得抓取的职位信息数据集,并且将所述抓取的数据集存储在数据库中;以及
质量管理模块,连接到所述抓取管理模块,分析存储在所述数据库中的每个抓取的职位数据集是否符合预定的质量标准。
28.根据权利要求27所述的系统,其中,所述任务管理器模块进一步包括:
职位列表数据分类模块,操作用于对存储在所述数据库中的每个职位数据集进行检查并将其分类到一个或多个职位类别的预定集中,并且将分类的职位数据集返回到所述数据库;以及
搜索区同步器,与所述数据库通信,用于对来自所述数据库的分类的职位数据集进行编译并将其传送到所述职位搜索区。
29.根据权利要求25所述的系统,其中,所述分类模块包括:
职位分类数据库;以及
分类模块,通过将每个抓取的职位数据集的文本与在所述职位分类数据库中的之前分类的职位数据文本进行比较,为每个抓取的职位列表信息数据集确定在每个预定的职位类别中的置信值。
30.根据权利要求28所述的系统,其中,所述管理入口包括分类查看模块,所述分类查看模块允许查看者来核实由所述文档分类平台服务确定的分类。
31.根据权利要求28所述的系统,其中,返回到所述数据库的每个职位数据集包括由所述分类模块确定的分配职位类别以及该类别的分配置信值。
32.根据权利要求31所述的系统,其中,返回到所述数据库的每个数据集进一步包括每个预定的职位类别的置信值。
33.根据权利要求29所述的系统,其中,如果所述分配的置信值低于预定阈值,则返回到所述数据库的每个数据集包括手动查看标记设置。
34.根据权利要求25所述的系统,其中,所述质量管理模块与不满足所述预定标准的每个抓取的职位数据集相关联地设置质量标记。
35.根据权利要求34所述的系统,其中,所述管理入口进一步包括质量查看模块,所述质量查看模块与所述质量管理模块通信,并允许查看者来手动地检查已经设置了所述质量标记的职位数据集。
36.一种获得、处理和编译职位信息数据集的方法,包括:
从通过因特网可访问的一个或多个公司职业站点或职位版上的一个或多个职位列表,抓取职位信息数据集;
存储与在数据库中找到的每个抓取的职位列表对应的职位数据集;
分析所述数据库中存储的每个抓取的数据集是否符合预定质量标准;以及
将存储在所述数据库中的每个数据集分类到一个或多个预定的职位类别中,并将所述分类后的职位信息数据集返回到所述数据库。
37.根据权利要求36所述的方法,进一步包括通过XML提要从一个或多个客户站点获得职位信息数据集。
38.根据权利要求36所述的方法,其中,所述分类操作进一步包括:
对每个职位信息数据集分配每个预定职位类别的置信值。
39.根据权利要求36所述的方法,其中,所述分类操作包括:
将每个抓取的职位信息数据集的文本与在职位分类数据库中的之前分类的职位信息数据集的文本进行比较;以及
为每个抓取的数据集确定在每个预定类别中的置信值。
40.根据权利要求39所述的方法,进一步包括:
对具有低于预定值的置信值的每个分类的抓取的数据集进行标记,用于手动查看;以及
提供手动查看模块,允许查看者来通过管理入口核实任何标记的分类。
41.根据权利要求36所述的方法,进一步包括:为分配给返回到所述数据库的每个数据集的所述职位类别分配置信值。
42.根据权利要求41所述的方法,进一步包括:对具有低于预定阈值的分配置信度的返回到所述数据库的任何数据集进行标记。
43.根据权利要求36所述的方法,进一步包括:
响应求职者提出的询问,通过网络客户机服务器集群,将来自职位搜索区的挑选的分类的职位信息数据集传送到所述求职者。
44.根据权利要求36所述的方法,其中,所述抓取操作进一步包括:
通过因特网访问一个或多个所述职位版或公司职业站点;
对不满足所述预定质量标准的任何抓取的职位信息数据集进行标记;
允许对于返回到所述数据库的标记的职位信息数据集进行手动查看,并且所述分类操作进一步包括:
将在每个抓取的职位信息数据集中的数据与在分类数据库中的之前分类的职位数据集数据进行比较;以及
为每个抓取的职位信息数据集确定在每个预定职位类别中的置信值。
45.根据权利要求44所述的方法,还包括:
对具有低于预定值的置信值的每个分类的抓取的数据集进行标记,用于手动查看;以及
在管理入口中提供手动查看模块,允许查看者来核实任何标记的分类。
46.根据权利要求44所述的方法,还包括:
响应用户做出的询问,将挑选的分类的数据集从搜索区通过网络服务器传送到所述用户。
47.一种计算机可读介质,对指令的计算机程序进行编码,以执行用于从公司职业站点和职位版抓取职位描述数据的计算机处理过程,所述计算机处理过程包括:
从通过因特网可以访问的站点上的一个或多个列表,抓取列表信息数据;
与每个抓取的列表信息对应地,将抓取的数据集存储在数据库中;
分析存储在所述数据库中的每个抓取的数据集是否符合预定质量标准;以及
将存储在所述数据库中的每个数据集分类到一个或多个预定类别中,并将所述分类的数据集返回到所述数据库。
48.根据权利要求47所述的计算机可读介质,其中,所述处理过程进一步包括:
对不满足预定质量标准的任何抓取的数据集进行标记;
允许对于返回到所述数据库的标记的数据集进行手动查看,并且其中,所述分类操作进一步包括:
将在每个抓取的数据集中的文本与分类数据库中的之前分类的数据集文本进行比较;以及
为每个抓取的数据集确定在每个预定类别中的置信值。
49.一种计算机系统,用于管理通过数据网络从多个职位相关源捕捉的职位列表信息数据的捕捉和处理,从而将所述数据编译为可搜索的数据结构,所述系统包括:
管理入口模块,通过网络接口提供系统管理和操作控制;以及
抓取管理模块,协调一个或多个职位抓取引擎的操作以及它们之间的通信,从而从由在所述管理入口模块中的站点管理模块识别的公司职业站点和职位版获得抓取的职位信息数据集,并且将所述抓取的数据集存储在数据库中;
职位列表数据分类模块,操作用于对存储在所述数据库中的每个职位数据集进行检查并将其分类到一个或多个职位类别的预定集中,并且将分类的职位数据集返回到所述数据库;以及
质量管理模块,连接到所述抓取管理模块,分析存储在所述数据库中的每个抓取的职位数据集是否符合预定的质量标准。
50.根据权利要求49所述的系统,其中,所述数据网络包括因特网。
51.根据权利要求49所述的系统,进一步包括:
搜索区同步器,与所述数据库通信,用于对来自所述数据库的分类的职位数据集进行编译并将其传送到职位搜索区。
52.根据权利要求51所述的系统,其中,所述分类模块包括:
职位分类数据库;以及
分类模块,通过将每个抓取的职位数据集的文本与在所述职位分类数据库中的之前分类的职位数据文本进行比较,为每个抓取的职位列表信息数据集确定在每个预定的职位类别中的置信值。
53.根据权利要求52所述的系统,其中,所述管理入口包括分类查看模块,所述分类查看模块允许查看者来核实由所述分类模块中的文档分类平台服务确定的分类。
54.根据权利要求52所述的系统,其中返回到所述数据库的每个职位数据集包括由所述分类模块确定的分配职位类别以及该类别的分配置信值。
55.根据权利要求54所述的系统,其中,返回到所述数据库的每个数据集进一步包括每个预定的职位类别的置信值。
56.根据权利要求52所述的系统,其中,如果所述分配的置信值低于预定阈值,则返回到所述数据库的每个数据集包括手动查看标记设置。
57.根据权利要求56所述的系统,其中,所述管理入口包括分类查看模块,所述分类查看模块允许查看者来核实由所述分类模块确定的分类。
58.根据权利要求49所述的系统,其中,所述质量管理模块与不满足所述预定标准的每个抓取的职位数据集相关联地设置质量标记。
59.根据权利要求58所述的系统,其中,所述管理入口进一步包括质量查看模块,所述质量查看模块与所述质量管理模块通信,并允许查看者来手动地检查已经设置了所述质量标记的职位数据集。
60.一种获得、处理和编译职位信息数据集的方法,包括:
从通过因特网可访问的一个或多个公司职业站点或职位版上的一个或多个职位列表,抓取职位信息数据集;
存储与在数据库中找到的每个抓取的职位列表对应的职位数据集;
分析所述数据库中存储的每个抓取的数据集是否符合预定质量标准;以及
将存储在所述数据库中的每个数据集分类到一个或多个预定的职位类别中,并将所述分类后的职位信息数据集返回到所述数据库。
61.根据权利要求60所述的方法,进一步包括通过XML提要从一个或多个客户站点获得职位信息数据集。
62.根据权利要求60所述的方法,其中,所述分类操作进一步包括:
对每个职位信息数据集分配每个预定职位类别的置信值。
63.根据权利要求60所述的方法,其中,所述分类操作包括:
将每个抓取的职位信息数据集的文本与在职位分类数据库中的之前分类的职位信息数据集的文本进行比较;以及
为每个抓取的数据集确定在每个预定类别中的置信值。
64.根据权利要求63所述的方法,进一步包括:
对具有低于预定值的置信值的每个分类的抓取的数据集进行标记,用于手动查看;以及
提供手动查看模块,允许查看者来通过管理入口核实任何标记的分类。
65.根据权利要求60所述的方法,进一步包括:为分配给返回到所述数据库的每个数据集的所述职位类别分配置信值。
66.根据权利要求65所述的方法,进一步包括:对具有低于预定阈值的分配置信度的返回到所述数据库的任何数据集进行标记。
67.根据权利要求60所述的方法,进一步包括:
响应求职者提出的询问,通过网络客户机服务器集群,将来自职位搜索区的挑选的分类的职位信息数据集传送到所述求职者。
68.根据权利要求60所述的方法,其中,所述抓取操作进一步包括:
通过因特网访问一个或多个所述职位版或公司职业站点;
对不满足所述预定质量标准的任何抓取的职位信息数据集进行标记;
允许对于返回到所述数据库的标记的职位信息数据集进行手动查看,并且所述分类操作进一步包括:
将在每个抓取的职位信息数据集中的数据与在分类数据库中的之前分类的职位数据集数据进行比较;以及
为每个抓取的职位信息数据集确定在每个预定职位类别中的置信值。
69.根据权利要求68所述的方法,还包括:
对具有低于预定值的置信值的每个分类的抓取的数据集进行标记,用于手动查看;以及
在管理入口中提供手动查看模块,允许查看者来核实任何标记的分类。
70.根据权利要求68所述的方法,还包括:
响应用户做出的询问,将挑选的分类的数据集从搜索区通过网络服务器传送到所述用户。
71.一种计算机可读介质,对指令的计算机程序进行编码,以执行用于从公司职业站点和职位版抓取职位描述数据的计算机处理过程,所述计算机处理过程包括:
从通过因特网可以访问的站点上的一个或多个列表,抓取列表信息数据;
与每个抓取的列表信息对应地,将抓取的数据集存储在数据库中;
分析所述数据库中的每个抓取的数据集是否符合预定质量标准;以及
将存储在所述数据库中的每个数据集分类到一个或多个预定类别中,并将所述分类的数据集返回到所述数据库。
72.根据权利要求71所述的计算机可读介质,其中,所述处理过程进一步包括:
对不满足预定质量标准的任何抓取的数据集进行标记;
允许对于返回到所述数据库的标记的数据集进行手动查看,并且其中,所述分类操作进一步包括:
将在每个抓取的数据集中的文本与分类数据库中的之前分类的数据集文本进行比较;以及
为每个抓取的数据集确定在每个预定类别中的置信值。
CN2006800158945A 2005-03-11 2006-03-10 用于管理列表的系统和方法 Expired - Fee Related CN101203847B (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US66128005P 2005-03-11 2005-03-11
US60/661,280 2005-03-11
US11/173,470 2005-06-30
US11/173,470 US7702674B2 (en) 2005-03-11 2005-06-30 Job categorization system and method
US11/173,656 US7707203B2 (en) 2005-03-11 2005-06-30 Job seeking system and method for managing job listings
US11/173,837 US7680854B2 (en) 2005-03-11 2005-06-30 System and method for improved job seeking
US11/174,393 2005-06-30
US11/173,837 2005-06-30
US11/173,656 2005-06-30
US11/174,393 US7680855B2 (en) 2005-03-11 2005-06-30 System and method for managing listings
PCT/US2006/008906 WO2006099299A2 (en) 2005-03-11 2006-03-10 System and method for managing listings

Publications (2)

Publication Number Publication Date
CN101203847A true CN101203847A (zh) 2008-06-18
CN101203847B CN101203847B (zh) 2010-05-19

Family

ID=39846670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800158945A Expired - Fee Related CN101203847B (zh) 2005-03-11 2006-03-10 用于管理列表的系统和方法

Country Status (2)

Country Link
JP (1) JP2008537811A (zh)
CN (1) CN101203847B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609456A (zh) * 2012-01-12 2012-07-25 凤凰在线(北京)信息技术有限公司 一种文章实时智能抓取系统和方法
CN103620587A (zh) * 2011-06-28 2014-03-05 微软公司 将电子内容自动分类到项目中
US9519883B2 (en) 2011-06-28 2016-12-13 Microsoft Technology Licensing, Llc Automatic project content suggestion
CN110580171A (zh) * 2019-09-17 2019-12-17 RealMe重庆移动通信有限公司 App分类方法、相关装置及产品
CN112698784A (zh) * 2019-10-23 2021-04-23 爱思开海力士有限公司 存储器系统
CN113407287A (zh) * 2021-06-29 2021-09-17 中国平安人寿保险股份有限公司 可视化页面的快速生成方法、装置、设备及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113674798B (zh) * 2020-05-15 2024-04-26 复旦大学 蛋白质组学数据的分析系统
CN115072502B (zh) * 2022-07-01 2023-11-07 猫岐智能科技(上海)有限公司 电梯终端服务器系统及控制方法
CN116092682B (zh) * 2023-04-11 2023-06-16 中大体育产业集团股份有限公司 一种体测数据的档案管理方法及系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805747A (en) * 1994-10-04 1998-09-08 Science Applications International Corporation Apparatus and method for OCR character and confidence determination using multiple OCR devices
JP2001134600A (ja) * 1999-11-08 2001-05-18 Nec Corp 情報抽出システム、情報抽出方法および情報抽出用プログラムを記録した記録媒体
JP5105456B2 (ja) * 2000-05-30 2012-12-26 株式会社ホットリンク 知識サービスを提供する分散型モニタリングシステム
JP2002117135A (ja) * 2000-08-02 2002-04-19 Masunaga Sogo Keikaku:Kk ウェブサイトセキュリティシステム
JP3701197B2 (ja) * 2000-12-28 2005-09-28 松下電器産業株式会社 分類への帰属度計算基準作成方法及び装置
JP2003242078A (ja) * 2002-02-18 2003-08-29 Hitachi Ltd 電子掲示板システム
JP3677006B2 (ja) * 2002-02-22 2005-07-27 日本ユニシス株式会社 情報処理装置およびその方法
CN1536483A (zh) * 2003-04-04 2004-10-13 陈文中 网络信息抽取及处理的方法及系统
JP2004326712A (ja) * 2003-04-23 2004-11-18 Atsushi Matsumoto インターネット上における求人情報の自動収集方法および供給方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103620587A (zh) * 2011-06-28 2014-03-05 微软公司 将电子内容自动分类到项目中
US9519883B2 (en) 2011-06-28 2016-12-13 Microsoft Technology Licensing, Llc Automatic project content suggestion
CN102609456A (zh) * 2012-01-12 2012-07-25 凤凰在线(北京)信息技术有限公司 一种文章实时智能抓取系统和方法
CN110580171A (zh) * 2019-09-17 2019-12-17 RealMe重庆移动通信有限公司 App分类方法、相关装置及产品
CN112698784A (zh) * 2019-10-23 2021-04-23 爱思开海力士有限公司 存储器系统
CN112698784B (zh) * 2019-10-23 2023-12-19 爱思开海力士有限公司 存储器系统
CN113407287A (zh) * 2021-06-29 2021-09-17 中国平安人寿保险股份有限公司 可视化页面的快速生成方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN101203847B (zh) 2010-05-19
JP2008537811A (ja) 2008-09-25

Similar Documents

Publication Publication Date Title
US7702674B2 (en) Job categorization system and method
US7680855B2 (en) System and method for managing listings
US7707203B2 (en) Job seeking system and method for managing job listings
KR100996131B1 (ko) 리스팅 관리 시스템 및 방법
US11847106B2 (en) Multi-service business platform system having entity resolution systems and methods
CN101203847B (zh) 用于管理列表的系统和方法
US20220206993A1 (en) Multi-service business platform system having custom object systems and methods
CN107967575B (zh) 一种人工智能保险咨询服务人工智能平台系统
US20200193382A1 (en) Employment resource system, method and apparatus
US7587395B2 (en) System and method for providing profile matching with an unstructured document
US20160196587A1 (en) Predictive modeling system applied to contextual commerce
Rahim Taleqani et al. Public opinion on dockless bike sharing: A machine learning approach
WO2020256854A1 (en) Data sampling for model exploration
KR102121901B1 (ko) 정책자금 온라인 심사평가 시스템
Ziv et al. ASdb: a system for classifying owners of autonomous systems
Fagan Big Data Legal Scholarship: Toward a Research Program and Practitionaer's Guide
WO2019148718A1 (zh) 人才数据库建立方法、装置及存储介质
US20050033770A1 (en) Dynamically evolving memory recall and idea generation tool
Deshpande et al. BI and sentiment analysis
Zeng A heteroscedastic generalized extreme value discrete choice model
Khan An efficient human resource management system model using web-based hybrid technique
Beręsewicz et al. Text analysis of job offers for mismatch of educational characteristics to labour market demands
Dixon et al. Occupational models from 42 million unstructured job postings
US20230316186A1 (en) Multi-service business platform system having entity resolution systems and methods
RU2555232C2 (ru) Способ формирования и эксплуатации базы данных

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100519

Termination date: 20110310