JP2009080675A - Retrieval device, retrieval method, program, and recording medium - Google Patents
Retrieval device, retrieval method, program, and recording medium Download PDFInfo
- Publication number
- JP2009080675A JP2009080675A JP2007249837A JP2007249837A JP2009080675A JP 2009080675 A JP2009080675 A JP 2009080675A JP 2007249837 A JP2007249837 A JP 2007249837A JP 2007249837 A JP2007249837 A JP 2007249837A JP 2009080675 A JP2009080675 A JP 2009080675A
- Authority
- JP
- Japan
- Prior art keywords
- search
- term
- thesaurus dictionary
- thesaurus
- abstract
- 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.)
- Withdrawn
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、検索用語をシソーラス辞書を用いて拡張してデータベース検索を行う際の制御に関する。 The present invention relates to control when database search is performed by expanding a search term using a thesaurus dictionary.
特許文献1には、検索対象となる用語からシソーラス辞書の最上位語(または最下位語)まで検索することで、検索対象となる用語の類義語拡張を行う検索装置が開示されている。この検索装置は、上記拡張した全ての類義語において類似度の算出を行い、この類似度の閾値により、検索対象となる用語の絞込みを行っている。または、この検索装置は、検索するにあたって、シソーラス辞書の階層範囲を指定し、検索対象となる用語の絞込みを行っている。
しかし、一般的に、シソーラス辞書は用語によってその類義語の階層にバラツキがある。例えば、ある用語の類義語の階層は細かく、また、ある用語の類義語の階層は大雑把に作成されている。これは、例えば、シソーラス辞書を作る人の専門能力が異なる為に、専門的に詳しい分野では階層の多い辞書が作成されるといったこと等に起因する。 However, in general, a thesaurus dictionary varies in terms of synonyms depending on terms. For example, a synonym hierarchy of a certain term is fine, and a synonym hierarchy of a certain term is roughly created. This is because, for example, because a person who creates a thesaurus dictionary has different specialized abilities, a dictionary having many layers is created in a technically detailed field.
このように、シソーラス辞書に登録された用語が用語により類義語の階層に差が生じている場合、上記特許文献1に記載の検索装置のように、類義語を検索するにあたって類似度の閾値や回数でその検索範囲を指定する方法では、拡張する検索用語によって、非常に関連性の高いものしか拡張されない、或いは、あまり関連性のない単語まで拡張してしまうという差がでてしまうといった恐れがある。
As described above, when a term registered in the thesaurus dictionary has a difference in the hierarchy of synonyms depending on the term, the similarity threshold value and the number of times are used when searching for synonyms as in the search device described in
また、一般的に、シソーラス辞書は、辞書に登録されている類義語の意味を考慮せず管理されている。このため、上記特許文献1の検索装置のように、類似度の閾値や回数でその検索範囲を指定する方法では、この検索範囲の全てが検索対象となる為、検索対象として意味のない類義語にまで検索用語を拡張してしまう恐れがある。
In general, a thesaurus dictionary is managed without considering the meaning of synonyms registered in the dictionary. For this reason, in the method of specifying the search range by the threshold value and the number of times of similarity as in the search device of
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、シソーラス辞書を用いた検索において、極めて汎用的な上位用語への検索用語の拡張や、抽象的な用語への検索用語の拡張を抑制して、用語の意味を考慮した検索用語の拡張を行うことができ、より条件に合った検索を行うことができる仕組みを提供することである。 The present invention has been made to solve the above-described problems, and the object of the present invention is to expand search terms to extremely general terms and search for abstract terms in a search using a thesaurus dictionary. It is to provide a mechanism that can suppress the expansion of the search term to the search term, extend the search term in consideration of the meaning of the term, and perform a search that matches the condition more.
本発明は、シソーラス辞書を用いて検索用語の類義語を検索して検索用語を拡張するシソーラス辞書検索手段と、前記シソーラス辞書検索手段により拡張された検索用語を用いてデータベースを検索するデータベース検索手段と、を有するものであり、前記シソーラス辞書は、登録された用語に、汎用的な用語を示すストップマーク、抽象的な用語を示す抽象フラグのいずれか又は双方を設定可能であり、前記シソーラス辞書検索手段は、前記ストップマークが設定された用語をシソーラス辞書の上位検索の終点とするシソーラス辞書検索終点決定手段と、前記抽象フラグが設定された用語を検索用語の拡張から排除するシソーラス辞書抽象用語排除手段とを有する、ことを特徴とする。 The present invention provides a thesaurus dictionary search means for searching for synonyms of a search term using a thesaurus dictionary and extending the search term, and a database search means for searching a database using the search term extended by the thesaurus dictionary search means. The thesaurus dictionary can set either a stop mark indicating a general term or an abstract flag indicating an abstract term, or both of the registered terms in the registered term. The means includes a thesaurus dictionary search end point determination unit that uses the term set with the stop mark as the end point of the upper search of the thesaurus dictionary, and the thesaurus dictionary abstract term exclusion that excludes the term set with the abstract flag from the expansion of the search term. Means.
本発明によれば、シソーラス辞書を用いた検索において、極めて汎用的な上位用語への検索用語の拡張や、抽象的な用語への検索用語の拡張を抑制して、用語の意味を考慮した検索用語の拡張を行うことができ、より条件に合った検索を行うことができる等の効果を奏する。 According to the present invention, in a search using a thesaurus dictionary, a search that considers the meaning of a term by suppressing the expansion of a search term to a very general high-level term or the expansion of a search term to an abstract term. Terms can be expanded, and effects such as a more suitable search can be performed.
以下、図面を参照して本発明の実施形態について説明する。なお、本説明では、本発明による検索装置を人材検索に用いることを想定した場合を例にあげて説明を行う。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. In this description, the case where it is assumed that the search device according to the present invention is used for human resource search will be described as an example.
図1は、本発明に係る検索装置を適用可能な人材検索装置の構成の一例を示すシステム構成図である。 FIG. 1 is a system configuration diagram showing an example of a configuration of a human resource search apparatus to which the search apparatus according to the present invention can be applied.
図1において、100は人材検索装置であり、シソーラス辞書検索を行うシソーラス辞書検索手段101と、人材検索を行う人材検索手段102と、シソーラス辞書を管理するシソーラス辞書DB103と、人材データを管理する人材DB(人材データベース)104からなる。
In FIG. 1,
また、シソーラス辞書検索手段101は、シソーラス辞書の上位検索の終点(極めて汎用的な用語であるため、それ以上上位の検索を行っても意味のない用語)を決定するシソーラス辞書検索終点決定手段1011、シソーラス辞書検索でヒットした用語の中でその用語が抽象的であるために検索用語の拡張から排除するシソーラス辞書抽象用語排除手段1012、シソーラス検索でヒットした用語の有用度を算出するシソーラス辞書検索ヒット用語有用度算出手段1013を有する。 The thesaurus dictionary search means 101 also determines a thesaurus dictionary search end point determination means 1011 that determines the end point of the higher level search of the thesaurus dictionary (a term that is meaningless even if a higher level search is performed because it is a very general term). Thesaurus dictionary abstract term exclusion means 1012 that excludes from the expansion of the search term because the term is abstract among the terms hit in the thesaurus dictionary search, thesaurus dictionary search that calculates the usefulness of the term hit in the thesaurus search It has hit term usefulness calculating means 1013.
人材検索手段102は、人材検索でヒットした人材の経験値を算出する人材検索スコア算出手段1021を有する。
The human
これら、シソーラス辞書検索手段101および人材検索手段102はJava(登録商標(以下省略))サーブレットなどの一般的なWebアプリケーション技術によって実現することが可能である。 These thesaurus dictionary search means 101 and human resource search means 102 can be realized by a general Web application technology such as a Java (registered trademark (hereinafter omitted)) servlet.
また、クライアント通信手段105は、WebアプリケーションのプラットフォームとなるWebアプリケーションサーバによって提供される機能を利用することができる。例えば、WebアプリケーションサーバTomcatで動作するJavaサーブレットプログラムとしてこれらの機能を実現することができる。
Further, the
111はクライアント装置であり、所定の通信媒体を介して人材検索装置100と通信可能に接続されている。なお、クライアント装置111には、パーソナルコンピュータ等で構成され、例えばWebブラウザ等を用いて人材検索装置100と通信可能である。
人材検索装置100は、クライアント装置111から入力される検索条件に基づいて検索処理を行い、検索結果をクライアント装置110に送信する構成を有する。
The human
図2は、図1に示した人材検索装置100のハードウェア構成の一例を示すブロック図である。
FIG. 2 is a block diagram illustrating an example of a hardware configuration of the human
図2に示すように人材検索装置100は、中央処理装置(以下、CPU)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、HDD(Hard Disk Drive)204と、ネットワークインタフェース205からなる。
As shown in FIG. 2, the human
CPU201は、HDD204に格納されたプログラムをRAM203上にロードして実行することにより、後述する各種機能を実現することができる。
The
なお、図1に示したシソーラス辞書検索手段101(シソーラス辞書検索終点決定手段1011,シソーラス辞書抽象用語排除手段1012,シソーラス辞書検索ヒット用語有用度算出手段1013を含む),人材検索手段102(人材検索スコア算出手段1021を含む)は、CPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現される機能に対応する。
The thesaurus dictionary search means 101 (including thesaurus dictionary search end point determination means 1011, thesaurus dictionary abstract term exclusion means 1012, thesaurus dictionary search hit term usefulness calculation means 1013) and the personnel search means 102 (personnel search) shown in FIG. (Including score calculation means 1021) corresponds to a function realized by the
また、図1に示したシソーラス辞書DB103,人材DB104は、例えばHDD204上等に実現される。
Further, the thesaurus dictionary DB 103 and the human resource DB 104 shown in FIG. 1 are realized on the
まず、図3〜図7を参照して、本実施形態で用いるシソーラス辞書DB103の構成について説明する。 First, the configuration of the thesaurus dictionary DB 103 used in this embodiment will be described with reference to FIGS.
図3は、図1に示したシソーラス辞書DB103の一例を模式的に示した模式図である。なお、ここでは「ソフトウェア」を例にしたシソーラス辞書DB103の例を示してある。
FIG. 3 is a schematic diagram schematically showing an example of the
図中、301に示すように、矢印のついていない線(−)は、上位、下位を示す。 As indicated by 301 in the figure, a line (−) without an arrow indicates a higher order and a lower order.
また、図中、302に示すように、矢印(→)で繋がっている単語は、関連語を示す。なお、矢印のない単語から見て矢印のある単語が関連する言葉であることを示す(逆は真ではない)。 In addition, as shown by 302 in the figure, words connected by arrows (→) indicate related words. Note that a word with an arrow is a related word when viewed from a word without an arrow (the reverse is not true).
さらに、図中、303に示すように、矢印が両端についている線(←→)は、矢印(←→)で繋がっている単語が相互に関連語であることを示す。 Furthermore, as indicated by 303 in the figure, a line (← →) with arrows at both ends indicates that the words connected by the arrows (← →) are related words.
また、図中、304,305に示すように、アンダーラインが付されてる単語は、下記の意味を有する。 In addition, as shown by 304 and 305 in the figure, the underlined words have the following meanings.
まず、図中、304に示すように、通常の下線が付されている単語は、抽象属性を持つ単語(抽象的であるため検索用語の拡張から排除する用語)であることを示す。
First, as indicated by
また、波線(不図示)が付されている単語は、上位終端属性を持つ単語(極めて汎用的な用語であるためシソーラス辞書の上位検索の終点とする用語)であることを示す。 A word with a wavy line (not shown) indicates a word having an upper end attribute (a term used as an end point of upper search in the thesaurus dictionary because it is a very general term).
さらに、図中、305に示すように、二重線が付されている単語は、上位終端属性、且つ、抽象属性を持つ単語であることを示す。
Furthermore, as indicated by
図4は、図3に示したシソーラス辞書DB103に登録された各単語に付された重みの一例を模式的に示した模式図である。ここでは、「Java1.3」からたどった場合の例を示す。
FIG. 4 is a schematic diagram schematically showing an example of weights assigned to the respective words registered in the
図4中の数値は、各用語間に付された重み(類似度)を示す。例えば、401は「Java1.3」からみた上位語「Java」の重みを示したものであり、ここでは「0.8」の重みとなっている。 The numerical value in FIG. 4 shows the weight (similarity) given between each term. For example, 401 indicates the weight of the broader term “Java” as viewed from “Java 1.3”, and here, the weight is “0.8”.
一方、402は「Java」からみた下位語「Java1.3」の重みを示したものであり、ここでは「1.0」の重みとなっている。 On the other hand, 402 indicates the weight of the low-level word “Java1.3” as viewed from “Java”, and here, the weight is “1.0”.
図5は、図3,図4に示したシソーラス辞書DB103登録された各単語のデータ構成の一例を示すデータ構成図である。 FIG. 5 is a data configuration diagram showing an example of the data configuration of each word registered in the thesaurus dictionary DB 103 shown in FIGS.
図5において、500はシソーラス辞書DB103登録された単語であり、見出し501、同義語リスト(同義語List)502、上位語503、下位語リスト(下位語List)504、関連語リスト(関連語List)505、抽象フラグ506、ストップマーク(Stopマーク)507から構成される。
In FIG. 5, 500 is a word registered in the thesaurus dictionary DB 103, and includes a
見出し501には、文字列が格納される。また、同義語リスト502は、同義語のリストである。なお、各同義語には、文字列が格納される。
The
上位語503は、上位語を示す情報(上位語情報)で構成される。下位語リスト504は、下位語を示す情報(下位語情報)のリストである。関連語リスト505は、関連語を示す情報(関連語情報)のリストである。なお、上位語情報、下位語情報(1〜jの個々のもの)、関連語情報(1〜kの個々のもの)のデータ構成は後述する図6に示す。
The
抽象フラグ506は、その単語が極めて抽象的な用語の為、シソーラス辞書DB103を用いて用語を拡張する際に、その単語を検索語として対象外とすることを示すフラグである。この抽象フラグ506が「TRUE」の場合にはその単語を検索用語として対象外とする。即ち、用語を拡張する際のシソーラス辞書検索実行時に抽象フラグに「TRUE」が設定された用語は検索用語の拡張から排除される。
The
ストップマーク507は、その単語が極めて汎用的な用語の為、シソーラス辞書DB103を用いて用語を拡張する際に、その単語以上上位の検索(上位拡張)を行わないことを示すマークである。このストップマーク507が「TRUE」の場合にはその単語以上上位の検索を行わないものとする。即ち、用語を拡張する際のシソーラス辞書検索実行時にストップマークが設定された用語がシソーラス辞書の上位検索の終点となる。
The
図6は、図5に示した上位語情報、下位語情報(1〜jの個々のもの)、関連語情報(1〜kの個々のもの)の詳細構造を示すデータ構成図である。
FIG. 6 is a data configuration diagram showing a detailed structure of the broad word information, the low word information (
図6に示すように、上位語情報、下位語情報、関連語情報は、相手見出し601、類似度602から構成される。相手見出し601には、上位語、下位語、又は、関連語(即ちシソーラス内の別ノードの単語)の見出し501(図5)に対応する文字列が格納される。また、類似度602には、現在着目している単語から相手見出しの単語の累積重み(数値)が算出され格納される(算出方法は後述する)。
As shown in FIG. 6, the broader word information, the narrower word information, and the related word information are composed of a partner headline 601 and a
図7は、シソーラス辞書DB103内の単語の一例を示す図である。
FIG. 7 is a diagram illustrating an example of words in the
図7において、(a)は、見出しを「Oracle(登録商標(以下省略))」とした場合のシソーラス辞書DB103内の単語の一例を示す。また、(b)は、「Oracle」の上位語の一例を示す。なお、この例は、「Oracle」からみた上位語「RDB」の重みが「0.5」である場合に対応する。
7A shows an example of a word in the
以下、フローチャートを参照して本発明の検索装置における検索処理について説明する。 Hereinafter, a search process in the search device of the present invention will be described with reference to a flowchart.
図8は、本発明における第1の制御処理手順の一例を示すフローチャートであり、人材検索装置100における検索処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現される機能に対応する。
FIG. 8 is a flowchart showing an example of the first control processing procedure in the present invention, and corresponds to the search processing in the human
まず、ステップS801では、CPU201は、クライアント装置111からの送信される検索条件の入力を受け付ける。
First, in step S <b> 801, the
クライアント装置111では、ディスプレイに検索条件入力画面900(図9)を表示し、検索条件入力画面900により検索条件の入力を受け付ける。
In the
図9は、本実施形態における検索条件入力画面900の一例を示す図である。なお、検索条件入力画面900は、人材検索装置100から送信されてクライアント装置111のディスプレイに表示される構成であっても、クライアント装置111のハードディスク等から読み出されてディスプレイに表示される構成であってもよい。
FIG. 9 is a diagram showing an example of a search
図9において、901は必須チェックボックスであり、このチェックボックスにチェックされた検索条件は必須の検索条件となる。
In FIG. 9,
902は技術/環境条件入力欄、903は工程条件入力欄、904は役割条件入力欄、905は経験時間条件入力欄である。
906はキャンセルボタンであり、このボタンがクリック指示(押下)されると、検索条件入力画面900により入力された検索条件は破棄され、検索処理はキャンセルされる。
907は検索開始ボタンであり、このボタンがクリック指示(押下)されると、当該検索条件入力画面900により入力された検索条件が、クライアント装置111から人材検索装置100に送信される。
人材検索装置100では、クライアント装置111から検索条件を受信すると、人材検索装置100のCPU201は、受信した検索条件を図10〜図13に示すデータ構造でRAM203に格納し、ステップS1302に処理を進める。
In the human
図10は、人材検索装置100で保持される検索条件のデータ構成の一例を示すデータ構成図である。
FIG. 10 is a data configuration diagram illustrating an example of a data configuration of search conditions held by the human
図10に示すように、検索条件は、複数の検索条件(条件1,条件2,条件3,・・・,条件n)のリスト構造(検索条件リスト1000)で保持される。
As shown in FIG. 10, the search condition is held in a list structure (search condition list 1000) of a plurality of search conditions (
検索条件リスト1000内の各検索条件には、検索条件入力画面の必須チェックボックス901、技術/環境条件入力欄902、工程条件入力欄903、役割条件入力欄904、経験時間条件入力欄905で入力された一組の検索条件(即ち図10の横一列の入力条件)が格納される。
Each search condition in the
図11は、図10に示した検索条件リスト1000内の各検索条件のデータ構成の一例を示すデータ構成図である。
FIG. 11 is a data configuration diagram showing an example of the data configuration of each search condition in the
図11に示すように、検索条件は、技術/環境条件1101,工程条件1101,役割条件1103,要求経験レベル1104から構成される。
As shown in FIG. 11, the search condition includes a technology /
技術/環境条件1101は、条件見出し1105,拡張リスト1106,必須フラグ1107から構成される。
The technology /
技術/環境条件1101の条件見出し1105には、検索条件入力画面900の技術/環境条件入力欄902で入力された条件が格納される。
The condition heading 1105 of the technology /
工程条件1102には、検索条件入力画面900の工程条件入力欄903で入力された条件が格納される。役割条件1103の条件見出し1105には、検索条件入力画面900の役割条件入力欄904で入力された条件が格納される。要求経験レベル1104の条件見出し1105には、検索条件入力画面900の経験時間入力欄904で入力された経験時間数値が格納される。
The
また、技術/環境条件1101の必須フラグ1107には、必須チェックボックス901がチェックされている場合には「TRUE」、チェックされていない場合には「FALSE」がそれぞれ格納される。
Further, the
なお、図8のステップS801でスキル条件(検索条件)が入力された時点では、技術/環境条件1101の拡張リスト1106にはデータは格納されず、後述するステップS802において拡張される拡張語の情報が格納される。
Note that when the skill condition (search condition) is input in step S801 in FIG. 8, no data is stored in the
図12は、図11に示した拡張リスト1106内の各拡張語のデータ構成の一例を示すデータ構成図である。
FIG. 12 is a data configuration diagram showing an example of the data configuration of each extended word in the
図12に示すように、拡張語は、拡張見出し1201,拡張重み1202,抽象フラグ1203で構成され、後述する図8のステップS802で拡張される拡張語の情報が格納される。
As shown in FIG. 12, the extended word is composed of an extended headline 1201, an
拡張見出し1201には、拡張語の拡張語見出し文字が格納される。拡張重み1202には、拡張語の拡張重み(拡張された検索用語の有用度を示すものであり詳細は後述する)が格納される。抽象フラグ1203には、拡張語の抽象フラグの真偽値が格納される。
The extended heading 1201 stores the extended word heading character of the extended word. The
図13は、図10に示した検索条件リストの一例を示す図である。 FIG. 13 is a diagram illustrating an example of the search condition list illustrated in FIG.
図13に示した例では、検索条件入力画面900の技術/環境条件入力欄902に「Oracle」,「Java1.3」が入力された場合に対応する。
The example illustrated in FIG. 13 corresponds to the case where “Oracle” and “Java 1.3” are input in the technology / environment
以下、図8のフローチャートの説明に戻る。 Returning to the flowchart of FIG.
ステップS802では、CPU201(シソーラス辞書検索手段101)は、類義語を利用した検索語拡張処理(キーワードの拡張処理)を実行する。なお、この検索語拡張処理の詳細は図14を用いて後述する。 In step S802, the CPU 201 (thesaurus dictionary search unit 101) executes a search word expansion process (keyword expansion process) using synonyms. Details of this search term expansion processing will be described later with reference to FIG.
次に、ステップS803では、CPU201(人材検索手段102)は、ステップS802のキーワード拡張処理結果を用いた人材スキルプロファイルDB検索処理を実行する。なお、この人材スキルプロファイルDB検索処理の詳細は図23を用いて後述する。 Next, in step S803, the CPU 201 (human resource search means 102) executes a human resource skill profile DB search process using the keyword expansion process result of step S802. Details of the human resource skill profile DB search process will be described later with reference to FIG.
次に、ステップS804では、CPU201(人材検索計検知算出手段1021)は、ステップS803の人材検索結果の一人材ごとに検索条件より近しいかのポイントを付加する処理(検索された人材のスコアリング処理)を実行する。なお、この検索された人材のスコアリングの詳細は図24を用いて後述する。 Next, in step S804, the CPU 201 (human resource search meter detection / calculation means 1021) adds a point (scoring process of searched human resources) for each human resource search result in step S803 that is closer to the search condition. ). The details of scoring of the searched human resources will be described later with reference to FIG.
次に、ステップS805では、CPU201は、ステップS803で検索され、ステップS804でスコアリングされた人材検索結果一覧(一例を後述する図25に示す)を、人材検索を依頼したクライアント装置111に送信する。この人材検索結果一覧を受信したクライアント装置111では、この人材検索結果一覧をディスプレイに表示等する。
Next, in step S805, the
以下、図14のフローチャートを参照して図8のステップS802に示した類義語辞書を利用して検索条件を意味の近い言葉へ拡張する検索語拡張処理について説明する。 Hereinafter, a search word expansion process for expanding the search condition to words having similar meanings using the synonym dictionary shown in step S802 of FIG. 8 will be described with reference to the flowchart of FIG.
図14は、本発明における第2の制御処理手順の一例を示すフローチャートであり、図8のステップS802に示した検索語拡張処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現されるシソーラス辞書検索手段101の機能に対応する。
FIG. 14 is a flowchart showing an example of a second control processing procedure according to the present invention, and corresponds to the search word expansion processing shown in step S802 of FIG. Note that the processing in this flowchart corresponds to the function of the thesaurus
まず、ステップS1401では、CPU201は、ステップS801で入力されたRAM203内に保持された検索条件リスト1000内に、未拡張の検索条件(スキル条件)が存在するか判定し、未拡張の検索条件が存在すると判定した間は、ステップS1402〜S1408の処理を実行する。なお、本実施形態では、検索条件内の技術/環境条件1101のみを検索語の拡張を行うものとするが、工程条件1102,役割条件1103も夫々検索語の拡張を行うように構成してもよい。
First, in step S1401, the
一方、ステップS1401で、未拡張の検索条件が存在しないと判定した場合には、CPU201は、検索語拡張処理を終了する。
On the other hand, if it is determined in step S1401 that there is no unextended search condition, the
ステップS1402では、CPU201は、検索条件リスト1000から検索条件(スキル条件)を抜き出す。
In step S1402, the
ステップS1403では、CPU201は、ステップS1402で抜き出した検索条件(スキル条件)からキーワード(条件見出し1105(図11))を抜き出す。
In step S1403, the
ステップS1404では、CPU201は、ステップS1403で抜き出したキーワードをシソーラス辞書DB103を用いて代表語へ統制する同義語統制処理を実行する。なお、この同義語統制処理の詳細は図15を用いて後述する。
In step S1404, the
ステップS1405では、CPU201は、ステップS1404で代表語へ統制したキーワードとシソーラス辞書DB103を用いてキーワードの上位語拡張を行う上位検索処理を実行する。なお、この上位検索処理の詳細は図16を用いて後述する。
In step S <b> 1405, the
ステップS1406では、CPU201は、ステップS1405で拡張された上位語とシソーラス辞書DB103を用いてキーワードの下位語拡張を行う下位検索処理を実行する。なお、この下位検索処理の詳細は図17を用いて後述する。
In step S1406, the
ステップS1407では、CPU201は、ステップS1404で代表語へ統制したキーワードとシソーラス辞書DB103を用いてキーワードの関連のある用語への拡張を行う関連語検索処理を実行する。なお、この関連語検索処理の詳細は図18を用いて後述する。
In step S <b> 1407, the
次に、ステップS1408では、CPU201(シソーラス辞書抽象用語排除手段1012)は、キーワードの拡張リスト1106から、抽象フラグ1203が「FALSE」の拡張語を削除する抽象後排除処理を実行する。これにより、拡張語の中で極めて抽象的な用語を検索語として対象外として排除することができる。
In step S 1408, the CPU 201 (thesaurus dictionary abstract term excluding means 1012) executes post-abstraction exclusion processing for deleting the extended word whose abstract flag 1203 is “FALSE” from the
そして、CPU201は、図8のステップS801で入力されたRAM203内に保持された検索条件リスト1000内に未拡張の検索条件(スキル条件)が存在しなくなったら、本フローチャートの処理を終了する。
The
以下、図15のフローチャートを参照して図14のステップS1404に示した同義語統制処理について説明する。 The synonym control process shown in step S1404 in FIG. 14 will be described below with reference to the flowchart in FIG.
図15は、本発明における第3の制御処理手順の一例を示すフローチャートであり、図14のステップS1404に示した同義語統制処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現されるシソーラス辞書検索手段101の機能に対応する。
FIG. 15 is a flowchart showing an example of a third control processing procedure in the present invention, and corresponds to the synonym control processing shown in step S1404 of FIG. Note that the processing in this flowchart corresponds to the function of the thesaurus
まず、ステップS1501では、CPU201は、図14のステップS1403で抜き出したキーワード(即ち、検索条件(スキル条件)として入力されたキーワード)を代表語へ統制する。例えば、検索条件として入力されたキーワードが「ジャヴァ」や「JAVA(登録商標(以下省略))」であった場合、検索条件を「Java」という文字(代表語)に変換することである。
First, in step S1501, the
用語管理手段において、代表語と代表語ではないものは、図5に示したシソーラス辞書DB103内各単語の詳細構造から判別することができる。
In the term management means, representative words and those that are not representative words can be discriminated from the detailed structure of each word in the
代表語は、図5シソーラス辞書DB103内各単語の詳細構造の同義語リスト502に情報を保持していない。
The representative word does not hold information in the
一方、代表語ではないものは、図5のシソーラス辞書DB103内各単語の詳細構造の同義語リスト503にその代表語となる情報を保持している。
On the other hand, information that is not a representative word holds information as a representative word in the
即ち、ステップS1501では、CPU201は、検索条件として入力されたキーワードを用いて図5のシソーラス辞書DB103内を検索する。そして、該検索された単語の同義語リスト503にその代表語となる情報を保持されている場合には、CPU201は、当該キーワード(即ち、図11の条件見出し1105)をその代表語に書き換える(変換する)。
That is, in step S1501, the
以下、図16のフローチャートを参照して図14のステップS1405に示した上位語検索処理について説明する。 Hereinafter, the broader term search processing shown in step S1405 of FIG. 14 will be described with reference to the flowchart of FIG.
図16は、本発明における第4の制御処理手順の一例を示すフローチャートであり、図14のステップS1405に示した上位語検索処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現されるシソーラス辞書検索手段101の機能に対応する。
FIG. 16 is a flowchart showing an example of a fourth control processing procedure in the present invention, and corresponds to the broader term search processing shown in step S1405 of FIG. Note that the processing in this flowchart corresponds to the function of the thesaurus
まず、CPU201は、まず、ステップS1601において、図14のステップS1404で代表語へ統制されたキーワード(以下、キーワード)が必須条件に設定されたキーワードか否かを判定する。CPU201は、キーワードを条件見出し1105としたスキル条件内の必須フラグ1107(図11)に「TRUE」であった場合キーワードが必須条件に設定されたと判定する。
First, in step S1601, the
ステップS1601で、キーワードが必須条件に設定されたと判定した場合には、CPU201は、ステップS1608に処理を進める。
If it is determined in step S1601 that the keyword has been set as an essential condition, the
ステップS1608では、CPU201は、キーワードを、キーワードを条件見出し1105としたスキル条件内の拡張リスト1106(図11)の先頭要素に設定する。即ち、上記拡張リスト1106の先頭に拡張語を追加し、該追加した拡張語の拡張見出し1201に上記キーワードに対応する文字列を設定する。その後、CPU201は、ステップS1609に処理を進める。
In step S1608, the
次に、ステップS1609では、CPU201は、上記拡張語の拡張重み1202に「1」、抽象フラグ1203に「TRUE」を入力し、本フローチャートの処理を終了する。
In step S1609, the
一方、ステップS1601で、キーワードが必須条件に設定されていないと判定した場合には、CPU201は、ステップS1602に処理を進める。
On the other hand, if it is determined in step S1601 that the keyword is not set as an essential condition, the
ステップS1602では、CPU201は、キーワードを、キーワードを条件見出し1105としたスキル条件内の拡張リスト1106(図11)の先頭要素に設定する。さらに、CPU201は、キーワードを"着目中の用語"としてRAM203に記憶させ、ステップS1603に処理を進める。
In step S1602, the
次に、ステップS1603では、CPU201は、上記拡張語の拡張重み1202に「1」を入力する。さらに、CPU201は、上記"着目中の用語"でシソーラス辞書DB103を検索し、シソーラス辞書DB103内で上記"着目中の用語"に設定されている抽象フラグ506の真偽値を、上記拡張語の抽象フラグ1203に入力し、ステップS1604に処理を進める。なお、拡張重み1202に「1」を設定したのは上記"着目中の用語"がまだ上位語拡張前であるためである。
Next, in step S1603, the
次にステップS1604では、CPU201は、"着目中の用語"がシソーラス辞書DB103の最上位(上位語503に情報が無い)かどうかを判定する。
In step S <b> 1604, the
そして、ステップS1604で、"着目中の用語"がシソーラスの最上位である(上位語503に情報が無い)と判定した場合には、CPU201は、本フローチャートの処理を終了させる。
If it is determined in step S1604 that the “term of interest” is the highest level of the thesaurus (the
一方、ステップS1604で、"着目中の用語"がシソーラスの最上位でない(上位語503に情報が有る)と判定した場合には、CPU201は、ステップS1605に処理を進める。
On the other hand, if it is determined in step S1604 that the “term of interest” is not the highest level of the thesaurus (the
ステップS1605では、CPU201(シソーラス辞書検索終点決定手段1011)は、"着目中の用語"がストップマークの付いた用語(ストップマーク507の「TRUE」)かどうかを判定する。 In step S1605, the CPU 201 (thesaurus dictionary search end point determination means 1011) determines whether the “term of interest” is a term with a stop mark (“TRUE” of the stop mark 507).
そして、ステップS1605で、"着目中の用語"がストップマークの付いた用語である(ストップマーク507の「TRUE」)と判定した場合には、CPU201(シソーラス辞書検索終点決定手段1011)は、本フローチャートの処理を終了させる。 If it is determined in step S1605 that the “term of interest” is a term with a stop mark (“TRUE” of the stop mark 507), the CPU 201 (thesaurus dictionary search end point determination means 1011) The process of the flowchart is terminated.
一方、ステップS1605で、"着目中の用語"がストップマークの付いた用語でない(ストップマーク507の「FALSE」)と判定した場合には、CPU201(シソーラス辞書検索終点決定手段1011)は、ステップS1606に処理を進める。 On the other hand, if it is determined in step S1605 that the “term of interest” is not a term with a stop mark (“FALSE” in the stop mark 507), the CPU 201 (thesaurus dictionary search end point determining means 1011) determines whether the term is “stopped 507”. Proceed with the process.
ステップS1606では、CPU201は、シソーラス辞書DB103より"着目中の用語"の上位語503を取得し、上記拡張リスト1106の先頭要素に設定する。さらに、CPU201は、上記取得した上位語を新たな"着目中の用語"に設定する("着目中の用語"としてRAM203内に記憶させる)。図3を用いて説明すると、"着目中の用語"が「Java1.3」であった場合に、上位語として「Java」を取得し、新たな"着目中の用語"に「Java」を設定する。そして、CPU201は、ステップS1607に処理を進める。
In step S <b> 1606, the
次に、ステップS1603では、CPU201(シソーラス辞書検索ヒット用語有用度算出手段1013)は、上記拡張語の拡張重み1202に累積の重み(後述)を設定する。さらに、CPU201は、上記拡張語の抽象フラグ1203にシソーラス辞書DB103内に設定されている"着目中の用語"の真偽値を設定し、ステップS1604に処理を戻す。
Next, in step S1603, the CPU 201 (thesaurus dictionary search hit term usefulness calculating means 1013) sets a cumulative weight (described later) as the
なお、ここでいう"累積の重み"とは、シソーラス辞書DB103に設定されている上記拡張リスト1106で上記新たな"着目中の用語"の次要素と上記新たな"着目中の用語"との間の単語間の重み(類似度602)と上記次要素の累積の重みとを掛け合わせたものであり、拡張された検索用語の有用度を示すものである。図4を用いて説明すると、例えば、上記新たな"着目中の用語"が「オブジェクト指向言語」の場合、拡張リストで次要素となる「Java」と「オブジェクト指向言語」との間の単語間の重み(ここでは「0.7」)と、上記拡張リストで次要素となる「Java」の累積の重み(ここでは「0.8(=0.8×1.0)」)を掛け合わせた「0.56」が上記"累積の重み"として算出される。
The “cumulative weight” here refers to the next element of the new term of interest and the new term of interest in the
以下、図17のフローチャートを参照して図14のステップS1406に示した下位語検索処理(上位語拡張フローにて代表語を上位語へ拡張した結果を対象に下位語への拡張を行う処理)について説明する。 Hereinafter, referring to the flowchart of FIG. 17, the narrower word search process shown in step S <b> 1406 of FIG. 14 (the process of extending the representative word to the broader word in the broader word expansion flow and expanding to the lower word) Will be described.
図17は、本発明における第5の制御処理手順の一例を示すフローチャートであり、図14のステップS1406に示した下位語検索処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現されるシソーラス辞書検索手段101の機能に対応する。
FIG. 17 is a flowchart showing an example of a fifth control processing procedure in the present invention, and corresponds to the narrower word search processing shown in step S1406 of FIG. Note that the processing in this flowchart corresponds to the function of the thesaurus
まず、ステップS1701では、CPU201は、代表語の拡張結果であるキーワードを条件見出し1105としたスキル条件内の拡張リスト1106(図14のステップS1405(図16)で上位検索処理で追加された拡張リスト)内の全ての拡張語に対して(下位語未検索拡張語がなくなるまで)、ステップS1702〜S1709の処理を繰り返す。
First, in step S1701, the
ステップS1702では、CPU201は、上記拡張リスト1106から拡張語を一つ選択する。
In step S1702, the
次に、ステップS1703では、CPU201は、ステップS1702で選択した拡張語に下位語情報があるかどうか判定する。この判定は、上記拡張語に基づいてシソーラス辞書DB103を検索して、当該拡張語の下位語リスト504(図5)を取得し、該拡張リスト504に下位語情報があるかどうかで判定する。
Next, in step S1703, the
そして、ステップS1703において、拡張語に下位語情報があると判定した場合には、CPU201は、ステップS1704に処理を進める。
If it is determined in step S1703 that the extended word has low-order word information, the
ステップS1704では、CPU201は、ステップS1702で選択した拡張語の下位語リスト504内の全ての下位語に対して(未処理の下位語がなくなるまで)、ステップS1705〜S1709の処理を繰り返す。
In step S1704, the
ステップS1705では、CPU201(シソーラス辞書検索ヒット用語有用度算出手段1013)は、ステップS1702で選択した拡張語の下位語リスト504より下位語を一つ選択し、ステップS1702で選択した拡張語と上記下位語間の"累積の重み"を算出する。この"累積の重み"は、拡張語の累積の重み(図12の拡張重み1202)と、下位語の単語間の重み(図6の類似度602)の積で算出される。
In step S1705, the CPU 201 (thesaurus dictionary search hit term usefulness calculation means 1013) selects one low-order word from the low-word list 504 of the extended word selected in step S1702, and the extended word selected in step S1702 and the above-mentioned low-order word. Calculate the "cumulative weight" between words. This “cumulative weight” is calculated as a product of the cumulative weight of the extended word (extended
次に、ステップS1706では、CPU201は、ステップS1705で選択した下位語が拡張リスト1106内に存在するか否かを判定する。
Next, in step S1706, the
そして、ステップS1706において、ステップS1705で選択した下位語が拡張リスト1106内に存在しないと判定した場合には、CPU201はステップS1709の処理を行うように制御する。
If it is determined in step S1706 that the narrower word selected in step S1705 does not exist in the
ステップS1709では、CPU201は、ステップS1705で選択した下位語を拡張リスト1106の最後に追加する。詳細には、CPU201は、拡張リスト1106の最後に拡張語を追加し、追加した拡張語の拡張見出し1201に上記下位語の相手見出し601、拡張重み1202(拡張された検索用語の有用度)にステップS1705で算出した"累積の重み"、抽象フラグ1203にシソーラス辞書DB103内に設定されている上記下位語の真偽値を格納し、ステップS1704に処理を戻す。
In step S1709, the
一方、ステップS1706において、ステップS1705で選択した下位語が拡張リスト1106内に存在すると判定した場合には、CPU201はステップS1707,S1708の処理を行うように制御する。
On the other hand, if it is determined in step S1706 that the narrower word selected in step S1705 exists in the
ステップS1707では、CPU201(シソーラス辞書検索ヒット用語有用度算出手段1013)は、既に拡張リスト1106内にある上記下位語の"累積の重み"(拡張重み1202)とステップS1705で算出した"累積の重み"を比較する。
In step S 1707, the CPU 201 (thesaurus dictionary search hit term usefulness calculating means 1013), the “cumulative weight” (extended weight 1202) of the above-mentioned low-order word already in the
そして、ステップS1707において、CPU201は、ステップS1705で算出した"累積の重み"の方が大きい場合(キーワードにより近い場合)は、ステップS1708へ処理を進める。
In step S1707, if the “cumulative weight” calculated in step S1705 is larger (closer to the keyword), the
ステップS1708では、CPU201は、既に拡張リスト1106内にある上記下位語の"累積の重み"(拡張重み1202)をステップS1705で算出した"累積の重み"に書き換え、ステップS1704に処理を戻す。
In step S 1708, the
一方、ステップS1707において、CPU201は、ステップS1705で算出した"累積の重み"の方が大きくない場合(キーワードにより遠い場合)には、そのままステップS1704に処理を戻す。本実施形態では同一の下位語が複数存在した場合、よりキーワードに近い"累積の重み"(より大きい有用度)を残すようにしている。
On the other hand, in step S1707, if the “cumulative weight” calculated in step S1705 is not greater (if it is farther from the keyword), the
そして、ステップS1704において、CPU201は、ステップS1702で選択した拡張語の下位語リスト504内の全ての下位語に対して(未処理の下位語がなくなるまで)、ステップS1705〜S1709の処理を実行したと判定した場合には、ステップS1701に処理を戻す。
In step S1704, the
そして、ステップS1701において、CPU201は、代表語の拡張結果であるキーワードの拡張リスト1106内の全ての拡張語に対して(下位語未検索拡張語がなくなるまで)、ステップS1702〜S1708の処理を実行したと判定した場合には、本フローチャートの処理を終了する。
In step S1701, the
以下、図18のフローチャートを参照して図14のステップS1407に示した関連語検索処理(同義語拡張において統制表示した代表語から関連語への拡張処理)について説明する。 In the following, the related word search process (expansion process from the representative word controlled and displayed in the synonym expansion to the related word) shown in step S1407 of FIG. 14 will be described with reference to the flowchart of FIG.
図18は、本発明における第6の制御処理手順の一例を示すフローチャートであり、図14のステップS1407に示した関連語検索処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現されるシソーラス辞書検索手段101の機能に対応する。
FIG. 18 is a flowchart showing an example of the sixth control processing procedure in the present invention, and corresponds to the related word search processing shown in step S1407 of FIG. Note that the processing in this flowchart corresponds to the function of the thesaurus
まず、ステップS1801では、CPU201は、図14のステップS1404で代表語へ統制されたキーワード(以下、キーワード)に対応するシソーラス辞書DB103内の単語の関連語リスト505(図5)を参照し、関連語リスト505に関連語が一つでも存在するか否かを判定する。例えば、図4のシソーラス図を参考にすると、代表語が「Java」である場合、関連語は「JSP」、「Servlet」、「Swing」となる。
First, in step S1801, the
そして、ステップS1801において、キーワードの関連語リスト505に関連語が一つの存在しないと判定した場合には、CPU201は、本フローチャートの処理を終了させる。
If it is determined in step S1801 that there is no related word in the keyword related word list 505, the
一方、ステップS1801において、キーワードの関連語リスト505に関連語が一つでも存在すると判定した場合には、CPU201は、ステップS1802に処理を進める。
On the other hand, if it is determined in step S1801 that there is at least one related word in the keyword related word list 505, the
ステップS1802では、CPU201は、上記キーワードが持つ関連語リスト505全てに対してステップS1803〜S1806の処理を行う。
In step S1802, the
ステップS1803では、CPU201は、上記キーワードが持つ関連語リスト505より関連後を一つ選択し、該選択した関連語が上記キーワードが持つ拡張リスト1106内に存在するか否かを判定する。
In step S1803, the
そして、ステップS1803において、上記関連語が上記拡張リスト1106内に存在すると判定した場合には、CPU201はステップS1804の処理を行うように制御する。
If it is determined in step S1803 that the related word is present in the
ステップS1804では、CPU201(シソーラス辞書検索ヒット用語有用度算出手段1013)は、上記関連語の"累積の重み"(拡張された検索用語の有用度)を算出する。なお、上記関連語の"累積の重み"は、上記キーワードの"累積の重み"に、上記キーワードと上記関連語との間の重みを掛け合わせて算出する。そして、上記関連語の"累積の重み"と、既に拡張リスト1106内に存在する関連語の"累積の重み"(即ち拡張重み1202)を比較し、より数値の大きい(より代表語と言葉の意味が近い)方を既に拡張リスト1106内に存在する関連語の拡張重み1202(拡張された検索用語の有用度)に登録し、ステップS1802に処理を戻す。
In step S1804, the CPU 201 (thesaurus dictionary search hit term usefulness calculating means 1013) calculates the “cumulative weight” (usefulness of the extended search term) of the related word. The “cumulative weight” of the related word is calculated by multiplying the “cumulative weight” of the keyword by the weight between the keyword and the related word. Then, the “cumulative weight” of the related word is compared with the “cumulative weight” (that is, the extended weight 1202) of the related word already existing in the
一方、ステップS1803において、上記関連語が上記拡張リスト1106内に存在しないと判定した場合には、CPU201はステップS1805の処理を行うように制御する。
On the other hand, if it is determined in step S1803 that the related word does not exist in the
ステップS1805では、CPU201は、上記関連語を上記拡張リスト1106の最後に追加する。詳細には、CPU201は、拡張リスト1106の最後に拡張語を追加し、追加した拡張語の拡張見出し1201に上記関連語の相手見出し601、抽象フラグ1203に上記関連語のシソーラス辞書DB103内での抽象フラグ506の真偽値を登録する。
In step S1805, the
次に、ステップS1806において、CPU201(シソーラス辞書検索ヒット用語有用度算出手段1013)は、上記関連語の"累積の重み"(拡張された検索用語の有用度)を算出する。なお、上記関連語の"累積の重み"は、上記キーワードの"累積の重み"に、上記キーワードと上記関連語との間の重みを掛け合わせて算出する。そして、CPU201は、上記算出した上記関連語の"累積の重み"を上記追加した拡張語の拡張重み1202に登録し、ステップS1802に処理を戻す。
Next, in step S 1806, the CPU 201 (thesaurus dictionary search hit term usefulness calculating means 1013) calculates the “cumulative weight” (usefulness of the extended search term) of the related word. The “cumulative weight” of the related word is calculated by multiplying the “cumulative weight” of the keyword by the weight between the keyword and the related word. The
そして、ステップS1802において、上記キーワードが持つ関連語リスト505全てに対してステップS1803〜S1806の処理を実行したと判定した場合には、本フローチャートの処理を終了する。 If it is determined in step S1802 that the processes in steps S1803 to S1806 have been performed on all the related word lists 505 included in the keyword, the process of this flowchart ends.
以下、図19〜図22を参照して図14〜図18に詳細に説明した検索語拡張処理結果について例示する。 Hereinafter, the search term expansion processing results described in detail in FIGS. 14 to 18 with reference to FIGS. 19 to 22 will be exemplified.
図19は、図13に示した検索条件リスト1000の例の条1における検索後の拡張処理結果の一例を示す図である。
FIG. 19 is a diagram illustrating an example of an extended processing result after search in
ここでの例示は、検索条件の条件見出し1105が「Oracle」、必須フラグ1107が「TRUE」の場合の拡張処理結果に対応する。
The example here corresponds to an extended processing result when the search
この場合、必須フラグ1107が「TRUE」のため、上位語には拡張されない。また、図3に示されるようにシソーラス辞書DB103には「Oracle」の下位語が登録されていないため実質的に下位語への拡張もされない。しかし、図3に示されるようにシソーラス辞書DB103には「Oracle」の関連語として「SQL」が登録されているため、拡張リスト1106に関連語「SQL」が登録されている。
In this case, since the
図20は、図13に示した検索条件リスト1000の例の条2における検索後の拡張処理結果の一例を示す図である。
FIG. 20 is a diagram illustrating an example of an extended processing result after searching in
ここでの例示は、検索条件の条件見出し1105が「Java1.3」、必須フラグ1107が「FALSE」の場合の拡張処理結果に対応する。
The example here corresponds to the extended processing result when the
この場合、必須フラグ1107が「FALSE」のため、まず「Java1.3」は上位語として「Java」,「オブジェクト指向言語」が順次拡張リスト1106の先頭に登録される。次に、下位語として「Java1.4」,「C++」,「SmallTalk」が順次拡張リスト1106の最後に登録される。なお、図3に示されるようにシソーラス辞書DB103には「Java1.3」の関連語が登録されていないため関連語への拡張はされない。
In this case, since the
図21は、図20に示した拡張リスト内の拡張語「Java1.3」を例示する図である。 FIG. 21 is a diagram illustrating the extension word “Java1.3” in the extension list shown in FIG.
図22は、図20に示した拡張リスト内の拡張語「Java」を例示する図である。 FIG. 22 is a diagram illustrating an extension word “Java” in the extension list shown in FIG.
以下、図23のフローチャートを参照して図8のステップS803に示した人材プロファイルDB検索処理(検索条件として入力され拡張されたキーワードに該当する人材を人材DB104から検索する処理)について説明する。
Hereinafter, the human resource profile DB search process (a process of searching the
図23は、本発明における第7の制御処理手順の一例を示すフローチャートであり、図8のステップS803に示した人材プロファイルDB検索処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現される人材検索手段102の機能に対応する。
FIG. 23 is a flowchart showing an example of the seventh control processing procedure in the present invention, and corresponds to the human resource profile DB search processing shown in step S803 of FIG. Note that the processing of this flowchart corresponds to the function of the human
まず、ステップS2301では、CPU201は、初期化した検索式(即ち、検索条件無し)をRAM203内に記憶させ、ステップS2301に処理を進める。
First, in step S2301, the
次に、ステップS2302では、CPU201は、検索条件リスト1000の検索条件全てに対して、人材DB104を検索する為の検索式を作成する処理(ステップS2303〜S2307)を実行する。
Next, in step S2302, the
まず、ステップS2303では、CPU201は、検索条件リスト1000からまだ検索式を作成していない検索条件を一つを選択する。
First, in step S2303, the
ステップS2304では、CPU201は、ステップS2303で選択した検索条件の検索要素間複数(即ち、拡張リスト1106内の拡張語)全てをORで繋げて"条件式"を作成する。
In step S2304, the
次に、ステップS2305では、CPU201は、ステップS2303で選択した検索条件が必須条件か否かを判定する。
Next, in step S2305, the
そしてステップS2305において、ステップS2303で選択した検索条件が必須条件であると判定した場合には、CPU201は、ステップS2306へ処理を進める。
If it is determined in step S2305 that the search condition selected in step S2303 is an essential condition, the
ステップS2306では、CPU201は、検索式を作成(更新)する。詳細には、必須条件の検索式を作成する場合、CPU201は、RAM203に記憶される検索式に対して、ステップS2304で作成した条件式を「AND」で繋げ、検索式を作成(更新)する。例えば「"検索式" = "検索式" AND "条件式"」のように作成する。そして、CPU201はステップS2302に処理を戻す。
In step S2306, the
一方、ステップS2305において、ステップS2303で選択した検索条件が必須条件でないと判定した場合には、CPU201は、ステップS2307へ処理を進める。
On the other hand, if it is determined in step S2305 that the search condition selected in step S2303 is not an essential condition, the
ステップS2307では、CPU201は、検索式を作成(更新)する。詳細には、非必須条件の検索式を作成する場合、CPU201は、RAM203に記憶される検索式に対して、ステップS2304で作成した条件式を「OR」で繋げ、検索式を作成(更新)する。例えば「"検索式" = "検索式" OR "条件式"」のように作成する。そして、CPU201はステップS2302に処理を戻す。
In step S2307, the
そして、ステップS2302において、全ての検索条件からDB検索の為の検索式を作成し終えたと判定した場合には、CPU201は、ステップS2308へ処理を進める。
If it is determined in step S2302 that a search expression for DB search has been created from all search conditions, the
ステップS2308では、CPU201は、ステップS2306またはステップS2307で作成した検索式を用いて、人材DB104(例えば、後述する図24)を検索する。
In step S2308, the
ステップS2309では、CPU201は、ステップS2308で行った検索結果を一覧(例えば、後述する図25)として作成し、本フローチャートの処理を終了する。
In step S2309, the
図24は、図1に示した人材DB104の一例を示す図である。
FIG. 24 is a diagram illustrating an example of the
図25は、図23のステップS2309で作成される人材検索結果の一覧の一例を示す図である。 FIG. 25 is a diagram showing an example of a list of human resource search results created in step S2309 of FIG.
図25において、2501は検索された人材を示す。2503は、検索に用いられた各スキル条件(検索条件)を示す。
In FIG. 25,
2502はトータルポイントを示す。
図25では全てのスコアリングが終了した人材検索結果が示されているが、図23に示した人材プロファイルDB検索処理が終了した時点では、トータルポイント2502は、未だ算出されていない。このトータルポイント2502は、以下に示す人材のスコアリング処理により算出される。
FIG. 25 shows a human resource search result for which all scoring has been completed, but when the human resource profile DB search process shown in FIG. 23 is completed,
以下、図26のフローチャートを参照して図8のステップS804に示した検索された人材のスコアリング処理について説明する。 Hereinafter, the retrieved human resource scoring process shown in step S804 of FIG. 8 will be described with reference to the flowchart of FIG.
図26は、本発明における第8の制御処理手順の一例を示すフローチャートであり、図8のステップS804に示した検索された人材のスコアリング処理(人材スキルプロファイルDB検索処理の検索結果に対して各人材が持つスキルのスコアリングを行う処理)に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現される人材検索スコア算出手段1021の機能に対応する。
FIG. 26 is a flowchart showing an example of the eighth control processing procedure in the present invention. The retrieved human resource scoring process (research result of human resource skill profile DB search process shown in step S804 of FIG. 8) is shown. Corresponding to the skill scoring of each human resource). Note that the processing of this flowchart corresponds to the function of the human resource search
まず、ステップS2601では、CPU201は、図23に示した人材スキルプロファイルDB検索処理の検索結果一覧(例えば図25)に含まれる全ての人材に対してスコアリング処理(ステップS2602〜S2606)を行う。
First, in step S2601, the
まず、ステップS2602では、CPU201は、図23に示した人材スキルプロファイルDB検索処理の検索結果から1人材を選択して着目中の人材に設定し、RAM203に記憶される着目中の人材のスコアとなる値(トータルスコア)を0で初期化する。
First, in step S2602, the
次に、ステップS2603では、CPU201は、着目中の人材が持つスキル全てに対してスコアリング(ステップS2604〜S2606)を行う。
Next, in step S2603, the
まず、ステップS2604では、CPU201は、着目中の人材が持つスキルから1スキルを選択し、着目中のスキルに設定し、着目中のスキルの経験時間と着目中のスキルの拡張重み(検索条件内に保持されている着目中のスキルに対応する拡張語の拡張重み(有用度)1202(図25ではスキル条件2503内のスコアに相当))を掛け合わせることで経験時間を再算出する。
First, in step S2604, the
次に、ステップS2605では、CPU201は、上記選択したスキルに対して、ステップS2604で再算出した経験時間を利用して経験値の減衰処理を行って想定経験月数を求める。なお、減衰処理の詳細は図27を用いて後述する。
Next, in step S2605, the
次に、ステップS2606では、CPU201は、ステップS2605で減衰処理を行ったスキルに対するスコアを以下の式(1)を用いて算出し、ステップS2602で初期化したトータルスコアに加算し、ステップS2603に処理を戻す。
Next, in step S2606, the
※式(1)は、便宜上100点満点とする。
※absは絶対値を表す。
* Formula (1) is given a maximum of 100 points for convenience.
* Abs represents an absolute value.
ステップS2603において、着目中の人材が持つスキル全てに対してスコアリングが終了したと判定した場合には、CPU201は、ステップS2607へ処理を進める。
If it is determined in step S2603 that scoring has been completed for all skills of the focused human resource, the
ステップS2607では、CPU201は、着目中の人材の全スキルからボーナスポイント付加処理を実行する。なお、ボーナスポイント付加処理は図29を用いて後述する。
In step S2607, the
次に、ステップS2608では、CPU201は、ステップS2607で算出されたボーナスポイントをトータルスコアに加算して、着目中の人材のトータルポイント2501(図25)としてRAM203内に保存し、ステップS2601に処理を戻す。
Next, in step S2608, the
ステップS2601において、CPU201が、図23に示した人材スキルプロファイルDB検索処理の検索結果一覧に含まれる全ての人材に対してスコアリング処理(ステップS2602〜S2606)を終了したと判定した場合には、本フローチャートの処理を終了する。
When the
以下、図27のフローチャートを参照して図26のステップS2605に示した減衰処理について説明する。 Hereinafter, the attenuation process shown in step S2605 of FIG. 26 will be described with reference to the flowchart of FIG.
図27は、本発明における第9の制御処理手順の一例を示すフローチャートであり、図26のステップS2605に示した減衰処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現される人材検索スコア算出手段1021の機能に対応する。
FIG. 27 is a flowchart showing an example of the ninth control processing procedure in the present invention, and corresponds to the attenuation processing shown in step S2605 of FIG. Note that the processing of this flowchart corresponds to the function of the human resource search
まず、ステップS2701では、CPU201は、経験値の減衰を算出する対象の人材(以下、着目中の人材)が所持するスキルのうち経験値の減衰を算出する対象のスキル(以下、着目中のスキル)が確定した時(日付)を表すレイティング日(即ち、図24に示す終了年月日2401)を人材DB104より取得する。そして、取得したレイティング日(終了年月日2401)と各スキルの減衰した経験値を算出する日付を表す変換日(システム管理者もしくは利用者により予め入力されてRAM203に記憶されている)を用いて以下の式(2)よりブランク月数(即ち、検索された人材のスキルが確定した時点からの経過期間)を算出し、ステップS2702に処理を進める。
First, in step S2701, the
「ブランク月数=(変換日の年−レイティング日の年)×12+変換日の月−レイティング日の月」・・・(2)
次に、ステップS2702では、CPU201は、システム管理者もしくは利用者により予め設定されてHDD204に記憶されている着目中のスキルの減衰開始期間(図28の2801)と減衰終了期間(図28の2802)を取得する。そして、CPU201は、取得した減衰開始期間と減衰終了期間から減衰期間(図28の2803)を以下の式(3)より算出し、ステップS2703に処理を進める。
“Number of blank months = (year of conversion date−year of rating date) × 12 + month of conversion date−month of rating date” (2)
Next, in step S2702, the
「減衰期間=減衰終了期間−減衰開始期間」・・・(3)
図28は、ブランク月数による減衰率を説明するための図である。
“Attenuation period = Attenuation end period−Attenuation start period” (3)
FIG. 28 is a diagram for explaining the attenuation rate according to the number of blank months.
次に、ステップS2703では、CPU201は、ステップS2501で算出されたブランク月数と着目中のスキルの減衰開始期間を比較する。そして、比較した結果、ブランク月数が減衰開始期間より小さかったと判定した場合には、CPU201は、ステップS2706に処理を進める。
Next, in step S2703, the
ステップS2706では、CPU201は、ブランク月数が減衰開始期間より短い、つまり減衰が始まっていないので、着目中のスキルの減衰率に「1」(減衰無し)を設定し、ステップS2510に処理を進める。
In step S2706, the
一方、ステップS2703において、ブランク月数が減衰開始期間以上であったと判定した場合には、CPU201は、ステップS2704に処理を進める。
On the other hand, if it is determined in step S2703 that the number of blank months is equal to or greater than the attenuation start period, the
ステップS2704では、CPU201は、ステップS2701で算出されたブランク月数と着目中のスキルの減衰終了期間を比較する。そして、比較した結果、ブランク月数が減衰終了期間より大きいと判定した場合には、CPU201は、ステップS2707に処理を進める。
In step S2704, the
ステップS2707では、CPU201は、ブランク月数が減衰終了期間を経過しているため、減衰率に着目中のスキルの最大減衰率(図28の2804;システム管理者もしくは利用者により予め設定されHDD204に記憶されている)を設定し、ステップS2510に処理を進める。
In step S2707, since the blank months have passed the decay end period, the
一方、ステップS2704において、ブランク月数が減衰終了期間以下と判定した場合には、CPU201は、ステップS2705に処理を進める。
On the other hand, if it is determined in step S2704 that the number of blank months is equal to or less than the attenuation end period, the
ステップS2705では、CPU201は、着目中のスキルの減衰開始期間と減衰終了期間を比較する。そして、比較した結果、減衰開始期間と減衰終了期間が等しい(即ち、減衰期間が「0」)と判定した場合には、CPU201は、ステップS2707に処理を進める。
In step S2705, the
一方、ステップS2704において、減衰開始期間と減衰終了期間が等しくない(即ち、減衰期間が「0」でない)と判定した場合には、CPU201は、ステップS2708に処理を進める。
On the other hand, if it is determined in step S2704 that the attenuation start period and the attenuation end period are not equal (that is, the attenuation period is not “0”), the
ステップS2708では、CPU201は、ステップS2702で算出した減衰開間と最大減衰率から減衰傾きを以下の式(4)より算出し、ブランク月数と着目中のスキルの減衰開始期間から減衰ブランク月数(図28の2805)を以下の式(5)より算出し、ステップS2709に処理を進める。
In step S2708, the
「減衰傾き=(1−最大減衰率)/減衰期間」・・・(4)
「減衰ブランク月数=ブランク月数−減衰開始期間」・・・(5)
ステップS2709では、ステップS2708で算出した減衰傾きと減衰ブランク月数から減衰率を以下の式(6)より算出し、ステップS2510に処理を進める。
“Attenuation slope = (1−maximum attenuation rate) / attenuation period” (4)
“Attenuation blank months = blank months−attenuation start period” (5)
In step S2709, an attenuation rate is calculated from the following equation (6) from the attenuation slope and attenuation blank months calculated in step S2708, and the process proceeds to step S2510.
「減衰率=1−減衰傾き×減衰ブランク月数」・・・(6)
ステップS2710では、CPU201は、着目中のスキルの経験月数(図26のステップS2604で算出した経験時間)と着目中のスキルの最大経験月数(システム管理者もしくは利用者により予め設定されHDD204に記憶されている)を比較する。
“Attenuation rate = 1−Attenuation slope × Attenuation blank months” (6)
In step S2710, the
そして、ステップS2710において、着目中のスキルの経験月数が最大経験月数以下と判定した場合には、CPU201は、ステップS2711に処理を進める。
If it is determined in step S2710 that the experience month of the skill being focused on is equal to or less than the maximum experience month, the
ステップS2511では、CPU201は、着目中のスキルの経験月数を最大経験月数に置き換え、ステップS2512に処理を進める。
In step S <b> 2511, the
一方、ステップS2710において、着目中のスキルの経験月数が最大経験月数より大きいと判定した場合には、CPU201は、そのままステップS2712に処理を進める。
On the other hand, if it is determined in step S2710 that the number of months of experience of the skill being focused on is greater than the maximum number of months of experience, the
ステップS2512では、CPU201は、算出した着目中のスキルの減衰率と経験月数から以下の式(7)により想定経験月数を計算し、経験値減衰フローの処理を終了する。
In step S <b> 2512, the
「想定経験月数=減衰率×経験月数」・・・(6)
以下、図29のフローチャートを参照して図26のステップS2607に示したボーナスポイント処理(人材スキルプロファイルDB検索処理結果である人材検索結果に対してボーナスポイントを付加する処理)について説明する。
"Assumed months of experience = decay rate x months of experience" (6)
Hereinafter, the bonus point processing (processing for adding bonus points to the human resource search result as the human resource skill profile DB search processing result) shown in step S2607 of FIG. 26 will be described with reference to the flowchart of FIG.
図29は、本発明における第10の制御処理手順の一例を示すフローチャートであり、図26のステップS2607に示したボーナスポイント処理に対応する。なお、このフローチャートの処理は、図2に示したCPU201がHDD204に格納されるプログラムをRAM203にロードして実行することにより実現される人材検索スコア算出手段1021の機能に対応する。
FIG. 29 is a flowchart showing an example of the tenth control processing procedure in the present invention, and corresponds to the bonus point processing shown in step S2607 of FIG. Note that the processing of this flowchart corresponds to the function of the human resource search
まず、ステップS2901では、CPU201は、人材スキルプロファイルDB検索処理結果である人材検索結果(図25)にある全ての人材に対して、ボーナスポイントの算出(ステップS2902〜S2907の処理)を行う。
First, in step S2901, the
ステップS2902では、CPU201は、人材検索結果から1人材を選択して着目中の人材に設定し、着目中の人材が持つ「スキル」と「検索条件の条件見出し1105」が完全に一致した数(以下、カウント数)と、着目中の人材が持つ「スキル」と「検索条件の同義語」いずれかが一致した数(以下、Pチェックカウント数)をカウントする。
In step S2902, the
例えば、Aさんは「Java1.3」、「C言語」、「SQL」のスキルを保持し、Bさんは「C++」、「Windows(登録商標(以下省略)) XP」のスキルを保持しているとする。なお、「C++」は「C言語」の同義語とする。 For example, Mr. A holds the skills of "Java1.3", "C language", and "SQL", and Mr. B holds the skills of "C ++" and "Windows (registered trademark) XP". Suppose that “C ++” is a synonym for “C language”.
この時、検索条件を「Java1.3」、「C言語」とした場合、Aさんの代表語カウント数は「2」、拡張語カウント数は「2」となり、Bさんの代表語カウント数は「0」、拡張語カウント数は「1」となる。 At this time, if the search conditions are “Java1.3” and “C language”, the representative word count of Mr. A is “2”, the extended word count is “2”, and the representative word count of Mr. B is “0” and the expanded word count are “1”.
次に、ステップS2903では、CPU201は、RAM203に記憶される着目中の人材のボーナスポイントを0で初期化する。
Next, in step S 2903, the
次にステップS2904では、CPU201は、上記カウント数による判定を行う。上記カウント数が「0」又は「1」でないと判定した場合には、CPU201は、ステップS2905に処理を進める。
In step S2904, the
ステップS2905では、CPU201は、上記カウンタ数と基準点(システム管理者もしくは利用者により予め設定されHDD204に記憶されている)から人材に対するボーナスポイントを式「(カウント数−1)×基準点=ボーナスポイント」により算出し、ステップS2906に処理を進める。
In step S2905, the
図30は、検索条件とのマッチング数によるボーナスポイントを説明する図であり、検索条件数を10個とした例に対応する。 FIG. 30 is a diagram illustrating bonus points based on the number of matching with the search condition, and corresponds to an example in which the number of search conditions is 10.
図30の3001に示すように、カウント数(マッチング数)に応じてボーナスポイントが与えられる。 As indicated by 3001 in FIG. 30, bonus points are awarded according to the count number (matching number).
即ち、人材検索スコア算出手段1021は、検索された人材が有する、検索用語のいずれかに完全一致するスキルの個数に応じたボーナスポイントを、該検索された人材データのトータルスコアに対して加算する。
That is, the human resource search
以下、図29のフローチャートの説明に戻る。 Returning to the flowchart of FIG.
一方、ステップS2904において、上記カウント数が「0」又は「1」と判定した場合には、CPU201は、そのままステップS2906へ処理を進める。
On the other hand, if it is determined in step S2904 that the count number is “0” or “1”, the
次にステップS2906では、CPU201は、上記Pカウント数による判定を行う。上記Pカウント数が検索件数と一致すると判定した場合には、CPU201は、ステップS2907に処理を進める。
In step S2906, the
ステップS2907では、CPU201は、図30に示すように、ステップS2905で算出したボーナスポイント3001にパーフェクトボーナスポイント3002(システム管理者もしくは利用者により予め設定されHDD204に記憶されている)を付加してボーナスポイント(最終結果値)を算出する。即ち、「ボーナスポイント+パーフェクトボーナスポイント=ボーナスポイント(最終結果値)」を計算する。
In step S2907, as shown in FIG. 30, the
例えば、先に例示したAさんBさんを用いて説明すると、検索条件は「Java1.3」、「C言語」であるので、検索条件数は「2」となる。そして、AさんはPカウント数が「2」である為、パーフェクトボーナスポイントが付加される。BさんはPカウント数が「1」である為、パーフェクトボーナスポイントは付加されない。 For example, to explain using Mr. A and Mr. B exemplified above, the search condition is “Java1.3” and “C language”, so the number of search conditions is “2”. Since Mr. A has a P count of “2”, a perfect bonus point is added. Because B has a P count of “1”, no perfect bonus points are added.
即ち、人材検索スコア算出手段1021は、検索された人材データの有するスキルが、検索用語及び前記検索用語から拡張された拡張語の全てに一致する場合に、該人材のトータルスコアに対して、パーフェクトボーナスポイントを加算する。 That is, the human resource search score calculation means 1021 has a perfect bonus for the total score of the human resources when the skills of the searched human resource data match all of the search terms and the extended words expanded from the search terms. Add points.
そして、ステップS2907の処理が終了すると、CPU201は、ステップS2901に処理を戻す。
Then, when the process of step S2907 ends, the
一方、ステップS2906において、上記Pカウント数が検索件数と一致すると判定した場合には、CPU201は、そのままステップS2901に処理を戻す。
On the other hand, if it is determined in step S2906 that the P count number matches the search number, the
そして、ステップS2901において、人材検索結果にある全ての人材に対して、ボーナスポイントの算出(ステップS2902〜S2907の処理)を終えたと判定した場合には、CPU201は、本フローチャートの処理を終了する。
If it is determined in step S2901 that bonus points have been calculated (steps S2902 to S2907) for all human resources in the human resource search result, the
以下のスキル条件と図24の人材DB104にある「山田太郎」の場合について、スコアリングの流れを具体的に説明する。
The flow of scoring will be specifically described for the following skill conditions and the case of “Taro Yamada” in the
検索スキル条件(変換日:2007年4月)を、スキル条件1(スキル「Java1.4」、工程「実装」、役割「TM」経験時間「54」ヶ月)、スキル条件2(スキル「RDB」、工程「実装」、役割「TM」経験時間「24」ヶ月)、スキル条件3(スキル「UML2.0」、工程「設計」、役割「TM」経験時間「24」ヶ月)とする。 Search skill condition (conversion date: April 2007), skill condition 1 (skill "Java1.4", process "implementation", role "TM" experience time "54" months), skill condition 2 (skill "RDB" , Process “implementation”, role “TM” experience time “24” months), skill condition 3 (skill “UML2.0”, process “design”, role “TM” experience time “24” months).
なお、検索スキル条件1の「Java1.4」は、「Java1.3」等に拡張され、該拡張語「Java1.3」の拡張重みは「0.8」とする。また、検索スキル条件2の「RDB」は、「Oracle10.g」等に拡張され、該拡張語「Java1.3」の拡張重みは「1」とする。さらに、検索スキル条件3の「UML2.0」は、「UML1.5」と「UML2.0」等に拡張され、該拡張語「UML1.5」と「UML2.0」の拡張重みはそれぞれ「0.9」とする。なお、いずれの拡張重みについても、構築されたシステムのシソーラス辞書によって異なる場合もあり、また、適宜拡張重みの見直しも可能である。
Note that “Java1.4” in the
図24の人材DB104より、人材「山田太郎」の場合、「Java1.3」は「60」ヶ月、「Oracle10.g」は「24」ヶ月、「UML1.5」は「32」ヶ月の経験時間を保有している。
From the
各検索条件の拡張重みと経験時間の積を取り、経験時間を再算出すると、人材「山田太郎」の場合、「Java1.3」は「48」ヶ月、「Oracle10.g」は「24」ヶ月、「UML1.5」は「28.8」ヶ月の経験時間となる。 Taking the product of the extended weight of each search condition and the experience time and recalculating the experience time, for the human resource "Taro Yamada", "Java1.3" is "48" months, "Oracle10.g" is "24" months "UML1.5" will be "28.8" months of experience.
なお、「山田太郎」のスキル「Java1.3」、「Oracle10.g」、「UML1.5」は、終了年月が「2007/04」とあるので、ブランク月数が「0」となり、減衰処理での経験値減衰は発生しない。 In addition, the skills “Java1.3”, “Oracle10.g” and “UML1.5” of “Taro Yamada” have the end date of “2007/04”, so the number of blank months becomes “0” and decays There is no empirical decay in the process.
上記再算出した経験時間から式(1)を用いて、各スキルのスコアを算出すると、「Java1.3」は「88」、「Oracle10.g」は「100」、「UML1.5」は「80」となる。 If the score of each skill is calculated from the recalculated experience time using Equation (1), “Java1.3” is “88”, “Oracle10.g” is “100”, “UML1.5” is “ 80 ”.
よって、山田太郎さんの保有スキルのみによるトータルスコアは「268」となる。 Therefore, the total score based only on the skills held by Taro Yamada is “268”.
なお、「山田太郎」は検索条件「Java」,「RDB」,「UML」に一致した数(カウント数)が「0」であるため、ボーナスポイントは加算されない。 Since “Taro Yamada” has “0” as the number (count number) that matches the search conditions “Java”, “RDB”, and “UML”, no bonus points are added.
しかし、山田太郎さんは検索条件の同義語にの全てにマッチしている為、トータルスコアにパーフェクトボーナスポイント(ここでは「150」とする)が加算される。このパーフェクトボーナスポイントについては、構築されたシステムによって変更することができ、また、適宜ボーナスポイントの見直しも可能である。 However, Taro Yamada matches all the synonyms of the search condition, so perfect bonus points (here, “150”) are added to the total score. The perfect bonus points can be changed by the constructed system, and the bonus points can be appropriately reviewed.
以上から、山田太郎さんのトータルスコア(最終結果値)は、トータルスコア「268」+パーフェクトボーナスポイント「150」=「418」となる。 From the above, Taro Yamada's total score (final result value) is total score “268” + perfect bonus point “150” = “418”.
以上、説明したように、本実施形態の人材検索装置は、シソーラス(上位・下位語、類義語、関連語)を柔軟に利用し、検索語の拡張を行って検索を行うものであり、シソーラスの上位語で、極めて汎用的な用語まで拡張した場合に、それ以上上位の検索を行わない事を表す「ストップマーク」と、シソーラスで極めて抽象的な用語の為、検索語として対象外であることを示す「抽象フラグ」を利用し、用語の意味を考慮した検索語の拡張を行うものである。 As described above, the human resource search apparatus according to the present embodiment performs a search by flexibly using a thesaurus (higher / lower terms, synonyms, related terms) and expanding the search terms. When the term is extended to a very general term in the broader term, it is excluded from the search term because it is a “stop mark” indicating that no further superior search is performed and the thesaurus is extremely abstract. The search term is expanded in consideration of the meaning of the term by using the “abstract flag” indicating “.”
そして、上記ストップマークや抽象フラグを用いることにより、閾値や回数で単純に用語を拡張させるのではなく、用語の意味を考慮した用語の絞込みを行うことができ、より条件に合った人材の検索を行うことができる。 And by using the above stop mark and abstract flag, it is possible to narrow down the terms in consideration of the meaning of the terms, rather than simply expanding the terms by the threshold or the number of times, and search for human resources that meet the conditions more It can be performed.
なお、上記実施形態では、本発明による検索装置を人材検索に用いることを想定した場合を例にあげて説明を行ったが、本発明は、人材検索装置に限られるものではなく、人材DB以外の一般のデータベースを検索する検索装置にも適用可能である。 In the above embodiment, the case where the search device according to the present invention is assumed to be used for human resource search has been described as an example. However, the present invention is not limited to the human resource search device, but other than the human resource DB. The present invention can also be applied to a search device for searching general databases.
このように、本発明を一般的なデータベースの検索に用いる場合、データベースの構成によっては、人材DB104の経験時間2402(即ち、人材のスキル毎の経験値)に相当するような数値データが検索結果に含まれていない場合がある。このような場合、上記経験時間2402に相当する数値データを全てデフォルトの数値(例えば「1」)として、図26〜図30に示したスコアリング処理を実行するように構成する。
As described above, when the present invention is used for searching a general database, numerical data corresponding to the
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。 It should be noted that the configuration and contents of the various data described above are not limited to this, and it goes without saying that the various data and configurations are configured according to the application and purpose.
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。 Although one embodiment has been described above, the present invention can take an embodiment as, for example, a system, apparatus, method, program, or recording medium, and specifically includes a plurality of devices. The present invention may be applied to a system including a single device.
以上示したように、本発明の検索装置は、シソーラス(上位語、下位語、関連語等の類義語)を柔軟に利用し、検索語の拡張を行うシステムであって、シソーラスの上位語で、極めて汎用的な用語まで拡張した場合にそれ以上上位の検索を行わない事を表す「ストップマーク」と、シソーラスで極めて抽象的な用語の為に検索語として対象外であることを示す「抽象フラグ」を利用し、用語の意味を考慮した検索語の拡張を行うことにより、シソーラス辞書を用いた検索において、極めて汎用的な上位用語への検索用語の拡張や、抽象的な用語への検索用語の拡張を抑制して、用語の意味を考慮した検索用語の拡張を行うことができ、より条件に合った検索を行うことができる等の効果を奏する。 As described above, the search device of the present invention is a system that flexibly uses a thesaurus (synonyms such as broader terms, narrower terms, and related terms) and expands search terms, and is a broader term of the thesaurus, A "stop mark" indicating that no higher-level search is performed when extended to a very general term, and an "abstract flag" indicating that the search term is not included because of a very abstract term in the thesaurus ”To expand the search term in consideration of the meaning of the term, so that the search term can be expanded to a very general high-level term or a search term to an abstract term in the search using the thesaurus dictionary It is possible to expand the search term in consideration of the meaning of the term while suppressing the expansion of the term, and it is possible to perform a search that matches more conditions.
よって、従来のように、類義語を検索するにあたって類似度の閾値や回数でその検索範囲を指定する方法とは異なり、拡張する検索用語によって、非常に関連性の高いものしか拡張されない、或いは、あまり関連性のない単語まで拡張してしまうという差がでてしまうといった事態や、検索対象として意味のない類義語にまで検索用語を拡張してしまうといった事態の発生を抑えて、適切な条件で検索を行うことができる。 Therefore, unlike the conventional method of searching for synonyms, the search range is specified by the threshold value and the number of similarities, and only highly relevant ones are expanded depending on the search terms to be expanded. Search under appropriate conditions, suppressing the occurrence of differences such as expanding to unrelated words and expanding search terms to meaningless synonyms for search. It can be carried out.
以下、図31に示すメモリマップを参照して本発明に係る人材検索装置100で読み取り可能なデータ処理プログラムの構成について説明する。
The configuration of a data processing program that can be read by the human
図31は、本発明に係る人材検索装置100で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
FIG. 31 is a diagram illustrating a memory map of a recording medium (storage medium) that stores various data processing programs readable by the human
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。 Although not specifically shown, information for managing a program group stored in the recording medium, for example, version information, creator, etc. is also stored, and information depending on the OS on the program reading side, for example, a program is identified and displayed. Icons may also be stored.
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。 Further, data depending on various programs is also managed in the directory. In addition, when a program or data to be installed is compressed, a program to be decompressed may be stored.
本実施形態における図8,図14,図15,図16,図17,図18,図23,図26,図27,図29に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。 The functions shown in FIGS. 8, 14, 15, 16, 17, 18, 23, 26, 27, and 29 in the present embodiment are performed by a host computer by a program installed from the outside. It may be. In this case, the present invention is applied even when an information group including a program is supplied to the output device from a recording medium such as a CD-ROM, a flash memory, or an FD, or from an external recording medium via a network. Is.
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。 As described above, a recording medium in which a program code of software for realizing the functions of the above-described embodiments is recorded is supplied to the system or apparatus, and the computer (or CPU or MPU) of the system or apparatus is stored in the recording medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the program code.
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。 In this case, the program code itself read from the recording medium realizes the novel function of the present invention, and the recording medium storing the program code constitutes the present invention.
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。 As a recording medium for supplying the program code, for example, a flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, DVD-ROM, magnetic tape, nonvolatile memory card, ROM, EEPROM, A silicon disk or the like can be used.
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) or the like running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Furthermore, after the program code read from the recording medium is written in a memory provided in a function expansion board inserted in the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 Further, the present invention may be applied to a system composed of a plurality of devices or an apparatus composed of a single device. Needless to say, the present invention can be applied to a case where the present invention is achieved by supplying a program to a system or apparatus. In this case, by reading a recording medium storing a program represented by software for achieving the present invention into the system or apparatus, the system or apparatus can enjoy the effects of the present invention.
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 Furthermore, by downloading and reading out a program represented by software for achieving the present invention from a server, database, etc. on a network using a communication program, the system or apparatus can enjoy the effects of the present invention. It becomes.
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。 In addition, all the structures which combined each embodiment mentioned above and its modification are also included in this invention.
人材DB104の代わりに他のDBを設け、該DBの検索条件を、検索条件として入力することにより、人材以外の検索用途にも適用できる。
By providing another DB instead of the
100 人材検索装置
101 シソーラス辞書検索手段
1011 シソーラス辞書検索終点決定手段
1012 シソーラス辞書抽象用語排除手段
1013 シソーラス辞書検索ヒット用語有用度算出手段
102 人材検索手段
1021 人材検索計検知算出手段
103 シソーラス辞書DB
104 人材DB
105 クライアント通信手段
201 中央処理装置(CPU)
202 ROM
203 RAM
204 HDD
205 ネットワークインタフェース
DESCRIPTION OF
104 Human Resources DB
105 Client communication means 201 Central processing unit (CPU)
202 ROM
203 RAM
204 HDD
205 Network interface
Claims (10)
前記シソーラス辞書検索手段により拡張された検索用語を用いてデータベースを検索するデータベース検索手段と、を有するものであり、
前記シソーラス辞書は、登録された用語に、汎用的な用語を示すストップマーク、抽象的な用語を示す抽象フラグのいずれか又は双方を設定可能であり、
前記シソーラス辞書検索手段は、前記ストップマークが設定された用語をシソーラス辞書の上位検索の終点とするシソーラス辞書検索終点決定手段と、前記抽象フラグが設定された用語を検索用語の拡張から排除するシソーラス辞書抽象用語排除手段とを有する、ことを特徴とする検索装置。 A thesaurus dictionary search means for searching for synonyms of search terms using a thesaurus dictionary and extending the search terms;
Database search means for searching a database using search terms expanded by the thesaurus dictionary search means,
The thesaurus dictionary can set one or both of a stop mark indicating a general term and an abstract flag indicating an abstract term as a registered term.
The thesaurus dictionary search means includes a thesaurus dictionary search end point determination means that uses the term set with the stop mark as an end point of the upper search of the thesaurus dictionary, and a thesaurus that excludes the term set with the abstract flag from the search term expansion. And a dictionary abstract term excluding unit.
前記シソーラス辞書検索手段は、前記シソーラス辞書検索により拡張された検索用語の有用度を、前記シソーラス辞書の用語間に設定された類似度から算出するシソーラス辞書検索ヒット用語有用度算出手段を有するものであり、
前記データベース検索手段により検索された各データに対して、前記シソーラス辞書検索ヒット用語有用度算出手段によって算出された検索用語の有用度に基づいたスコアを算出する検索スコア算出手段を有することを特徴とする請求項1に記載の検索装置。 The thesaurus dictionary is set with the similarity between registered terms,
The thesaurus dictionary search means includes a thesaurus dictionary search hit term usefulness calculation means for calculating the usefulness of the search term expanded by the thesaurus dictionary search from the similarity set between the terms in the thesaurus dictionary. Yes,
Search score calculation means for calculating a score based on the usefulness of the search term calculated by the thesaurus dictionary search hit term usefulness calculation means for each data searched by the database search means, The search device according to claim 1.
前記検索スコア算出手段は、前記検索手段により前記データベースから検索されたデータが確定した時点からの経過期間に応じて減衰率を算出し、該減衰率に応じて前記算出したスコアを減衰させる、ことを特徴とする請求項2又は3に記載の人材検索装置。 The database includes information indicating a point in time when data registered in the database is confirmed,
The search score calculation means calculates an attenuation rate according to an elapsed period from the time when the data searched from the database by the search means is determined, and attenuates the calculated score according to the attenuation rate. The personnel search device according to claim 2 or 3, wherein
前記検索スコア算出手段は、前記データベース検索手段により検索された各人材に対して、該人材のスキル毎の経験値と、前記シソーラス辞書検索ヒット用語有用度算出手段によって算出された検索用語の有用度とに基づいたスコアを算出する、ことを特徴とする請求項2乃至6のいずれか1項に記載の検索装置。 The database is a human resource database in which experience values for each skill of human resources and information indicating the point in time when the experience values for each skill of the human resources are determined are registered,
The search score calculation means includes, for each human resource searched by the database search means, an experience value for each skill of the human resource and the usefulness of the search term calculated by the thesaurus dictionary search hit term usefulness calculation means. The search device according to any one of claims 2 to 6, wherein a score based on the above is calculated.
データベース検索手段が、前記シソーラス辞書検索手段により拡張された検索用語を用いてデータベースを検索するデータベース検索ステップと、を有するものであり、
前記シソーラス辞書は、登録された用語に、汎用的な用語を示すストップマーク、抽象的な用語を示す抽象フラグのいずれか又は双方を設定可能であり、
前記シソーラス辞書検索ステップは、前記ストップマークが設定された用語をシソーラス辞書の上位検索の終点とするシソーラス辞書検索終点決定ステップと、前記抽象フラグが設定された用語を検索用語の拡張から排除するシソーラス辞書抽象用語排除ステップとを有する、ことを特徴とする検索方法。 A thesaurus dictionary search means for searching for synonyms of search terms using a thesaurus dictionary and expanding the search terms;
A database search means for searching a database using a search term expanded by the thesaurus dictionary search means, and
The thesaurus dictionary can set one or both of a stop mark indicating a general term and an abstract flag indicating an abstract term as a registered term.
The thesaurus dictionary search step includes a thesaurus dictionary search end point determination step in which the term set with the stop mark is set as the end point of the upper search of the thesaurus dictionary, and a thesaurus that excludes the term set with the abstract flag from the search term expansion. And a dictionary abstract term exclusion step.
シソーラス辞書を用いて検索用語の類義語を検索して検索用語を拡張するシソーラス辞書検索手段と、
前記シソーラス辞書検索手段により拡張された検索用語を用いてデータベースを検索するデータベース検索手段として機能させるためのプログラムであり、
前記シソーラス辞書は、登録された用語に、汎用的な用語を示すストップマーク、抽象的な用語を示す抽象フラグのいずれか又は双方を設定可能であり、
前記シソーラス辞書検索手段は、前記ストップマークが設定された用語をシソーラス辞書の上位検索の終点とするシソーラス辞書検索終点決定手段と、前記抽象フラグが設定された用語を検索用語の拡張から排除するシソーラス辞書抽象用語排除手段とを有する、ことを特徴とするプログラム。 Computer
A thesaurus dictionary search means for searching for synonyms of search terms using a thesaurus dictionary and extending the search terms;
A program for functioning as database search means for searching a database using search terms extended by the thesaurus dictionary search means;
The thesaurus dictionary can set one or both of a stop mark indicating a general term and an abstract flag indicating an abstract term as a registered term.
The thesaurus dictionary search means includes a thesaurus dictionary search end point determination means that uses the term set with the stop mark as an end point of the upper search of the thesaurus dictionary, and a thesaurus that excludes the term set with the abstract flag from the search term expansion. A program characterized by comprising dictionary abstract term exclusion means.
シソーラス辞書を用いて検索用語の類義語を検索して検索用語を拡張するシソーラス辞書検索手段と、
前記シソーラス辞書検索手段により拡張された検索用語を用いてデータベースを検索するデータベース検索手段として機能させるためのプログラムであり、
前記シソーラス辞書は、登録された用語に、汎用的な用語を示すストップマーク、抽象的な用語を示す抽象フラグのいずれか又は双方を設定可能であり、
前記シソーラス辞書検索手段は、前記ストップマークが設定された用語をシソーラス辞書の上位検索の終点とするシソーラス辞書検索終点決定手段と、前記抽象フラグが設定された用語を検索用語の拡張から排除するシソーラス辞書抽象用語排除手段とを有するプログラムを、記録したコンピュータで読み取り可能な記録媒体。 Computer
A thesaurus dictionary search means for searching for synonyms of search terms using a thesaurus dictionary and extending the search terms;
A program for functioning as database search means for searching a database using search terms extended by the thesaurus dictionary search means;
The thesaurus dictionary can set one or both of a stop mark indicating a general term and an abstract flag indicating an abstract term as a registered term.
The thesaurus dictionary search means includes a thesaurus dictionary search end point determination means that uses the term set with the stop mark as an end point of the upper search of the thesaurus dictionary, and a thesaurus that excludes the term set with the abstract flag from the search term expansion. A computer-readable recording medium on which a program having dictionary abstract term excluding means is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007249837A JP2009080675A (en) | 2007-09-26 | 2007-09-26 | Retrieval device, retrieval method, program, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007249837A JP2009080675A (en) | 2007-09-26 | 2007-09-26 | Retrieval device, retrieval method, program, and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009080675A true JP2009080675A (en) | 2009-04-16 |
Family
ID=40655373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007249837A Withdrawn JP2009080675A (en) | 2007-09-26 | 2007-09-26 | Retrieval device, retrieval method, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009080675A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118685A (en) * | 2009-12-03 | 2011-06-16 | Nomura Research Institute Ltd | Operation support device |
WO2019193796A1 (en) * | 2018-04-03 | 2019-10-10 | 株式会社Nttドコモ | Interaction server |
-
2007
- 2007-09-26 JP JP2007249837A patent/JP2009080675A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118685A (en) * | 2009-12-03 | 2011-06-16 | Nomura Research Institute Ltd | Operation support device |
WO2019193796A1 (en) * | 2018-04-03 | 2019-10-10 | 株式会社Nttドコモ | Interaction server |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6829605B2 (en) | Method and apparatus for deriving logical relations from linguistic relations with multiple relevance ranking strategies for information retrieval | |
US8903794B2 (en) | Generating and presenting lateral concepts | |
US9015185B2 (en) | Ontology based recommendation systems and methods | |
US10346485B1 (en) | Semi structured question answering system | |
US8583673B2 (en) | Progressive filtering of search results | |
KR101060594B1 (en) | Keyword Extraction and Association Network Configuration for Document Data | |
JP5504595B2 (en) | Information processing apparatus, information search system, information processing method, and program | |
CN106663117A (en) | Constructing a graph that facilitates provision of exploratory suggestions | |
JP2010506335A (en) | Site identification for location | |
Alexander et al. | Natural language web interface for database (NLWIDB) | |
JP2023519049A (en) | Method and apparatus for obtaining POI status information | |
Koch et al. | Users browsing behaviour in a DDC-based web service: a log analysis | |
CN113032673A (en) | Resource acquisition method and device, computer equipment and storage medium | |
Hansell | Google keeps tweaking its search engine | |
JP5262434B2 (en) | Information search system, information search method, program, and recording medium | |
JP2009080675A (en) | Retrieval device, retrieval method, program, and recording medium | |
CN106294688A (en) | Query expansion method, device and system based on user characteristic analysis | |
Evensen et al. | Voyageur: An experiential travel search engine | |
CN101770473A (en) | Method for querying hierarchical semantic venation document | |
Leung et al. | Constructing concept relation network and its application to personalized web search | |
KR102335408B1 (en) | Method and apparatus for managing movie tribute language | |
Serdyukov et al. | Modeling expert finding as an absorbing random walk | |
KR102279125B1 (en) | Terminal and apparatus for providing recommendation information based on preference filter | |
Tchuente et al. | A Community Based Algorithm for Deriving Users' Profiles from Egocentrics Networks | |
JP2000200285A (en) | Method and device for information retrieval, and recording medium where information retrieval program is recorded |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20101207 |