(57)【特許請求の範囲】
【請求項１】
形態素またはその列の品詞、字種、字面、カテゴリ、役割素性、これが固有名詞であるか否か、時間を表すか否か、数量を表すか否か、インデックスを表すか否か、のうち、一つ以上の情報（以下「属性」という。）を用いて個体名を認定する個体名の認定装置であって、
複数の文を構成する形態素列を入力として受け付ける入力受付部と、
個体名を表す形態素またはその列を、その属性と対応付けてあらかじめ記憶する第１の個体名記憶部と、
個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶する第２の個体名記憶部と、
形態素の属性が満たすべき条件の種類を表す条件タイプおよび当該形態素の属性がとるべき値を表す条件値を参照して、形態素列から個体名を表す形態素またはその列を認定するルールを記憶するルール記憶部と、
当該個体名の認定装置に動的にロードさせ、実行させることによって、当該個体名の認定装置に、前記ルール記憶部に記憶されたルールが参照する条件タイプと、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定させるコード断片と、を対応付けて記憶するコード記憶部と、
前記コード記憶部に記憶されたコード断片を動的にロードするコードロード部と、
前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード部によりロードされたコード断片を実行することにより、前記第１の個体名記憶部にあらかじめ記憶された形態素またはその列とその属性、および、前記第２の個体名記憶部にこれまでに一時的に記憶された形態素またはその列とその属性を参照して判定して、前記入力受付部により受け付けられた形態素列から個体名を表す形態素またはその列を認定する認定部と、
個体名を表す形態素またはその列の認定が新たにされる度に、前記第２の個体名記憶部を更新して、前記認定された個体名を表す形態素またはその列を、その属性と対応付けて一時的に追加して記憶させる更新部と、を備える
ことを特徴とする個体名の認定装置。
【請求項２】
前記ルール記憶部により参照される条件タイプおよび条件値とコード断片識別名とを対応付けて記憶する識別名記憶部をさらに備え、
前記コード記憶部は、当該コード断片を、前記識別名記憶部に記憶されるコード断片識別名に対応付けて記憶し、
前記コードロード部は、前記識別名記憶部に記憶されるコード断片識別名に対応付けられて前記コード記憶部に記憶されたコード断片をロードする
ことを特徴とする請求項１に記載の個体名の認定装置。
【請求項３】
前記コードロード部は、前記認定部による認定が開始される前に、あらかじめ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片を動的にロードする
ことを特徴とする請求項２に記載の個体名の認定装置。
【請求項４】
前記コードロード部は、前記認定部による認定が開始された後、かつ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片が前記認定部により初めて実行される前に、当該コード断片を動的にロードする
ことを特徴とする請求項２に記載の個体名の認定装置。
【請求項５】
形態素またはその列の品詞、字種、字面、カテゴリ、役割素性、これが固有名詞であるか否か、時間を表すか否か、数量を表すか否か、インデックスを表すか否か、のうち、一つ以上の情報（以下「属性」という。）を用い、形態素の属性が満たすべき条件の種類を表す条件タイプおよび当該形態素の属性が満たすべき値を表す条件値を参照して、形態素列から個体名を表す形態素またはその列を認定するルールを記憶するルール記憶部と、個体名を表す形態素またはその列を、その属性と対応付けてあらかじめ記憶する第１の個体名記憶部と、個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶する第２の個体名記憶部と、コンピュータに動的にロードさせ、実行させることによって、当該コンピュータに前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定させるコード断片と、を対応付けて記憶するコード記憶部とを備えるコンピュータにて使用される個体名の認定方法であって、
複数の文を構成する形態素列を入力として受け付ける入力受付工程と、
前記コード記憶部に記憶された当該コード断片を動的にロードするコードロード工程と、
前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード工程にてロードされたコード断片を実行することにより、前記第１の個体名記憶部にあらかじめ記憶された形態素またはその列とその属性、および、前記第２の個体名記憶部にこれまでに一時的に記憶された形態素またはその列とその属性を参照して判定して、前記入力受付工程にて受け付けられた形態素列から個体名を表す形態素またはその列を認定する認定工程と、
個体名を表す形態素またはその列の認定が新たにされる度に、前記第２の個体名記憶部を更新して、前記認定された個体名を表す形態素またはその列を、その属性と対応付けて一時的に追加して記憶させる更新工程と、を備える
ことを特徴とする個体名の認定方法。
【請求項６】
前記コンピュータは、前記ルール記憶部により参照される条件タイプおよび条件値とコード断片識別名とを対応付けて記憶する識別名記憶部をさらに備え、前記コード記憶部は、当該コード断片を、前記識別名記憶部に記憶されるコード断片識別名に対応付けて記憶し、
前記コードロード工程は、前記識別名記憶部に記憶されるコード断片識別名に対応付けられて前記コード記憶部に記憶されたコード断片をロードする
ことを特徴とする請求項５に記載の個体名の認定方法。
【請求項７】
前記コードロード工程は、前記認定工程が開始される前に、あらかじめ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片を動的にロードする
ことを特徴とする請求項６に記載の個体名の認定方法。
【請求項８】
前記コードロード工程は、前記認定工程が開始された後、かつ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片が前記認定工程にて初めて実行される前に、当該コード断片を動的にロードする
ことを特徴とする請求項６に記載の個体名の認定方法。
【請求項９】
コンピュータに、形態素またはその列の品詞、字種、字面、カテゴリ、役割素性、これが固有名詞であるか否か、時間を表すか否か、数量を表すか否か、インデックスを表すか否か、のうち、一つ以上の情報（以下「属性」という。）を用いる処理を行わせるプログラムであって、
当該プログラムは、当該コンピュータを、
複数の文を構成する形態素列を入力として受け付ける入力受付部、
個体名を表す形態素またはその列を、その属性と対応付けてあらかじめ記憶する第１の個体名記憶部、
個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶する第２の個体名記憶部、
形態素の属性が満たすべき条件の種類を表す条件タイプおよび当該形態素の属性が満たすべき値を表す条件値を参照して、形態素列から個体名を表す形態素またはその列を認定するルールを記憶するルール記憶部、
当該コンピュータに動的にロードさせ、実行させることによって、当該コンピュータに前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定させるコード断片と、を対応付けて記憶するコード記憶部、
前記コード記憶部に記憶されたコード断片を動的にロードするコードロード部、および、
前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード部によりロードされたコード断片を実行することにより、前記第１の個体名記憶部にあらかじめ記憶された形態素またはその列とその属性、および、前記第２の個体名記憶部にこれまでに一時的に記憶された形態素またはその列とその属性を参照して判定して、前記入力受付部により受け付けられた形態素列から個体名を表す形態素またはその列を認定する認定部、ならびに、
個体名を表す形態素またはその列の認定が新たにされる度に、前記第２の個体名記憶部を更新して、前記認定された個体名を表す形態素またはその列を、その属性と対応付けて一時的に追加して記憶させる更新部
として機能させるプログラムを記録することを特徴とするコンピュータ読取可能な記録媒体。
【請求項１０】
前記プログラムは、前記コンピュータを、前記ルール記憶部により参照される条件タイプおよび条件値とコード断片識別名とを対応付けて記憶する識別名記憶部としてさらに機能させ、
前記コード記憶部は、当該コード断片を、前記識別名記憶部に記憶されるコード断片識別名に対応付けて記憶し、
前記コードロード部は、前記識別名記憶部に記憶されるコード断片識別名に対応付けられて前記コード記憶部に記憶されたコード断片をロードする
ことを特徴とする請求項９に記載のコンピュータ読取可能な記録媒体。
【請求項１１】
前記コードロード部は、前記認定部による認定が開始される前に、あらかじめ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片を動的にロードする
ことを特徴とする請求項１０に記載のコンピュータ読取可能な記録媒体。
【請求項１２】
前記コードロード部は、前記認定部による認定が開始された後、かつ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片が前記認定部により初めて実行される前に、当該コード断片を動的にロードする
ことを特徴とする請求項１０に記載のコンピュータ読取可能な記録媒体。
【請求項１３】
コンピュータに、形態素またはその列の品詞、字種、字面、カテゴリ、役割素性、これが固有名詞であるか否か、時間を表すか否か、数量を表すか否か、インデックスを表すか否か、のうち、一つ以上の情報（以下「属性」という。）を用いる処理を行わせるプログラムの実行により、
形態素列を入力として受け付ける入力受付部、
個体名を表す形態素またはその列を、その属性と対応付けてあらかじめ記憶する第１の個体名記憶部、
個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶する第２の個体名記憶部、
形態素の属性が満たすべき条件の種類を表す条件タイプおよび当該形態素の属性が満たすべき値を表す条件値を参照して、形態素列から個体名を表す形態素またはその列を認定するルールを記憶するルール記憶部、
コンピュータに動的にロードさせ、実行させることによって、当該コンピュータに前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定させるコード断片と、を対応付けて記憶するコード記憶部、
前記コード記憶部に記憶されたコード断片を動的にロードするコードロード部、および、
前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード部によりロードされたコード断片を実行することにより、前記第１もしくは第２の個体名記憶部に記憶された形態素またはその列と、その属性と、を参照して判定して、前記入力受付部により受け付けられた形態素列から個体名を表す形態素またはその列を認定する認定部、ならびに、
前記第２の個体名記憶部を更新して、前記認定された個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶させる更新部
として機能するコンピュータの前記ルール記憶部に記憶されるルールを記録する
ことを特徴とするコンピュータ読取可能な記録媒体。
【請求項１４】
コンピュータに、形態素またはその列の品詞、字種、字面、カテゴリ、役割素性、これが固有名詞であるか否か、時間を表すか否か、数量を表すか否か、インデックスを表すか否か、のうち、一つ以上の情報（以下「属性」という。）を用いる処理を行わせるプログラムの実行により、
形態素列を入力として受け付ける入力受付部、
個体名を表す形態素またはその列を、その属性と対応付けてあらかじめ記憶する第１の個体名記憶部、
個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶する第２の個体名記憶部、
形態素の属性が満たすべき条件の種類を表す条件タイプおよび当該形態素の属性が満たすべき値を表す条件値を参照して、形態素列から個体名を表す形態素またはその列を認定するルールを記憶するルール記憶部、
コンピュータに動的にロードさせ、実行させることによって、当該コンピュータに前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定させるコード断片と、を対応付けて記憶するコード記憶部、
前記コード記憶部に記憶されたコード断片を動的にロードするコードロード部、および、
前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード部によりロードされたコード断片を実行することにより、前記第１もしくは第２の個体名記憶部に記憶された形態素またはその列と、その属性と、を参照して判定して、前記入力受付部により受け付けられた形態素列から個体名を表す形態素またはその列を認定する認定部、ならびに、
前記第２の個体名記憶部を更新して、前記認定された個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶させる更新部
として機能するコンピュータの前記コード記憶部に記憶されるコード断片を記録する
ことを特徴とするコンピュータ読取可能な記録媒体。
【請求項１５】
コンピュータに、形態素またはその列の品詞、字種、字面、カテゴリ、役割素性、これが固有名詞であるか否か、時間を表すか否か、数量を表すか否か、インデックスを表すか否か、のうち、一つ以上の情報（以下「属性」という。）を用いる処理を行わせるプログラムの実行により、
形態素列を入力として受け付ける入力受付部、
個体名を表す形態素またはその列を、その属性と対応付けてあらかじめ記憶する第１の個体名記憶部、
個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶する第２の個体名記憶部、
形態素の属性が満たすべき条件の種類を表す条件タイプおよび当該形態素の属性が満たすべき値を表す条件値を参照して、形態素列から個体名を表す形態素またはその列を認定するルールを記憶するルール記憶部、
コンピュータに動的にロードさせ、実行させることによって、当該コンピュータに前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定させるコード断片と、を対応付けて記憶するコード記憶部、
前記コード記憶部に記憶されたコード断片を動的にロードするコードロード部、
前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード部によりロードされたコード断片を実行することにより、前記第１もしくは第２の個体名記憶部に記憶された形態素またはその列と、その属性と、を参照して判定して、前記入力受付部により受け付けられた形態素列から個体名を表す形態素またはその列を認定する認定部、および、
前記第２の個体名記憶部を更新して、前記認定された個体名を表す形態素またはその列を、その属性と対応付けて一時的に記憶させる更新部、ならびに、
前記ルール記憶部により参照される条件タイプおよび条件値とコード断片識別名とを対応付けて記憶する識別名記憶部
として機能するコンピュータであって、
前記コード記憶部は、当該コード断片を、前記識別名記憶部に記憶されるコード断片識別名に対応付けて記憶し、
前記コードロード部は、前記識別名記憶部に記憶されるコード断片識別名に対応付けられて前記コード記憶部に記憶されたコード断片をロードする
コンピュータの前記識別名記憶部に記憶される条件タイプおよび条件値と、コード断片識別名と、を記録する
ことを特徴とするコンピュータ読取可能な記録媒体。
【請求項１６】
請求項１に記載の個体名の認定装置であって、
前記更新部は、所定の条件が満たされる場合、前記第２の個体名記憶部を更新して、これに記憶される個体名を表す形態素またはその列とこれに対応付けられたその属性と、を消去する
ことを特徴とする認定装置。
【請求項１７】
請求項５に記載の個体名の認定方法であって、
前記更新工程では、所定の条件が満たされる場合、前記第２の個体名記憶部を更新して、これに記憶される個体名を表す形態素またはその列とこれに対応付けられたその属性と、を消去する
ことを特徴とする方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、入力された形態素列から個体名を表す形態素またはその列（以下「形態素（列）」という。）を認定するのに好適な認定装置、認定方法、および、記録媒体に関する。
【０００２】
【従来の技術】
従来から、コンピュータ、ワードプロセッサ、データベースシステムなどで、文献から必要な情報を得る検索システムが使われている。特に、近年のインターネット技術の発展にともない、さまざまな情報源から必要な情報を得るためのインフラストラクチャが整いつつある。
【０００３】
また、コンピュータなどに文章の内容を理解させ、その内容を要約させたり、適宜選択させたりするようなシステムについても提案がされている。
【０００４】
このようなシステムで、たとえば日本語の文献を処理の対象とする場合には、以下の手法が用いられていた。
【０００５】
第１は、文章に処理したい単語と同じ文字列が出現した場合に、これを検索結果に含めたり、同じ綴りの文字列の出現頻度により、内容の要約を行う手法である。この手法は、字面だけで検索や要約を行うもので、インターネット検索エンジンなどでよく用いられている。
【０００６】
第２は、まず、日本語の文章を各単語（「形態素」ともいう）に切り分ける形態素解析を行い、形態素の綴りとその品詞との情報の対の列を出力し、出力された情報の対の列に基づいて処理を行う手法である。
【０００７】
【発明が解決しようとする課題】
しかしながら、字面だけで文献の処理を行う手法では、たとえば検索の際に、偶然に含まれた同じ綴りの文字列を含む文献も検索結果に含まれてしまい、不必要な情報に所望の情報が埋もれてしまうという問題が生じるおそれがある。
【０００８】
一方、検索対象として人名、地域名、国名、社名、や、日時などの個体名を使う場合には、形態素解析で出力される情報だけではたとえば人名と地域名の区別がつかないため、上記と同様の問題が生じるおそれがある。また、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）などから入手できる情報には、新しい商品名などの未知語が多いため、これらに対応する必要もある。
【０００９】
したがって、形態素解析によって得られた形態素から情報の検索や概念の要約などに用いることができる個体名を認定する手法が望まれている。
【００１０】
特に、この際に、将来の拡張のため、個体名の認定に用いるルールの記述やルールで参照される個体名の種類の判別手法を動的に追加できることが望ましい。
【００１１】
本発明の目的は、入力された形態素列から所望の属性を有する個体名を表す形態素（列）を認定することにある。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、本発明の第１の観点に係る個体名の認定装置は、入力受付部と、ルール記憶部と、コード記憶部と、コードロード部と、認定部と、を備えるように構成する。
【００１３】
ここで、入力受付部は、形態素列を入力として受け付ける。
【００１４】
一方、ルール記憶部は、形態素が満たすべき条件の種類を表す条件タイプおよび条件値を参照して、形態素列から個体名を表す形態素（列）を認定するルールを記憶する。
【００１５】
さらに、コード記憶部は、前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定するコード断片と、を対応付けて記憶する。
【００１６】
そして、コードロード部は、前記コード記憶部に記憶されたコード断片を動的にロードする。
【００１７】
一方、認定部は、前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード部によりロードされたコード断片を実行することにより判定して、前記入力受付部により受け付けられた形態素列から個体名を表す形態素（列）を認定する。
【００１８】
本認定装置では、形態素列から個体名を表す形態素（列）を認定するためのルールにて参照される形態素が満たすべき条件を表す条件タイプおよび条件値に応じて、当該条件を満たすか否かを判断するコード断片を動的にロードして実行する。したがって、新たな条件タイプおよび条件値とその条件判断に用いるコード断片とを容易に追加等することができる。
【００１９】
なお、コード断片には、実行可能プログラムのコードのほか、動的リンクライブラリや共有ライブラリに含まれる関数や手続のコード、実行時にコンパイル可能なソースコードなどが含まれる。
【００２０】
また、本発明の認定装置は、識別名記憶部をさらに備えるように構成することができる。
【００２１】
ここで、識別名記憶部は、前記ルール記憶部により参照される条件タイプおよび条件値とコード断片識別名とを対応付けて記憶する。
【００２２】
一方、前記コード記憶部は、当該コード断片を、前記識別名記憶部に記憶されるコード断片識別名に対応付けて記憶する。
【００２３】
さらに、前記コードロード部は、前記識別名記憶部に記憶されるコード断片識別名に対応付けられて前記コード記憶部に記憶されたコード断片をロードする。
【００２４】
本発明の認定装置は、コード断片をこれに対応付けられたコード断片識別名にて識別することができる。コード断片識別名は、当該コード断片が含まれるライブラリファイル名や、当該コード断片を表す関数名・手続名により構成される。
【００２５】
また、本発明の認定装置において、前記コードロード部は、前記認定部による認定が開始される前に、あらかじめ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片を動的にロードするように構成することができる。
【００２６】
本発明の認定装置では、あらかじめコード断片をロードすることにより、個体名の認定を開始してから終了するまでに要する時間を短くすることができる。
【００２７】
また、本発明の認定装置において、前記コードロード部は、前記認定部による認定が開始された後、かつ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片が前記認定部により初めて実行される前に、当該コード断片を動的にロードするように構成することができる。
【００２８】
本発明の認定装置では、あらかじめ必要になるまでコード断片のロードを遅延させることにより、個体名の認定を開始するまでに要する起動時間を短くすることができる。
【００２９】
上記目的を達成するため、本発明の第２の観点に係る個体名の認定方法は、形態素が満たすべき条件の種類を表す条件タイプおよび条件値を参照して、形態素列から個体名を表す形態素（列）を認定するルールを記憶するルール記憶部と、前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定するコード断片と、を対応付けて記憶するコード記憶部とを備えるコンピュータにて使用される個体名の認定方法であって、入力受付工程と、コードロード工程と、認定工程と、を備えるように構成する。
【００３０】
ここで、入力受付工程では、形態素列を入力として受け付ける。
【００３１】
一方、コードロード工程では、前記コード記憶部に記憶された当該コード断片を動的にロードする。
【００３２】
さらに、認定工程では、前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード工程にてロードされたコード断片を実行することにより判定して、前記入力受付工程にて受け付けられた形態素列から個体名を表す形態素（列）を認定する。
【００３３】
また、本発明の認定方法において、前記コンピュータは、前記ルール記憶部により参照される条件タイプおよび条件値とコード断片識別名とを対応付けて記憶する識別名記憶部をさらに備え、前記コード記憶部は、当該コード断片を、前記識別名記憶部に記憶されるコード断片識別名に対応付けて記憶し、前記コードロード工程は、前記識別名記憶部に記憶されるコード断片識別名に対応付けられて前記コード記憶部に記憶されたコード断片をロードするように構成することができる。
【００３４】
また、本発明の認定方法において、前記コードロード工程は、前記認定工程が開始される前に、あらかじめ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片を動的にロードするように構成することができる。
【００３５】
また、本発明の認定方法において、前記コードロード工程は、前記認定工程が開始された後、かつ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片が前記認定工程にて初めて実行される前に、当該コード断片を動的にロードするように構成することができる。
【００３６】
上記目的を達成するため、本発明の第３の観点に係るコンピュータ読取可能な記録媒体は、コンピュータを、入力受付部、ルール記憶部、コード記憶部、コードロード部、認定部として機能させるプログラムを記録するように構成する。
【００３７】
ここで、入力受付部は、形態素列を入力として受け付ける。
【００３８】
一方、ルール記憶部は、形態素が満たすべき条件の種類を表す条件タイプおよび条件値を参照して、形態素列から個体名を表す形態素（列）を認定するルールを記憶する。
【００３９】
さらに、コード記憶部は、前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値と、当該条件タイプおよび条件値により表される条件を形態素が満たすか否かを判定するコード断片と、を対応付けて記憶する。
【００４０】
そして、コードロード部は、前記コード記憶部に記憶されたコード断片を動的にロードする。
【００４１】
一方、認定部は、前記ルール記憶部に記憶されたルールが参照する条件タイプおよび条件値により表される条件を形態素が満たすか否かを、前記コードロード部によりロードされたコード断片を実行することにより判定して、前記入力受付部により受け付けられた形態素列から個体名を表す形態素（列）を認定する。
【００４２】
また、本発明のコンピュータ読取可能な記録媒体において、前記プログラムは、前記コンピュータを、前記ルール記憶部により参照される条件タイプおよび条件値とコード断片識別名とを対応付けて記憶する識別名記憶部としてさらに機能させ、前記コード記憶部は、当該コード断片を、前記識別名記憶部に記憶されるコード断片識別名に対応付けて記憶し、前記コードロード部は、前記識別名記憶部に記憶されるコード断片識別名に対応付けられて前記コード記憶部に記憶されたコード断片をロードするように構成することができる。
【００４３】
また、本発明のコンピュータ読取可能な記録媒体において、前記コードロード部は、前記認定部による認定が開始される前に、あらかじめ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片を動的にロードするように構成することができる。
【００４４】
また、本発明のコンピュータ読取可能な記録媒体において、前記コードロード部は、前記認定部による認定が開始された後、かつ、前記識別名記憶部に記憶されたコード断片識別名に対応付けられたコード断片が前記認定部により初めて実行される前に、当該コード断片を動的にロードするように構成することができる。
【００４５】
上記目的を達成するため、本発明の第４の観点に係るコンピュータ読取可能な記録媒体は、前記プログラムにより、前記各部として機能する前記コンピュータの前記ルール記憶部に記憶されるルールを記録するように構成する。
【００４６】
本発明により、上記認定装置や、上記プログラムを記録した記録媒体とは独立して、上記認定装置や上記プログラムで用いられるルールを配布・販売することができる。
【００４７】
上記目的を達成するため、本発明の第５の観点に係るコンピュータ読取可能な記録媒体は、前記プログラムにより、前記各部として機能する前記コンピュータの前記コード記憶部に記憶されるコード断片を記録するように構成する。
【００４８】
本発明により、上記認定装置や、上記プログラムを記録した記録媒体とは独立して、上記認定装置や上記プログラムで用いられるコード断片を配布・販売することができる。
【００４９】
上記目的を達成するため、本発明の第６の観点に係るコンピュータ読取可能な記録媒体は、前記プログラムにより、前記各部として機能する前記コンピュータの前記識別名記憶部に記憶される条件タイプおよび条件値と、コード断片識別名と、を記録するように構成する。
【００５０】
本発明により、上記認定装置や、上記プログラムを記録した記録媒体とは独立して、上記認定装置や上記プログラムで用いられる条件タイプおよび条件値と、コード断片識別名と、を配布・販売することができる。
【００５１】
【発明の実施の形態】
以下、添付図面を参照して、本発明の実施の形態について説明する。
【００５２】
（認定装置として機能する情報処理装置の概要構成）
図１は、本発明の個体名の認定装置として機能する典型的な情報処理装置（汎用のコンピュータ、各種端末、携帯端末、携帯電話、ゲーム装置などの専用機器を含む）の概要構成を示す模式図である。以下、図１を参照して説明する。
【００５３】
情報処理装置１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ；中央処理ユニット）１０２によって制御される。情報処理装置１０１に電源を投入すると、ＣＰＵ１０２は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ；読出専用メモリ）１０３に記憶されたＩＰＬ（Ｉｎｉｔｉａｌ  Ｐｒｏｇｒａｍ  Ｌｏａｄｅｒ；初期プログラムローダ）を実行する。
【００５４】
ＩＰＬは、ハードディスク１０４、ＦＤ（Ｆｌｏｐｐｙ  Ｄｉｓｋ；フロッピーディスク）ドライブ１１０に装着されたＦＤ、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  ＲＯＭ）ドライブ１１１に装着されたＣＤ−ＲＯＭなどの記録媒体に記憶されたＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ；オペレーティング・システム）プログラムを読み出して実行するプログラムである。
【００５５】
ＯＳを起動した後、ＣＰＵ１０２は、キーボード１０５やマウス１０６などにより入力されたユーザの指示にしたがって、あるいは、ハードディスクなどにあらかじめ記述された設定ファイルの内容にしたがって、ハードディスクなどに記憶されたアプリケーションプログラムを実行する。
【００５６】
なお、携帯端末などの小規模な情報処理装置では、ＩＰＬ自体がＯＳやアプリケーションプログラムとしての機能を果たすような実施形態も採用することができる。
【００５７】
ＣＰＵ１０２は、プログラムの実行の際に、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０７を一時的な作業用記憶領域として用いる。このほか、一時的な作業用記憶領域として、ＣＰＵ１０２内に設けられたレジスタやキャッシュ（図示せず）が使われる。
【００５８】
プログラムの実行に伴い、ユーザに結果を報告したり、途中経過を見せるため、ＣＰＵ１０２は、液晶ディスプレイやＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などの表示装置１０８に当該情報を表示することができる。マウス１０６による指示操作では、マウス１０６を移動することにより、画面に表示されたカーソルが移動し、マウス１０６をクリックすることにより、カーソルが指すメニュー項目を選択することができる。
【００５９】
情報処理装置１０１は、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）やモデムなどのインターフェース１０９を介してインターネットなどのコンピュータ通信網と通信を行うことができる。インターフェース１０９を介して受信した文書データを処理の対象としたり、処理した結果をインターフェース１０９を介して送信したり、インターフェース１０９を介して受信したプログラムを実行したり、などができる。
【００６０】
（認定装置の概要構成）
図２は、上記情報処理装置１０１が本発明の個体名の認定装置として機能する場合の、各機能の概要構成を示す模式図である。
【００６１】
個体名の認定装置１５１は、入力受付部１５２、第１の個体名記憶部１５３、第２の個体名記憶部１５４、ルール記憶部１５５、認定部１５６、更新部１５７、出力部１５８、コード断片記憶部１５９、および、コードロード部１６０を備える。また、図示しない要素として、再認定制御部、消去部を備えるように構成してもよい。
【００６２】
入力受付部１５２は、形態素列を入力として受け付ける。ここで、処理の対象となる文書データやあらかじめ形態素解析を完了した結果の形態素列を記録したデータは、上記のようにインターフェース１０９を介して得ることができるほか、ハードディスク１０４、ＦＤ、ＣＤ−ＲＯＭに記憶されたファイルなどから得ることができる。また、ユーザがキーボード１０５やマウス１０６を操作して入力した文書データを形態素解析してから、処理の対象とすることもでき、形態素列は、ＲＡＭ１０７に記憶される。
【００６３】
したがって、インターフェース１０９、ハードディスク１０４、ＦＤドライブ１１０、ＣＤ−ＲＯＭドライブ１１１、ＲＡＭ１０７は、形態素列を入力として受け付ける入力受付部１５２として機能する。
【００６４】
第１の個体名記憶部１５３と、第２の個体名記憶部１５４は、個体名を表す形態素（列）を、その属性と対応付けて記憶するが、前者はあらかじめ記憶し、後者は一時的に記憶する。また、ルール記憶部１５５は、形態素列から個体名を表す形態素（列）をその属性と対応付けて認定するルールをあらかじめ記憶する。
【００６５】
したがって、ハードディスク１０４、ＦＤドライブ１１０に装着されたＦＤ、ＣＤ−ＲＯＭドライブに装着されたＣＤ、ＲＯＭ１０３、ＲＡＭ１０７、および、インターフェース１０９を介して接続された他のコンピュータのこれら読み取り可能な情報記憶装置に相当するものは、第１の個体名記憶部１５３、および、ルール記憶部１５５として機能する。第１の個体名記憶部１５３、および、ルール記憶部１５５は、必ずしも書き込みができる必要はない。
【００６６】
一方、ハードディスク１０４、ＦＤドライブ１１０に装着されたＦＤ、ＲＡＭ１０７、および、インターフェース１０９を介して接続された他のコンピュータのこれら読み書き可能な情報記憶装置に相当するものは、第２の個体名記憶部１５４として機能する。
【００６７】
認定部１５６は、第１の個体名記憶部１５３、第２の個体名記憶部１５４、ルール記憶部１５５に記憶された情報を用いて、入力を受け付けた形態素列から個体名を表す形態素（列）を認定する。本実施形態では、ＣＰＵ１０２が、認定部１５６として機能する。
【００６８】
更新部１５７は、新たに認定された個体名を表す形態素（列）を第２の個体名記憶部１５４に追加して記憶する。本実施形態では、ＣＰＵ１０２が、更新部１５７として機能する。
【００６９】
出力部１５８は、認定された個体名を表す形態素（列）を認定された個体名として出力する。なお、当該個体名を表す形態素（列）に対応付けられた属性も合わせて出力する形態を採用することができる。
【００７０】
表示装置１０８、ハードディスク１０４、ＦＤドライブ１１０に装着されたＦＤ、ＲＡＭ１０７は、および、インターフェース１０９を介して接続された他のコンピュータのこれら読み書き可能な情報記憶装置に相当するものを認定した個体名を表す形態素（列）を出力する先として選択することができる。したがって、これらは、出力部１５８として機能する。
【００７１】
コード断片記憶部１５９は、ルール記憶部１５５にて参照される条件タイプおよび条件値に対応付けられたコード断片を動的リンクライブラリの形式で記憶する。このコード断片は、あらかじめ、もしくは、必要に応じて認定部１５６における認定の際に、コードロード部１６０によりＲＡＭ１０７にロードされて、形態素が条件を満たすか否かの判断に用いられる。
【００７２】
したがって、ハードディスク１０４、ＦＤドライブ１１０に装着されたＦＤ、ＣＤ−ＲＯＭドライブに装着されたＣＤ、ＲＯＭ１０３、ＲＡＭ１０７、および、インターフェース１０９を介して接続された他のコンピュータのこれら読み取り可能な情報記憶装置に相当するものは、コード断片記憶部１５９として機能する。コード断片記憶部１５９は、必ずしも書き込みができる必要はない。
【００７３】
また、ＣＰＵ１０２は、これらの情報記憶装置およびＲＡＭ１０７と共働して、コードロード部として機能する。
【００７４】
また、再認定制御部（図示せず）は、新たに認定された個体名を表す形態素（列）がある限り、認定部１５６における認定の処理を繰り返す制御を行う。この場合、ＣＰＵ１０２が、再認定制御部として機能する。
【００７５】
また、消去部（図示せず）は、特定条件が満たされると第２の個体名記憶部１５４に記憶された個体名の形態素（列）を消去する。この場合、ＣＰＵ１０２が消去部として機能する。
【００７６】
このほか、ハードディスク１０４、ＦＤドライブ１１０に装着されたＦＤ、ＣＤ−ＲＯＭドライブに装着されたＣＤ、ＲＯＭ１０３、ＲＡＭ１０７、および、インターフェース１０９を介して接続された他のコンピュータのこれら読み取り可能な情報記憶装置に相当するものは、ＣＰＵ１０２で実行されるプログラムや、第１の個体名記憶部１５３、第２の個体名記憶部１５４、ルール記憶部１５５、コード断片記憶部１５９に記憶される情報を記録することにより、本発明の記録媒体として機能する。
【００７７】
上述のように、図１に示す情報処理装置１０１は、図２に示す本発明の個体名の認定装置として機能させるための典型的な実施態様である。
【００７８】
たとえば、インターネット内の文献を自動的に取得して個体名を認定して個体名の文献データベースを作成するロボットサーバにて、本発明の個体名の認定方法を実施させ、当該ロボットサーバを本発明の個体名の認定装置として機能させることができる。この場合、表示装置１０８、ＦＤドライブ１１０、キーボード１０５、マウス１０６等は不要である一方、インターフェース１０９は必須である。
【００７９】
また、携帯端末では、外部記憶装置として、不揮発性半導体メモリ（フラッシュメモリカード）やバッテリバックアップがされたＲＡＭを使用することができる。この場合、必ずしもハードディスク１０４、ＦＤドライブ１１０、ＣＤ−ＲＯＭドライブ１１１等は必要ない。
【００８０】
（処理手順）
以下、本発明の個体名の認定装置の機能を実現するために上記の情報処理装置にて実行される処理、すなわち、本発明の個体名の認定方法の概要について説明する。図３は、当該処理の流れを示すフローチャートである。
【００８１】
まず、入力受付部１５２が入力される形態素列を受け付ける（ステップＳ２０１）。形態素列の受け付けは、上記のように、ハードディスク１０４などの記録媒体から行ってもよいし、キーボード１０５などの入力装置から行ってもよい。また、ＲＡＭ１０７内の所定の領域に形態素列のデータを記憶させ、このデータを記憶した領域のアドレスをパラメータとする関数呼び出しやシステムコールの形式で本ステップＳ２０１が開始される実施形態を採用することもできる。
【００８２】
次に、認定部１５６が、入力形態素列から、第１の個体名記憶部１５３、および、第２の個体名記憶部１５４に記憶された形態素（列）を認定する（ステップＳ２０２）。本ステップＳ２０２で利用される個体名の詳細については後述する。
【００８３】
さらに、認定部１５６は、入力形態素列から、特徴語、周辺に配置された（特に隣接する）形態素、認定された個体名などの情報を利用して、ルール記憶部１５５に記憶されたルールを適用して、未登録の個体名の形態素（列）を認定する（ステップＳ２０３）。認定ルールの詳細については後述する。
【００８４】
ついで、認定された個体名を表す形態素（列）のうち、第２の個体名記憶部１５４に記憶されていないもの、すなわち、新規に認定された個体名の形態素（列）があるか否かを判断する（ステップＳ２０４）。
【００８５】
新規に認定された個体名の形態素がある場合（ステップＳ２０４；Ｙｅｓ）、更新部１５７は、第２の個体名記憶部１５４に追加記憶させて更新し（ステップＳ２０６）、ステップＳ２０２に戻る。これにより、新たに認定された個体名の情報を用いて再度ルールを適用することができる。なお、ステップＳ２０２に戻る処理の制御を担当するのが、再認定制御部である。
【００８６】
一方、新規に認定された個体名の形態素（列）がない場合（ステップＳ２０４；Ｎｏ）、本発明の手法により認定できる個体名はすべて認定されたことになるため、認定された個体名を表す形態素（列）を出力部１５８より認定された個体名として出力し（ステップＳ２０５）、本処理を終了する。出力の詳細については後述する。
【００８７】
（個体名の種類）
本発明の個体名の認定装置、および、認定方法では、あらかじめ形態素解析を実行することにより出力された形態素列から、個体名を表す形態素（列）を認定する。以下では、この個体名として採用される形態素の種類の実施例について説明する。
【００８８】
本実施例では、個体名の形態素（列）に対応付けて、以下の４種類の属性を認定する。
・固有名詞
・時間
・数量
・インデックス
【００８９】
属性「固有名詞」は、さらに、商品名、組織名、地名（地域名、自然物名、施設名）、人物名に分類される。
【００９０】
属性「時間」は、さらに、経済時間、暦時間（曜日時間を含む）、非暦時間、特殊接辞に分類される。
【００９１】
属性「数量」は、さらに、金額、比率、序数詞に分類される。
【００９２】
属性「インデックス」は、さらに、ＵＲＬ（Ｕｎｉｖｅｒｓａｌ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｅｒ）、電子メールアドレス、電話番号・ファクシミリ番号に分類される。これらは、英数字や記号から構成される文字列であるが、個人や企業を特定する、という点で、人物名や組織名に準じて考えることができる。
【００９３】
このように、本発明で取り扱う個体名の形態素（列）の属性は階層的に構成されている。属性の階層は、適宜変更して構成することができる。
【００９４】
本発明では、処理対象とする形態素列から、これらの属性を付された個体名の形態素（列）を分類して認定し、認定結果を認定された個体名として出力する。
【００９５】
具体例をあげて説明する。以下適宜、記号「／」を用いて形態素を区切るものとする。「私は、（株）山田商会田中専務です。」は、「私／は／、／（株）／山田／商会／田中／専務／です／。」のように形態素列に解析できる。
【００９６】
これらの形態素それぞれには、上記の属性を割り当てることができるものがある。たとえば、「田中」には「姓」という属性を、「専務」には「役職名」という属性を、それぞれ割り当てることができる。このように、形態素そのものに割り当てられる属性を「役割素性」という。
【００９７】
一方、「山田／商会」「（株）／山田／商会」などのような形態素列にも属性を割り当てることができる。これらには「組織名」という属性を割り当てることができる。同様に、「田中／専務」には「人物名」という属性を割り当てることができる。
【００９８】
「（株）／山田／商会／田中／専務」は、本例において、個体名として認定できる最大限の形態素列であり、これには「人物名」という属性を割り当てることができる。このように、個体名として認定できる最大限の形態素列に割り当てられた属性を「カテゴリ」という。
【００９９】
第１の個体名記憶部１５３には、あらかじめ、これらの個体名として選定された形態素（列）と、その個体名の属性を対応付けて記憶する。
【０１００】
上述の例では単純に属性を割り当てたが、たとえば固有名詞の「山田」といっても、その属性として人物名、組織名（会社名）、地域名など、ふさわしい属性はさまざまである。一度文章の前方で「山田博物館」と記載された場合には、文章の後方で単に「山田」と書くこともあり、この場合は、施設名を表すことになる。
【０１０１】
したがって、第１の個体名記憶部１５３には、個体名を表す形態素（列）にそれがとりうる属性を複数種類対応付けて記憶する場合がある。たとえば、「山田」に対して「姓」「組織名」「会社名」「地域名」などを記憶することになる。
【０１０２】
また、時間、数量、インデックスは、形態素を表す文字列の並びのパターンで判別することができるため、このパターンをたとえば正規表現（Ｒｅｇｕｌａｒ  Ｅｘｐｒｅｓｓｉｏｎ）で表して第１の個体名記憶部１５３やルール記憶部１５５に記憶することができる。
【０１０３】
図４には、このような第１の個体名記憶部１５３に記憶される個体名を表す形態素（列）と、その属性やカテゴリの様子を示す。
【０１０４】
図４に示す例では、個体名として認定可能な形態素列として「パジェロ・ミニデューク」「山本食品」「田中住宅北陸」「祖谷渓」「焼山寺」「平将門」が記憶されている。たとえば、「パジェロ・ミニデューク」の属性（カテゴリ）は「商品」であり、これらを形態素に分けた「パジェロ」「・」「ミニ」「デューク」の属性（役割素性）は、それぞれ、「商品名本体」「記号」「商品名本体」「シリーズ名」である。
【０１０５】
このように、第１の個体名記憶部１５３には、あらかじめ定めた個体名を表す形態素（列）が記憶される。なお、認定ルールにより個体名として認定された未知語を第２の個体名記憶部１５４に、同様のフォーマットで、記憶することができる。
【０１０６】
（認定ルール）
第１の個体名記憶部１５３に記憶された形態素（列）を用いて、入力として受け付けた形態素列から個体名を認定することができるが、それだけでは不十分な場合がある。
【０１０７】
上述のように、商品名などの固有名詞では造語や新語などが用いられることが多いため、第１の個体名記憶部１５３に記憶されていない未知語が多い。特に、ＷＷＷから入手できる場合には、これが顕著である。このような場合であっても未登録の個体名を認定できるようにしたい。
【０１０８】
以下に説明する認定ルールにより、これらに対応する。これらの認定ルールでは、以下のような情報を用いる。
・形態素解析結果が持つ属性。品詞、字種、字面など。
・既に認定された個体名の形態素（列）が持つ属性。カテゴリ、役割素性など。
認定された個体名の形態素（列）は、第２の個体名記憶部１５４に記憶されている。
【０１０９】
なお、認定ルールや個体名の属性、これらの連結関係に重みをつけて、個体名の属性が複数認定された場合に、これらの重みから得点を計算し、いずれが最も尤もらしいかを推定することにより、文献検索や要約の精度を高めることができる。
【０１１０】
（特徴語による認定ルール）
まず、特徴語や共起語を用いた認定ルールの例について説明する。特徴語としては、接頭語や接尾語などが考えられる。たとえば「部長」「（株）」である。形態素列として「山田／一郎／部長」が入力された場合、「部長」という特徴語から、形態素列「山田／一郎」が人名を表すことがわかる。
【０１１１】
そこで、第２の個体名記憶部１５４に「山田」「一郎」「山田／一郎」の各形態素（列）を、人名として更新登録する。後述するように、個体名の認定には、第１の個体名記憶部１５３と、第２の個体名記憶部１５４と、を両方とも用いるので、文章中に「山田／一郎／部長」が現れた後に「山田」が単独で現れても、この「山田」は人名を表す、と推定できるのである。
【０１１２】
同様に「（株）／ジャスト」や「システム／（株）」のような形態素列が入力された場合には、「ジャスト」や「システム」が第１の個体名記憶部１５３に記憶されていない未登録の固有名詞であっても、特徴語「（株）」から、会社名を表すことが判明する。
【０１１３】
同様に、「１２／月／２８／日」のような形態素列が入力された場合には、「１２」は月を表し、「２８」は日を表す個体名であることがわかる。
【０１１４】
なお、特徴語は、「山田／一郎／部長」「（株）／ジャスト」のように、個体名を表す形態素（列）の中に含まれ、これを含む形態素（列）全体にカテゴリを割り当てることができる。
【０１１５】
一方、共起語とは、特徴語と同様の機能を有するが、個体名を表す形態素（列）の中には含まれないものをいう。たとえば、「アルト／を／発売」という形態素列が入力された場合、「発売」という共起語から、「アルト」が個体名を表す形態素（列）でありカテゴリ「商品名」が付与される。「発売」は、当該個体名を表す形態素（列）には含まれない。
【０１１６】
このような特徴語、共起語の情報は、ルール記憶部１５５に記憶される。図５は、ルール記憶部１５５に記憶される特徴語、共起語の様子を示す模式図である。
【０１１７】
本図に示す表のうち、ルール記憶部１５５に実際に記憶されるのは、「テーブル分類」欄と「登録語」欄である。
【０１１８】
「テーブル分類」は、同じような特徴を有する特徴語、共起語を識別するための識別子であり、「登録語」は、当該特徴を有する特徴語、共起語である。
【０１１９】
たとえば、分類「Ｔ２２」に属する「産業」「興業」「建設」はいずれも「後接特徴語」で、これらの特徴語を含む個体名の形態素（列）の属性（カテゴリ）は「組織名」である。
【０１２０】
一方、分類「Ｔ１５」に属する「発売」「販売」「開発」「発表」は、いずれも「後接用言」で、これらの特徴語の前に配置された形態素（列）の属性（カテゴリ）は「商品名」である。
【０１２１】
（動的な条件タイプおよび条件値の設定）
上記のように、図５に示す特徴語、共起語は、条件タイプの一例であり、字面に関するものである。これらは、形態素が満たすべき条件値によって各種のテーブル分類に分類されている。すなわち、「形態素が満たすべき字面の条件値」の判定を、あらかじめ用意された「テーブル」により行っている。
【０１２２】
図６は、「形態素が満たすべき条件」の判定を、動的リンクライブラリの関数呼び出しにより行うために必要な情報であって、ルール記憶部１５５に記憶される条件タイプおよび条件値と、ライブラリ名と関数名（コード断片識別名）の表を示す説明図である。
【０１２３】
図５に示す特徴語、共起語と同様に、各条件値毎にライブラリ名と関数名とが割り当てられている。図５に示す特徴語、共起語の場合は、登録語に該当するか否かにより形態素が条件を満たすか否かを判断していたが、図６に示す動的リンクライブラリを利用する手法では、当該ライブラリの関数呼び出しの結果により、形態素が条件を満たすか否かを判断する。
【０１２４】
関数に対しては、着目中の形態素引数として渡して呼び出すと、返り値が得られる。この返り値が、条件値に等しいか否かをもって、判断を行う。
【０１２５】
図６に示す表中からは、たとえば、テーブル分類（条件タイプ）の条件値Ｔ８１に該当する形態素か否かは、動的リンクライブラリｔｏｋｕｃｈｏｇｏ．ｄｌｌ内のｍａｔｃｈｆｕｎ１を呼び出すことによって判断されることがわかる。
【０１２６】
たとえば、単なる字面だけの分類ではなく、「英単語の１文字目が大文字か小文字か」という条件を形態素が満たすか否かという判断を追加することができる。
【０１２７】
このように新規な条件タイプは、本システムのカスタマイズ時に、既存のシステム本体には手を加えずに後付けされる。たとえば、先頭文字が大文字であると判断したい場合は、以下のようにする。
【０１２８】
（１）ルールの条件部には、条件タイプＬに対してＣａｐｉｔａｌを条件値とする。
【０１２９】
（２）図６に示す表に、条件タイプＬ、値Ｃａｐｉｔａｌに対しては、動的リンクライブラリＬｅｔｔｅｒ．ｄｌｌ内のライブラリ関数ＣｈｅｃｋＣａｐを追加して記述しておく。図６中、条件タイプＴ、Ｐ、Ｃ、Ｅ、Ｒが既存のものであり、Ｌがここで追加記述したものである。
（３）判断が必要になる実行時には、ルール条件部（１）に出会ったら（２）で記述した関数を呼び出すことにより、判定を行う。
【０１３０】
この判断に基づいて、後述するような認定ルールを適用することができる。
【０１３１】
なお、動的リンクライブラリがＲＡＭ１０７にロードされるタイミングは、認定装置１５１が実現される情報処理装置のオペレーティング・システムやプログラムの構成によって任意に変更することができる。たとえば、認定装置１５１を実現するプログラムが起動すると認定を開始する前に参照されている動的リンクライブラリをすべてロードしてもよいし、必要に応じてロードするような実施形態をとることもできる。
【０１３２】
また、関数名はいずれの条件タイプでも同じものとし、当該関数を含む動的リンクライブラリを複数用意して、コード断片識別名をライブラリ名だけから構成することもでき、本実施形態も本発明の範囲に含まれる。
【０１３３】
（並列する名詞句の認定ルール）
並列する名詞句により未登録の形態素（列）を個体名であると推定して認定するルールが考えられる。
【０１３４】
たとえば、「東京／、／ンジャメナ／、／パリ」のような形態素列が入力され、「東京」および「パリ」が地域名を表す個体名であると判定された場合、「ンジャメナ」が第１の個体名記憶部１５３に記憶されていない未登録語であっても、地域名を表す個体名であると推測することができる。
【０１３５】
「ンジャメナ」がカタカナのみの綴りからなることから、これが未登録語であっても、形態素解析で「ンジャメナ」が名詞相当語であることがわかるが、それ以上の情報は得られない。名詞句の並列を用いたルールによって、これが地域名であるらしいと推定できるのである。
【０１３６】
（格パターン認定ルール）
同じ文の中での、体言と用言の共起関係を用いて個体名を推定して認定するルールが考えられる。
【０１３７】
たとえば、「ＦＵＬＬＢＡＮＤ／を／１０／月／に／ジャスト／が／発売／し／た」という文で、「ＦＵＬＬＢＡＮＤ」が未登録語である場合、形態素解析では、「ＦＵＬＬＢＡＮＤ」が名詞相当語句であることまでしかわからない。
【０１３８】
本ルールでは、同じ文の中にある「発売」の目的格が「ＦＵＬＬＢＡＮＤ」になっている、という共起関係を利用し、「ＦＵＬＬＢＡＮＤ」は商品名であると推定して個体名として認定する。
【０１３９】
図７に、共起関係認定ルールを含む認定ルールがルール記憶部１５５に記憶される様子を示す。図７に示す認定ルールは、図５、図６に示す特徴語、共起語、動的リンクライブラリの情報を参照して定義されている。
【０１４０】
たとえば、「新製品」は「Ｔ１１」に、開きかぎかっこは「Ｔ１２」に、閉じかぎかっこは「Ｔ１３」に、「を」は「Ｔ１４」に、「発売」は「Ｔ１５」に、それぞれ含まれるため、これらの共起関係より、形態素列『新製品／「／ジン／」』（明確化のため二重かぎかっこを使って形態素列を示した）に属性（カテゴリ）「商品名」が付されることになる。
【０１４１】
（文間照応関係認定ルール）
このほか、一度認定された個体名を表す形態素（列）が、その属性とともに第２の個体名記憶部１５４に記憶されていることにより、異なる文の間でも照応関係を用いて個体名を推定して認定することができる。個体名を表す形態素（列）が新たに発見され、新たに発見した個体名を表す形態素（列）が第２の個体名記憶部１５４に追加更新されている間は、上記のルールを繰り返して適用することにより、実現できる。
【０１４２】
たとえば文章の前方に「鈴木／さん／の／開発／し／た」のような文があった場合、「鈴木」が役割素性「人物名」の個体名として第２の個体名記憶部１５４に記憶される。これにより、文章の後方に「『／商品／の／開発／は／大変／で／し／た／』／（／鈴木／）」のような文があっても、この文の「鈴木」は役割素性「人物名」の個体名として推定して認定することができる。
【０１４３】
このほか、ＵＲＬ、電子メールアドレス、電話番号、ファクシミリ番号などは、これらに対応する正規表現にマッチする部分を個体名として認定するルールを設定すれば、文字の種類（パターン）による認定ルールを設定して認定することも可能である。
【０１４４】
なお、「徳島」を第１の個体名記憶部１５３に記憶し、地名の後に「県」が現われたら、それは「県名」である旨のルールをルール記憶部１５５に記憶しておけば、「徳島県」を第１の個体名記憶部１５３に記憶する必要はない。このように認定ルールを用いることで、記憶領域を節約し、用語の管理を容易にすることもできる。
【０１４５】
これらのルールは適宜変更・追加・削除することが可能であり、変更・追加・削除した実施形態も本発明の範囲に含まれる。
【０１４６】
（第２の個体名記憶部）
上述したように、一度認定された個体名を表す形態素（列）は、その属性（品詞、字面、字種、カテゴリ、役割素性等）とともに、第２の個体名記憶部１５４に一時的に記憶される。この際の記憶領域のフォーマットは、第１の個体名記憶部１５３と同様のものを採用することができる。
【０１４７】
上述した認定ルールは、近傍に配置された形態素（列）によって個体名を認定するものである。したがって、認定ルールだけでは、認定が不十分になる場合がある。たとえば、「Ｆｕｌｌｂａｎｄを発売した。Ｆｕｌｌｂａｎｄはすばらしい。」のような文章では、「Ｆｕｌｌｂａｎｄ」が未登録であっても、第１の個体名記憶部１５３に記憶された特徴語・共起語「発売」と、ルール記憶部１５５に記憶された認定ルールから「Ｆｕｌｌｂａｎｄ」が商品名を表す個体名であることがわかる。
【０１４８】
第２文が単独で表れた場合には、「Ｆｕｌｌｂａｎｄ」が商品名であると推測することは難しいが、本発明においては、第１文の認定結果が第２の個体名記憶部１５４に記憶される。したがって、第２文においても、「Ｆｕｌｌｂａｎｄ」が商品名を表す個体名だとわかる。
【０１４９】
なお、同じ字面が出現した場合に無条件で再利用するのではなく、形態素解析の結果や、形態素（列）が持つ属性などもチェックする。たとえば、「月まで旅行したい。今日は１１月１日だ。」のような文章では、最初の「月」は「旅行」を共起語とするため地名を表す個体名と認定してこれを記憶するが、次の「月」は、形態素解析の結果、時間の接尾語という品詞が付与されるため、地名とは認定しない。
【０１５０】
さて、第２の個体名記憶部１５４は、現在処理している文章特有の個体名の情報を含むため、たとえば、文献の種類が変わるたびに消去する必要がある。
【０１５１】
消去のタイミングについては、以下のような手法が考えられる。
【０１５２】
・異なる文献に由来する形態素列の処理を開始した場合。
【０１５３】
・当該個体名を表す形態素（列）が第２の個体名記憶部１５４に記憶されて以降に処理された形態素の数が所定の数を超えた場合。
【０１５４】
・当該個体名を表す形態素（列）が第２の個体名記憶部１５４に記憶されて以降に認定ルールにより使用されなかった期間が所定の期間（所定の形態素の処理数等）を超えた場合。
【０１５５】
・ユーザによる指示があった場合。
【０１５６】
このように、本発明では、第２の個体名記憶部１５４に認定した個体名を一時的に記憶することにより、ある認定ルールを用いて一つの文に対して認定された個体名の情報を、他の文においても利用することができる。その結果、当該認定ルールを直接適用することができないような文においても、その個体名を認定することができるようになる。
【０１５７】
（出力形式）
図８は、本発明の個体名の認定装置による個体名の認定結果を出力した表示例を示す説明図である。本図に示される文章のうち、斜体で下線を付されて強調表示されている部分が個体名として認定された形態素（列）である。「韓国」「’９９．９．１０」「十頁」などの形態素（列）が認定されている。
【０１５８】
本図に示す出力例では、出力部１５８は、認定された個体名の形態素（列）を画面に出力しているが、さらに情報を付加して、ほかのアプリケーション等に認定結果を渡すことができる。
【０１５９】
たとえば、認定された個体名の形態素（列）と、これに対応する属性（カテゴリや役割素性等を含む。）と、をあわせて出力することができる。形態素（列）の属性は、第１の個体名記憶部１５３、第２の個体名記憶部１５４、および、ルール記憶部１５５に記憶された情報から得ることができる。
【０１６０】
この実施形態により、以下のような出力を行うことができる。
「１／月／２６／日」に対して「１」に役割素性「月数」を、「２６」に役割素性「日数」を、「１月２６日」全体にはカテゴリ「日付」を、それぞれ対応付けて出力する。
「山田／部長」に対して「山田」に役割素性「姓」を、「山田部長」全体にはカテゴリ「人名」を、それぞれ対応付けて出力する。
「株式会社／田中／商会／山田／社長」に対して、「田中」に役割素性「会社名」を、「商会」に役割素性「会社名」を、「田中商会」に属性「会社名」を、「株式会社田中商会」に属性「会社名」を、「山田」に役割素性「人名；姓」を、「社長」に役割素性「肩書き」を、「山田社長」に属性「人名」を、「株式会社田中商会山田社長」にカテゴリ「人名」を、それぞれ対応付けて出力する。
【０１６１】
このような属性の情報を合わせて出力することにより、「姓」と考えられる個体名のみを認定する等、属性によって文献を検索したり、機械要約の際に利用することができる。
【０１６２】
（第２の実施の形態）
上記実施例では、図６に示すように、条件タイプと条件値ごとに関数を１つ用意しているが、関数をまとめて実装することもできる。このようにすると、条件値の種類が多い場合であっても、管理しなければならない関数の数を減らすことができて便利である。
【０１６３】
図９は、本実施例での条件タイプ、動的リンクライブラリ名、関数名の定義と対応を記述する表の様子を示す説明図である。
【０１６４】
本実施形態では、条件値はとくにしない。たとえば、ルール中に条件タイプＴ（すなわち、条件値Ｔ８１〜Ｔ９４のいずれか）が出現したら、関数ｃｈｅｃｋｔｏｋｕｃｈｏに対しては、以下の２つを引数として渡す。
・着目している形態素
・ルールに記述された条件値
【０１６５】
たとえば図５に示すルール中のＴ８１の部分の解析を行う場合、すると関数ｃｈｅｃｋｔｏｋｕｃｈｏは、着目している形態素の字面が含まれるか否かの真偽値を返す。
【０１６６】
本実施形態でも、上記の実施形態と同様の効果が得られるほか、ライブラリ関数の管理が容易になる、という効果が得られる。また、これらの実施形態は、相反するものではなく、１つのシステムの中で共存させることができ、状況に応じて適切な手法を選択したり、組み合わせたりすることができる。
【０１６７】
【発明の効果】
以上説明したように、本発明によれば、入力された形態素列から個体名を表す形態素（列）を認定するのに好適な認定装置、認定方法、および、記録媒体を提供することができる。
【図面の簡単な説明】
【図１】本発明の個体名の認定装置を実現する情報処理装置の概要構成を示す模式図である。
【図２】本発明の個体名の認定装置の各機能の概要構成を示す模式図である。
【図３】本発明の個体名の認定装置において実行される処理、すなわち、本発明の個体名の認定方法の処理の流れを示すフローチャートである。
【図４】本発明の第１の個体名記憶部に記憶される個体名を表す形態素（列）と、その属性の例を示す説明図である。
【図５】本発明の認定ルールで用いられる特徴語、共起語がルール記憶部に記憶される様子を示す説明図である。
【図６】本発明の認定ルールで用いられる条件タイプおよび条件値とコード断片識別名とがルール記憶部に記憶される様子を示す説明図である。
【図７】本発明のルール記憶部に記憶される共起関係認定ルールがルール記憶部に記憶される様子を示す説明図である。
【図８】本発明の個体名の認定装置、認定方法の出力結果を示す説明図である。
【図９】本発明の認定ルールで用いられる条件タイプとコード断片識別名とがルール記憶部に記憶される様子を示す説明図である。
【符号の説明】
１０１  情報処理装置
１０２  ＣＰＵ
１０３  ＲＯＭ
１０４  ハードディスク
１０５  キーボード
１０６  マウス
１０７  ＲＡＭ
１０８  表示装置
１０９  インターフェース
１１０  ＦＤドライブ
１１１  ＣＤ−ＲＯＭドライブ
１５１  個体名の認定装置
１５２  入力受付部
１５３  第１の個体名記憶部
１５４  第２の個体名記憶部
１５５  ルール記憶部
１５６  認定部
１５７  更新部
１５８  出力部
１５９  コード断片記憶部
１６０  コードロード部
【図１】
0003576060.tif 000002
【図２】
0003576060.tif 000003
【図３】
0003576060.tif 000004
【図４】
0003576060.tif 000005
【図５】
0003576060.tif 000006
【図６】
0003576060.tif 000007
【図７】
0003576060.tif 000008
【図８】
0003576060.tif 000009
【図９】
0003576060.tif 000010