JP2008537811A - リスティングを管理するためのシステム及び方法 - Google Patents

リスティングを管理するためのシステム及び方法 Download PDF

Info

Publication number
JP2008537811A
JP2008537811A JP2008501026A JP2008501026A JP2008537811A JP 2008537811 A JP2008537811 A JP 2008537811A JP 2008501026 A JP2008501026 A JP 2008501026A JP 2008501026 A JP2008501026 A JP 2008501026A JP 2008537811 A JP2008537811 A JP 2008537811A
Authority
JP
Japan
Prior art keywords
job
data set
database
scraped
categorization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008501026A
Other languages
English (en)
Inventor
アダム ハイダー
サンディープ カンナ
ジョセフ ティン
Original Assignee
ヤフー! インコーポレイテッド
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 ヤフー! インコーポレイテッド filed Critical ヤフー! インコーポレイテッド
Priority claimed from PCT/US2006/008906 external-priority patent/WO2006099299A2/en
Publication of JP2008537811A publication Critical patent/JP2008537811A/ja
Pending legal-status Critical Current

Links

Images

Abstract

ユーザにより検査するためにインターネットを経て種々のしばしば無関係の部署から得られるデータを捕獲し、管理しそして提示するためのコンピュータシステム及び方法。このシステムは、会社サイト、ウェブサイト、直接フィード及び他のソースのリスティングから情報データセットをスクレープするように動作できる1つ以上のスクレーピングエンジンを有するスクレーピングモジュールを備え、このスクレーピングモジュールは、スクレープされたリスティング情報データセットを受け取ってデータベースに記憶する。又、このシステムは、ソース、システムアドミニストレータ及び処理モジュールの全てのオペレーション及びそれらの間の通信を整合するマネージメントプラットホームも有する。プラットホーム内の処理モジュールは、データベースに記憶された選択されたスクレープされたデータを分析するスクレーピングマネージメントモジュールと、データベースに記憶された各データセットを検査して、所定セットのカテゴリーの1つ以上にカテゴリー分けし、そしてそのカテゴリー分けされたデータセットをデータベースへ返送するカテゴリー分けモジュールと、を備えている。
【選択図】図1A

Description

本発明は、コンピュータソフトウェアに係り、より詳細には、データリスティングを管理するためのソフトウェアシステム及び方法に係る。
データのリスティングを管理し、そして不動産の仲買人、雇用者募集係、旅行代理店のような顧客に提出することが必要な会社に共通した課題は、彼等が有する情報を簡潔且つインテリジェントな仕方で伝達し、このようなデータの利用者が、求めている特定の情報を、最適な、効率的な且つ有効な仕方で、最短のサーチ時間周期内に得るようにすることである。別の課題は、データの流れを追跡し、種々のビジネスユニット間で情報転送を行いそしてリスティングデータを利用するエンティティを管理する必要性である。
1つの説明上の例は、雇用者募集の分野を含む。才能のある従業員を引き付けようとする会社の課題は、手に入るポジションに対して最良組の候補を見出すことである。求職者の課題は、申し分のない仕事を見つけることである。人的資源部門の中での1つの標準的な慣例は、各々の空いたポジションに対する仕事の説明を作成し、次いで、その説明と共にポジションを広告することである。募集係及び求職者は、次いで、これら説明を再検討し分析して、求職者と特定の仕事との間の一致を決定しなければならない。
自分の熟練度セットに基づいて適切な仕事をインターネット上でサーチしている個人にとって多数のサーチツールが利用できる。現在利用できる典型的なサーチツールは、求職者が、希望の勤務地、職種、希望の報酬レベル等の種々の基準をキーワードの形態で選択することを必要とする。同様に、雇用主は、仕事の説明に加えて、特定の仕事に対して考慮する必要のある熟練度レベル、教育、経験年数、等を与える。次いで、サーチツールは、仕事の説明のデータベースにおいて求職者のキーワードをルックアップし、求職者のキーワードを含む仕事の説明を返送するか又は表示する。しかしながら、利用できるサーチツールは、依然、雇用主及び求職者が非常に多数のいわゆるサーチ結果を各々ふるいにかけることをしばしば必要とするか、或いは設けられた基準があまりに特定過ぎるか又は狭過ぎる場合にはサーチ結果を全く返送することができない。
一般に、リスティング形態でコンパイルされたデータ、例えば、特定の地域の新しい家をインターネットでサーチする個人には多数のサーチツールが利用できる。現在利用できる典型的な不動産サーチツールは、希望の場所、家の形式、敷地の大きさ、スクールシステム、ストリート位置の好み、価格範囲、等の種々の基準をキーワードの形態で家の買手又は買手の代理店が選択することを必要とする。リスティング不動産仲買人は、通常、家の説明に加えて、絵及び他のデータ、例えば、敷地、家の平方フィート値、寝室及び風呂の数をマルチリスティングサービスで提供する。サーチツールは、次いで、家のデータベースにおいてユーザのキーワードをルックアップし、そしてユーザのキーワードを含む家を返送するか又は表示する。しかしながら、利用できるサーチツールは、依然、ユーザ、即ち不動産仲買人又は潜在的な買手又は他のユーザが、多数のサイトにおいて非常に多数のいわゆるサーチ結果を各々ふるいにかけることをしばしば必要とする。従って、リスティングデータをより有効に収集し、データを正規化し、そしてリスティングデータのユーザとプロバイダーとの間のインターフェイスを管理するサーチ管理システムを提供することが要望される。
ここに述べるシステムは、仕事の部署、履歴書リスティング、不動産リスティング、製品リスティング、等の任意の種類のリスティングデータに対してサーチツールを管理するための「プラットホーム・フォー・アドバンスト・リスティング・マネージメント(Platform for Advanced Listing Management)」ソフトウェアシステムを組み込んでいる。このシステムは、多数のマシン間に完全に分散させることができ且つ拡張可能である。ソフトウェアシステム内の以下に述べる各モジュールは、拡張可能であり、取り扱い及び処理されるべきデータの量により規定される多数のインスタンスを含むことができる。
ここに述べるシステムの実施形態は、サーチ可能なデータ構造体へコンパイルするために複数のソースからデータネットワークを経て捕獲されるリスティング情報データの捕獲及び処理を管理するコンピュータソフトウェアシステムである。このシステムは、ネットワークインターフェイスを通してシステムアドミニストレーション及びオペレーション制御を与えるアドミニストレーションポータルモジュールと、このアドミニストレーションポータルモジュールを経て与えられるインストラクションに応答して、ソースへのアクセスを制御し、リスティング情報データの検索を制御し、そしてこれらソースから受け取られたリスティング情報データを処理するように動作できる1つ以上のリスティングマネージャーモジュールとを備えている。このリスティングマネージャーモジュールの各々は、タスクマネージャーを制御して、リスティング情報データをカテゴリー分けし、そのカテゴリー分けされたリスティング情報データの部分を、所定のクオリティ基準への適合性について検査し、そしてそのカテゴリー分けされたリスティング情報データを使用のためにサーチバンクに記憶する。
各リスティングマネージャーモジュールは、1つ以上のタスクマネージャーを含み、各タスクマネージャーは、アドミニストレーションポータルモジュールにおいてサイトマネージメントモジュールにより識別されたサイトからスクレープされたデータセットを得、そしてそのスクレープされたデータセットをデータベースに記憶するために、1つ以上のスクレープエンジンのオペレーション及びそれらの間の通信を整合するスクレープマネージメントモジュールを備えている。又、リスティングマネージャーモジュールは、好ましくは、データベースに記憶された各スクレープされたデータセットを所定のクオリティ基準への適合性について分析するためにスクレープマネージメントモジュールに結合されたクオリティマネージメントモジュールと、データベースに記憶された各データセットを検討して、所定セットのカテゴリーの1つ以上へとカテゴリー分けし、そしてそのカテゴリー分けされたデータセットをデータベースへ返送するように動作できるリスティングデータカテゴリー分けモジュールと、データベースからのカテゴリー分けされたデータセットをコンパイルしてサーチバンクへ転送するためにデータベースと通信するサーチバンクシンクロナイザーとを備えている。
例示的システムの実施形態は、リスティング情報にアクセスするのに利用できる手段を使用することにより動作する。このような手段は、直接的フィード、ウェブベースフィード、XMLフィード、及びスクレープ技術を使用してウェブを探し回りインターネット、特に、ワールドワイドウェブ上の利用可能なサイトからリスティング情報を得ること、を含むが、リスティング情報は、現在知られているか又は今後知られる他のネットワークに配布され得るので、ここに述べるシステム及び機能は、分布情報環境に適用することができ、これにより、情報を手動又は自動化システムにより得ることができる。
一実施形態として、求職者及び仕事(ジョブ)の説明並びに仕事の部署について説明する。しかしながら、管理システムは、単純な職探しより相当に広い用途を有する。これは、データのリスティング又はデータレコードの他のコンパイルを管理すべきいかなる形式のデータ管理システムでも実施することができる。ここに述べるシステムは、モジュラーで、拡張可能であり、且つ単一コンピュータにおいてスタンドアローンシステムとして実施することができるか、或いはそのモジュラー機能は、異種コンピュータ、サーバー、等の間に分散させて、適当なネットワークインターフェイスを経て通信することができる。
仕事に関する情報を求めている求職者は、ここに述べるシステムの実施形態を使用するときに、再検討すべき広い分野のジョブ説明を有する。より詳細には、システムは、スクレープ技術を使用して、ジョブ説明でポピュレートされたデータベースを構築する。データベースは、他のソースからのジョブ説明、例えば、応募者を求めている会社により供給され及び/又はスクレープ以外の方法により与えられるジョブ説明を含むこともできる。このシステムは、ジョブ説明を受け取り、次いで、内部カテゴリー分け及びクオリティマネージメントプロセスを使用して、各個々のジョブ説明に含まれる情報のクオリティを最大にし、ユーザに対する有用性を最大にすると共に、ここに述べるシステムを利用したときにはユーザの全体的なジョブサーチ経験を改善する。
本開示に基づきリスティングデータセットを得、取り扱い、そしてコンパイルする方法は、インターネットを経て利用できる1つ以上のサイトにおいて1つ以上のリスティングからリスティング情報データセットを得るステップと、各スクレープされたリストに対応するデータセットをデータベースに記憶するステップと、データベースに記憶された各データセットを所定のクオリティ基準への適合性について分析するステップと、データベースに記憶された各データセットを1つ以上の所定のカテゴリーへカテゴリー分けして、そのカテゴリー分けされたデータセットをデータベースへ返送するステップと、を備えている。この方法は、更に、XLMフィード、RSSフィード、及び種々のソースからの直接的入力を介して1つ以上の顧客サイトからリスティング情報データセットを得るステップも備える。カテゴリー分けオペレーションは、好ましくは、各々の所定のカテゴリーにおける各データセットに対して信頼値を決定し、指定することを含む。この決定は、好ましくは、そしてより詳細には、各得られたデータセットのテキストを、カテゴリー分けデータベースにおける以前にカテゴリー分けされたデータセットのテキストと比較し、そして各々の得られたデータセットに対して各所定のカテゴリーにおける信頼値を決定することを含む。
この開示の方法の好ましい実施形態は、1つ以上の会社の経歴サイト又はジョブボードにおける1つ以上のジョブリスティングからジョブ説明データにアクセスし及び/又はそれをスクレープするオペレーションと、各スクレープしたジョブリスティングに対応するスクレープしたジョブ説明データをデータベースに記憶するオペレーションと、データベースに記憶された各スクレープされたジョブ説明データを所定のクオリティ基準への適合性について分析するオペレーションと、データベースに記憶された各ジョブ説明を1つ以上の所定のジョブカテゴリーにカテゴリー分けするオペレーションと、そのカテゴリー分けされたジョブ説明をデータベースへ返送するオペレーションと、そのカテゴリー分けされたジョブ説明データをデータベースからサーチバンクへ転送するオペレーションと、を備えている。
カテゴリー分けオペレーションは、好ましくは、各スクレープされたジョブ説明のテキストをカテゴリー分けデータベースにおける以前にカテゴリー分けされたジョブ説明テキストと比較するオペレーションと、各スクレープされたジョブ説明に対して各所定のカテゴリーにおける信頼値を決定するオペレーションを含む。更に好ましくは、この方法は、信頼値が手動レビューに対して所定値より低い各カテゴリー分けされスクレープされたジョブ説明にフラグを立て、そして手動レビューインターフェイスを設けて、レビューアがフラグ付けされたカテゴリー分けを検証できるようにすることを含む。
本開示の上述した特徴及び目的は、同じ要素が同じ参照番号で示された添付図面を参照した以下の詳細な説明から明らかとなろう。
本発明の実施形態による「プラットホーム・フォー・アドバンスト・リスティング・マネージメント(PALM)」システム100を使用する例示的システム10の高レベルブロック図が、図1Aに示されている。このシステム10は、インターネット112又は他のネットワークアクセスを経て複数のサイト110からリスティング情報データセットを得、PALMシステム100においてデータセットを処理し、その処理されたデータセットを1つ以上のデータベース12に記憶し、次いで、ユーザ120によりウェブサーバークラスター118を通してアクセスするために1つ以上のサーチバンク109をポピュレートするように設計された分散型ソフトウェアシステムである。
図1Aは、例示的システム10をマクロビューで示している。図1Bは、1つのリスティングマネージャーモジュール104の詳細なブロック図である。図1Cは、PALMタスクマネージャー131の機能を示すブロック図で、各リスティングマネージャーモジュール104内の分散された機能を示す。
PALMプラットホーム100は、コンテンツ取得、分類、クオリティ、性能及び表示のためのビジネスプロセスの自動化及びカスタマイズを容易にするリスティング・ライフサイクル・マネージメント・プラットホームシステムである。図2を参照して以下に詳細に述べる例示的アプリケーション実施形態では、PALMシステム100は、雇用/ジョブサーチ及び就職コンテクストにおいて使用される。しかしながら、PALM100を組み込んだシステム10は、非常に多数のデータセットが含まれる複雑なリスティング機構を管理するのに使用できることを理解されたい。
図1Aに戻ると、システム10は、一般に、リスティング管理システムの全ての潜在的管理機能をシステム100においてモジュール形態に合体させる。従って、システム100は、基本的に、ポータルセクション102、一連のリスティングマネージャー104、及び好ましくは、外部プロセス一体化モジュール160を有する。更に、システム100は、プラットホーム「アプリケーションプログラミングインターフェイス(API)」106、顧客自己サービスポータル107、及びアドミニストレーションインターフェイスポータルAPI108を備えている。基本的に、システム100は、例えば、インターネット112を経て、外部入力サイト110及び他のソースにインターフェイスする。アドミニストレーション操作要員114は、イントラネット116を通してアドミニストレーションポータル108を経てPALMポータル102にアクセスする。又、支払を済ませた顧客117は、PALMシステム100へのアドミニストレーションアクセスが与えられた場合に、インターネット112を通りセルフサービスポータル107を経てPALMポータル102へインターフェイスすることができる。
外部サイト及びソース110から検索されるリスティングデータは、PALM100内で処理される。PALMシステム100は、次いで、1つ以上のサーチバンク109をポピュレートする。サーチバンク109内の情報は、次いで、ユーザ120により問合せされたときにインターネット112を経て表示するために、ウェブサーバークラスター118によりアクセスされる。
PALMシステム100は、アドミニストレーションオペレータ114が、データリスティングを取得し、処理し、表示に利用するのを加速できるようにする。PALMシステム100は、1つ以上のPALM処理マシン又はリスティングマネージャーモジュール104を合体するのが好ましい。又、このシステムは、外部通信、例えば、アドミニストレーションアクセス、制御、検査及びレポート機能、並びにアカウンティング、ファイナンス、セールス、及び顧客情報機能のために、適切なPALMアプリケーションプログラミングインターフェイス(API)108を通して対話する。
PALMポータル102は、PALMシステム100におけるPALMリスティングマネージャー104により遂行されるプロセスにアクセスし、制御し及び質問するのに使用できる多数の機能的モジュールを含む。
ユーザマネージメント、シングルサインオン(Single Sign-on)モジュール122は、全ての許可されたアドミニストレータに対して役割ベースのアクセス制御を与え、ユーザアクセス、許可、及び役割を管理するための「生成、レビュー、更新及び削除(CRUD)」使用ケースをサポートし、スタンドアローン認証、又は通し集中企業認証(シングルサインオンとしても知られている)アクティビティをサポートし、そして承認及びアドミニストレータワークフローを与える。又、このモジュール122は、アドミニストレータがシングルサインオンアクティビティを遂行して、PALMポータル102内で許可された機能にアクセスするのを許す。
ユーザマネージメントモジュールに対するユーザマネージメントユーザインターフェイスの例示的スクリーンショットが図17に示されている。図17には、ユーザアドミニストレーションスクリーン1700が示され、これは、PALMシステム100内の機能を遂行し又は編集することが管理上許可されたことを示す例示的許可ユーザ名1702及びそれらのアクセス許可1704をリストするものである。セルフサービスポータル107を通して入るセルフサービス顧客117のためのユーザインターフェイススクリーンは、相当に制限される。というのは、このような顧客は、システム100内に制限された機能的アクセスしかもたないのが好ましいからである。
エージェント/サイトマネージメントモジュール124は、スクレープにより得たジョブ情報の管理を伴う特定の実施形態について以下に詳細に述べるスクレープエンジンのオペレーションを制御する。このモジュール124は、サイト及びサイト属性、例えば、エージェントがリモートサイトに自動的にアクセスするのに必要なユーザ名及びパスワードを管理するためのCRUD使用ケースをサポートする。又、このモジュールは、エージェント/サイトに対する要求をイネーブルし、ディスエイブルし、承認し、そして拒絶する。これらのサイト属性は、次のものを含む。
シードURL(1つ又は複数)
スロットル速度
頻度
スクレープの好ましい日時
表示/非表示スケジュール
「ホスト」の所与のリスト内に留まるためのエージェントインストラクション
ブラックリストサイト(スクレープされるべきでないもの)
所与のSLD、例えば、<anything>.ibm.com内に留まる
1ホスト離れるまでクロールする(例えば、www.ibm.comは、www.ibm.peopleclick.comへのリンクを有し、従って、peopleclick.comから全リストを得る)
クオリティレビューモジュール126は、オペレータがリスティングのクオリティをレビューし、コンテンツの発行及びエラーをレビューし、そしてリスティングを有効とするか又は無効とするのを許す手動ツールを与える。例えば、有効とするオペレーションは、テスト、ジャンク、及び違反コンテンツリスティングに対する無効化を含む。最終的に、クオリティレビューモジュール126は、図13を参照して以下に述べる自動クオリティレビュータスクのための詳細な手動レビューメカニズムを与える。本質的に、クオリティレビューモジュールは、所定のクオリティ基準を満足しないものとしてフラグが立てられたデータセットをオペレータがデータベースから検索するのを許す。
リスティングライフサイクルモジュール128は、リスティングデータ入力及び出力のオペレーション制御においてPALMシステムのスループットオプション及び性能の微同調及び調整を許す。例えば、このモジュールは、国(Country)、人口統計(DMA)、バーチカル(Vertical)、クオリティ、又は他のパラメータによりリスティングを埋め戻すことができる。例えば、支払済リストに載せられた農業の仕事が僅かしかない国の領域では、ユーザ120に表示される結果が、このようなエリアからスクレープされたリストで補足され、即ち埋め戻されるか、或いはクオリティレベルの決定に基づいて除外されるリスティングでポピュレートされてもよい。従って、このモジュールを使用して、スクレープされた表示情報と支払済表示情報との間の混合スロットルを調整し、スクレープされたリスト及び支払済リストのパーセンテージを、カントリー、DMA又はバーチカルのような種々のパラメータにより変更することができる。これは、支払済リスティング、スクレープされたリスティング及びプレミアムリスティングの統計学的値及び性能を比較する機能を含む。又、これは、リスティングの形式及び属性を管理するためのCRUD使用ケースを与え、そしてコンテンツ/リスティング表示及び満了スケジュールを管理する。
レポートモジュール130は、他の基準の中でも、産業及び人口統計による多数のレポートタスクをサポートする。例えば、このモジュール130は、支払済及びスクレープされたリスティングの経歴的性能の比較を許し、リスティングのクリックの追跡、並びに支払済及びスクレープされたリスティングに対する関心の表現を容易にし、そしてトラフィックの再方向付けを追跡する。又、新たなリスティングの数、支払済及びスクレープされた情報データセットの数も追跡する。最終的に、セールス及びマーケッティングチームは、このツールを使用して、同様のこのようなリスティングの以前の経歴に基づきプレミアムリスティングをアップセールすることができる。産業レポート1600の例示的スクリーンショットが図16に示されている。例示的クオリティマネージャーレポート1400が図14に示されている。
カテゴリーレビューモジュール132は、適当なカテゴリーにおいて自動的に目録化又は分類できないリスティング情報を手動でレビューしそして適切にカテゴリー分けするか又は削除することのできるメカニズムを与える。カテゴリーレビューモジュール132は、求職及びリスティング情報管理の分野におけるPALM100システムの1つの特定の実施形態を参照して以下に詳細に説明する。しかしながら、以下に述べるカテゴリーレビューの原理は、データリスティングが、所定の、動的に決定された基準に基づいて系統的に得られ、レビューされそしてカテゴリー分けされるいかなるシステムにも適用できる。開発されて、本発明の譲受人に譲渡された例示的な自動カテゴリー分け技術が、2004年8月17日に出願された“Automatic Product Categorization”と題する米国特許出願第10/920,588号に説明されている。
サーチバンクシンクロナイザーモジュール154は、浄化されカテゴリー分けされたデータセットをデータベース12から取り出し、それを適切にフォーマットし、次いで、サーチバンク109の適当な1つへコピーをポピュレートする。同様に、支払済サーチバンクシンクロナイザー156は、支払リスティング顧客から発信する浄化されカテゴリー分けされたデータセットを取り出し、そのデータセットをサーチのために適切にフォーマットし、そしてサーチに使用できるコピーでサーチバンク109をポピュレートする。このような支払済リスティングは、データセットがユーザのサーチ基準を満足し、従って、エンドユーザ120へ表示されるときに、ユーザ120に対してより高いレベルの視覚性が与えられるのが好ましい。
コンフィギュレーションジェネレータモジュール158は、システム100により取り扱われるデータの量を分析し、利用可能なPALMリスティングマネージャーモジュール104の各々に対するコンフィギュレーションパラメータを発生し、そして各PALMリスティングマネージャーモジュール104に割り当てられるべきPALMタスクマネージャー/スケジューラーの数及びサイズを決定する。リスティングマネージャーモジュールの利用性、システム100に送り込まれるデータの量、以下に更に説明するスクレープオペレーションの結果、及びアドミニストレーション入力に基づいて、アドミニストレーションオペレータは、システム100におけるデータスループットを最適化し均等化するに必要な情報をコンフィギュレーションマネージャーモジュール158に通知する。
PALMシステム100は、ハードウェアの利用性と、コンフィギュレーションマネージャーモジュール158とによって決定された1ないしnの多数のPALMリスティングマネージャーモジュール104を備えている。PALMリスティングマネージャーの一例が図1Bに示されている。PALMリスティングマネージャーモジュール104は、PALMシステム100の全データベース12におけるデータにアクセスして使用し、このデータベースは、PALMメタデータ記憶装置162、ステージングデータベース164、及びコックド(cooked)データベース166を、PALMシステム100への各入力に関連したローカルデータベースと共に備えている。一般に、アドミニストレーション情報は、メタデータ記憶装置162へ移管される。ステージングデータベース164は、初期データ処理中に使用される一時的データベースである。初期の処理が完了すると、処理されたデータは、コックドデータベース166に記憶される。
各リスティングマネージャーモジュール104は、サイト110及び顧客のセルフサービスブロック117のような外部ソースからシステム100へ送り込まれる各データセットに対して遂行されるべき一連のタスクを管理し且つスケジュールするマスタータスクスケジューラー131を含むのが好ましい。このマスタータスクスケジューラー131により制御されるタスクは、スクレープマネージャーモジュール134、データソースアダプタタスク136、データスプリッタタスク133、データクレンザータスク138、データデ・デューピング(De-duping)タスク139、自動カテゴリー分けエンジンタスク140、ルールベースのクオリティエンジンタスク142、及びビジネスルールタスク144を含むが、これらに限定されない。
スクレープマネージャーモジュール134は、外部サイト110からリスティング情報をスクレープするか又はそれを得るツールの全体的制御及び管理を行う。利用するスクレープツールには、2つの一般的形式がある。即ち、現在のYahoo,Incの子会社であるKelkoo,Incにより最初に開発されたKelkooのような特定サイト向けスクレープツールと、これもYahoo,Incにより開発されたCafe/KelsaスクレープエンジンのようなURLクローラーエンジンである。クローラーエンジンは、シードURLでスタートし、それが遭遇する各々のリンクを通して探し回り、従って、オリジナルアドレスから遥かに移動した位置及び情報へと導くことができる。スクレープマネージャーモジュール134は、マスタータスクスケジューラー131を通して、これらスクレープツールのオペレーションをエージェント/サイトマネージメントモジュール124と整合し、スクレープ及びクロールされるサイトがアクティビティで圧倒されずに、そこに頻繁に訪れて、現在リスティング情報を確実に取り扱えるように保証する。
データソースアダプタタスクモジュール136は、データセットが種々の入力からシステム100へ受け取られたときにローカルデータベースに記憶されている異なるデータソースからのデータを取り出し、そして異なる形式のデータセットを、全て1つの正規化された形式の正規化データセットへと変換する。例えば、データセットは、テキストファイル、XML、HTML又はRSSデータフィードとして、システム100へ送り込むことができる。これら異なる形式のデータセットは、更なる処理の前に正規化されねばならない。データソースアダプタタスクモジュール136は、全てのデータセットが、共通の正規化された形式であるように保証する。
図1Cを参照すれば、各PALMマスタータスクスケジューラー131は、多数のタスクスレッドを幾つかが管理するところの一連のタスクをスケジュールしそして制御する。マスタータスクスケジューラー131は、データクレンザータスクマネージャー138、データデ・デューピングタスクマネージャー139、カテゴリー分けタスクマネージャー140、クオリティエンジンタスクマネージャー142、及びビジネスルールタスクマネージャー144をスケジューリングし、その各々は、タスクのn個のスレッドを管理することができる。
データスプリッタタスク133は、データセットのかたまりを、ほぼ同様の特性の異なるグループへと分割し、同様の属性をもつデータセットが同じタスクシーケンススレッドにより処理されるようにする。このタスク133は、異なるスレッドへのデータセットの指定を決定する。データスプリットタスクは、先ず、利用可能なPALMマスタータスクスケジューラー131の数にコンフィギュレーション変化があるかどうか検出する。変化がある場合には、スクレープファーム及び他のソースからのステージデータが、新たなグループへと再ハッシュされる。変化がない場合には、新たに追加されたデータセットだけが評価される。データスプリットタスク133は、ジョブリスティングの場合には、仕事の肩書き、会社、及び仕事の状態のような所定フィールドのASCIIのハッシュに基づいてリスティングデータを分割する。このハッシュは、特に、((ascii(jobtitle)+ascii(jobcompany)+ascii(jobstate1))%NUM_CK_RUNNERS)であり、ここで、NUM_CK_RUNNERSは、PALMマスタータスクスケジューラー131に使用可能なスレッドの数で、コンフィギュレーションマネージャー158により決定される。データスプリットタスクの機能は、常に同じデータセットを同じ「バケット」へと分割する均一ハッシュ関数を使用して、同じデータレコードが好ましくは同じスレッドにより処理されるようにすることである。
データクレンザータスクマネージャー138は、スレッド161における各データセット又はレコードの検査、及びフォーマット化の除去を制御し、各スクレープされたリスティングにおけるリスティング情報が同じフォーマット及びコンテンツ構造を有するようにする。特に、このタスク138は、データフィールドからの全HTMLタグの剥離、名前の確認を制御し、そしてUS国内のリスティングに対する2文字状態コードのような適当なコードをアドレス及び位置データに入れる。国際リスティングの場合には、適当な国際位置の省略形(州/区域)を入れる。又、このタスクモジュール138における各スレッド161は、各URLのようなデータリスティングにおけるこのようなフィールドのオペレーションチェックを遂行し、それが“http:”又は“https”のいずれかでスタートし、不敬なワードを剥離し、日付フィールドを確認し、各フィールドにおける無効キャラクタ、例えば、都市フィールドにおける全ての数字をチェックするように保証する。最終的に、各スレッド161は、例えば、センテンスの最初の文字が大文字であり、且つ各々の新たなセンテンスをスタートするために2つのスペースがあることを保証する正しい基本的句読点オペレーションを与えるのが好ましい。
データデ・デューピングタスクマネージャー139は、データクレンザーマネージャーモジュール138からデータレコード又はリスティングデータセットを取り上げて、そのデータセットを既存のデータベース164及び166のレコードと比較するマルチスレッド型タスク163を管理し且つスケジューリングして、PALMシステム100が、既に受け取られ、検査されそして記憶されたデータを複製することがないよう保証する。既存のデータベースコンテンツと比較されたときに複製としてフラグの立てられたデータセットは、データベース12から除去される。従って、「複製解除(de-duplicating)」又は「デ・デューピング(de-duping)」という語が使用される。
カテゴリー分けタスクマネージャーモジュール140は、特定のリスティングデータセットが属するカテゴリーを決定するためのオペレーションを自動的に遂行するスレッド165を管理する。例えば、アラバマ州モビールの販売リスティングのための家は、その場所、大きさ、形態、単一家族向けか複数家族向けか、等に基づいてカテゴリー分けされる。ジョブデータセットは、分野、時間、教育、場所、等によりカテゴリー分けすることができる。従って、カテゴリー分けエンジンタスクマネージャー140は、当該リスティングデータセットを所定のカテゴリーに基づいて自動的にカテゴリー分けするのに必要なオペレーションを制御し管理する。このタスクマネージャー140は、マルチスレッド型であり、カテゴリー決定のn個までのインスタンス165を同時に整合する。このカテゴリー分けタスクは、決定されたカテゴリーに対して信頼レベルの決定も含むのが好ましい。例示的なカテゴリー分け技術が、2004年8月17日に出願された米国特許出願第10/920,588号、及びそこに述べられた関連出願に開示されており、これらは、全て、Yahoo,Incに譲渡されたものである。
ルールベースのクオリティエンジンタスクマネージャー142は、データセットがある基準を満足し且つある最小レベルの詳細情報を含むよう確保するために、各リスティングデータセットを子細に検査するところの一連のルールを与える。このような基準は、例えば、家の不動産リスティングのためのストリートアドレス、又はジョブリスティングのための仕事の肩書き、又はこのような実施に対する都市の場所を含むことができる。このモジュール142の1つの実施形態は、システム100の求職実施形態を参照して以下に詳細に説明する。クオリティエンジンタスクマネージャー142は、2つの基本的なスレッドシーケンス、即ちURLリンクチェックスレッド167、及びこれに続くデータ確認スレッド169をスケジューリングする。これらのチェック167及び169は、URLが実際に現在有効なURLであることを検証し、そしてデータベースレコードワードと、URLからダウンロードされたウェブページとの間のワードマッチングルーチンも遂行して、リスティング説明がマッチするよう保証する。データ確認スレッド169は、データセットからワードをランダムに選択し、それらを、ダウンロードされたウェブページに対してマッチさせ、そしてそれらに5個より多くのキャラクタを有するワードを選択するのが好ましい。データセットが、ダウンロードされたウェブページにマッチしない場合には、エラーフラグがセットされる。このタスクのより詳細な例は、図13を参照し、PALMシステム100の求職実施形態に関して以下に説明する。
ビジネスルールタスクモジュール144は、たとえデータが以前にクロールされていても、リスティングを表示するか又は表示しないための判別ルールを適用し、リスティングをフィルタリングし、産業の場所に基づいて部分的リスティングを示し、又はサイトのデータを表示に対して完全に阻止するための能力をビジネスに与える。例えば、ボストンエリアでの求職用途では、所定時間周期中にヘルス産業に対するスクレープ又はクロールされたデータの10%の表示しか選択しないことがある。新しいリスティングが到着すると、ビジネスルールエンジンは、全体的なデータセットを通して進み、そして予め定義されたルールに基づいて全てのリスティングを取り除くか又はマークする。
PALMシステム100の前記説明から、このシステムは、拡張可能で、マルチスレッド型で、且つ分散的であり、複数のモジュール104のようなモジュールの機能を、ここに述べる機能を遂行するように適当に作動的に一緒に接続されたコンピューティングマシンの異なる組み合せで実行できることが明らかであろう。
本発明の実施形態に基づいて図1A−1Cに示されたPALMシステム100の一実施形態を組み込んだ求職システム200の全体的アーキテクチャーが図2に示されている。このシステム200は、3つのセクション、即ち外部入力セクション201、データ取り扱いセクション203、及び出力取り扱いセクション205を有すると考えることができる。基本的に、データ取り扱いセクションは、ジョブデータのための外部入力セクション201に到達し、データを処理し、データを編成しそしてその有効性を確認しジョブデータをカテゴリー分けし、そしてデータを出力セクションへ与え、出力セクションは、最終的に求職者207によりインターネット112を経てアクセスされる。
外部入力セクション201は、企業及び会社の経歴サイト及び多数の他のジョブボード202のようなソースからデータ取り扱いセクションによりアクセスすることのできる仕事の部署を含む。これらの企業経歴サイト及びジョブボード202は、現在、数千の会社の経歴サイトより成る。又、雇用主/募集係204は、インターネット112を経て雇用主/募集係インターフェイスアプリケーション206へジョブリスティング情報を直接与えることができる。このような応募係インターフェイスアプリケーションは、ジョブ情報を入力すると共に個々のリスティングを適切なフォーマットでデータ取り扱いセクション203へ提示するためのユーザインターフェイススクリーンを雇用主/募集係に与える。
システムゲートウェイ/フィード208は、顧客サイト210と通信し、そして顧客サイト210がこの目的のために以前に記憶したジョブ情報を予め定義されたフォーマットでプルする。ゲートウェイ/フィード208は、顧客サイトが情報を提示するのを許し、そしてシステム200のデータ取り扱いセクション203にシステムフィードを与える。或いは、顧客サイトは、ウェブサービス212を通してジョブ情報を利用できるようにする。ここで、システム200は、シンプルオブジェクトアクセスプロトコル(SOAP)を経て顧客サイト210にアクセスし、ジョブリスティング情報を得る。顧客サイトからジョブ情報を得る別の経路は、RSS214を通るものである。“Really simple Syndication”の省略形であるRSSは、ニュース、ブログ、製品データ、及び多数の他の形式のウェブコンテンツを共有するように設計された軽量のXMLフォーマットである。RSSは、BBC、Yahoo、CNET、CNN、Disney、Forbes、Motley Fool、Wired、Red Herring、及び更に多数を含むサイト間でコンテンツを共有する人気のある手段へ進化した。又、ジョブ情報は、顧客サイト210から直接的XMLフィード216を通りインターネット112を経て得ることもできる。
又、スクレープエンジンファーム218も、データ取り扱いセクション203に入力を与える。このスクレープエンジンファーム218は、設計選択上の事柄として開発されるが、好ましくは、インターネット112のようなグローバルな電子ネットワークを経てサーチするためにこの好ましい実施形態に特に向けられる異なるスクレープ技術及び方法を通常使用する多数のスクレープエンジン220を有し、各エンジン220は、特定形式のスクレープタスク、又は特定形式又はセットの企業サイトに対して最適化される。例えば、現在は、Yahoo,Incの子会社であるヨーロッパのKelkoo,Incにより開発されたKelkooスクレープエンジンは、所定の既知の企業サイト又はリスティングサイトを完全に探し回るように最適化される。Kelkooのスクレープエンジンは、サイト内の内部リンクを特定の内部位置までたどり、ジョブ情報データセットを抽出するように最適化される。しかしながら、外部リンクはたどらない。Yahoo,Incにより開発され、そして2005年2月22に出願された“Techniques for Crawling Dynamic Web Content”と題する米国特許出願第11/064,278号に開示されたCafe/Kelsaスクレープエンジンファームは、シードURLを系統的に検査し、サイト内の各リンクをたどり、そしてそのURLに設けられる各内部及び外部リンクと、その「クロール」の際に見出すリンクとをたどるように最適化される。
入力セクション201は、これらの種々のソースからデータをフィードし、そしてバス224を経て全データベース12の一部分であるステージングデータベース222へフィードする。ステージングデータベース222は、次いで、データ取り扱いセクション203において、プラットホーム・フォー・アドバンスト・リスティング・マネージメント(PALM)システム100によりアクセスされる。又、PALMシステム100は、このマネージメントシステム100に入力を与える多数のモジュールを有する。例えば、顧客関係マネージャー(CRM)モジュール226及び他の外部アプリケーションモジュール228は、情報を与えると共に、PALMシステム100内で独特に利用できるレポート及び他の情報を抽出することができる。又、プロジェクトマネージメント、オペレーション、セールス、及びマーケッティング要員230も、以下に詳細に述べるように、イントラネット232を経てPALMシステム100へ入力を与え、そしてそれを制御することができる。
データ出力セクション205は、ジョブサーチウェブサーバー/クライアントクラスター248と、このクラスター248に対する多数のデータソースモジュールとを備えている。スクレープサーチバンク246は、これらの1つである。広告システムのプレミアムリスティングモジュール250、支払済サーチバンク252、オーバーチュア(overture)システムコンテンツマッチングモジュール254、及びリンクビルダーモジュール256は、ジョブサーチウェブサーバー/クライアントクラスター248により問合せされる。
広告システムのプレミアムリスティングモジュール250は、クラスター248を編成し、そしてそれに、システム200のホストとの支払済プレミアムアカウントをもつ特定の雇用主又は募集係からの広告を与える。これらのプレミアム広告は、求職者に、特殊なボックス、バナー、ハイライト状態で表示されるか、さもなければ、特定のサーチ要求に応答して求職者207に提示される他のリスティングからセットオフされて表示される。
支払済サーチバンクモジュール252は、システム200のホストへ料金を支払う際に雇用主メンバー260がアクセスするところの特殊なサーチバンクである。この支払済サーチバンクモジュール252は、料金を支払う仕事応募係雇用主又は会社からのジョブリスティングを識別し、記憶し、そして追跡して、それらの配属ジョブリスティングが、求職者207に提示されるユーザインターフェイスにおいてより高い又は強調された配置を受け入れるよう保証する。従って、支払済の部署は、メンバー会社によりメンバーデスクトップ262又はゲートウェイ264を経てサーチバンク252へ直接的に与えられる。支払済サーチバンク252は、ユーザにより与えられる幾つかの望ましいサーチカテゴリーに関連してリスティングをプッシュするために、ここに述べるシステム200のオペレータにプレミアムを支払ったジョブリスティングエンティティにより与えられる情報を含み、従って、このようなサーチ結果は、プレミアム支払と引き換えにユーザインターフェイス406を経てユーザに対して目立つ位置に与えられる。
オーバーチュアシステムのコンテンツマッチングモジュール254は、求職者のサーチ基準にマッチする広告がデータベースにあるかどうか問合せする。これらの広告は、システム200のホスト200により使用するために支払済データベースに予め記憶されるか又はリンクされる。このような広告は、図4に示すサーチ結果ユーザインターフェイススクリーンショットに示されている。
リンクビルダーモジュール256は、求職者207により与えられたサーチ用語にマッチするジョブの他のソースへリンクするためのリンケージクッキー及びアドレスを与える。あるインスタンスでは、ジョブ説明を見るために、求職者は、特定のウェブサイトに通されてリスティングを見なければならない。このような環境では、サイトは、ジョブ情報が見られる前に、クッキー等の特定のセキュリティエレメントを必要とする。従って、リンクビルダーモジュール256は、サイトが特定のクッキー又は他の識別子を必要とする場合に、必要なインターフェイス特性を与える。リンクビルダーモジュール256は、サイトにより要求される必要な情報、例えば、ジョブリスティングにアクセスするためのセッションクッキーを含むURLを構築するプロセスを管理する。リンクビルダーモジュール256の結果は、自分のサーチ要求からの関心のある特定のジョブに加えて、求職者207に与えられる。
図4を続けて参照すれば、ウェブサーバークラスター248は、ここに述べるシステム200を使用したい求職者207へのゲートウェイインターフェイスとして働く。求職者207は、システム200におけるサーチ要求を開始するために、図3に示すものと同様のユーザインターフェイスが提示されるのが好ましい。クラスター248は、次いで、システムサーチバンク252、254、246及び250から情報を得るようにサーチし、そしてそれを、図4に例示する結果インターフェイスのように、問合せしている求職者207に、使い易く且つ効率的な仕方で、提示する。
図3に示すユーザインターフェイス300にサーチ要求302を入力する求職者207は、サーバークラスター248とインターフェイスし、これは、次いで、図4に示すように、集計結果を求職者207に提示する。従って、ユーザは、以下に述べるように、広告システムのプレミアムリスティングモジュール250、ジョブサーチバンク252、バンク254、250、246により識別されたリスティング、及びバンク256からのクロールされたジョブが与えられることで、プレミアムリスティングを見る。
図4を参照すれば、ユーザ問合せ結果インターフェイス400の例示的スクリーンショットが示されている。このユーザインターフェイス400は、求職者に、その問合せにマッチする全てのジョブ情報をレビューする機会を与える。更に、求職者が、異なる又はより洗練された問合せを提出するのを許す。表示部分402は、特定のサーチ基準にマッチする全てのジョブ情報、例えば、図4では、イリノイ州のソフトウェア開発者の勤め口、を再検討する機会をユーザに与える。求職者は、ソフトウェア開発者の勤め口に対するサーチ結果として得られる全てのジョブ情報を再検討してもよいし、或いは過去の24時間、7日又は他の予め選択された時間周期に更新された説明だけを再検討してもよい。又、求職者は、自分のサーチを、経験レベル、場所、或いはジョブ説明内の他の特性又はサブカテゴリーにより構成してもよい。
又、インターフェイス400は、多数の好ましい結果グループにより分離された結果セグメントも表示する。従って、システム200は、広告システムプレミアムリスティングモジュール250から得られたプレミアムリスティング404のセグメントを提示し、これは、ビジネスを追求している雇用主がプレミアムを支払って、それらのジョブリスティングが、求職者207に提示されるユーザインターフェイス400の結果部分においてより目立つ位置を得るための機会を与えることにより、システム200のホストがシステム200を収益向上ツールとして使用するのを許す。
又、ユーザインターフェイス400は、支払済ジョブサーチバンク252からのサーチの結果を提示する第2のサブセクション406も含むのが好ましい。又、第3のサブセクション408は、スクレープされたサーチバンク246をサーチする直接的な結果である非プレミアムアルゴリズムサーチ結果を提示する。第4のセクション410は、オーバーチュアシステムコンテンツマッチングモジュール254から、より一般的な支払済リンクを与える。最終的に、広告システムプレミアムリスティングモジュール250のサーチから多数の広告409を表示することができる。
スクレーピングは、図15に示す次のコンポーネントを含む。即ち、Kelkooスニファー220、ジョブに対してウェブサイト202をスクレープするための一連のエージェント1502、好ましくは、スクレープされたジョブ及びエージェントログを記憶するためのステージングデータベース222のようなMySQLデータベース、及びエージェント1502を起動するためにPALMシステム100のエージェント/サイトマネージメントモジュール124により管理されるランナースクリプト1504。
どのようにデータが好ましくはシステム200のスクレーピングファーム220を通して流れるかの概要を以下に述べる。スクレーピングサイクルの始めに、全データベース12の別の部分であるコックドデータベース236における“job_current”テーブル626が裁断され、そのコンテンツがアーカイブテーブル(図示せず)へコピーされる。スクレープされたジョブのアーカイブは、限定された周期(例えば、7日)中にのみ記憶されるのが好ましい。
スクレーピングエンジン220のKelkoo「スニファー(Sniffer)」は、アダプタ(a.k.a.エージェント1502)を起動するのに使用されるJava(R)プログラムである。スクレーピングエンジン220は、エージェント1502を経てジョブボード202をスクレープする。各エージェント1502は、3つのテキストファイル、即ちagent.info、agent.props、及びagent.sql、より成るのが好ましい。単一のエージェントを使用して、単一のウェブサイトをスクレープする。エージェントファイルは、エージェント特有のディレクトリに記憶される。次いで、エージェント1502は、スクレープされたジョブを「ジョブ」テーブル1506にダンプし(多数のジョブテーブルがあることに注意されたい)、その2つが図15に示されている。ランナー(Runner)1504は、ジョブレコードを「ジョブ」テーブル1506から“job_current”テーブル626へコピーする。ランナー1504の下流のコンポーネント、例えば、クオリティマネージャーモジュール142、及びカテゴリー分けモジュール132、140は、ジョブレコードのコピーを受け取り、そして好ましくはコックドデータベース236の一部分である“job_current”テーブル626内のレコードについてクオリティマネージメント及びカテゴリー分けオペレーションを遂行する。その結果は、次いで、図2に示すコックドデータベース236へ通される。
Kelkooスニファーサーチエンジン220は、エージェント1502をバーチャルSQLテーブルとして考える。バーチャルテーブルのスキーマは、エージェントのsqlファイルにおいて定義される。infoファイルは、スニファーサーチエンジン220が実行するバーチャルテーブルに対するSELECTステートメントである。プロップファイルは、バーチャルテーブルを埋めるのに使用されるスクレーピングロジックを含む。このスクレーピングロジックは、種々のフィルタにより実行される一連のステップである。フィルタは、アダプタデベロープメントキット(ADK)を作り上げるJava(R)クラスである。フィルタは、順次に実行され、そして変数を読み取り共通のコンテクストに書き込むことができる。htmlページにおいてストリング又はパターンを見出してセーブし、コンテクストの変数を操作し、再発生パターンをループにして、ループ内で他のフィルタを実行し、URLで識別されたページへ進んでそのコンテンツを検索し、等々を行なうためのフィルタが存在する。
エージェント1502の出力は、各々のスクレープされたジョブに対するSQL INSERTステートメントを含むテキストファイルである。スニファーサーチエンジン220は、このデータファイルを使用して、スクレープされたジョブレコードを、「ジョブ」と称されるMySQLテーブル(実際のテーブル名は、コンフィギュレーションパラメータである)1506へロードする。スニファー220は、種々のコマンドラインパラメータと、コマンドライン上に通される任意の数のプロパティファイルを経て、構成される。スニファーサーチエンジン220の最も重要なコンフィギュレーションパラメータは、MySQLデータベースの名前、データベースユーザ及びパスワード、スクレープされたレコードをダンプするためのテーブルの名前、エージェント要求ファイルへの経路、及びエージェント1502を含むディレクトリである。
スニファーサーチエンジン220は、一度に1つのエージェント1502をロードして実行する単一スレッド型であるのが好ましい。エージェント1502を実行した後、スニファーサーチエンジン220は、「レポート」テーブル1508へレコードを次の情報と共に挿入する。即ち、実行の時間、エージェント1502の名前及び経路、スクレープされたレコード(ジョブ)の数、及び考えられるエラー。
エージェントファイルは、CVSレポジトリーに記憶される。QAを通したエージェント1502のバージョンは、特殊なCVSタグでタグ付けされる。この構成は、エージェント開発者、テスト装置、及び生産システムが同じツリーに対して機能して、生産中の未テストエージェントの実行を回避できるようにする。
エージェントランナー1504は、システム200に対して開発されたパール(Perl)スクリプトである。ランナー1504は、ローカルファイルシステムにおいてエージェントファイルを利用できることを要求する。ランナー1504がスタートする前に、ローカルCVSツリーは、実行しなければならない全てのエージェントファイルをダウンロードするために生産タグに対して同期される。ランナー1504は、次のステップを実行する。
1.そのコンフィギュレーションファイルを読み取る。これは、実行すべきエージェント1502のリストを含む。各ランナーは、コンフィギュレーションの一部分として通されるidを有する。
2.スニファー220のためのコンフィギュレーションファイルを、それ自身のコンフィギュレーションに基づいて発生する。
3.実行されるべきエージェント1502に属する“job_current”テーブル626から全てのレコードを削除する(好ましくは、“job_current”テーブル626は毎日裁断されるので、これは、ほとんどの場合、不必要である)。
4.エージェント1502を実行するスニファーサーチエンジン220を起動する。
5.ジョブ説明をhtmlタグから剥離するようにジョブタグ内の各レコードを処理するのが好ましい。各ランナーは、それ「自身」のジョブテーブル1506を有し、ランナーid(例えば、“job 1”)を使用してその名前が生成される。
6.ジョブテーブル1506から“job_current”テーブル626へ全てのレコードをダンプする。ジョブレコードは、ランナーの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へのスループットを制御し、管理する。好ましくは、1日に一度、又は他の所定のインターバルに一度、1つ以上のPALMリスティングマネージャー104は、ステージングデータベース222のデータにアクセスし、そのデータを処理し、そして出力セクション205のサーチバンク246及び252を更新するように命令される。膨大な量のデータを処理しなければならないので、PALMシステム100は、通常、ステージングデータベース222からのデータで相対的に独立して各々動作する多数のPALMリスティングマネージャー104を含む。
システム100は、多数のPALMリスティングマネージャーモジュール104を組み込むことができ、それらは、全て、本質的に独立して並列に動作し、その各々は、最初にデータ分割タスクにおいてその特定マネージャーのランナー番号に指定されるデータに対して作用する。PALMリスティングマネージャー104は、コンフィギュレーションジェネレータ158からコンフィギュレーション情報を受け取る。コンフィギュレーションジェネレータ158は、システム200の利用可能なPALMリスティングマネージャー104にランナー番号を指定する。
各PALMリスティングマネージャー104は、好ましくは全分散型データベース12の一部分であるPALMメタデータデータベース238からメタデータを受け取りそしてそこにメタデータを記憶する。このデータベース12は、図18に示すように共有されるのが好ましい。例えば、マシン1のPALMリスティングマネージャー104は、例えば、ステージングデータベース222から入力1802を取り出し、タスクAを実行し、そしてタスク出力1804を発生する。このタスクAの出力1804は、例えば、タスクBに入力される(1804)。同時に、タスクAの出力1804は、ステージングデータベース222に一時的に記憶される。タスクBの出力1808も、ステージングデータベース222又はメタデータデータベース238に適宜一時的に記憶され、他のPALMリスティングマネージャー104の1つ、この例では、マシン2により使用される。マシン2は、その必要な入力1808を、それがステージングデータベース222において得られない場合は、メタデータデータベース238から必要に応じてプルし、タスクCを遂行する。タスクCの出力1812も、同様に、別のリスティングマネージャーのタスクに使用するために、データベース222又は238に記憶して戻すことができる。一時的な映像データに対してこの機構を使用することにより、多数の動作中のPALMリスティングマネージャー104は、それらのタスクを完了するために、他のリスティングマネージャー104に対して必ずしもインラインで待機する必要はない。このように、全体的な処理スループットが向上される。
システム200におけるPALMシステム100の各PALMリスティングマネージャー104は、インターネット112を通してアクセスされる種々のサイトからスクレープされるデータ、並びに顧客サイト210及び他のソースからRSSフィード214、XMLフィード216、ウェブサービスSOAP212、及び/又は雇用主/募集係アプリケーション206を経て得られるジョブ情報データセットに対して動作するようにタスクのスタックを制御するマスタータスクスケジューラー131を有する。雇用リスティング及びジョブサーチアプリケーションに関して図2に示す実施形態では、これらリスティングデータセットの各々は、どこから得られようと、最初にステージングデータベース222に記憶される。PALMシステム100は、ステージングデータベース222のデータに対して動作し、それを、中間PALMメタデータ記憶装置238を使用して、コック(cooked)、浄化(cleansed)及びカテゴリー分けデータベース236へ通過させる。ジョブリスティングデータセットがコックされると、データセットは、出力セクション205へ通され、特に、サーチバンク246及び252をポピュレートする。
PALMマスタータスクスケジューラー131により各々制御されるn個のPALMリスティングマネージャー104の各々における基本的プロセスフローオペレーションが図5に示されている。オペレーションフローは、初期化オペレーション502で始まり、ここで、PALMシステム100は、所定のスケジュールに基づいてその処理サイクルを開始する。第1に、PALMシステム100は、どのリスティングマネージャー104がどんなタスクを取り扱うか決定する。
特定のPALMリスティングマネージャー104が、データセットのかたまり又はバッチを取り扱うようにコンフィギュレーションマネージャー158により指定されると、PALMマスタータスクスケジューラー131は、オペレーション504ないし510を制御する。次いで、各個々のタスクマネージャー138、139、140、142及び144は、オペレーション512−528を参照して以下に述べるように、ステージングデータベース222において並列スレッドでデータセットを処理する。
制御がオペレーション504へ移行し、ステージングデータベース222内のデータセットを、利用可能なPALMタスクスレッドへ割り当てることを開始する。これは、データスプリッタータスクモジュール133において管理され遂行されるデータスプリットタスクである。このデータスプリットタスク133の出力データは、オペレーション508において、指定の対応PALMタスクスレッドのランナー番号と共に、ステージングデータベースへ返送される。
データスプリットタスク133は、先ず、コンフィギュレーションジェネレータ158により決定される利用可能なPALMタスクスレッド1−nの数にコンフィギュレーション変化があるかどうか検出する。変化がある場合には、スクレーピングファーム及び他のソースからのステージデータが新たなグループへと再ハッシュされる。変化がない場合には、新たに追加されるデータセットのみが評価される。データスプリットタスクは、リスティングデータセットを、仕事の肩書き、会社、及び仕事の状態フィールドのASCIIのハッシュに基づいて、リスティングデータセットを分割する。このハッシュは、特に、((ascii(jobtitle)+ascii(jobcompany)+ascii(jobstate1))%NUM_CK_RUNNERS)であり、ここで、NUM_CK_RUNNERSは、コンフィギュレーションマネージャー158により決定される使用可能なPALMスレッドの数である。データスプリットタスクの機能は、常に同じジョブを同じ「バケット」へと分割する均一ハッシュ関数を使用して、例えば、ジョブリスティングのような同じデータレコードが同じスレッドにより処理されるようにすることである。
次いで、制御は、問合せオペレーション510へ移行する。この問合せオペレーション510では、PALMタスクスレッドが指定されていない別のエントリーがステージングデータベース222にあるかどうかの問合せがなされる。その答えがイエスの場合には、制御がオペレーション504へ戻り、次のリスティングデータセットがステージングデータベースから検索されて、検査される。その答えがノーの場合には、分割されるべきデータセットがそれ以上なく、制御は、オペレーション512へ移行する。
オペレーション512ないし528は、特定のPALMリスティングマネージャー104において指定されたスレッドに対応するランナーIDを有する各データセットに対し、各PALMタスクマネージャーにより、好ましくは並列に、遂行されるのが好ましい。
オペレーション512において、マスタータスクスケジューラー131は、第1のステージングデータベースエントリーをそのランナーID番号でプルし、そしてデータクレンザータスクマネージャー138により管理されるデータ浄化タスクを遂行する。データクレンザータスクマネージャー138のスレッドは、ステージングデータベース222から完全なデータレコードをプルし、そして全てのフォーマットを除去して、各ジョブリスティングデータセットが同じフォーマット及びコンテンツ構造であるようにする。より詳細には、タスクは、データフィールドから全てのHTMLタグを剥離し、米国の州名を確認し、そして2文字の州コードを入れる。国際リスティングの場合、適当な国際的場所の省略形(州/区域)を入れる。浄化タスクスレッドは、URLをチェックし、それが“http:”又は“https”のいずれかでスタートすることを保証する。次いで、このタスクは、全ての不敬なワードを剥離し、日付フィールドを確認し、各フィールドにおける無効キャラクタ、例えば、都市フィールドにおける全ての数字をチェックする。又、このタスクは、フィールドにおける最大ワード数もチェックする。例えば、都市名は、15ワードをもつことができない。又、国名を3文字の国コードフォーマットで入れ、仕事の肩書き、説明等のフィールドにおけるスペルを修正する。最終的に、例えば、センテンスの最初の文字が大文字であり、各々の新たなセンテンスをスタートするために2つのスペースがあるといった正しい基本的な句読法を与える。
データクレンザータスクスレッドが、あるスレッドにおけるジョブリスティングデータセットに対して遂行されると、オペレーション514において、ステージングデータベース222へリスティングが返送される。次いで、制御は、問合せオペレーション516へ移行する。問合せオペレーション516では、PALMマスタータスクスケジューラー131のランナーIDに伴う別のデータセットがあるかどうかの質問がなされる。もしそうであれば、制御は、オペレーション512へ戻り、次のデータセットが検索されて浄化される。もしそうでなければ、制御はオペレーション518へ移行する。
オペレーション518において、データセットがステージングデータベース222から検索され、そしてデ・デューピングモジュール139におけるリスティングレベルのデ・デューピングタスク1200へ送信される。リスティングレベルのデ・デューピングタスクが図12に示されている。次のステージングテーブル、コックドデータテーブル、及びデ・デュープドテーブルに、テーブルエントリーのセットを例示する。
Figure 2008537811
ステージングテーブル1
Figure 2008537811
コックドテーブル2
Figure 2008537811
コックドテーブル3
第1に、デ・デューピングタスク1200は、コックドデータテーブル2においてステージングテーブル1の行1を探す。これは、そこにある。それ故、行1は、無視される。ステージングテーブルの行2は、次いで、コックドデータベースと比較され、そこにあるかどうか調べる。これはない。それ故、コックドデータテーブル2の行2がデ・デュープドコックドデータテーブル3に追加される。次いで、ステージングデータベースにおける各エントリーに対して同じプロセスが繰り返される。無視するか又は追加するこのプロセスが完了すると、ランナー番号2に関連したコックドデータテーブル2の行がステージングテーブル1と比較され、コックドデータベーステーブル2にないランナー2の行がステージングデータベースにあるかどうか決定する。この例では、コックドテーブル2の第3エントリーがステージングテーブル1にない。それ故、このエントリー、即ちジェネラルマネージャーの行は、削除される。その結果、デ・デュープドコックドデータベースが再生され、1日に一度検証されるか、又はシステムアドミニストレータによって定義された周期に一度検証される。
デ・デューピングタスクプロセスのより一般的な図が、図12に示されている。プロセス1200は、ステージングデータベースに記憶されたスレッドランナーIDを有するデータセットに対してデータスプリットタスク及び浄化タスクが完了したときにコールされる。制御はオペレーション1202において開始され、ここでは、デ・デューピングモジュール139の初期化が完了する。次いで、制御は、オペレーション1204へ移行し、ここでは、ステージングデータベース222の第1行が検索され、そしてコックドデータベース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は、1秒以内にジョブをカテゴリー分けすることができる。これは、人間のカテゴライザーより実質的に高速であり、且つ一貫したものである。
このジョブカテゴリー分けシステム600は、多数のモジュールを含む。即ち、実際のカテゴリー分けルーチンを実行するジョブカテゴリー分け(Job Cat)サービスモジュール602を含む。図1に示されたジョブカテゴリー分けエンジンモジュール140は、コックドデータベース236のJob_currentテーブル626と、手動カテゴリーデータベース628と、ジョブカテゴリー(Cat)サービスモジュール602との間の通信を管理する。カテゴリーレビューモジュール132により遂行されるカテゴリー分けトレーニングプロセス606は、Job Catサービス602の精度レベルを向上させ及び/又は維持するために使用される。このカテゴリー分けトレーニングプロセス606は、ジョブカテゴリー分け手動レビューインターフェイスモジュール132と、図1Aに示すイントラネット116を経てアクセスできるカテゴリー分け専門家との使用を含む。
上述したように、スクレープされたジョブは、浄化されそしてデ・デュープされると、コックドデータベース236のMySQLJob_currentテーブル626に追加される。ジョブカテゴリー分けプロセス600は、Job_currentテーブル626から各ジョブを取り出し、ジョブカテゴリー分け制御プロセスモジュール622を通してJob Catサービスモジュール602へ送信し、カテゴリー及び信頼指定を得る。次いで、スクレープされたジョブは、カテゴリー分け制御プロセスモジュール622へ送り返され、そしてJob_currentテーブル626へ返送される。しかしながら、ジョブが所定の信頼スレッシュホールドより下がった場合には、フラグが立てられ、即ちフラグがセットされ、そしてそれがカテゴリー分け制御プロセスモジュール622を通過するときには、手動レビューインターフェイスモジュール132を経て手動レビューするためにman_catデータベース628にもコピーが送信される。レビューモジュール132で遂行される手動レビュープロセスの結果は、次いで、カテゴリー分けトレーニングプロセス606により使用されて、新たなJob Catサービス値を、古い値に取って代わるように同調させる。分類の結果は、Job_currentテーブル626に書き戻され、時には、man_catテーブル628に書き戻される。手動レビューモジュール132は、Job_currentテーブル及びman_catテーブルの両方のジョブをレビューするためのUIを与える。
図7は、ジョブカテゴリー分けプロセス600を実施する動作フロー図である。このプロセスは、オペレーション702において、一連のジョブスクレーピングが遂行されたときに始まる。制御は、オペレーション704へ移行する。オペレーション704において、次のジョブに対するジョブ属性がJob_currentテーブル626から検索され、そしてジョブ説明が適切にフォーマットされる。次いで、ジョブ属性がJob Catサービス602へ転送され、適切なカテゴリーが見出される。次いで、制御はオペレーション706へ移行し、そこで、ジョブカテゴリー及びそのカテゴリーに対する信頼レベルがジョブと対にされる。次いで、制御は問合せオペレーション708へ移行する。
問合せオペレーション708は、最新の特定ジョブ説明に対して、マッチするURLがman_catテーブルに存在するかどうか尋ねる。もしあれば、制御はオペレーション710へ移行する。もしなければ、ジョブは新たなジョブであり、制御は、オペレーション716へ移行する。
オペレーション710では、同じURLで最後のジョブに対してストリング比較ルーチンが遂行される。次いで、制御は、問合せオペレーション712へ移行する。この問合せオペレーション712は、man_catテーブル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がman_catテーブルに存在しない場合には、制御がオペレーション716へ移行する。オペレーション716では、Dcp_cat及びdcp_confidenceがセットされ、信頼値が所定のスレッシュホールドに対してチェックされ、そしてスレッシュホールドが信頼値より大きい場合には、review_flagが1にセットされる。次いで、ジョブパラメータがJob_currentテーブル626へ通され、この場合も、制御は問合せオペレーション718へ進む。
問合せオペレーション714へ戻ると、現在ジョブがman_catテーブル628にURLを有する場合には、ジョブは、同じURLでの最後のジョブと同じであるが、最新のジョブのdcp_cat及びan_catはマッチせず、何かが間違っているか欠落しており、そしてジョブパラメータがオペレーション724及び726の両方へ通される。オペレーション724は、dcp_cat、dcp_confidence値をセットし、expert_reviewフラグ=1にセットし、そしてこのデータをJob_currentテーブル626へフィードする。オペレーション726は、expert_reviewフラグ=1にセットし、このジョブパラメータのコピーをman_catテーブル628へ送信し、手動レビューが遂行されるようにする。並列に、制御は、ここでも、上述したように、問合せオペレーション718へ進む。
従って、各ジョブに対して、ジョブカテゴリー分け制御プロセスは、Job_currentテーブルからジョブ属性を取り上げ、それらをフォーマットし、それらをJob Catサービス(Apache、メソッド=POSTと称される良く知られたパブリックドメインルーチンにより管理される)へと送信し、カテゴリー及び信頼スコアを取り戻し、判断質問のチェーンを通して進み、そして結果をテーブルに書き戻す。
又、Job Catサービス602は、アドミニストレータ及びシステムオペレータがジョブ(少なくともジョブ説明)をタイプ入力し、そしてシステム100の通常のオペレーションとは別にカテゴリー分けのためにJob Catサービスへジョブを提示するのを許すウェブUIも与える。このような例示的ユーザインターフェイス800が図8に示されている。
Job Catサービスモジュール602は、図6に示すトレーニングプロセス606をホストするための良く知られたウェブサーバーであるApacheに依存する。このJob Catサービス602は、PHP拡張の共有ライブラリーであり且つカテゴリー分けライブラリーも含むバイナリーパケットを包含する。Job Catサービス602を構築するには、先ず、ジョブカテゴリーの1組の基本的な定義、即ち分類学608、及びそれに関連した独特のID番号を必要とする。例示的な1組を以下のテーブル1に示す。
テーブル1
Figure 2008537811
トレーニングジョブ説明、即ちトレーニングデータ610の例示的テーブルが、テーブル1の各カテゴリーに関連付けされる。この1組の説明と、man_catテーブル628のコンテンツとを使用して、予め分類された与えられたジョブ説明パラメータからの分類を確認するサービスを教示する。このテーブルの一例を、以下のテーブル2に示す。
テーブル2
Figure 2008537811
新たなトレーニングセッションについては、このテーブルからのジョブと、man_catテーブルのジョブの両方を使用するのが好ましい。手動でレビューされるジョブが益々利用できるようになるにつれて、リードオンリデータベースからオリジナルトレーニングセットを最終的にドロップさせるのが好ましい。
好ましい実施形態では、このテーブル2及びman_catテーブルの列が相違し、この相違が保持されると共に、トレーニングファイルを生成するスクリプトが全ての必要なマッピングを行う。トレーニングプロセス606は、多数のPEARLスクリプトより成る。“create-training-file.pl”スクリプトは、man_catテーブル628及びトレーニングデータテーブル610の両方からジョブを取り出し、そして全てのジョブを含むファイルをDCP受け容れフォーマットで書き出して、合併トレーニングデータ612を発生する。“train-hj-dcp.pl”スクリプトを使用して、分類のために最も有用なパラメータの幾つかを同調させる。ここに特定する各コンフィギュレーションは、Job Catサービスデータパッケージ及びログファイルを構築するのに必要な全パラメータを含む出力ディレクトリを残す。“parse-training-log.pl”スクリプトは、“train-hj-dcp.pl”スクリプトにより生成されたログファイルの各々を読み取り、そして各コンフィギュレーションの精度に関するレポートを生成する。“archive-training-results.pl”スクリプトは、展開のためのコンフィギュレーションが使用された後にそのコンフィギュレーションに対するトレーニング結果を保存するのに使用される。
トレーニングプロセス614は、基本的に、トレーニングデータ614、分類学608並びにルール及びスキーマのセット616から引き出す手動プロセスである。又、種々のディクショナリー及びチューニングパラメータ618が使用されてもよい。その結果は、新たなクラシファイアパラメータ620の最適化を含み、図6に示すように、ジョブカテゴリー分けサービス602へ結果が与えられる。トレーニングプロセス614は、ほとんど手動であるので、若干のパラメータについてトレーニングし、結果、例えば、分類の詳細なページ、用語の重み、等を手動でチェックし、ルール及びディクショナリーの幾つかを手で変更し、そして異なるコンフィギュレーションでプロセスを繰り返し、展開のための最適なセッティングを見出すのが好ましい。このような最適なコンフィギュレーションが達成されると、新たなクラシファイアパラメータ620がジョブカテゴリー分けサービス602へ通される。ジョブカテゴリー分けサービス602が構築されて実行されると、上述したように、スクレープされたジョブを処理することができる。
以下、例示的ジョブカテゴリー分けプロセスを使用して本発明のリスティングカテゴリー分けプロセスを詳細に説明する。
例示的な字句分析において、3つのテキストフィールドが処理される。(1)肩書き、(2)ジョブ説明、及び(3)会社のカテゴリー。Lexer(lexical-analysis module)が次のプロセスステップに適用される。
1.共通のHTMLキャラクタ−エンティティリファレンスが、それに対応するASCIIキャラクタに置き換えられる。
2.次いで、非アルファニューメリックキャラクタをデリミッタとして処理することによりテキストフィールドがストリングに分割される(単一の引用符がアルファニューメリックキャラクタとして処理される)。
3.ジョブ肩書きテストが全てのストリングに適用される。ジョブの肩書きは、regex [0-9]*[A-Z]+[A-Z0-9]*を満足するストリングとして定義される。全てのストリングは、小文字に変換される。
4.全てのストリングは、Porterステマーを使用してステムされる。(M. F. Porter. “An algorithm for suffix stripping”; Program, 14(3): 130-137, 1980. Reprinted in Sparck Jones, Karen, and Peter Willet, 1997, Readings in Information Retrieval, San Francisco: Morgan Kaufmann, 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
幾つかのバイグラム(bigrams)(2ワードフレーズ)は、単一トークンとして検出される。上位の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
d v 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 publishing 2 phlebotomist 2
各テキストトークンに対応する「特徴」は、単に、ドキュメントにおけるトークンの、ドキュメント当たりの発生回数でよい。各トークンインスタンスには、それが抽出されたフィールドに依存すると共にそのフィールド内の特徴の位置に依存し得る重みが指定されてもよい。特に、肩書き及び会社のカテゴリーからのトークンカウントに2を乗算した後にそれを全カウントに加算してもよい。説明用語のカウントは、不変と考えてもよい。実施し得る位置依存ルールは、名詞句(例えば、肩書き)内で先頭の名詞を見出す試みにおいて肩書きの最後のワードに、より重たく重み付けすることであり、これは、精度を僅かに高めることになる。
又、多数のトークン(単一クラスターのメンバー)が全て同じトークンとして処理されるトークン特徴クラスタリング(例えば、分散型クラスタリング)を使用することもできる。
上述したように、ジョブレコードは、フリーテキストではないフィールドを含んでもよい。それらは、(1)会社id、(2)サラリー、等を含む。これらの特徴が使用される実施形態は、「カテゴリー洗練化」と題する章で説明する。
特徴の選択は、カテゴリー変数を伴う相互情報I(C、X)で個々の特徴xをランク付けすることにより遂行できる。
Figure 2008537811
ここで、xの和は、x=0及びx=1に対するものであり、cの和は、全てのカテゴリー(クラス)に対するものである。p(c、x)に対する確率推定値は、単純なカウントにより得られ、そしてバイナリー変数xは、関連する用語の存在(x=1)又は不存在(x=0)を指示する。術語に関して、これは、厳密に言えば、実際のカテゴリー分けのためにクラシファイア(例えば、ナイーブ・ベイズ(Naive Bayes))に使用される関連用語カウントとは異なる特徴である。これは、数値的な理由で有益である。それに代わるものは、0から無限大まで全ての考えられる用語カウントを加算することであるが、関連する確率推定の潜在的な希薄さのために問題が生じ得る。
ランク付けされたリストは、相互情報の減少する順に処理される。特徴の各数mに対して、リストからの最初のmを使用してクラシファイアがトレーニングされ、そしてクロス確認を使用してその精度が測定される。このように測定される精度が下がり始めるまで、特徴が追加される。
又、特徴の数は、頻度スレッシュホールド限界を設定することにより制御されてもよい。頻度がスレッシュホールド限界未満である特徴は、排除されてもよい。クロス確認により報告されたように最良の精度指数を生じる、スレッシュホールドと特徴の数との組み合せは、2つ又は3つある。
本発明の1つの態様によれば、多数のパスでオファーするジョブをカテゴリー分けする方法が提供される。第1ステップは、第1のカテゴリー分けを遂行して、ジョブを第1のカテゴリーに関連付けることである。第1のジョブカテゴリーが共洗練化可能なジョブカテゴリーのセット内にある場合には、その共洗練化可能なジョブカテゴリーのセット内で第2のカテゴリー分けを遂行して、ジョブのオファーを第2のジョブカテゴリーに関連付ける。更に、第2のジョブは、共洗練化可能なジョブカテゴリーのセット内にあり、第1のジョブは、ジョブの第1セット内にあり、そして共洗練化可能なジョブカテゴリーのセットは、ジョブの第1セットの適切なサブセットである。共洗練化可能なジョブカテゴリーのセットとは、(あるものを別のものと)混同するおそれが比較的高いか、又はセット内のあるジョブカテゴリーがセット内の別のジョブカテゴリーに代わって選択されたと何らかの方法で決定されたジョブカテゴリーのセットとして定義される。
第2のパスに使用するように選択されたカテゴリー、即ち共洗練化可能なジョブカテゴリーは、探しているカテゴリーに基づいて選択される。例えば、共洗練化可能なジョブカテゴリーは、特定のカテゴリーに対して他のカテゴリーと混同するおそれに基づいて決定することができる。2つのカテゴリーがしばしば混同されるかどうか決定する1つの方法は、ジョブのセットの手動カテゴリー分けを遂行することである。手動カテゴリー分けは、正しいものとして、即ちゴールドスダンダートとして処理される。次いで、同じセットのジョブの自動カテゴリー分けを遂行する。一方の軸がゴールドスタンダード(この場合は手動)カテゴライザーにより選択されたカテゴリーを表わし、他方の軸が自動カテゴライザーにより選択されたカテゴリーを表わすマトリクスにおいて結果をグラフ表示する。手動及び自動カテゴリー分けで同じカテゴリーを選択する(おそらく実施形態によっては対角線に沿って)マトリクスにおいて全てのセルを除外すると、最も高い確率をもつセルは、最も混同し易いカテゴリーを表わす。従って、共洗練化可能な製品カテゴリーのセットは、最も混同し易いセルに基づき、そして実際には、共洗練化可能な製品カテゴリーの多数の個別のセットを含み、これらのセットは、各々、他のものとは異なる数のカテゴリーを含むことがある。
ここで、カテゴリー洗練化の一例を説明する。ここに述べる技術は、このような実施形態に限定されない。ナイーブ・ベイズ(Naive Bayes)カテゴライザーに基づいて構築された自動クラシファイアについて考える。ナイーブ・ベイズカテゴライザーの例が、David D. Lewis、“Naive (Bayes) at forty: The independence assumption in information retrieval”; in Claire N'edellec and C'eline Rouveirol, editors, Proceedings of ECML-98, 10th European Conference on Machine Learning, number 1398, pages 4-15, Chemnitz, DE, 1998年、に掲載されており、これは、ここでは、“Lewis”と称される。カテゴライザーは、2つ以上のカテゴリー分けレベルを有する。トップ(根)レベル610では、「ナイーブ・ベイズ」と題する章で述べるように、各カテゴリーが単一多項式分布で記述されるようなフラットカテゴリー分けを遂行することができる。多項式の混合を使用して、あるカテゴリーに対して用語確率分布をモデリングすることができる。厳密に述べると、これは、ナイーブ・ベイズの条件付き独立性の仮定に違反するが、あるカテゴリーを、この仮定に従うがそれらが何であるか先験的に分らない他のカテゴリーへ更に分解できることを単に仮定してもよい。
次いで、共洗練化可能なカテゴリーのセット内にある幾つかのカテゴリーに対して第2のカテゴリー分けが遂行される。これらカテゴリーは、3つの「混同」グループに分割された以下のリストにあるものでよい。各グループにおけるトップレベルノードは、混同グループ内のカテゴリーのみに対して第2のカテゴリー分けを遂行するクラシファイアを有する。
会社idの場合には、考えられる最もシンプルなモデルであるマルチ・ベルノウリ(multi-Bernoulli)を使用することができる。即ち、各(カテゴリー、会社)対に対して異なる確率推定値をもつことができる。即ち、会社idをmとすれば、値{p(c|m)}のセットに対して推定値をもつことができる。これらの値は、{Ψc、m}によって表わされる。
対数正規分布でサラリー統計値を説明すると、サラリーは、対数正規分布に従ってほぼ分布され、これは、対数価格が単純な正規/ガウス分布に基づいて分布されることを単に意味する。z=log(価格)であるとする。次の式が得られる。但し、μc及びσcは、正規分布の平均及び標準偏差である。
Figure 2008537811
テキストのためのナイーブ・ベイズクラシファイア
マシン学習及びパターン分類においては、カテゴリー分け(又は「分類」)されるべきオブジェクトは、ドキュメントが属する見込みが最も高いカテゴリーを決定するのに使用される情報を含む「特徴ベクトル」xと称されるものにより表わされる。ドキュメントに対するいわゆる「ナイーブ・ベイズ(Naive Bayes)」クラシファイアは、「バッグ・オブ・ワード(bag-of-words)」モデルと称されるものを仮定する(Lewisを参照)。これは、ワードの特定シーケンスが無視され、それらのカウントしか使用されないことを意味する。この制限は、フレーズがトークンとして検出されそして個々の用語であったかのように処理されるときには、若干回避される。(ナイーブ・ベイズ)のケースでは、特徴ベクトルは、次の式となる。
x=(k1、k2、・・・km
但し、kiは、i番目の用語の発生回数(カテゴリー分けされるべきドキュメントにおける)であり、そしてmは、辞書における全用語数であり、このケースでは、ストップワードの除去、等の後にカテゴリー分けを行なうのに使用される用語のセットを指す。
ベイズのクラシファイアは、確率モデルを次のように使用する。特徴ベクトルxが与えられると、ドキュメントの特徴ベクトルxが与えられた場合にドキュメントがカテゴリーcに属する条件付き確率を計算する。カテゴリー分けを遂行するために、p(c|x)を最大にするcに対する値c’(即ち、カテゴリーへのドキュメントの指定)を選択する。数学的に、これは、次のように表わされる。
c’=arg maxc p(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)
この式における確率は、共同確率(x、c)である。
p(x、c)=p(x|c)p(c)
実際のカテゴリー分けプロセスを実行するためには、p(c)及びp(x|c)のための特定の式が必要である。ナイーブ・ベイズ/バッグ・オブ・ワードモデルは、これに対する多項式分布を使用することができる。即ち、
Figure 2008537811
この式は、「多項式係数」と称されるものに対して次のような省略表示を含む。
Figure 2008537811
但し、n!は、「n階乗」を表わし、次の積を示す。
n!≡n(n−1)(n−2)(n−3)・・・3x2
この多項式係数は、ドキュメントのみの関数であって、クラスの関数ではないので、これもカテゴリー分けプロセスにおいて無視することができる。パラメータ{θi}は、しばしば、「ベルノウリ(Bernoulli)」パラメータと称され、トレーニングデータから推定することができる。この(“{・・・}”)は、省略セット表示である。例えば、{θi}は、実際には、{θi|i=1、2、・・・m}、即ちこれらパラメータ値の完全なセットを表わす。
カテゴリーごとに、p(x|c)及びp(c)の値を有し、これらの各々は、それ自身の推定パラメータ値を有する。カテゴリーc内の用語iに対するベルノウリパラメータが表わされ、次の式により推定することができる。
Figure 2008537811
但し、ni,cは、カテゴリーcのトレーニングドキュメントの全集合における用語iの全インスタンス数であり、ncは、カテゴリーcのトレーニングドキュメントの全集合における全用語(カテゴリー分け辞書における用語であって、ストップワード等ではない)の全インスタンス数であり、そしてmは、辞書における全用語数である。式(8)は、「ラプラスのルール」又は「ラプラスの連続ルール(Laplace's Rule of Succession)」として知られている。
式(5)で示されたカテゴリー分けを遂行するために、周辺クラス確率{p(c)}の推定値を必要とする。これらの推定値をφ' cで表わすことができ、それらに対してもある形式のラプラスのルールを使用することができる。
Figure 2008537811
但し、vcは、トレーニングセットにおけるカテゴリーcの全ドキュメント数であり、Nは、トレーニングセットにおける全ドキュメント数(全カテゴリー)であり、|C|は、全カテゴリー数である。これらの数({vc}及びN)が、カテゴリー分けされるべきドキュメントの最終的なポピュレーションを表わさない場合には、{φ' c}に対して正しい推定値(何らなの手段により得られた)が使用される。
「判別関数」d(x、c)は、次のように定義される。
Figure 2008537811
式(5)により示されたカテゴリー分けの実施は、これに関して、次のように表わすことができる。
c’=arg maxc d(c、x) (11)
式(10)の対数を、数値及び計算の両方の理由で判別関数として使用するのが有益である。従って、次のようになる。
Figure 2008537811
例示的ユーザインターフェイス800のスクリーンショットが、ウェブブラウザを使用して、イントラネット116を経てアドミニストレータ、オペレータ又はカテゴリー分け専門家に提示される。このインターフェイス800は、図示されたプルダウンメニューを経て3つの異なるモード802を与える。「全カテゴリー」モードは、全カテゴリー及びそれに対応する信頼値を、信頼値が小さくなる順に分類して、リストする。「詳細な統計値」モードは、なぜ特定のカテゴリーが選択されたかの詳細を示す。このモードは、システム200をチューニングするオペレータにとって有用である。「最良カテゴリー」モードは、ジョブ及びその信頼値に対してトップカテゴリーだけを示す。これは、「全カテゴリー」モードに示された第1の結果に等しいが、ここでは、ストリングではなく、カテゴリーID番号を示す。このモードは、データベースにおけるジョブの自動分類に意図され、カテゴリーID番号は、カテゴリー名よりも好ましい。
ジョブカテゴリー分け手動レビューモジュール132において行なわれるジョブカテゴリー分け手動レビュープロセス900のオペレーションフローチャートが図9に示されている。このオペレーションフローは、アドミニストレーションオペレータ又はカテゴリー分け専門家がオペレーション902においてPALMアドミニストレーションポータル102を経てログインするときに始まる。アドミニストレータは、ログインすると、オペレーション904において、図10に示すユーザインターフェイス1000が提示される。このユーザインターフェイス1000は、アドミニストレータ又は専門のレビューアが、カテゴリー1002、会社1004を選択し、そしてレビューの形式1006の選択を行なうのを許す。次いで、制御はオペレーション906へ移行する。オペレーション906では、オペレーション904におけるアドミニストレータの以前の選択に基づいて、第1の/その次のジョブ説明が、コックドデータベース236におけるman_catデータベース628又はjob_currentテーブル626から検索される。アドミニストレータは、図11に示す例示的インターフェイス1100のようなユーザインターフェイスが提示される。
このユーザインターフェイス1100は、第1の/その次のジョブ説明1102を、各カテゴリーについて決定されたカテゴリー信頼レベルと共に表示する。この例では、ジョブは、IBM社のpost−docポジションである。信頼レベルは、Engineering_Architecture及びPharmaceutical_Biotechを除く全てに対してゼロであり、どのレベルも100%マッチしない。このポジションは、Engineering_Architectureとしてカテゴリー分けされるが、信頼レベルは、0.657しかなく、従って、手動のレビューについてフラグが立てられる。
図9へ戻ると、オペレーション906においてジョブ説明が検索されたとき、制御は、オペレーション908へ移行し、そこで、アドミニストレータは、全ジョブ説明に基づいてカテゴリー分けを分析する。次いで、アドミニストレータは、アクションについて3つの選択肢を有する。第1に、問合せオペレーション910においてジョブを無効化することができる。第2に、問合せオペレーション912において、ジョブURL1110をクリックしてレビューを向上させることにより、更なるジョブ詳細を得ることができる。第3に、問合せオペレーション914において、カテゴリー定義を更新するか、又は新たなカテゴリーを挿入することができる。問合せオペレーション910においてジョブを無効化すべきと判断する場合には、制御がオペレーション916へ移行し、そこで、ジョブがデータベース126及びman_catデータベース628から除去される。次いで、制御は、問合せオペレーション918へ移行する。この問合せオペレーション918は、man_catデータベース628又はjob_currentテーブル626の待ち行列に、expert_reviewフラグ=1にセットされた別のジョブ説明があるかどうか尋ねる。もしそうであれば、制御は、オペレーション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は、クオリティについてのチェックを与え、従って、ジョブカテゴリー分けにおいて高い精度を与える。このカテゴリー分けプロセスの結果は、手動カテゴリー分けデータベースに対する短縮名であるman_catデータベース628に記憶される。
図13に示すクオリティマネージャータスクでは、コックドデータベースにおける各エントリー行が検索されて、2つのレベル、即ちURL有効化及びコンテンツ有効化において評価される。URL有効化では、タスクは、先ず、http及びhttpsリソースへのリンクが有効であることをチェックし、検証する。本質的に、このシステムは、URLにアクセスし、リンクの接続を検証する。第2のオペレーションは、警報応答メッセージがあるかどうかチェックすることを含む。もしそうであれば、リスティングは、手動レビューに対してフラグが立てられる。又、URL有効化オペレーションは、いずれかのリンクが再指令されたか、さもなければ、変更されたかを検出し、そしてセッションクッキーに対するサポートを決定する。クオリティマネージャータスクのコンテンツ有効化部分では、データの非一貫性についてチェックがなされる。例えば、特定のルールを遂行し、ジョブ説明を検証し、説明に対してマッチングアルゴリズムを実行し、都市、州、及び国間のマッチングを検証する、等の種々のチェックが行われる。最終的に、クオリティマネージャープロセスは、同時に動作するn個の別々のスレッドで達成することができる。各クオリティマネージャータスクスレッドのオペレーションフローが図13に示されている。
ルールベースのクオリティエンジンタスクモジュール142は、図5に示すシーケンス500を通して処理される各データセットに対して一連のオペレーションを遂行する。コンフィギュレーションマネージャー158は、どれほど多くのリスティングマネージャーモジュール104が利用できるか決定する。更に、各リスティングマネージャーモジュール104内で、クオリティマネージャータスク144は、“N”個のクオリティマネージャータスクスレッド167及び169を管理することができる。より詳細には、オペレーション524において、オペレーションシーケンス1300がクオリティエンジンモジュールタスクマネージャー142によりコールされる。各クオリティエンジンタスクマネージャー142は、“n”個のスレッド1300の制御を行なう。各シーケンス1300は、オペレーション1302において始まり、必要なレジスタが初期化される。次いで、制御は、オペレーション1304へ移行する。このオペレーション1304では、コンフィギュレーションジェネレータ158により決定されることであるが、クオリティエンジンマネージャー142のどれほど多くのスレッドが利用できるか、そしてどれほど多くのスレッド1300が指定されるかに基づいて、クオリティに対して検査されるべきコックドデータベース236のデータセットが検索される。次いで、制御は、オペレーション1306へ移行する。ここでは、データセットは、n個の仕切りに分割される。従って、1つの仕切りにおけるデータセットの数は、その仕切り内で利用できるスレッド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アドレスにアクセスし、これをチェックして、アクセス時にエラーメッセージが発生されたかどうか決定する。更に、必要とされるセッションクッキーがある場合には、それらがこのオペレーションで記録される。例えば、ユーザが希望のURLを得る前にアクセス情報を要求する幾つかのサイトでは、予めのURLアドレス及びクッキー情報が存在するか又は要求される。このオペレーションは、データセットにおける予備的URL情報が現在あって正しいことを検証する。エラーメッセージがある場合には、それらに注目される。次いで、制御は、問合せオペレーション1334へ移行する。問合せオペレーション1334は、予めのURLアドレスがコールされたときにエラーメッセージが受け取られたかどうか尋ねる。その答えがノーである場合には、制御は、オペレーション1340へ直接移行する。その答えがイエスである場合には、エラーがあって、オペレーション1336においてエラーフラグがセットされ、そしてオペレーション1338においてレポートモジュール130へエラーレポートが送信される。次いで、制御は、オペレーション1340へ移行する。
オペレーション1340において、最終的URLアドレスがコールされ、要求されたセッションクッキーが記録される。このとき、エラーメッセージが注目される。このオペレーションは、データセットがデータベースにおいて依然現在のものであり続けることを検証するために重要である。特に、ジョブ部署データセットの場合には、ジョブが1日前に埋められることがある。このようなケースでは、部署がクリアされるが、まだデータベースは、ジョブが現在のものであると考える。このオペレーション1340は、このような最近の変化状態をキャッチし、このようなアクティビティを受け容れるよう試みる。多くのインスタンスにおいて、このオペレーションは、成功となり、データベースが現在のものとして維持されるよう確保する上で助けとなる。次いで、制御は、問合せオペレーション1342へ移行し、ここで、エラーメッセージがあるかどうかの質問がなされ、これは、例えば、ジョブがプルされたことを指示する。エラーメッセージが受け取られない場合には、制御がオペレーション1348へ移行する。しかしながら、エラーメッセージが受け取られた場合には、制御がオペレーション1344へ移行し、そこで、エラーフラグがセットされ、次いで、オペレーション1346へ移行し、そこで、エラーレポートがレポートモジュール130へ送信される。次いで、制御は、復帰オペレーション1360へ進む。というのは、エラーが受け取られた場合はURLが無効であり、データセットがインデックスされずに、コックドデータベース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へ復帰させ、これは、次いで、制御をオペレーション526へ移行し、ここでは、別の一連のルールベースタスクが遂行される。次いで、全体的な制御は、オペレーション528に復帰する。
ここに述べた機能的コンポーネント、モジュール、ソフトウェアエレメント、ハードウェアエレメント、並びに特徴及び機能は、ソフトウェア又はハードウェア等に固定されるものとして示され、又は説明されたが、当業者であれば、ここに述べる特徴及び機能は、種々のソフトウェア、ハードウェア及び/又はファームウェアの組み合せで実施されてもよく、且つここに述べる機能は、ここに述べるように1つの特定のコンポーネントに固定されずに、ネットワーク上の種々のコンポーネント又はサブコンポーネントに分散されてもよいことが明らかであろう。従って、ここに述べるデータベースは、ここに述べる特徴及び機能の実施者の好みに最も良く合うように、分離され、統合され、連合され、又はその他、構成されてもよい。又、手動で遂行されるのが好ましいとしてここに述べた機能は、手動で遂行されてもよいし、或いはサブタスクに分割されて、人間オペレータの対話に良く似たインテリジェントサブシステム、例えば、人間に操作によりトレーニングされて最終的に自律的に機能する人工インテリジェントシステムにより、自動化され、最終的に遂行されてもよい。更に別の特徴、機能、及び技術的仕様が、添付図面及び詳細な説明から明らかとなろう。
本発明の装置及び方法を、最も実際的で且つ好ましい実施形態と現在考えられるものについて説明したが、本発明は、これに限定されないことを理解されたい。本発明は、特許請求の範囲及びその精神の中に含まれる種々の変更及び同様の構成を包含するものであると広く解釈されたい。以上に取り上げた特許、特許出願、及び出版物は、全て、その全体が参考としてここに援用される。
本発明の一実施形態によるリスティングマネージメントプラットホームシステムの全ブロック図である。 図1Aのマネージメントプラットホームシステム内の例示的リスティングマネージメントモジュールの全機能的ブロック図である。 図1に示すリスティングマネージメントモジュール内の各タスクマネージャーの全機能的ブロック図である。 図1A−1Cに示したマネージメントプラットホームシステムの一実施形態を使用するジョブサーチシステムの全ブロック図である。 図2に示す例示的システムの実施形態に使用するユーザ(求職者)サーチ入力問合せインターフェイスを例示する図である。 図2に示す例示的システムの実施形態に使用するユーザ(求職者)サーチ結果インターフェイスを例示する図である。 図2に示すシステムを通る簡単なデータプロセスフローを示す図である。 図1に示すシステムの実施形態におけるジョブカテゴリー分け制御モジュールを示す図である。 図1Bに示すシステムの一実施形態によるジョブカテゴリー分けプロセスの動作フローチャートである。 ジョブカテゴリー分けプロセスのための例示的ドキュメントカテゴリー分けプラットホームサービスユーザインターフェイスのスクリーンショットである。 ジョブカテゴリー分け手動レビューインターフェイスモジュールに対するプロセスフローチャートである。 ジョブカテゴリー分け手動レビューインターフェイスモジュールに対する例示的ユーザインターフェイスのスクリーンショットである。 手動でレビューされているジョブ説明の例示的ユーザインターフェイスのスクリーンショットである。 図1に示すシステムのデ・デューピングモジュールにおけるデ・デューピングプロセスのフローチャートである。 図1B及び1Cに示されたクオリティエンジンプロセスのフローチャートである。 クオリティマネージャーレポートを示すユーザインターフェイスの例示的スクリーンショットである。 本発明の実施形態によるスクレープの機能図である。 図1に示すシステムのレポートモジュールにおいて発生された産業レポートのスクリーンショットである。 図1Aのユーザアドミニストレーションモジュールに使用されるユーザインターフェイスのスクリーンショットである。 図2に示すシステムにおいて2つのタスクマネージャー間でデータを共有するタスクマネージャーを示す図である。

Claims (72)

  1. サーチ可能なデータ構造体へコンパイルするために複数のソースからデータネットワークを経て捕獲されるリスティング情報データの捕獲及び処理を管理するコンピュータシステムにおいて、
    ネットワークインターフェイスを通してシステム管理及びオペレーション制御を与えるアドミニストレーションポータルモジュールと、
    前記アドミニストレーションポータルモジュールを経て与えられるインストラクションに応答して、前記ソースへのアクセスを制御し、リスティング情報データの検索を制御し、そしてこれらソースから受け取られたリスティング情報データを処理し、更に、リスティング情報データをカテゴリー分けし、そのカテゴリー分けされたリスティング情報データの部分を、所定のクオリティ基準への適合性について検査し、そしてそのカテゴリー分けされたリスティング情報データを使用のためにサーチバンクに記憶するように動作できる1つ以上のリスティングマネージャーモジュールと、
    を備えたコンピュータシステム。
  2. 前記データネットワークは、インターネットである、請求項1に記載のシステム。
  3. 各々のリスティングマネージャーモジュールは、1つ以上のタスクマネージャーを含み、その各々は、
    前記アドミニストレーションポータルモジュールにおいてサイトマネージメントモジュールにより識別されたサイトからスクレープされたデータセットを得、そしてそのスクレープされたデータセットをデータベースに記憶するために、1つ以上のスクレープエンジンのオペレーション及びそれらの間の通信を整合するスクレープマネージメントモジュールと、
    前記スクレープマネージメントモジュールに結合され、前記データベースに記憶された各スクレープされたデータセットを、所定のクオリティ基準への適合性について分析するためのクオリティマネージメントモジュールと、
    を含む請求項1に記載のシステム。
  4. 各タスクマネージャーモジュールは、更に、
    前記データベースに記憶された各データセットを検査して、所定セットのカテゴリーの1つ以上へとカテゴリー分けし、そのカテゴリー分けされたデータセットを前記データベースへ返送するように動作できるリスティングデータカテゴリー分けモジュールと、
    前記データベースからのカテゴリー分けされたデータセットをコンパイルしてサーチバンクへ転送するために前記データベースと通信するサーチバンクシンクロナイザーと、
    を含む請求項3に記載のシステム。
  5. 前記カテゴリー分けモジュールは、
    カテゴリー分けデータベースと、
    各スクレープされたデータセットのテキストを、前記カテゴリー分けデータベースにおける以前にカテゴリー分けされたリスティングデータテキストと比較することにより、各スクレープされたリスティング情報データセットに対して各所定のカテゴリーの信頼値を決定するドキュメントカテゴリー分けプラットホームサービスと、
    を含む請求項1に記載のシステム。
  6. 前記アドミニストレーションポータルは、レビューアが前記ドキュメントカテゴリー分けプラットホームサービスにより決定されたカテゴリーを検証するのを許すカテゴリー分けレビューモジュールを含む、請求項4に記載のシステム。
  7. 前記データベースへ返送される各データセットは、前記カテゴリー分けモジュールにより決定される指定のカテゴリーと、そのカテゴリーに対する指定の信頼値とを含む、請求項4に記載のシステム。
  8. 前記データベースへ返送される各データセットは、更に、各所定のカテゴリーに対する信頼値を含む、請求項7に記載のシステム。
  9. 前記データベースへ返送される各データセットは、前記指定の信頼値が所定のスレッシュホールド値より低い場合にセットされる手動レビューフラグを含む、請求項5に記載のシステム。
  10. 前記クオリティマネージメントモジュールは、所定の基準を満足しない各データセットに関連したクオリティフラグをセットする、請求項1に記載のシステム。
  11. 前記アドミニストレーションポータルは、更に、前記クオリティマネージメントモジュールと通信して、レビューアが、クオリティフラグがセットされたデータセットを手動で検査するのを許すクオリティレビューモジュールを含む、請求項10に記載のシステム。
  12. リスティングデータセットを得、取り扱い、そしてコンパイルする方法において、
    インターネットを経て利用できる1つ以上のサイトにおいて1つ以上のリスティングからリスティング情報データセットを得るステップと、
    各リスティングに対応するデータセットをデータベースに記憶するステップと、
    前記データベースに記憶された各データセットを所定のクオリティ基準への適合性について分析するステップと、
    前記データベースに記憶された各データセットを1つ以上の所定のカテゴリーへカテゴリー分けし、そのカテゴリー分けされたデータセットを前記データベースへ返送するステップと、
    を備えた方法。
  13. XLMフィードを通して1つ以上の顧客サイトからリスティング情報データセットを得るステップを更に備えた、請求項12に記載の方法。
  14. 前記カテゴリー分け動作は、各々の所定のカテゴリーに対して各データセットの信頼値を指定することを更に含む、請求項12に記載の方法。
  15. 前記カテゴリー分け動作は、
    各得られたデータセットのテキストを、カテゴリー分けデータベースにおける以前にカテゴリー分けされたデータセットのテキストと比較する段階と、
    各得られたデータセットに対して各所定のカテゴリーの信頼値を決定する段階と、
    を含む請求項12に記載の方法。
  16. 信頼値が手動レビューに対する所定値より低い各カテゴリー分けされたデータセットにフラグを立てるステップと、
    レビューアがアドミニストレーションポータルを通してフラグの立ったカテゴリー分けを検証できるようにする手動レビューモジュールを用意するステップと、
    を更に備えた請求項15に記載の方法。
  17. 前記データベースへ返送される各データセットに指定されるカテゴリーに対して信頼値を指定するステップを更に備えた、請求項12に記載の方法。
  18. 前記データベースへ返送されるデータセットであって、指定の信頼レベルが所定スレッシュホールドより低いデータセットにフラグを立てるステップを更に備えた、請求項17に記載の方法。
  19. ユーザによる問合せに応答して前記サーチバンクからウェブクライアントサーバークラスターを経てユーザへ選択されたカテゴリー分けされたデータセットを転送するステップを更に備えた、請求項12に記載の方法。
  20. 前記得る動作は、更に、
    インターネットを通して1つ以上のサイトにアクセスする段階と、
    前記1つ以上のサイトからリスティングデータセットをスクレープする段階と、
    所定のクオリティ基準を満足しないスクレープされたデータセットにフラグを立てる段階と、
    前記データベースへ返送されるフラグの立てられたデータセットの手動レビューを許す段階と、
    を含み、そして前記カテゴリー分け動作は、
    各スクレープされたデータセットのデータを、カテゴリー分けデータベース内の以前にカテゴリー分けされたデータセットのデータと比較する段階と、
    各スクレープされたデータセットに対して各所定のカテゴリーの信頼値を決定する段階と、
    を含む請求項12に記載の方法。
  21. 信頼値が手動レビューに対する所定値より低い各カテゴリー分けされスクレープされたデータセットにフラグを立てる段階と、
    レビューアがフラグの立ったカテゴリー分けを検証できるようにする手動レビューモジュールをアドミニストレーションポータルに用意するステップと、
    を更に備えた請求項20に記載の方法。
  22. ユーザによる問合せに応答して、前記サーチバンクからウェブサーバーを経てユーザへ選択されたカテゴリー分けされたデータセットを転送する段階を更に備えた、請求項20に記載の方法。
  23. リスティングデータを得て処理するためのコンピュータプロセスを実行するインストラクションのコンピュータプログラムをエンコードするコンピュータ読み取り可能なメディアにおいて、前記コンピュータプロセスは、
    インターネットを通して利用できるサイトにおいて1つ以上のリスティングからリスティング情報データをスクレープし、
    各スクレープされたリスティング情報に対応するスクレープされたデータセットをデータベースに記憶し、
    前記データベースに記憶された各スクレープされたデータセットを、所定のクオリティ基準への適合性について分析し、そして
    前記データベースに記憶された各データセットを1つ以上の所定のカテゴリーへとカテゴリー分けし、そのカテゴリー分けされたデータセットを前記データベースへ返送する、
    ことを含むものである、コンピュータ読み取り可能なメディア。
  24. 前記プロセスは、更に、
    所定のクオリティ基準を満足しないスクレープされたデータセットにフラグを立て、
    前記データベースへ返送されるフラグの立てられたデータセットの手動レビューを許す、ことを含み、そして前記カテゴリー分け動作は、更に、
    各スクレープされたデータセットのデータを、カテゴリー分けデータベース内の以前にカテゴリー分けされたデータセットのデータと比較し、
    各スクレープされたデータセットに対して各所定のカテゴリーの信頼値を決定する、
    ことを含む請求項23に記載のコンピュータ読み取り可能なメディア。
  25. サーチ可能なデータ構造体へコンパイルするために複数のジョブ関連ソースからデータネットワークを経て捕獲されるジョブリスティング情報データの捕獲及び処理を管理するコンピュータシステムにおいて、
    ネットワークインターフェイスを通してシステムアドミニストレーション及びオペレーション制御を与えるアドミニストレーションポータルモジュールと、
    前記アドミニストレーションポータルモジュールを経て与えられるインストラクションに応答して、前記ジョブ関連ソースへのアクセスを制御し、ジョブリスティング情報データの検索を制御し、そしてこれらソースから受け取られたジョブ情報データセットを処理し、更に、ジョブリスティング情報データセットをカテゴリー分けし、そのカテゴリー分けされたジョブ情報データセットの部分を、所定のクオリティ基準への適合性について検査し、そしてそのカテゴリー分けされたジョブ情報データセットを使用のためにジョブサーチバンクに記憶するように動作できる1つ以上のタスクマネージャーモジュールと、
    を備えたコンピュータシステム。
  26. 前記データネットワークは、インターネットを含む、請求項25に記載のシステム。
  27. 各タスクマネージャーモジュールは、
    会社の経歴サイトからのスクレープされたジョブ情報データセットと、前記アドミニストレーションポータルモジュールにおいてサイトマネージメントモジュールにより識別されるジョブボードとを得て、前記スクレープされたデータセットをデータベースに記憶するために、1つ以上のジョブスクレープエンジンのオペレーション及びそれらの間の通信を整合するスクレープマネージメントモジュールと、
    前記スクレープマネージメントモジュールに結合され、前記データベースに記憶された各スクレープされたジョブデータセットを、所定のクオリティ基準への適合性について分析するためのクオリティマネージメントモジュールと、
    を含む請求項25に記載のシステム。
  28. 前記タスクマネージャーモジュールは、更に、
    前記データベースに記憶された各ジョブデータセットを検査して、所定セットのジョブカテゴリーの1つ以上へとカテゴリー分けし、そのカテゴリー分けされたジョブデータセットを前記データベースへ返送するように動作できるジョブリスティングデータカテゴリー分けモジュールと、
    前記データベースからのカテゴリー分けされたジョブデータセットをコンパイルして、ジョブサーチバンクへ転送するために前記データベースと通信するサーチバンクシンクロナイザーと、
    を含む請求項27に記載のシステム。
  29. 前記カテゴリー分けモジュールは、
    ジョブカテゴリー分けデータベースと、
    各スクレープされたジョブデータセットのテキストを、前記ジョブカテゴリー分けデータベースにおける以前にカテゴリー分けされたジョブデータのテキストと比較することにより、各スクレープされたジョブリスティング情報データセットに対して各所定のジョブカテゴリーの信頼値を決定するカテゴリー分けモジュールと、
    を含む請求項25に記載のシステム。
  30. 前記アドミニストレーションポータルは、レビューアがドキュメントカテゴリー分けプラットホームサービスにより決定されたカテゴリーを検証するのを許すカテゴリー分けレビューモジュールを含む、請求項28に記載のシステム。
  31. 前記データベースへ返送される各ジョブデータセットは、前記カテゴリー分けモジュールにより決定される指定のジョブカテゴリーと、そのカテゴリーに対する指定の信頼値とを含む、請求項28に記載のシステム。
  32. 前記データベースへ返送される各データセットは、更に、各所定のジョブカテゴリーに対する信頼値を含む、請求項31に記載のシステム。
  33. 前記データベースへ返送される各ジョブデータセットは、前記指定の信頼値が所定のスレッシュホールド値より低い場合にセットされる手動レビューフラグを含む、請求項29に記載のシステム。
  34. 前記クオリティマネージメントモジュールは、所定の基準を満足しない各スクレープされたデータセットに関連したクオリティフラグをセットする、請求項25に記載のシステム。
  35. 前記アドミニストレーションポータルは、更に、前記クオリティマネージメントモジュールと通信して、レビューアが、クオリティフラグがセットされたジョブデータセットを手動で検査するのを許すクオリティレビューモジュールを含む、請求項34に記載のシステム。
  36. ジョブ情報データセットを得、取り扱い、そしてコンパイルする方法において、
    インターネットを通して利用できる1つ以上の会社経歴サイト又はジョブボードにおいて1つ以上のジョブリスティングからジョブ情報データセットをスクレープするステップと、
    見つかった各スクレープされたジョブリスティングに対応するジョブデータセットをデータベースに記憶するステップと、
    前記データベースに記憶された各スクレープされたデータセットを所定のクオリティ基準への適合性について分析するステップと、
    前記データベースに記憶された各データセットを1つ以上の所定のジョブカテゴリーへカテゴリー分けし、そのカテゴリー分けされたジョブ情報データセットを前記データベースへ返送するステップと、
    を備えた方法。
  37. XLMフィードを通して1つ以上の顧客サイトからジョブ情報データセットを得るステップを更に備えた、請求項36に記載の方法。
  38. 前記カテゴリー分け動作は、各々の所定のジョブカテゴリーに対して各ジョブ情報データセットの信頼値を指定することを更に含む、請求項36に記載の方法。
  39. 前記カテゴリー分け動作は、
    各スクレープされたジョブ情報データセットのテキストを、ジョブカテゴリー分けデータベースにおける以前にカテゴリー分けされたジョブ情報データセットのテキストと比較する段階と、
    各スクレープされたデータセットに対して各所定のカテゴリーの信頼値を決定する段階と、
    を含む請求項36に記載の方法。
  40. 信頼値が手動レビューに対する所定値より低い各カテゴリー分けされたスクレープされたデータセットにフラグを立てるステップと、
    レビューアがアドミニストレーションポータルを通してフラグの立ったカテゴリー分けを検証できるようにする手動レビューモジュールを用意するステップと、
    を更に備えた請求項39に記載の方法。
  41. 前記データベースへ返送される各データセットに指定されるジョブカテゴリーに対して信頼値を指定するステップを更に備えた、請求項36に記載の方法。
  42. 前記データベースへ返送されるデータセットであって、指定の信頼レベルが所定スレッシュホールドより低いデータセットにフラグを立てるステップを更に備えた、請求項41に記載の方法。
  43. 求職者による問合せに応答して前記ジョブサーチバンクからウェブクライアントサーバークラスターを経て求職者へ選択されたカテゴリー分けされたジョブ情報データセットを転送するステップを更に備えた、請求項36に記載の方法。
  44. 前記スクレーピング動作は、更に、
    インターネットを通してジョブボード又は会社の経歴サイトの1つにアクセスする段階と、
    所定のクオリティ基準を満足しないスクレープされたジョブ情報データセットにフラグを立てる段階と、
    前記データベースへ返送されるフラグの立てられたジョブ情報データセットの手動レビューを許す段階と、
    を含み、そして前記カテゴリー分け動作は、
    各スクレープされたジョブ情報データセットのデータを、カテゴリー分けデータベース内の以前にカテゴリー分けされたジョブデータセットのデータと比較する段階と、
    各スクレープされたジョブ情報データセットに対して各所定のジョブカテゴリーの信頼値を決定する段階と、
    を含む請求項36に記載の方法。
  45. 信頼値が手動レビューに対する所定値より低い各カテゴリー分けされスクレープされたデータセットにフラグを立てる段階と、
    レビューアがフラグの立ったカテゴリー分けを検証できるようにする手動レビューモジュールをアドミニストレーションポータルに用意するステップと、
    を更に備えた請求項44に記載の方法。
  46. ユーザによる問合せに応答して、前記サーチバンクからウェブサーバーを経てユーザへ選択されたカテゴリー分けされたデータセットを転送する段階を更に備えた、請求項44に記載の方法。
  47. 会社の経歴サイト及びジョブボードからジョブ説明データをスクレープするためのコンピュータプロセスを実行するインストラクションのコンピュータプログラムをエンコードするコンピュータ読み取り可能なメディアにおいて、前記コンピュータプロセスは、
    インターネットを通して利用できるサイトにおいて1つ以上のリスティングからリスティング情報データをスクレープし、
    各スクレープされたリスティング情報に対応するスクレープされたデータセットをデータベースに記憶し、
    前記データベースに記憶された各スクレープされたデータセットを、所定のクオリティ基準への適合性について分析し、そして
    前記データベースに記憶された各データセットを1つ以上の所定のカテゴリーへとカテゴリー分けし、そのカテゴリー分けされたデータセットを前記データベースへ返送する、
    ことを含むものである、コンピュータ読み取り可能なメディア。
  48. 前記プロセスは、更に、
    所定のクオリティ基準を満足しないスクレープされたデータセットにフラグを立て、
    前記データベースへ返送されるフラグの立てられたデータセットの手動レビューを許す、ことを含み、そして前記カテゴリー分け動作は、更に、
    各スクレープされたデータセットのテキストを、カテゴリー分けデータベース内の以前にカテゴリー分けされたデータセットのテキストと比較し、
    各スクレープされたデータセットに対して各所定のカテゴリーの信頼値を決定する、
    ことを含む請求項47に記載のコンピュータ読み取り可能なメディア。
  49. サーチ可能なデータ構造体へコンパイルするために複数のジョブ関連ソースからデータネットワークを経て捕獲されるジョブリスティング情報データの捕獲及び処理を管理するコンピュータシステムにおいて、
    ネットワークインターフェイスを通してシステムアドミニストレーション及びオペレーション制御を与えるアドミニストレーションポータルモジュールと、
    前記アドミニストレーションポータルモジュール内でサイトマネージメントモジュールにより識別された会社の経歴サイト及びジョブボードからスクレープされたジョブ情報データセットを得、そしてそのスクレープされたデータセットをデータベースに記憶するために、1つ以上のジョブスクレーピングエンジンのオペレーション及びそれらの間の通信を整合するスクレーピングマネージメントモジュールと、
    前記データベースに記憶された各ジョブデータセットを検査して、所定セットのジョブカテゴリーの1つ以上へとカテゴリー分けし、そしてそのカテゴリー分けされたジョブデータセットを前記データベースに返送するように動作できるジョブリスティングデータカテゴリー分けモジュールと、
    前記スクレーピングマネージメントモジュールに結合され、前記データベースに記憶された各スクレープされたジョブデータセットを、所定のクオリティルールへの適合性について分析するクオリティマネージメントモジュールと、
    を備えたコンピュータシステム。
  50. 前記データネットワークは、インターネットを含む、請求項49に記載のシステム。
  51. 前記データベースと通信し、前記データベースからのカテゴリー分けされたジョブデータセットをコンパイルしてジョブサーチバンクへ転送するためのサーチバンクシンクロナイザーを更に備えた、請求項49に記載のシステム。
  52. 前記カテゴリー分けモジュールは、
    ジョブカテゴリー分けデータベースと、
    各スクレープされたジョブデータセットのテキストを、前記ジョブカテゴリー分けデータベースにおける以前にカテゴリー分けされたジョブデータのテキストと比較することにより、各スクレープされたジョブリスティング情報データセットに対して各所定のジョブカテゴリーの信頼値を決定するカテゴリー分けモジュールと、
    を含む請求項51に記載のシステム。
  53. 前記アドミニストレーションポータルは、レビューアが前記カテゴリー分けモジュールにおいてドキュメントカテゴリー分けプラットホームサービスにより決定されたカテゴリーを検証するのを許すカテゴリー分けレビューモジュールを含む、請求項52に記載のシステム。
  54. 前記データベースへ返送される各ジョブデータセットは、前記カテゴリー分けモジュールにより決定される指定のジョブカテゴリーと、そのカテゴリーに対する指定の信頼値とを含む、請求項52に記載のシステム。
  55. 前記データベースへ返送される各データセットは、更に、各所定のジョブカテゴリーに対する信頼値を含む、請求項54に記載のシステム。
  56. 前記データベースへ返送される各ジョブデータセットは、前記指定の信頼値が所定のスレッシュホールド値より低い場合にセットされる手動レビューフラグを含む、請求項52に記載のシステム。
  57. 前記アドミニストレーションポータルは、レビューアが前記カテゴリー分けモジュールにより決定されたカテゴリー分けを検証するのを許すカテゴリー分けレビューモジュールを含む、請求項56に記載のシステム。
  58. 前記クオリティマネージメントモジュールは、所定の基準を満足しない各スクレープされたジョブデータセットに関連したクオリティフラグをセットする、請求項49に記載のシステム。
  59. 前記アドミニストレーションポータルは、更に、前記クオリティマネージメントモジュールと通信して、レビューアが、クオリティフラグがセットされたジョブデータセットを手動で検査するのを許すクオリティレビューモジュールを含む、請求項58に記載のシステム。
  60. ジョブ情報データセットを得、取り扱い、そしてコンパイルする方法において、
    インターネットを通して利用できる1つ以上の会社経歴サイト又はジョブボードにおいて1つ以上のジョブリスティングからジョブ情報データセットをスクレープするステップと、
    見つかった各スクレープされたジョブリスティングに対応するジョブデータセットをデータベースに記憶するステップと、
    前記データベースに記憶された各スクレープされたデータセットを所定のクオリティ基準への適合性について分析するステップと、
    前記データベースに記憶された各データセットを1つ以上の所定のジョブカテゴリーへカテゴリー分けし、そのカテゴリー分けされたジョブ情報データセットを前記データベースへ返送するステップと、
    を備えた方法。
  61. XLMフィードを通して1つ以上の顧客サイトからジョブ情報データセットを得るステップを更に備えた、請求項60に記載の方法。
  62. 前記カテゴリー分け動作は、更に、所定のジョブカテゴリー各々に対して各ジョブ情報データセットの信頼値を指定することを含む、請求項60に記載の方法。
  63. 前記カテゴリー分け動作は、
    各スクレープされたジョブ情報データセットのテキストを、ジョブカテゴリー分けデータベースにおける以前にカテゴリー分けされたジョブ情報データセットのテキストと比較する段階と、
    各スクレープされたデータセットに対して各所定のカテゴリーの信頼値を決定する段階と、
    を含む請求項60に記載の方法。
  64. 信頼値が手動レビューに対する所定値より低い各カテゴリー分けされたスクレープされたデータセットにフラグを立てるステップと、
    レビューアがアドミニストレーションポータルを通してフラグの立ったカテゴリー分けを検証できるようにする手動レビューモジュールを用意するステップと、
    を更に備えた請求項63に記載の方法。
  65. 前記データベースへ返送される各データセットに指定されるジョブカテゴリーに対して信頼値を指定するステップを更に備えた、請求項60に記載の方法。
  66. 前記データベースへ返送されるデータセットであって、指定の信頼レベルが所定スレッシュホールドより低いデータセットにフラグを立てるステップを更に備えた、請求項65に記載の方法。
  67. 求職者による問合せに応答して前記ジョブサーチバンクからウェブクライアントサーバークラスターを経て求職者へ選択されたカテゴリー分けされたジョブ情報データセットを転送するステップを更に備えた、請求項60に記載の方法。
  68. 前記スクレーピング動作は、更に、
    インターネットを通してジョブボード又は会社の経歴サイトの1つにアクセスする段階と、
    所定のクオリティ基準を満足しないスクレープされたジョブ情報データセットにフラグを立てる段階と、
    前記データベースへ返送されるフラグの立てられたジョブ情報データセットの手動レビューを許す段階と、
    を含み、そして前記カテゴリー分け動作は、
    各スクレープされたジョブ情報データセットのデータを、カテゴリー分けデータベース内の以前にカテゴリー分けされたジョブデータセットのデータと比較する段階と、
    各スクレープされたジョブ情報データセットに対して各所定のジョブカテゴリーの信頼値を決定する段階と、
    を含む請求項60に記載の方法。
  69. 信頼値が手動レビューに対する所定値より低い各カテゴリー分けされスクレープされたデータセットにフラグを立てる段階と、
    レビューアがフラグの立ったカテゴリー分けを検証できるようにする手動レビューモジュールをアドミニストレーションポータルに用意するステップと、
    を更に備えた請求項68に記載の方法。
  70. ユーザによる問合せに応答して、前記サーチバンクからウェブサーバーを経てユーザへ選択されたカテゴリー分けされたデータセットを転送する段階を更に備えた、請求項68に記載の方法。
  71. 会社の経歴サイト及びジョブボードからジョブ説明データをスクレープするためのコンピュータプロセスを実行するインストラクションのコンピュータプログラムをエンコードするコンピュータ読み取り可能なメディアにおいて、前記コンピュータプロセスは、
    インターネットを通して利用できるサイトにおいて1つ以上のリスティングからリスティング情報データをスクレープし、
    各スクレープされたリスティング情報に対応するスクレープされたデータセットをデータベースに記憶し、
    前記データベースに記憶された各スクレープされたデータセットを、所定のクオリティ基準への適合性について分析し、そして
    前記データベースに記憶された各データセットを1つ以上の所定のカテゴリーへとカテゴリー分けし、そのカテゴリー分けされたデータセットを前記データベースへ返送する、
    ことを含むものである、コンピュータ読み取り可能なメディア。
  72. 前記プロセスは、更に、
    所定のクオリティ基準を満足しないスクレープされたデータセットにフラグを立て、
    前記データベースへ返送されるフラグの立てられたデータセットの手動レビューを許す、ことを含み、そして前記カテゴリー分け動作は、更に、
    各スクレープされたデータセットのテキストを、カテゴリー分けデータベース内の以前にカテゴリー分けされたデータセットのテキストと比較し、
    各スクレープされたデータセットに対して各所定のカテゴリーの信頼値を決定する、
    ことを含む請求項71に記載のコンピュータ読み取り可能なメディア。
JP2008501026A 2005-03-11 2006-03-10 リスティングを管理するためのシステム及び方法 Pending JP2008537811A (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US66128005P 2005-03-11 2005-03-11
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 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 (1)

Publication Number Publication Date
JP2008537811A true JP2008537811A (ja) 2008-09-25

Family

ID=39846670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008501026A Pending JP2008537811A (ja) 2005-03-11 2006-03-10 リスティングを管理するためのシステム及び方法

Country Status (2)

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

Cited By (3)

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

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9519883B2 (en) 2011-06-28 2016-12-13 Microsoft Technology Licensing, Llc Automatic project content suggestion
US20130006986A1 (en) * 2011-06-28 2013-01-03 Microsoft Corporation Automatic Classification of Electronic Content Into Projects
CN102609456A (zh) * 2012-01-12 2012-07-25 凤凰在线(北京)信息技术有限公司 一种文章实时智能抓取系统和方法
CN110580171B (zh) * 2019-09-17 2023-06-09 RealMe重庆移动通信有限公司 App分类方法、相关装置及产品
KR20210048349A (ko) * 2019-10-23 2021-05-03 에스케이하이닉스 주식회사 메모리 시스템
CN113407287A (zh) * 2021-06-29 2021-09-17 中国平安人寿保险股份有限公司 可视化页面的快速生成方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134600A (ja) * 1999-11-08 2001-05-18 Nec Corp 情報抽出システム、情報抽出方法および情報抽出用プログラムを記録した記録媒体
JP2002117135A (ja) * 2000-08-02 2002-04-19 Masunaga Sogo Keikaku:Kk ウェブサイトセキュリティシステム
JP2002202983A (ja) * 2000-12-28 2002-07-19 Matsushita Electric Ind Co Ltd 分類への帰属度計算基準作成方法及び装置
JP2003242078A (ja) * 2002-02-18 2003-08-29 Hitachi Ltd 電子掲示板システム
JP2003248687A (ja) * 2002-02-22 2003-09-05 Nippon Yunishisu Kk 情報処理装置およびその方法
JP2004326712A (ja) * 2003-04-23 2004-11-18 Atsushi Matsumoto インターネット上における求人情報の自動収集方法および供給方法

Family Cites Families (3)

* 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
JP5105456B2 (ja) * 2000-05-30 2012-12-26 株式会社ホットリンク 知識サービスを提供する分散型モニタリングシステム
CN1536483A (zh) * 2003-04-04 2004-10-13 陈文中 网络信息抽取及处理的方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134600A (ja) * 1999-11-08 2001-05-18 Nec Corp 情報抽出システム、情報抽出方法および情報抽出用プログラムを記録した記録媒体
JP2002117135A (ja) * 2000-08-02 2002-04-19 Masunaga Sogo Keikaku:Kk ウェブサイトセキュリティシステム
JP2002202983A (ja) * 2000-12-28 2002-07-19 Matsushita Electric Ind Co Ltd 分類への帰属度計算基準作成方法及び装置
JP2003242078A (ja) * 2002-02-18 2003-08-29 Hitachi Ltd 電子掲示板システム
JP2003248687A (ja) * 2002-02-22 2003-09-05 Nippon Yunishisu Kk 情報処理装置およびその方法
JP2004326712A (ja) * 2003-04-23 2004-11-18 Atsushi Matsumoto インターネット上における求人情報の自動収集方法および供給方法

Cited By (6)

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

Also Published As

Publication number Publication date
CN101203847A (zh) 2008-06-18
CN101203847B (zh) 2010-05-19

Similar Documents

Publication Publication Date Title
KR100996131B1 (ko) 리스팅 관리 시스템 및 방법
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
US20210286830A1 (en) Data loss prevention system for cloud security based on document discourse analysis
US11775494B2 (en) Multi-service business platform system having entity resolution systems and methods
US11694040B2 (en) Using communicative discourse trees to detect a request for an explanation
US20160196587A1 (en) Predictive modeling system applied to contextual commerce
US7587395B2 (en) System and method for providing profile matching with an unstructured document
JP2008537811A (ja) リスティングを管理するためのシステム及び方法
US11941714B2 (en) Analysis of intellectual-property data in relation to products and services
US10839406B2 (en) A/B testing for search engine optimization
Zhu et al. IBM Watson content analytics: discovering actionable insight from your content
JP2005316999A (ja) エンハンストドキュメント取り出しのためのコンテンツ伝播
AU2010286432A1 (en) System and method for managing workforce transitions between public and private sector employment
Ghavami Big data management: Data governance principles for big data analytics
Moore Performance Measures for Knowledge
US20200104398A1 (en) Unified management of targeting attributes in a/b tests
Kimball The evolving role of the enterprise data warehouse in the era of big data analytics
Serra Deciphering Data Architectures
WO2017023292A1 (en) System and method for model creation in an organizational environment
Wang et al. Smart medical prediction for guidance: a mechanism study of machine learning
White et al. Enterprise search in the European Union: a techno-economic analysis
US20230316186A1 (en) Multi-service business platform system having entity resolution systems and methods
Fekete The Goal-oriented Business Intelligence Architectures Method: A Process-based Approach to Combine Traditional and Novel Analytical Technologies

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100726

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101022

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101029

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101228

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110411