以下、添付図面を参照しながら、本発明の実施の形態について詳細に説明する。
図1は、本発明の第1の実施の形態による求人システム1の構成を示す図である。本実施の形態による求人システム1は、企業を含む各種法人や個人事業主などの求人主により提出される求人広告を求人サイト(求人媒体)に表示するためのシステムであり、図1に示すように、運用型求人連携プラットフォームを構成する求人連携サーバ10と、求人主の採用活動のために用いられる採用管理サーバ20と、求人サイトを構成する求人媒体サーバ30と、求職者のコンピュータである求職者端末40とがネットワーク2を介して接続された構成を有している。なお、図1には採用管理サーバ20、求人媒体サーバ30、及び求職者端末40をそれぞれ1つずつ図示しているが、実際の求人システム1には、各複数の採用管理サーバ20、求人媒体サーバ30、及び求職者端末40が含まれ得る。
初めに求人システム1の動作の概要を説明すると、求人システム1を利用しようとする求人主はまず、求人連携サーバ10のアカウントを取得し、広告料として使用する金銭をチャージする。広告料の課金方式にはCPA(Cost Per Acquisition)とCPC(Cost Per Click)とがあり、いずれを採用するかは求人媒体サーバ30ごとに異なる。CPAは、実際に応募があった場合に課金が発生する課金方式であり、求人広告からの遷移先であるランディングページを求人媒体サーバ30内に構築する必要がある。CPCは、求人広告からランディングページへの遷移が行われた場合に課金が発生する課金方式であり、ランディングページの構築場所は任意である。採用管理サーバ20内での構築が一般的であるが、求人媒体サーバ30内や、求人主の自社サイトを構築しているHTMLサーバ内などに構築してもよい。以下では、CPCの場合のランディングページを採用管理サーバ20内に構築することとして説明を続ける。
求人主は、採用管理サーバ20を介して求人連携サーバ10に求人情報を供給するとともに、求人情報を求人サイトに掲載する際に必要となる各種の情報(具体的には、希望する課金方式、掲載期間、コンバージョン単価の目標値(目標応募単価)とその調整率、予算に関する情報など)を含むキャンペーン情報を求人連携サーバ10に入力する。キャンペーン情報には、求人主によって1以上の求人情報が紐付けられ、それによってキャンペーン情報は、求人主による複数の求人情報のうちの1つ以上を特定する情報となる。
求人連携サーバ10は、キャンペーン情報が入力されたことを受け、対応する1以上の求人情報を求人媒体サーバ30に連携する処理を行う。詳しくは後述するが、この処理には、それまでの成果に応じてコンバージョン単価を調整する処理、連携対象となる求人媒体サーバ30を決定する処理、各求人情報に求人媒体サーバ30内での表示の優先順位を示す表示優先順位情報を付与する処理、調整後のコンバージョン単価及び付与した表示優先順位情報を含む求人情報のフィードを生成し、対応する求人媒体サーバ30に送信する処理が含まれる。また、求人連携サーバ10は、求人情報が求職者端末40の画面に表示された回数(以下「インプレッション数」という)、求人情報が表示された結果として発生した応募の数(CPAの場合。以下「応募数」という)、及び、ランディングページへの遷移の数(CPCの場合。以下「クリック数」という)を管理し、応募数又はクリック数に応じた金額をチャージ残高から減算するとともに、次の連携の際のコンバージョン単価の調整に使用する。
図2は、求人連携サーバ10、採用管理サーバ20、及び求人媒体サーバ30それぞれの基本的なハードウェア構成を示す図である。同図に示すように、求人連携サーバ10、採用管理サーバ20、及び求人媒体サーバ30はそれぞれ、プロセッサ101と、記憶装置102と、通信装置103と、入力装置104と、出力装置105とがバス106を介して相互に接続された構成を有して構成される。
プロセッサ101は、記憶装置102に記憶されるプログラムを読み出して実行する中央処理装置である。求人連携サーバ10、採用管理サーバ20、及び求人媒体サーバ30が行う処理として後述する各処理は、それぞれのプロセッサ101がそれぞれの記憶装置102に記憶されるプログラムを読み出して実行することによって実現される。プロセッサ101は、バス106を介して当該サーバ内の各部と通信可能に構成されており、実行するプログラムの記述に応じて、各部の制御や記憶装置102に記憶されるデータの処理などを行う。
記憶装置102は、各種プログラム及び各種データを一時的又は永続的に記憶する装置である。記憶装置102は通常、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などによって構成される主記憶装置、ハードディスクやSSD(Solid State Drive)などによって構成される補助記憶装置など、複数の記憶装置の組み合わせによって構成される。
通信装置103は、プロセッサ101の制御に応じ、外部の通信装置(図1に示したネットワーク2を含む)との間で通信を実行する装置である。通信装置103が行う通信の方式は特に限定されないが、一例として有線又は無線のWAN(Wide Area Network)又はLAN(Local Area Network)が挙げられる。
入力装置104は、ユーザからの入力を受け付ける装置であり、マウス、キーボード、タッチパネルなどの各種入力手段を含む。入力装置104が受け付けたユーザ入力の内容は、バス106を介してプロセッサ101に伝達される。出力装置105は、プロセッサ101の制御に応じてユーザに対する出力を行う装置であり、ディスプレイやスピーカなどの各種出力手段を含む。なお、入力装置104及び出力装置105は、求人連携サーバ10、採用管理サーバ20、及び求人媒体サーバ30のそれぞれに接続されるクライアント装置に実装されることとしてもよい。
図1に戻る。ネットワーク2は、例えばインターネットなどのIP(Internet Protocol)ネットワークである。求人連携サーバ10、採用管理サーバ20、求人媒体サーバ30、及び求職者端末40は、ネットワーク2を介して相互に通信可能に構成される。
図3は、求人連携サーバ10、採用管理サーバ20、及び求人媒体サーバ30の機能ブロックを示す略ブロック図である。同図に示すように、求人連携サーバ10は機能的に、入力受付部11、データベース12、フィード生成部13、フィード連携部14、成果処理部15を有して構成される。また、採用管理サーバ20は機能的に、求人情報入力受付部21、求人詳細情報表示制御部22、応募受付部23、応募情報取得部24を有して構成される。さらに、求人媒体サーバ30は機能的に、フィード表示制御部31、クリック受付部32、求人詳細情報表示制御部33、応募受付部34を有して構成される。
また、図4は、データベース12の構造を示す図である。同図に示すように、データベース12内には、アカウントテーブルT1、チャージ履歴テーブルT2、求人情報テーブルT3、フィード情報テーブルT4、キャンペーンテーブルT5、キャンペーン求人対応テーブルT6、求人媒体テーブルT7、ブラックリストテーブルT8、下限入札単価テーブルT9、成果テーブルT10、キャンペーン成果テーブルT11が格納される。
図5~図9は、図4に示した各テーブルの構造を詳細に示す図である。これらの図を参照しながら各テーブルの概要を説明すると、まず図5(a)に示すアカウントテーブルT1は、求人連携サーバ10における求人主の情報(以下「アカウント情報」という)を記憶するテーブルであり、アカウントに対して一意に割り当てられるアカウントIDに対応付けて、採用管理サイトID、求人主ID、求人主情報、連携中止フラグを記憶するよう構成される。このうち採用管理サイトIDは、採用管理サーバ20に対して一意に割り当てられる識別情報である。また、求人主IDは、求人主に対して一意に割り当てられる識別情報である。求人主情報は求人主の詳細を示す情報であり、企業名、担当者名、担当者メールアドレス、電話番号などの情報を含んで構成される。
図5(b)に示すチャージ履歴テーブルT2は、求人主が求人連携サーバ10にチャージした金額を記憶するためのテーブルであり、チャージ動作に対して一意に割り当てられるチャージ履歴IDに対応付けて、アカウントID、チャージ日、チャージ金額、消化金額、開始日、終了日を記憶するよう構成される。チャージ金額は、求人広告の掲載費用として求人主が設定した限度額を示し、消化金額は、チャージ金額のうち発生した課金を精算するために使用された金額を示す。開始日及び終了日には、チャージ金額の利用を開始する日と終了する日がそれぞれ設定される。
図6(a)に示す求人情報テーブルT3は、求人主から採用管理サーバ20を介して供給される求人情報を記憶するテーブルであり、採用管理サイトID及び求人IDの組み合わせに対応付けて、求人主ID、求人主情報、採用条件、ランディングページのURL(CPA)、ランディングページのURL(CPC)、掲載開始日、掲載終了日を記憶するよう構成される。求人IDは、採用管理サイトIDごとに、求人情報に対して一意に割り当てられる識別情報であり、採用管理サイトIDとの組み合わせにより、求人連携サーバ10が取り扱うすべての求人情報を一意に識別する識別情報として機能する。ただし、求人連携サーバ10が取り扱うすべての求人情報を一意に識別する識別情報を単独で構成するように、求人IDを構成してもよい。
求人主情報には、求人主名、求人主所在地、求人主事業内容、業種カテゴリ、業種、採用担当部署、電話番号などの情報が含まれ、採用条件には、職種、雇用形態、勤務地(地域、都道府県、郵便番号、住所、建物名、店舗名、アクセス、最寄駅)、仕事内容、特徴、PR・職場情報、給与種別、給与、最低給与、最大給与、給与詳細、応募条件、学歴、勤務開始時間、勤務終了時間、勤務時間詳細、休日・休暇、福利厚生、交通費支給の有無、採用予定人数などの情報が含まれる。ランディングページのURL(CPA)は、課金方式がCPAとなる場合のランディングページのURLであり、ランディングページのURL(CPC)は、課金方式がCPCとなる場合のランディングページのURLである。
図6(b)に示すフィード情報テーブルT4は、求人連携サーバ10から求人媒体サーバ30に連携するフィード情報を記憶するテーブルであり、連携動作に対して一意に割り当てられるフィードIDに対応付けて、求人媒体ID、採用管理サイトID、求人主ID、キャンペーンID、求人ID、コンバージョン単価、表示優先順位情報、有効フラグを記憶するよう構成される。フィード情報内に含まれる採用管理サイトID及び求人IDの組み合わせにより、1つのフィード情報に対して1つの求人情報が対応付けられる。
図7(a)に示すキャンペーンテーブルT5は、求人主が求人媒体テーブルT7に入力するキャンペーン情報を記憶するテーブルであり、キャンペーン情報に対して一意に割り当てられるキャンペーンIDに対応付けて、採用管理サイトID、求人主ID、キャンペーン名、CPA目標応募単価、CPC応募単価調整範囲、CPC目標応募単価、CPA応募単価調整範囲、CPAプラン利用フラグ、CPCプラン利用フラグ、応募者ターゲット情報、入札開始日、入札終了日、入札有効フラグ、入札ステータス、初回入札日、CPA予算情報、CPC予算情報を記憶するよう構成される。
キャンペーンテーブルT5に記憶される各情報のうちCPAプラン利用フラグには、課金方式としてCPAを希望する場合にTrue、希望しない場合にFalseが設定される。同様に、CPCプラン利用フラグには、課金方式としてCPCを希望する場合にTrue、希望しない場合にFalseが設定される。CPAプラン利用フラグ及びCPCプラン利用フラグは、少なくともいずれか一方がTrueである必要があり、CPAプラン利用フラグ及びCPCプラン利用フラグの両方がTrueであってもよい。
CPA応募単価調整範囲は課金方式がCPAとなる場合におけるコンバージョン単価(以下「CPAコンバージョン単価」という場合がある)の調整範囲を示す情報であり、例えばCPA目標応募単価の80%以上120%以下という範囲を示す情報が設定される。同様に、CPC応募単価調整範囲は課金方式がCPCとなる場合におけるコンバージョン単価(以下「CPCコンバージョン単価」という場合がある)の調整範囲を示す情報であり、例えばCPC目標応募単価の80%以上120%以下という範囲を示す情報が設定される。
応募者ターゲット情報は、求める応募者の属性を示す1以上の情報(住所地、職種、雇用形態、希望する給料の範囲、福利厚生など)により構成される。入札開始日及び入札終了日には、求人情報の掲載を開始する日と終了する日がそれぞれ設定される。入札有効フラグは、当該レコードが現在有効であるか否かを示す情報であり、例えば求人主自身によって設定される。入札ステータスは、現在、求人媒体サーバ30にフィードを連携中かどうかを示す情報であり、後述するフィード連携部14により1日に1回以上更新される。初回入札日は、当該レコードに対応するフィードを初めて求人媒体サーバ30に連携した日を示す情報であり、後述するフィード連携部14により更新される。CPA予算情報は、CPAを利用する場合の予算を規定する情報であり、求人主が希望する月間課金額の最大値が設定される。CPC予算情報は、CPCを利用する場合の予算を規定する情報であり、求人主が希望する1日課金額及び月間課金額の最大値が設定される。
図7(b)に示すキャンペーン求人対応テーブルT6は、求人主によって各キャンペーン情報に紐付けられる1以上の求人情報を記憶するテーブルであり、キャンペーンIDに対応付けて求人IDを記憶するよう構成される。
図8(a)に示す求人媒体テーブルT7は、求人媒体に関する各種情報を記憶するテーブルであり、求人媒体サーバ30に対して一意に割り当てられる求人媒体IDに対応付けて、求人媒体名、入札プラン、開放率、デフォルト下限入札単価、優先順位決定ロジック情報、特化項目、連携除外条件を記憶するよう構成される。入札プランには、求人媒体サーバ30の課金方式(CPA又はCPC)が設定される。開放率は、求人サイトに掲載される全求人広告のうち、求人連携サーバ10から連携された求人広告の占める割合の最大値である。その他の項目については、後述する。
図8(b)に示すブラックリストテーブルT8及び図8(c)に示す下限入札単価テーブルT9はそれぞれ、複数の求人媒体サーバ30のそれぞれが有する、連携する求人情報についての1以上の条件を記憶するテーブルである。ブラックリストテーブルT8は、連携を拒否する拒否条件を記憶するもので、求人媒体IDに対応付けて、項目名、キーワード、演算子を記憶するよう構成される。項目名は、求人情報テーブルT3又はキャンペーンテーブルT5に含まれる項目の名称であり、演算子は、対応するキーワードが含まれていれば直ちに連携中止となるのか、或いは、他のキーワードとの組み合わせが含まれていた場合に連携中止となるのかを示す情報である。下限入札単価テーブルT9は、条件ごとに異なる下限入札単価を記憶するもので、求人媒体IDに対応付けて、条件名、条件情報、下限入札単価を記憶するよう構成される。
図9(a)に示す成果テーブルT10は、上述した応募数(CPAの場合)又はクリック数(CPCの場合)を記録するテーブルであり、集計対象日ごとに、求人媒体ID、採用管理サイトID、求人主ID、キャンペーンID、及び求人IDの組み合わせに対応付けて、クリック数、応募数、消費額を記憶するよう構成される。消費額は、ランディングページへの遷移又は応募に応じて実際に発生した課金の額である。
図9(b)に示すキャンペーン成果テーブルT11は、成果テーブルT10に格納される各情報をキャンペーンID、入札プラン、及び集計対象日の組み合わせごとにまとめたテーブルであり、キャンペーンID、入札プラン、及び集計対象日の組み合わせに対応付けて、インプレッション数、クリック数、応募数、消費額を記憶するよう構成される。
以下、必要に応じて図4~図9も参照しながら、図3に示した各機能部の機能について詳しく説明する。
入力受付部11は、求人主から、アカウント情報、チャージ、キャンペーン情報の入力を受け付ける機能部である。求人主の担当者は、所定のAPI(Application Programming Interface)を用いて自分のコンピュータ(図示せず)から求人連携サーバ10にアクセスすることにより、これらの情報の入力を行う。
まだアカウントテーブルT1にアカウント情報が登録されていない求人主からアカウント情報が入力された場合、入力受付部11は新たなアカウントIDを付与し、付与したアカウントIDに対応付けて、入力されたアカウント情報をアカウントテーブルT1に追加する。なお、アカウントIDの付与は、入力受付部11が自動的に行うこととしてもよいし、運用型求人連携プラットフォームの担当者が手作業で行うこととしてもよい。既にアカウント情報が登録されている求人主からアカウント情報が入力された場合、入力受付部11は、入力されたアカウント情報によりアカウントテーブルT1を更新する。
チャージが入力された場合、入力受付部11は、チャージを入力した求人主のアカウントIDに対応付けて、入力されたチャージの内容をチャージ履歴テーブルT2に追加する。キャンペーン情報が入力された場合、入力受付部11は、新たなキャンペーンIDを付与し、付与したキャンペーンIDに対応するレコードを、キャンペーンテーブルT5及びキャンペーン求人対応テーブルT6のそれぞれに追加する。
求人情報入力受付部21は、求人主から求人情報の入力を受け付ける機能部である。ここで受け付けられる求人情報には、上述した求人主情報、採用条件、掲載開始日、掲載終了日などが含まれる。求人情報入力受付部21は、受け付けた求人情報を所定のXML形式で入力受付部11に供給する。入力受付部11は、供給された求人情報の内容を求人情報テーブルT3の各項目にマッピングすることにより、供給された求人情報を求人情報テーブルT3に追加する。
図10は、入力受付部11が行う求人情報入力受付処理の処理フローを示すフロー図である。同図に示すように、入力受付部11はまず、採用管理サーバ20からXML形式の求人情報を受信する(ステップS1)。この求人情報の詳しい内容は、採用管理サーバ20の仕様によってまちまちである。そこで入力受付部11は、受信した求人情報の各項目を求人情報テーブルT3の項目にマッピングする処理を行う(ステップS2)。そして、その結果を用いて求人情報テーブルT3に新規レコードを追加することにより、求人情報テーブルT3に新たな求人情報を追加する(ステップS3)。
図3に戻る。フィード生成部13は、求人媒体サーバ30を識別するための求人媒体IDと、求人情報を識別するための採用管理サイトID及び求人IDの組み合わせとを含むフィード情報を生成する機能部である。
図11は、フィード生成部13が行うフィード情報生成処理の処理フローを示すフロー図である。フィード生成部13は、例えば1日に1回以上のバッチ処理により、このフィード情報生成処理を実行するよう構成される。以下、この図11を参照しながら、フィード情報生成処理について詳細に説明する。
フィード生成部13は、キャンペーンテーブルT5内の各レコード(キャンペーン情報)について、ステップS11~S21の処理を実行する(ステップS10)。以下、処理対象となっているレコードにかかるキャンペーンを「注目キャンペーン」と称する。注目キャンペーンについての処理を開始したフィード生成部13はまず、注目キャンペーンにかかる入札が有効であるか否かを判定する(ステップS11)。この判定の結果は、具体的には、当日が入札開始日と入札終了日の間の日付であり、かつ、入札有効フラグが有効となっている場合に肯定となり、そうでない場合に否定となる。フィード生成部13は、ステップS11において有効であると判定した場合にはステップS12に処理を移し、有効でないと判定した場合には次のレコードに処理を移す。
次にフィード生成部13は、複数の求人媒体サーバ30のそれぞれにおける求人主に対する課金の発生状況に基づいて、連携を中止するか否かを決定する処理を行う(ステップS12~S15)。具体的に説明すると、フィード生成部13はまず、アカウントテーブルT1を参照することにより、注目キャンペーンに対応するアカウントIDがアカウント単位で連携中止となっているか否かを確認する(ステップS12)。具体的には、アカウントIDに対応付けて記憶される連携中止フラグを確認する。そして、その結果に基づいて連携を中止するか否かを判定し(ステップS13)、連携中止フラグがFalseであればステップS14に処理を移す一方、Trueになっていれば次のレコードに処理を移す。
図12は、連携中止フラグを設定するためのアカウント単位連携中止処理の処理フローを示すフロー図である。この処理は、求人主のチャージ残高と、求人主の日次予算消化額の平均値とに基づき、連携を中止するか否かを決定するための処理であり、図3に示した成果処理部15により、課金が発生したアカウントについて実行される。以下、図12を参照しながら、アカウント単位連携中止処理について詳細に説明する。
成果処理部15は、課金が発生したアカウント(以下「注目アカウント」という)のチャージ履歴テーブルT2を参照することにより、注目アカウントのチャージ残高を取得する(ステップS30)。次に成果処理部15は、注目アカウントに対応する日々の消費額を成果テーブルT10から読み出し、読み出した消費額に基づいて、注目アカウントの日次予算消化額を算出する(ステップS31)。そして、その平均値(平均日次予算消化額)を算出する(ステップS32)。
続いて成果処理部15は、平均日次予算消化額に予め定められている設定日数を乗算し、得られた金額がチャージ残高を上回っているか否かを判定する(ステップS33)。設定日数には、1以上の値が予め設定される。判定の結果、上回っていると判定した成果処理部15は、アカウントテーブルT1において注目アカウントの連携中止フラグにTrueを設定する(ステップS34)。一方、上回っていないと判定した成果処理部15は、アカウントテーブルT1において注目アカウントの連携中止フラグにFalseを設定する(ステップS35)。アカウント単位連携中止処理は、ここまでの処理によって終了する。
図11に戻る。ステップS14に遷移したフィード生成部13は、キャンペーンの月額予算と、求人主の日次予算消化額の平均値とに基づいて、注目キャンペーンに紐付けられている1以上の求人情報の連携を中止するか否かを決定するためのキャンペーン単位連携中止処理を実行する。
図13は、ステップS14においてフィード生成部13が行うキャンペーン単位連携中止処理の処理フローを示すフロー図である。以下、この図13を参照しながら、キャンペーン単位連携中止処理について詳細に説明する。
フィード生成部13はまず、注目キャンペーンの月額予算をキャンペーンテーブルから取得する(ステップS40)。具体的には、CPAを利用するキャンペーンであればCPA予算情報に含まれる月間課金額の最大値を、CPCを利用するキャンペーンであればCPC予算情報に含まれる月間課金額の最大値をそれぞれ取得する。
次にフィード生成部13は、注目キャンペーンに対応する日々の消費額を成果テーブルT10から読み出し、読み出した消費額に基づいて、注目キャンペーンの日次予算消化額を算出する(ステップS41)。そして、その平均値(平均日次予算消化額)を算出する(ステップS42)。
続いてフィード生成部13は、平均日次予算消化額に予め定められている設定日数を乗算してなる値を当月の累計予算消化額に加算し、得られた金額がステップS40で取得した月額予算を上回っているか否かを判定する(ステップS43)。設定日数には、1以上の値が予め設定される。フィード生成部13は、ステップS43において上回っていると判定した場合にのみ注目キャンペーンの連携中止を決定し(ステップS44)、処理を終了する。
図11に戻る。キャンペーン単位連携中止処理を終了したフィード生成部13は、処理の結果として注目キャンペーンの連携中止を決定したか否かを判定し(ステップS15)、決定していない場合にはステップS16に処理を移す一方、決定した場合には次のレコードに処理を移す。
次にフィード生成部13は、注目キャンペーンのこれまでの成果に応じて、コンバージョン単価(具体的には、CPAコンバージョン単価及びCPCコンバージョン単価)を調整する(ステップS16)。具体的に説明すると、例えばCPAコンバージョン単価は、キャンペーンテーブルT5に記憶されるCPA目標応募単価に任意の調整率を乗算することによって算出される値であり、フィード生成部13は、この調整率をキャンペーンテーブルT5に記憶されるCPA応募単価調整範囲の範囲内で調整することにより、CPAコンバージョン単価の調整を行う。CPCコンバージョン単価についても同様である。
具体的な例を挙げると、まず課金方式がCPAとなる求人媒体に対して注目キャンペーンの連携を初めて行う場合(つまり、キャンペーン成果テーブルT11内に対応するレコードがない場合)、フィード生成部13は、キャンペーンテーブルT5内に記憶されているCPA目標応募単価に最小の調整率(例えば80%)を乗算することによって得られる値をCPAコンバージョン単価とする。そして、その結果として得られたインプレッション数が所定の目標値より小さい場合には、所定値(例えば5%)だけ調整率を引き上げて、新たなCPAコンバージョン単価を算出する。こうしてフィード生成部13が調整率を徐々に引き上げていくことにより、不必要な予算をかけずに、所定の目標値以上のインプレッション数を実現することが可能になる。なお、フィード生成部13は、インプレッション数が所定の目標値に比べて大きくなりすぎた場合(例えば、所定の目標値に所定の倍率を乗じてなる値を超えた場合)には、調整率を引き下げることとしてもよい。
次にフィード生成部13は、求人情報の連携先となる求人媒体サーバ30を決定するための連携先媒体決定処理を実行する(ステップS17)。この処理において求人媒体サーバ30は、複数の求人媒体それぞれの下限入札単価(求人媒体テーブルT7内に規定されるデフォルト下限入札単価、又は、下限入札単価テーブルT9内に含まれる下限入札単価)と、求人主により入力された求人情報のコンバージョン単価(ステップS16で調整したもの)とに基づいて、求人情報の連携先となる1以上の求人媒体サーバ30を決定する処理を行う。
図14及び図15は、ステップS17においてフィード生成部13が行う連携先媒体決定処理の処理フローを示すフロー図である。以下、この図13を参照しながら、連携先媒体決定処理について詳細に説明する。
フィード生成部13は、求人媒体テーブルT7内の各レコードについて、ステップS51~S60の処理を実行する(ステップS50)。以下、処理対象となっているレコードにかかる求人媒体を「注目求人媒体」と称する。注目求人媒体についての処理を開始したフィード生成部13は、下限入札単価及びコンバージョン単価に基づく処理を行う前にまず、注目求人媒体の課金方式が注目キャンペーンの課金方式と一致するか否かを判定する(ステップS51)。この判定の結果は、求人媒体テーブルT7に設定されている注目求人媒体の入札プランがCPAであり、かつ、キャンペーンテーブルT5に設定されている注目キャンペーンのCPAプラン利用フラグがTrueである場合、及び、求人媒体テーブルT7に設定されている注目求人媒体の入札プランがCPCであり、かつ、キャンペーンテーブルT5に設定されている注目キャンペーンのCPCプラン利用フラグがTrueである場合のいずれかに肯定となり、その他の場合に否定となる。
ステップS51で肯定的な判定結果を得たフィード生成部13は、ステップS52に処理を移す。一方、ステップS59で否定的な判定結果を得たフィード生成部13は、図15に示すステップS60に処理を移し、注目求人媒体を連携先から除外したうえで(ステップS60)、次のレコードに処理を移す。
ステップS52においてフィード生成部13は、注目キャンペーンが注目求人媒体に対応付けてブラックリストテーブルT8内に記憶されている拒否条件に該当するか否かを判定する(ステップS52)。具体的に説明すると、フィード生成部13は、注目キャンペーンに紐付く各求人情報について、ブラックリストテーブルT8内の項目名により示される求人情報内の項目に、該項目名に対応付けてブラックリストテーブルT8内に記憶されるキーワードが含まれているか否かを判定する。そして、含まれていると判定した場合、フィード生成部13は、注目キャンペーンがブラックリストテーブルT8内に記憶されている拒否条件に該当すると判定する。
ステップS52で否定的な判定結果を得たフィード生成部13は、ステップS53に処理を移す。一方、ステップS51で肯定的な判定結果を得たフィード生成部13は、図15に示すステップS60に処理を移し、注目求人媒体を連携先から除外したうえで(ステップS60)、次のレコードに処理を移す。
ステップS53においてフィード生成部13は、注目求人媒体に関して下限入札単価テーブルT9が存在するか否かを判定する(ステップS53)。その結果、存在すると判定した場合にはステップS54に処理を移し、存在しないと判定した場合には図15のステップS57に処理を移す。
ステップS54に処理を進めたフィード生成部13は、注目キャンペーンに紐付けられている1以上の求人情報のそれぞれについて、対応する下限入札単価を下限入札単価テーブルT9から取得し、取得した下限入札単価と、ステップS16での調整後のコンバージョン単価とに基づいて、注目求人媒体を連携先から除外するか否かを決定する処理を行う。具体的に説明すると、フィード生成部13は、注目求人媒体に対応する下限入札単価テーブルT9に含まれる条件ごとに、ステップS55,S56の処理を行う。
ステップS55は、注目キャンペーンに含まれる1以上の求人情報のそれぞれについて、条件を満たすか否かを判定する処理である。ここでいう条件は、例えば、雇用形態に「正社員」を含み、かつ、職種に「飲食業」を含む、というようなものである。条件を満たす求人情報があると判定した場合、フィード生成部13は、注目キャンペーンのコンバージョン単価(ステップS16で調整したもの。注目求人媒体の課金方式がCPAである場合にはCPAコンバージョン単価。注目求人媒体の課金方式がCPCである場合にはCPCコンバージョン単価)が、該条件に対応付けて下限入札単価テーブルに記憶される下限入札単価以上となっているか否かをさらに判定し(ステップS56)、下限入札単価以上となっていると判定した場合には次の条件に処理を移す一方、下限入札単価以上になっていないと判定した場合には、図15に示すステップS60に処理を移し、注目求人媒体を連携先から除外したうえで(ステップS60)、次のレコードに処理を移す。フィード生成部13が以上の処理を行うことにより、求人媒体側から見て、条件ごとに下限入札単価を設定し、その下限入札単価を満たしていないキャンペーンを連携対象から除外することが可能になる。ステップS60に移ることなくステップS54の繰り返し処理をすべて完了したフィード生成部13は、図15のステップS58に処理を移す。
図15に移り、ステップS56においてフィード生成部13は、注目キャンペーンのコンバージョン単価(ステップS16で調整したもの。注目求人媒体の課金方式がCPAである場合にはCPAコンバージョン単価。注目求人媒体の課金方式がCPCである場合にはCPCコンバージョン単価)が、注目求人媒体のデフォルト下限入札単価となっているか否かを判定する(ステップS57)。そして、デフォルト下限入札単価以上となっていると判定した場合にはステップS58に処理を移す一方、デフォルト下限入札単価以上になっていないと判定した場合には、ステップS60に処理を移し、注目求人媒体を連携先から除外したうえで(ステップS60)、次のレコードに処理を移す。
ステップS58においてフィード生成部13は、注目キャンペーンが注目求人媒体の特化項目に該当するか否かを判定する(ステップS58)。特化項目は、求人サイトが特定の求人に特化している場合に、その特化している求人の内容を示す情報であり、例えば、特定の勤務地(関東のみなど)を示す情報、特定の雇用形態(アルバイトのみなど)を示す情報、特定の職種(看護師のみなど)を示す情報などにより構成される。フィード生成部13は、注目キャンペーンの応募者ターゲット情報や、注目キャンペーンに紐付く各求人情報の採用条件を参照することにより、ステップS58の判定を行う。そして、注目キャンペーンが注目求人媒体の特化項目に該当すると判定した場合、ステップS59に処理を移す。注目求人媒体に特化項目がない場合にも、同様にステップS59に処理を移す。一方、注目キャンペーンが注目求人媒体の特化項目に該当しないと判定した場合には、フィード生成部13はステップS60に処理を移し、注目求人媒体を連携先から除外したうえで(ステップS60)、次のレコードに処理を移す。
ステップS59においてフィード生成部13は、注目キャンペーンが注目求人媒体の連携除外条件に該当するか否かを判定する(ステップS59)。連携除外条件は、求人サイトが特定の求人を除外している場合に、その除外している求人の内容を示す情報である。連携除外条件の具体的な内容は、特化項目と同様でよい。フィード生成部13は、注目キャンペーンの応募者ターゲット情報や、注目キャンペーンに紐付く各求人情報の採用条件を参照することにより、ステップS59の判定を行う。そして、注目キャンペーンが注目求人媒体の連携除外条件に該当しないと判定した場合、ステップS60の処理を実行せず次のレコードに処理を移す。注目求人媒体に連携除外条件がない場合にも、同様にステップS60の処理を実行せず次のレコードに処理を移す。一方、注目キャンペーンが注目求人媒体の連携除外条件に該当すると判定した場合には、フィード生成部13はステップS60に処理を移し、注目求人媒体を連携先から除外したうえで(ステップS60)、次のレコードに処理を移す。
ステップS50の繰り返し処理をすべて完了したフィード生成部13は、ここまでの処理により連携先から除外されずに残った求人媒体を連携先として決定し(ステップS61)、連携先媒体決定処理を終了する。
図11に戻る。連携先媒体決定処理を終了したフィード生成部13は、次に、注目キャンペーンに紐付く1以上の求人情報のそれぞれに対し、求人サイトにおける表示の優先順位を付与する表示優先順位付与処理を実行する(ステップS18)。この処理は、求人媒体テーブルT7内に予め設定される優先順位決定ロジック情報に基づいて各求人情報の優先順位を算出することによって、実行される。
図16は、ステップS18においてフィード生成部13が行う表示優先順位付与処理の処理フローを示すフロー図である。以下、この図16を参照しながら、表示優先順位付与処理について詳細に説明する。
フィード生成部13は、連携対象として決定した各求人媒体について、ステップS71~S75の処理を実行する(ステップS70)。以下、処理対象となっているレコードにかかる求人媒体を「注目求人媒体」と称する。注目求人媒体についての処理を開始したフィード生成部13はまず、求人媒体テーブルT7を参照することにより、注目求人媒体の優先順位決定ロジック情報を取得する(ステップS71)。優先順位決定ロジック情報は優先順位の算出方法を定める情報であり、JSON(JavaScript Object Notation)などのデータ記述言語によって記述される。
図17は、優先順位の算出方法の一例を示す図である。この例は、ツリー構造により算出されるスコアを優先順位として用いる例である。ツリー構造による算出とは、予め定められた条件によって異なるスコアを算出するというスコアの算出ロジックをいう。より具体的に言えば、スコアごとの条件を予め決めておき、最も高いスコア(又は最も低いスコア)から順に、条件を満たすものにそのスコアを付与する、という算出のやり方を指す。
図17の例に則して説明すると、この例は、最も高いスコア5から順にスコアを付与するように構成されている。スコア5には勤務地が東京都であるという条件が付与されており、勤務地が東京都である求人情報にスコア5が付与される。次のスコア4には勤務地が大阪府であるという条件が付与されており、勤務地が東京都ではないが大阪府である求人情報にスコア4が付与される。以下同様に、スコア3,4にはそれぞれ勤務地が愛知県、福岡県であるという条件が付与されており、勤務地が東京都でも大阪府でもないが愛知県である求人情報にスコア3が、勤務地が東京都でも大阪府でも愛知県でもないが福岡県である求人情報にスコア2がそれぞれ付与されることになる。スコア1の条件は、図17には明記していないが勤務地がその他の地であるというものであり、勤務地が東京都でも大阪府でも愛知県でも福岡県でもない求人情報にはスコア1が付与されることになる。
図18は、優先順位の算出方法の他の一例を示す図である。この例は、相対評価により算出されるスコアを優先順位として用いる例である。相対評価による算出とは、注目求人媒体に対して連携される一連の求人情報内における算出対象の求人情報の位置に基づいてスコアを算出するというスコアの算出ロジックをいう。一連の求人情報の選び方は特に限定されず、例えば、注目キャンペーンに紐付けられた一連の求人情報であってもよいし、求人連携サーバ10が一定期間内に注目求人媒体に連携した一連の求人情報であってもよい。
図18の例に則して説明すると、この例は、給与水準に応じてスコアを付与するように構成されている。一連の求人情報の中で給与水準が上位20%に入る求人情報にはスコア5が、上位20%には入らないが上位40%に入る求人情報にはスコア4が、上位40%には入らないが上位60%に入る求人情報にはスコア3が、上位60%には入らないが上位80%に入る求人情報にはスコア2が、上位80%にも入らない求人情報にはスコア1が、それぞれ付与される。
図16に戻る。優先順位決定ロジック情報を取得したフィード生成部13は、注目キャンペーンに紐付けられている各求人情報について、ステップS73~S75の処理を行う(ステップS72)。具体的に説明すると、フィード生成部13はまず、優先順位決定ロジック情報に含まれる1以上の項目のそれぞれについて、そのスコアを算出する(ステップS73,S74)。例えば、図17に示した算出方法によるスコアと、図18に示した算出方法によるスコアとのそれぞれを算出する。そして、算出した1以上のスコアの加重平均値を算出し、その求人情報の優先順位として出力する(ステップS75)。加重平均値を算出する際に使用する重み付けの値は、優先順位決定ロジック情報内に記述される。こうして注目キャンペーンに紐付けられているすべての求人情報について優先順位を算出したフィード生成部13は、表示優先順位付与処理を終了する。
図11に戻る。表示優先順位付与処理を終了したフィード生成部13は次に、注目キャンペーンに紐付けられている各求人情報について、ステップS20,S21の処理を行う(ステップS19)。具体的には、ステップS17で連携先として決定した1以上の求人媒体のそれぞれについて、ステップS21の処理を行う。ステップS21においてフィード生成部13は、対応する求人情報に関する情報をフィード情報テーブルT4に挿入し、有効フラグをオンにする処理を行う(ステップS21)。このときフィード生成部13は、フィード情報テーブルT4のコンバージョン単価及び表示優先順位情報に、ステップS16で調整したコンバージョン単価(対応する求人媒体の課金方式がCPAである場合にはCPAコンバージョン単価。対応する求人媒体の課金方式がCPCである場合にはCPCコンバージョン単価)及びステップS18で出力した優先順位のそれぞれを設定する。ステップS19の繰り返し処理を終了したフィード生成部13は、フィード情報生成処理を終了する。
図3に戻る。フィード連携部14は、フィード生成部13が生成したフィード情報に基づき、求人情報を1以上の求人媒体サーバ30のそれぞれに対して送信する機能部である。
図19は、フィード連携部14が行うフィード情報送信処理の処理フローを示すフロー図である。フィード連携部14は、例えば1日に1回以上のバッチ処理により、このフィード情報送信処理を実行するよう構成される。特にフィード連携部14は、フィード生成部13による1日分のフィード情報生成処理が完了した後に、フィード情報送信処理を実行することが好ましい。以下、この図19を参照しながら、フィード情報送信処理について詳細に説明する。
フィード連携部14はまず、キャンペーンテーブルT5に記憶されるすべてのキャンペーンの入札ステータスを「連携待ち」に設定する(ステップS80)。続いてフィード連携部14は、フィード情報テーブルT4から有効フラグがオンのフィード情報を取得する(ステップS81)。そして、取得した1以上のフィード情報のそれぞれについて、ステップS83~S88の処理を実行する(ステップS82)。以下、処理対象となっているフィード情報を「注目フィード情報」と称する。
具体的に説明すると、フィード連携部14はまず、注目フィード情報に対応するキャンペーン情報(注目フィード情報内のキャンペーンIDにより特定されるキャンペーン情報)及び求人情報(注目フィード情報内の採用管理サイトID及び求人IDにより特定される求人情報)の各項目を、求人媒体(フィード情報内の求人媒体IDにより特定される求人媒体)側の項目にマッピングする(ステップS83)。求人媒体側の項目にはランディングページのURLが含まれるが、フィード連携部14はこの項目に対し、課金方式がCPAである求人媒体については求人情報内の「ランディングページのURL(CPA)」をマッピングし、課金方式がCPCである求人媒体については求人情報内の「ランディングページのURL(CPC)」をマッピングする。
次にフィード連携部14は、マッピング後の項目を含むcsv(comma separated value)ファイルを生成し(ステップS84)、SFTP(SSH File Transfer Protocol)により、対応する求人媒体サーバ30に送信する(ステップS85)。なお、csvファイル以外の形式を用いて送信してもよいこと、及び、SFTP以外の通信方式を用いて送信してもよいことは勿論である。
続いてフィード連携部14は、注目フィード情報内の有効フラグをオフに設定する(ステップS86)。フィード連携部14はさらに、注目フィード情報に対応するキャンペーンの入札ステータスを「連携中」に設定する(ステップS87)とともに、同キャンペーンの初回入札日が未記入であれば初回入札日として本日の日付を設定し(ステップS88)、注目フィード情報についての処理を終了する。ステップS82の繰り返し処理を終了したフィード連携部14は、フィード情報送信処理を終了する。
図3に戻る。フィード表示制御部31は、フィード連携部14により送信された求人情報を受信し、求人サイトの広告枠に表示する機能部である。フィード表示制御部31は、上述した開放率に従い、求人連携サーバ10から受信した求人広告の表示を行う。また、受信した求人情報に含まれる表示優先順位情報に基づいて、求人情報の表示順を制御する。さらに、求人連携サーバ10が入札を行うタイプのものである場合には、フィード表示制御部31は、受信した求人情報に含まれるコンバージョン単価に基づいて求人広告枠の入札を行い、その結果にも応じて求人情報の表示順を制御する。
図20は、フィード表示制御部31により生成される求人サイトの表示画面の例を示す図である。この表示画面は、求人サイトのユーザ(求職者)が所定の検索画面においてキーワードを入力して検索を行い、その結果として求職者端末40のディスプレイに表示される画面である。同図に示すように、この表示画面には、求人情報のヒット数50と、ヒット数50が多い場合に表示ページを切り替えるためのページネーション51と、検索結果をいくつかの項目でソートするためのソートボタン52と、列挙される1以上の広告枠53とを含んで構成される。
広告枠53内には、求人情報の概要の他、ランディングページへのリンクボタン54が表示される。このリンクボタン54には、ランディングページのURLが埋め込まれる。また、求人連携サーバ10から連携した求人情報に関しては、広告枠53内に、採用管理サーバ20からの連携であることを示す連携表示情報55が表示される。図20には、「JOBOLE」という文字列を連携表示情報55として使用する例を示しているが、他の文字列又は画像を使用しても構わない。
図3に戻る。クリック受付部32は、ランディングページへのリンクボタン(例えば、図20に示したリンクボタン54)のクリックを受け付ける機能部である。CPCを利用する求人情報については、クリック受付部32は、リンクボタンに埋め込まれているURLへのアクセスを発生させるとともに、求人情報内のコンバージョン単価に応じた課金を発生させる。求人情報が求人連携サーバ10から連携されたものである場合、クリック受付部32は、課金が発生したことを、課金額とともに求人連携サーバ10内の成果処理部15に通知する。一方、CPAを利用する求人情報については、クリック受付部32は、リンクボタンに埋め込まれているURLへのアクセスを発生させる処理のみを行う。
求人詳細情報表示制御部22,33はそれぞれ、クリック受付部32によりランディングページへのアクセスが発生したことに応じて、ランディングページを求職者端末40のブラウザにロードする機能部である。図示していないが、ランディングページには、求人情報のより詳細な内容の他、求職者が求人に応募するための応募ページが含まれる。
応募受付部23,34は、上記応募ページにおいて求職者の応募を受け付ける機能部であり、受け付けた内容を応募情報取得部24に供給する役割を果たす。応募情報取得部24は、こうして供給された応募情報を求人主に提示する。また、応募受付部34は、この応募を受け付けたことに応じて、求人情報内のコンバージョン単価に応じた課金を発生させる。そして、課金が発生したことを、課金額とともに求人連携サーバ10内の成果処理部15に通知する。
成果処理部15は、フィード連携部14が求人媒体サーバ30に連携した求人情報の成果(インプレッション数、クリック数、応募数、消費額)を取得して1日単位で集計し、成果テーブルT10及びキャンペーン成果テーブルT11に格納する機能部である。成果処理部15は、フィード表示制御部31からインプレッション数を、クリック受付部32からの課金の通知回数に基づきクリック数を、応募受付部34からの課金の通知回数に基づき応募数を、それぞれ取得するよう構成される。また、成果処理部15は、クリック受付部32又は応募受付部34から通知される課金額に基づき、消費額を取得するよう構成される。成果処理部15はさらに、応募受付部34から課金が通知される都度、対応する求人主のチャージ残高から課金された金額を減算する処理(具体的には、チャージ履歴テーブルT2の消化金額に金額を加算する処理)を行うとともに、減算後のチャージ残高を用いて、図12を参照して説明したアカウント単位連携中止処理も行う。
以上説明したように、本実施の形態による求人連携サーバ10及び求人システム1によれば、複数の求人サイトそれぞれの下限入札単価と、求人主により入力された求人情報のコンバージョン単価とに基づいて、求人情報の連携先となる1以上の求人媒体サーバ30を決定し、決定した1以上の求人媒体サーバ30のそれぞれに対して求人情報を連携しているので、入札条件の合致する1以上の求人媒体サーバ30に対し、求人情報を柔軟に連携することができる。したがって、求人広告に関して、高い広告効果を実現することが可能になる。
また、複数の求人媒体サーバ30のそれぞれが有する連携する求人情報の1以上の条件(ブラックリスト、条件ごとに異なる下限入札単価など)にも基づいて連携先の求人媒体サーバ30を決定しているので、連携する求人情報に対し、求人媒体サーバ30側で様々な条件を設定することが可能になる。
また、フィード生成部13は、複数の求人媒体サーバ30のそれぞれについて予め設定される優先順位決定ロジック情報に基づいて求人情報の優先順位を算出し、フィード連携部14は、求人情報とともにこの優先順位を1以上の求人媒体サーバ30のそれぞれに対して送信しているので、求人媒体サーバ30は、優先順位に基づいて求人情報の表示順を調整することができる。したがって、求人サイトにおける求人情報の表示を、求人主の要望や求人サイトの特徴に応じて柔軟に調整することが可能になる。
また、フィード生成部13は、複数の求人媒体サーバ30のそれぞれにおける求人主に対する課金の発生状況に基づいて連携を中止するか否かを決定し、連携を中止する場合にフィード情報を生成しないので、課金の発生状況に応じて、求人サイトへの求人情報の連携を制御することが可能になる。
次に、本発明の第2の実施の形態による求人システム1について、説明する。本実施の形態による求人システム1は、求人主(採用管理サーバ20)から入力される求人情報内に含まれる職種を、求人媒体サーバ30に入力可能な職種に変換する機能を有する点で第1の実施の形態による求人システム1と異なり、その他の点では、第1の実施の形態による求人システム1と同様である。以下、第1の実施の形態による求人システム1との相違点に着目して、本実施の形態による求人システム1を説明する。
図21は、本実施の形態によるデータベース12が図4に示した各テーブルに加えて記憶する各テーブルを示す図である。同図に示すように、本実施の形態によるデータベース12は、1つのハブ職種マスタテーブルT20と、複数の求人媒体サーバ30のそれぞれに対応する複数の媒体職種マスタテーブルT21とをさらに格納して構成される。
図22(a)は、ハブ職種マスタテーブルT20の構造を示す図であり、図22(b)は、媒体職種マスタテーブルT21の構造を示す図である。これらの図から理解されるように、ハブ職種マスタテーブルT20及び媒体職種マスタテーブルT21はともに木構造のテーブルであり、各レコードに親ノードポインタ及び子ノードポインタが含まれる。ただし、ルートレコードの親ノードポインタはヌルである。また、1つのレコードに含まれる子ノードポインタは0個以上であればよく、1個でもよいし、複数個でもよい。
ハブ職種マスタテーブルT20の各レコードは、職種を表す1つの単語を含んで構成される。運用型求人連携プラットフォームの担当者は、過去の求人情報や求人関係のWEBサイトなどの資料を参照することによって普遍的な職種群(普遍的であることが期待できる職種群)を取得し、取得した職種群を用いてハブ職種マスタテーブルT20を生成する。
媒体職種マスタテーブルT21の各レコードは、対応する求人媒体サーバ30に入力可能な職種を表す1つの単語と、その単語に対応するハブ職種マスタテーブルT20内の職種を表す1つの単語とを含んで構成される。以下では、前者の単語を「職種(媒体)」と表記し、後者の単語を「職種(ハブ)」と表記して、これらを区別する場合がある。媒体職種マスタテーブルT21に格納すべき職種(媒体)の具体的な内容は、求人サイトの担当者から運用型求人連携プラットフォームの担当者に通知される。運用型求人連携プラットフォームの担当者は、通知された各職種(媒体)に対応する職種(ハブ)を、ハブ職種マスタテーブルT20を参照することによって決定する。そして、各職種(媒体)と、対応する職種(ハブ)とを対応付けて媒体職種マスタテーブルT21に書き込むことによって、媒体職種マスタテーブルT21を生成する。
本実施の形態による入力受付部11(図3を参照)は、求人情報入力受付部21から供給された求人情報を求人情報テーブルT3に追加する際、求人情報内に含まれる職種をハブ職種マスタテーブルT20に記憶される職種に変換したうえで、求人情報テーブルT3への追加を実行するよう構成される。このために、本実施の形態による入力受付部11には、職種の変換を可能にするためのパッチファイルが予め適用される。以下では、このパッチファイルの生成方法及び性能評価方法について説明した後、パッチファイルが適用された入力受付部11によって実行される処理を詳しく説明する。
図23は、本実施の形態による入力受付部11に適用するためのパッチファイルを生成するためのパッチファイル生成処理を示す処理フロー図である。このパッチファイル生成処理は、求人連携サーバ10によって実行されることとしてもよいし、その他の任意のコンピュータによって実行されることとしてもよい。以下では、各処理の実行主体を単に「コンピュータ」と称する。
パッチファイル生成処理を開始したコンピュータはまず、形式を統一した過去の求人情報と、ハブ職種マスタテーブルT20とに基づき、職種間の関係性を表現するグラフモデルを生成する(ステップS100)。また、コンピュータは、WEBサイトの記述内容に対して前処理を実施し(ステップS101)、前処理後のWEBサイトの学習によりWord2vecモデルを生成する(ステップS102)。ステップS101で実行される前処理には、WEBサイトの記述内容の分かち書き、並びに、不要品詞及び不要単語の削除が含まれる。この点は、後述するステップS103,S110,S130の前処理についても同様である。ステップS102で実行される学習は、ステップS101による前処理後のファイルを入力としてWord2vecの実行ファイルを実行することによって、実行される。ステップS102を実行した結果として生成されるWord2vecモデルには、各単語の特徴ベクトルのリストが含まれる。
次にコンピュータは、求人関係の文書データに対して前処理を実施し(ステップS103)、前処理後の文書データの学習により、ステップS102で生成したWord2vecモデルを更新する(ステップS104)。求人関係の文書データは、例えば、運用型求人連携プラットフォームの運営者により過去に生成又は取得された文書から適宜選択されたものである。
続いてコンピュータは、ステップS104で更新したWord2vecモデルと、ハブ職種マスタテーブルT20とに基づき、与えられた2つの職種が同じクラスに属するか否かを判定するためのペアワイズ分類器を生成する(ステップS105)。そしてコンピュータは、ステップS100で生成したグラフモデルと、ステップS105で生成したペアワイズ分類器とに基づき、アンサンブル推定器を生成する(ステップS106)。具体的には、グラフモデルによる推定の結果と、ペアワイズ分類器による推定の結果とを多数決で統合することにより、アンサンブル推定器を生成する。
最後にコンピュータは、ステップS106で生成したアンサンブル推定器を用いて、入力受付部11のパッチファイルを生成する(ステップS107)。こうして生成されたパッチファイルを入力受付部11に適用することにより、入力受付部11は、ステップS106で生成されたアンサンブル推定器に基づき、求人情報内の職種をハブ職種マスタテーブルT20に記憶される職種に変換することができるようになる。
図24は、パッチファイル生成処理により生成されたパッチファイルの性能評価を行うために用いる評価メトリクスを生成するための評価メトリクス生成処理を示す処理フロー図である。評価メトリクス生成処理も、求人連携サーバ10によって実行されることとしてもよいし、その他の任意のコンピュータによって実行されることとしてもよい。以下では、各処理の実行主体を単に「コンピュータ」と称する。
コンピュータはまず、評価用のデータに対して前処理を実行する(ステップS110)。評価用のデータは、例えば、評価のために仮に作成した求人情報である。次にコンピュータは、パッチファイル生成処理により生成されたパッチファイルを用いて、前処理後の評価用のデータを評価する(ステップS111)。すなわち、前処理後の評価用のデータに含まれる職種を、ハブ職種マスタテーブルT20に記憶される職種に変換する。そして、ステップS111の評価の結果に基づき、人間が見やすいように評価結果を加工した情報である評価メトリクスを生成する(ステップS112)。こうして生成された評価メトリクスを参照することにより、運用型求人連携プラットフォームの担当者は、パッチファイル生成処理により生成されたパッチファイルの性能を評価することが可能になる。
図25は、パッチファイル生成処理により生成されたパッチファイルを適用された入力受付部11によって実行される求人情報入力受付処理の処理フローを示すフロー図である。同図に示す処理は、ステップS2とステップS3との間に職種変換処理(ステップS120)が挿入される点で、図10に示した求人情報入力受付処理と異なっている。
図26は、図25のステップS120において入力受付部11が行う職種変換処理の処理フローを示すフロー図である。同図に示すように、入力受付部11はまず、図25のステップS2の処理において「採用条件」内の「職種」にマッピングした項目の内容に対し、前処理を実行する(ステップS130)。次に入力受付部11は、前処理後の各職種の特徴ベクトルを取得する(ステップS131)とともに、ハブ職種マスタテーブルT20に含まれる各職種の特徴ベクトルを取得する(ステップS132)。具体的には、入力受付部11は、各職種の特徴ベクトルのリストを含むWord2vecモデルを生成すればよい。
続いて入力受付部11は、パッチファイル生成処理により生成されたアンサンブル推定器を用い、求人情報内の各職種について、最も近いハブ職種マスタテーブルT20内の職種を出力する(ステップS133)。職種変換処理は、ここまでの処理で終了する。入力受付部11は、図25のステップS3において、求人情報に含まれていた各職種に代え、ステップS133で出力された職種を求人情報テーブルT3に書き込む。これにより、求人情報内の職種がハブ職種マスタテーブルT20に含まれる職種に変換される。
本実施の形態によるフィード連携部14(図3を参照)は、求人情報テーブルT3内に書き込まれている求人情報を1以上の求人媒体サーバ30のそれぞれに対して送信する際、求人情報内の職種(ハブ)を、対応する媒体職種マスタテーブルT21の職種(媒体)にさらに変換する処理を行う。
図27は、本実施の形態によるフィード連携部14が行うフィード情報送信処理の処理フローを示すフロー図である。同図に示す処理は、ステップS83とステップS84との間に職種変換処理(ステップS140)が挿入される点で、図19に示したフィード情報送信処理と異なっている。
ステップS140においてフィード連携部14は、ステップS83で職種にマッピングした項目の内容を、対応する媒体職種マスタテーブルT21内の職種に変換する処理を行う。具体的には、ステップS83で職種にマッピングした項目の内容をキーとして、対応する媒体職種マスタテーブルT21の職種(ハブ)を検索し、ヒットしたレコード内の職種(媒体)を取得する。その後のステップS141においてフィード連携部14は、ステップS83で職種にマッピングした項目の内容に代えて、ステップS140で取得した職種(媒体)をcsvファイルに書き込む。これにより、求人情報に含まれる職種を各求人媒体サーバ30に入力可能な職種に変換したうえで、各求人媒体サーバ30に求人情報を連携することが可能になる。
以上説明したように、本実施の形態による求人システム1によれば、求人主(採用管理サーバ20)から入力される求人情報内に含まれる職種を各求人媒体サーバ30に入力可能な職種に変換したうえで、各求人媒体サーバ30に求人情報を連携することが可能になる。したがって、求人サイトへの求人情報の連携をスムーズに行うことが可能になる。
以上、本発明の好ましい実施の形態について説明したが、本発明はこうした実施の形態に何等限定されるものではなく、本発明が、その要旨を逸脱しない範囲において、種々なる態様で実施され得ることは勿論である。