(57)【要約】  種々の言語の実名を検出するシステム及び方法が記載されており、これらは、候補の名前を受信し、前記候補の名前の人間の言語を特定し、前記候補の名前の文字セット、意味、及びフォーマットのうち少なくとも１つに対する、特定された前記人間の言語に特有のルールベースを適用することにより前記候補の名前の構造を分解し、前記候補の名前が実際の実名であるという信頼度を生成するために、分解された前記候補の名前の構造の少なくとも一部を実際の実名情報に関して検証し、生成された、前記候補の名前が実際の実名であるという前記信頼度に基づいて処置を実行することを含む。
2015523638.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに実装される、種々の言語の実名を検出する方法であって、
１以上のコンピューティング装置を用いて、候補の名前を受信し、
前記１以上のコンピューティング装置を用いて、前記候補の名前の人間の言語を特定し、
前記１以上のコンピューティング装置を用いて、前記候補の名前の文字セット、意味、及びフォーマットのうち少なくとも１つに対する、特定された前記人間の言語に特有のルールベースを適用することにより、前記候補の名前の構造を分解し、
前記１以上のコンピューティング装置を用いて、前記候補の名前が実際の実名であるという信頼度を生成するために、分解された前記候補の名前の構造の少なくとも一部を実際の実名情報に関して検証し、
前記１以上のコンピューティング装置を用いて、生成された、前記候補の名前が実際の実名であるという前記信頼度に基づいて処置を実行する、
ことを含む方法。
【請求項２】
生成された前記信頼度が予め定められた閾値以上である場合に、前記処置が、前記候補の名前を実際の実名として記憶することを含む
請求項１に記載の方法。
【請求項３】
生成された前記信頼度が予め定められた閾値未満である場合に、前記処置が、前記候補の名前は実際の実名として認められないという表示を提供することを含む
請求項１に記載の方法。
【請求項４】
前記候補の名前の人間の言語を特定することには、Ｕｎｉｃｏｄｅ標準に基づくスクリプトを特定することが含まれる
請求項１に記載の方法。
【請求項５】
前記実際の実名情報は、名前情報のホワイトリストを含み、前記検証することには、前記名前情報のホワイトリストと分解された前記候補の名前の構造の少なくとも一部とを比較することが含まれる
請求項１に記載の方法。
【請求項６】
閾値以上の前記信頼度が生成される
請求項５に記載の方法。
【請求項７】
前記実際の実名情報は、名前情報のブラックリストを含み、前記検証することには、前記名前情報のブラックリストと分解された前記候補の名前の構造の少なくとも一部とを比較することが含まれる
請求項１に記載の方法。
【請求項８】
閾値未満の前記信頼度が生成される
請求項７に記載の方法。
【請求項９】
名前情報のホワイトリストに、前記候補の名前の少なくとも一部を記憶する、
ことをさらに含む請求項１に記載の方法。
【請求項１０】
名前情報のブラックリストに、前記候補の名前の少なくとも一部を記憶する、
ことをさらに含む請求項１に記載の方法。
【請求項１１】
１以上のコンピューティング装置を用いて、候補の名前を受信し、
前記１以上のコンピューティング装置を用いて、前記候補の名前の人間の言語を特定し、
前記１以上のコンピューティング装置を用いて、前記候補の名前の文字セット、意味、及びフォーマットのうち少なくとも１つに対する、特定された前記人間の言語に特有のルールベースを適用することにより、前記候補の名前の構造を分解し、
前記１以上のコンピューティング装置を用いて、前記候補の名前が実際の実名であるという信頼度を生成するために、分解された前記候補の名前の構造の少なくとも一部を実際の実名情報に関して検証し、
前記１以上のコンピューティング装置を用いて、生成された、前記候補の名前が実際の実名であるという前記信頼度に基づいて処置を実行する、
ためのコンピュータ実行可能命令が格納された非一時的なコンピュータ可読媒体。
【請求項１２】
生成された前記信頼度が予め定められた閾値以上である場合に、前記処置が、前記候補の名前を実際の実名として記憶することを含む
請求項１１に記載のコンピュータ可読媒体。
【請求項１３】
生成された前記信頼度が予め定められた閾値未満である場合に、前記処置が、前記候補の名前は実際の実名として認められないという表示を提供することを含む
請求項１１に記載のコンピュータ可読媒体。
【請求項１４】
前記候補の名前の人間の言語を特定することには、Ｕｎｉｃｏｄｅ標準に基づく少なくとも１つのスクリプトを特定することが含まれる
請求項１１に記載のコンピュータ可読媒体。
【請求項１５】
前記実際の実名情報は、名前情報のホワイトリストを含み、前記検証することには、前記名前情報のホワイトリストと分解された前記候補の名前の構造の少なくとも一部とを比較することが含まれる
請求項１１に記載のコンピュータ可読媒体。
【請求項１６】
記憶装置と少なくとも１つのプロセッサとを含む少なくとも１つのコンピューティング装置であって、
前記プロセッサは、
前記少なくとも１つのコンピューティング装置を用いて、候補の名前を受信し、
前記少なくとも１つのコンピューティング装置を用いて、前記候補の名前の人間の言語を特定し、
前記少なくとも１つのコンピューティング装置を用いて、前記候補の名前の文字セット、意味、及びフォーマットのうち少なくとも１つに対する、特定された前記人間の言語に特有のルールベースを適用することにより、前記候補の名前の構造を分解し、
前記少なくとも１つのコンピューティング装置を用いて、前記候補の名前が実際の実名であるという信頼度を生成するために、分解された前記候補の名前の構造の少なくとも一部を実際の実名情報に関して検証し、
前記少なくとも１つのコンピューティング装置を用いて、生成された、前記候補の名前が実際の実名であるという前記信頼度に基づいて処置を実行するように構成されている、
少なくとも１つのコンピューティング装置。
【請求項１７】
生成された前記信頼度が予め定められた閾値以上である場合に、前記処置が、前記候補の名前を実際の実名として記憶することを含む
請求項１６に記載の少なくとも１つのコンピューティング装置。
【請求項１８】
生成された前記信頼度が予め定められた閾値未満である場合に、前記処置が、前記候補の名前が実際の実名であるということを支持する検証情報を要求することを含む
請求項１６に記載の少なくとも１つのコンピューティング装置。
【請求項１９】
前記候補の名前の人間の言語を特定することには、Ｕｎｉｃｏｄｅ標準に基づく２つのスクリプトを特定することが含まれ、前記人間の言語は前記２つのスクリプトに基づいて特定される
請求項１６に記載の少なくとも１つのコンピューティング装置。
【請求項２０】
前記候補の名前が実際の実名であることを示す検証情報を受信することをさらに含む
請求項１６に記載の少なくとも１つのコンピューティング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載の主題は、データ処理に関し、より具体的には、種々の言語の実名を検出するシステム及び方法に関する。
【背景技術】
【０００２】
オンライン商品及びサービスは、しばしばユーザに実名の提供を要求する。一部のユーザは実名を正確に提供するものの、正確に実名を提供しないユーザもいる。その理由は、意図的でない場合（例えば、入力ミス）もあれば、意図的である場合（例えば、自分の身元を隠すため）もある。ユーザは、実名でない名前を提供するかもしれない。したがって、ユーザによって提供された名前が実名であるか否かについての指標がない。
【０００３】
さらに、提供された名前が、異なる文化、伝統、習慣と関連づいた種々の言語であるかもしれない。いくつかの言語では名前は姓を含むことができる。例えば、姓が、最初の単語として、又は最後の単語として、又は最初と最後の単語の間の単語として、提供されうる。いくつかの言語においては、姓の概念がない。
【０００４】
オンライン商品及びサービスにおいて使用されるような種々の言語の実名を検出することは困難であり、解決策が求められている。
【発明の概要】
【０００５】
種々の言語の実名を検出するシステム及び方法が記載されている。主題は、候補の名前を受信し、前記候補の名前の人間の言語を特定し、前記候補の名前の文字セット、意味、及びフォーマットのうち少なくとも１つに対する、特定された前記人間の言語に特有のルールベースを適用することにより前記候補の名前の構造を分解し、前記候補の名前が実際の実名であるという信頼度を生成するために、分解された前記候補の名前の構造の少なくとも一部を実際の実名情報に関して検証し、生成された、前記候補の名前が実際の実名であるという前記信頼度に基づいて処置を実行する、少なくとも１つのコンピューティング装置、少なくとも１つのコンピュータ製品、及び少なくとも１つの方法を含む。
【図面の簡単な説明】
【０００６】
図１Ａは、いくつかの例示的な実施形態が実装及び／又は動作される例示的なオンライン環境を示している。
【０００７】
図１Ｂは、名前が処理される例示的なオンライン環境における例示的なデータフローを示している。
【０００８】
図２Ａ〜Ｅは、いくつかの例示的な実施形態の例示的な処理フローを示している。
【０００９】
図３は、少なくとも一つの例示的な実施形態の実装に適した例示的な処理を示している。
【００１０】
図４は、少なくとも一つの例示的な実施形態の実装に適した例示的なコンピューティング装置を伴う例示的なコンピューティング環境を示している。
【発明を実施するための形態】
【００１１】
本明細書に記載する主題は、例示的な実施形態により教示されている。さまざまな詳細は、明確化のため、および主題を不明瞭にしないために省略されている。下記の例は、種々の言語の実名を検出するシステム及び方法の構造及び機能についてのものである。
【００１２】
本明細書で使用するとき、「実名」とは、人物の公知の又は法律上の識別子である。ある人々の公知の又は法律上の識別子は、同じであろう。他の人々（例えば、アーティスト）は、彼らの公知の識別子は、彼らの法律上の識別子とは異なるかもしれない。例えば、歌手が、法律上の名前（例えば、パスポート上の名前）と異なる芸名によって公然知られているかもしれない。
【００１３】
［処理環境の例］
図１Ａは、いくつかの例示的な実施形態が実装及び／又は動作される例示的なオンライン環境を示している。環境１００は、例えばネットワーク１８０を介して、それぞれが少なくとも一つの他の装置と通信可能に接続された装置１０２〜１１８を含んでいる。いくつかの装置は、１以上の記憶装置１１８と通信可能に接続されていてもよい。
【００１４】
１以上の装置１０２〜１１８の例は、コンピューティング装置４０５（図４）であってもよい。装置１０２〜１１８は、コンピュータ１０２（例えば、パーソナル又はコマーシャルなもの）、乗り物における装置１０４、モバイル端末１０６（例えば、スマートフォン）、テレビ１０８、モバイルコンピュータ１１０、サーバ又はデスクトップコンピュータ１１２、コンピューティング装置１１４〜１１６、記憶装置１１８を含んでもよいが、これに限定されない。装置１０２〜１１８のいずれも、環境１００に示される１以上の装置及び／又は環境１００に示されない１以上の装置からの１以上のサービスにアクセスし、及び／又は、環境１００に示される１以上の装置及び／又は環境１００に示されない１以上の装置に、１以上のサービスを提供してもよい。
【００１５】
図１Ｂは、名前が処理される例示的なオンライン環境における例示的なデータフローを示している。環境１２５において、ユーザインタフェース１３０、１４０、１５０、サードパーティのプロバイダ（図示せず）及びサービスプロバイダ（図示せず）間でデータが（例えば、図１に示されるネットワーク１８０を介して）流れてもよい。ユーザインタフェース１３０、１４０、１５０は、いくつかのデバイス（例えば、図１Ａの装置１０２〜１１０）上で提供されてもよく、また、タイムラインに沿った異なる時点を表してもよい。サードパーティのプロバイダ及びサービスプロバイダは、例えば、装置１１２〜１１８（図１）及び／又は図示されていない装置に具現化されていてもよい。
【００１６】
ユーザインタフェース（ＵＩ）１３０は、ユーザが自らの名前を提供するための仕組みを示している。ユーザは、何らかの理由で（例えば、製品又はサービスに対する登録、口座の開設、調査に対する回答など）、名前を提供するであろう。簡単にするために、当業者によって理解されるとおり、他の情報（例えば、図示しない連絡先情報）が含まれてもよい。ユーザは、例えば、ウィジェット１３２（例えば、テキストボックス、自動入力機能、音声入力ウィジェットなど）を用いて自らの名前を入力し、自らの名前を送信又は提出するためのコントロール１３４を動作させてもよい。
【００１７】
ＵＩ１４０は、自らの名前が本物であることを支持する証拠又は確証をユーザが提供するために使用する仕組みを示している。例えば、ユーザは、証拠１４２を入力し、コントロール１４４を用いて証拠１４２を提出してもよい。ＵＩ１４０のさらなる詳細は、以下でより詳細に示される。
【００１８】
ＵＩ１５０は、管理者又はサードパーティのユーザが、名前が本物であるかを検証するために用いる仕組みを示している。例えば、名前が本物である場合、名前は、コントロール１５４を用いて確認又は検証されてもよい。名前が本物でない場合、名前は、コントロール１５６を用いて、本物でないと表示され、又は拒絶されてもよい。任意で、証拠１５２がコントロール１５４又は１５６のいずれかとともに提供されてもよい。ＵＩ１５０のさらなる詳細は、以下でより詳細に示される。
【００１９】
［実名検出処理の例］
いくつかの例示的な実施形態を示すために、図１Ｂの要素は、図２Ａと関連して記載されている。図２Ａに示されるように、ブロック２１０で、サービスプロバイダ（図示せず）がユーザの名前を受信してもよい。サービスプロバイダは、提供された名前の言語（例えば、人間の言語）を評価、識別、及び／又は検出（評価）してもよい（ブロック２１５）。例えば、提供された、「Ｇｌｅｎｎ  Ｓｍｉｔｈ」（英語）、「品田ふみ子」（日本語）といった名前や、さらに別の言語の名前に対し評価が行われてもよい。
【００２０】
言語は、任意の方法で評価することができる。いくつかの例示的な実施形態において、言語評価は、Ｕｎｉｃｏｄｅスクリプト（インターネット上のｗｗｗ.ｕｎｉｃｏｄｅ.ｏｒｇで入手できる）を用いて実行されてもよい。Ｕｎｉｃｏｄｅは、異なる言語又は言語セットに対するコードの範囲を定義している。例えば、一つの範囲（例えば、１６進数での４Ｅ００〜９ＦＣＦ）は、Ｕｎｉｃｏｄｅ標準のバージョン６．１において、漢字に対し定義されている。このコードの範囲は、中国語、日本語、及び韓国語（ＣＪＫ）で使用される漢字を表すために使用することができる。他のＣＪＫコード範囲（例えば、ＣＪＫ Ｅｘｔｅｎｓｉｏｎ Ａ から ＣＪＫ Ｅｘｔｅｎｓｉｏｎ Ｄなど）、日本語コード範囲（例えば、ひらがな及びカタカナ）、韓国語コード範囲（例えば、ハングル範囲）、及び他の多数のコード範囲が存在する。
【００２１】
提供された名前の言語を評価するために、例えば、コードの範囲が識別される。名前「品田ふみ子」を例にすると、いくつかの文字（例えば、「品田ふみ子」）がＣＪＫ範囲内であると識別され、いくつかの文字（例えば、「ふみ」）がひらがな範囲内であると識別される。総じて、日本語は漢字を用い、中国語では日本語文字を用いないので、名前「品田ふみ子」は、日本語の名前である信頼度が高いと結論付けることができる。
【００２２】
韓国語の名前は、名前が、韓国語の範囲のコード、又は韓国語の範囲とＣＪＫ範囲の組み合わせのコードで表現されていることを識別することにより評価（例えば、検出）することができる。中国語の名前は、１以上のＣＪＫ範囲によって表現されている名前に基づいて検出することができる。本明細書で使用するとき、用語「言語」または「人間の言語」は、人間のコミュニケーションで用いられるシンボルの集合を指す。
【００２３】
［名前のリストの例］
サービスプロバイダは、各言語の名前情報の１以上のデータベースにアクセスすることができる。例えば、日本語に対し、実名の構成要素ではないとする信頼度によって特徴づけられる名前情報についての１以上のデータベース（例えば、日本語の非実名又はその構成要素についての「ブラックリスト」）が存在してもよい。ブラックリストは、本物ではないと予め定められ又は検出された非実名又はその構成要素のリポジトリでもよい。ブラックリストは、１以上の情報源（例えばインターネット）から集められた非実名又はその構成要素を含んでもよい。
【００２４】
ブラックリストは、任意の方法、任意の仕組みの利用、任意の情報源からの情報の利用、又はそれらの任意の組み合わせによって構築又は拡張されてもよい。例えば、インターネット上に存在する既知の偽名若しくは既知の偽名の構成要素、スパムフィルタによって得られた既知の偽名若しくは既知の偽名の構成要素、政府のデータベース（例えば、不正情報データベース）から移入された既知の偽名若しくは既知の偽名の構成要素、サービスプロバイダによって（例えば確認又は検証プロセスにおいて）検出された既知の偽名若しくは既知の偽名の構成要素、又は別の情報源又は方法によって入手された既知の偽名若しくは既知の偽名の構成要素によって、ブラックリストは、生成、構築、追加、拡張されてもよい。
【００２５】
提供された名前の言語が上述の評価に基づいて検出されたと判定された場合（ブロック２２０）、サービスプロバイダは、検出された言語に基づいて、非実名及びその構成要素の「ブラックリスト」を特定してもよい（ブロック２２５）。言語が検出または特定されると、1つ以上の言語固有のルール及び／又はデータベースが、提供された名前が実名であるかどうかを決定するために使用される。例えば、提供された名前についての検出された言語は、日本語であるかもしれない（例えば、提供された名前が日本語のスクリプト又はＵｎｉｃｏｄｅでエンコードされている）。そして、日本語での候補の名前及び／又はその構成要素の１以上のデータベース又はブラックリストが特定される（例えば、英語、韓国語、中国語、又は別の言語の名前及び／又はその構成要素のデータベースではなく、日本語の名前及び／又はその構成要素のデータベースを特定する）。提供された名前又はその一部（例えば、日本語での姓又は名を表す部分）が、日本語のブラックリストデータベース中の非実名及び／又はその構成要素と比較されてもよい。ブロック２３０で、提供された名前の少なくとも一部がブラックリストデータベース中にあることが真でないと判定された場合、プロセス２００Ａは、以下に説明するようなブロック２３５へと流れる。
【００２６】
サービスプロバイダがアクセスできる、各言語に対する名前情報の１以上のデータベースは、例えば、実名又は実名の構成要素であるとして、ある程度確かである又は既知である名前情報の１以上のデータベース（例えば、「ホワイトリスト」）を含んでもよい。ホワイトリストは、実名又はその構成要素であると予め定められ又は検出された名前又は名前の構成要素のリポジトリでもよい。ホワイトリストは、１以上の実名（例えば、特定の言語で非常に一般的な姓、特定の言語で人気の赤ちゃんの名前、特定の言語で非常に一般的な名、など）に使われることが知られている情報源（例えばインターネット）から集められた名前又はその構成要素であってもよい。ホワイトリストは、任意の方法、仕組み、又はそれらの任意の組み合わせによって構築又は拡張されてもよい。
【００２７】
ホワイトリストは、任意の方法、任意の仕組みの利用、任意の情報源からの情報の利用、又はそれらの任意の組み合わせによって構築又は拡張することができる。例えば、インターネット上に存在する既知の実名若しくは既知の実名の構成要素（例えば、一般的な日本語の名前及び一般的な日本語の姓など）、１以上の人名簿（例えば、電話帳）から移入された既知の実名若しくは既知の実名の構成要素、政府のデータベース（例えば、運転免許又は身分証明書データベース）から移入された既知の実名若しくは既知の実名の構成要素、サードパーティのプロバイダから移入された（例えば、クレジットカード会社から購入された）既知の実名若しくは既知の実名の構成要素、サービスプロバイダによって（例えば確認又は検証プロセスにおいて）検出された既知の実名若しくは既知の実名の構成要素、又は別の情報源又は方法から入手された既知の実名若しくは既知の実名の構成要素によって、ホワイトリストは、生成、構築、追加、拡張されてもよい。
【００２８】
サービスプロバイダは、検出された言語に基づいて、実名及びその構成要素のホワイトリストを特定してもよい（ブロック２３５）。例えば、提供された名前の言語は、日本語であると検出されるかもしれない。そうならば、日本語での候補の実名及び／又はその構成要素の１以上のデータベース又はホワイトリストが特定される（例えば、英語、韓国語、中国語などといった他の言語の名前及び／又は名前の構成要素のデータベースではなく、日本語の名前及び／又は名前の構成要素のデータベースを特定する）。提供された名前又はその一部（例えば、日本語での姓又は名を表す部分）が、日本語のホワイトリストデータベース中の名前及び／又は名前の構成要素と比較されてもよい。
【００２９】
［名前承認処理の例］
図２Ｄに示されるように、図２Ａのブロック２３５で、提供された名前の少なくとも一部がホワイトリストデータベース中にあることが真であると判定された場合、提供された名前が承認されてもよい（ブロック２９５，サブプロセス“Ａ”）。名前の承認には、名前の記録、データベースへの名前の格納、口座開設又はオンライン購入の実施許可、及び／又は、名前での他の操作若しくは名前に基づく他の操作の実行が含まれてもよい。いくつかの例示的な実施形態では、提供された名前を実名として承認する前に、１以上の更なる動作が要求されてもよい。
【００３０】
提供された名前の実名としての承認は、提供された名前又はその構成要素が本物及び／又は偽物であるという確実度又は信頼度に基づいて行われてもよい（例えば、名前又はその構成要素の一つについて、本物である確実度が７０％であり、かつ／又は、本物でない確実度が５５％である場合、名前を承認又は拒否する）。いくつかの例示的な実施形態では、名前又は名前の構成要素が本物であるか否かという確実度（例えば、確率）は、名前又は名前の構成要素と、連続したホワイトリスト又はブラックリストの内容それぞれとを比較した後に、増加してもよい。任意の言語に対し信頼度が設定されてよいし、信頼度が任意の閾値又はレベルに変更されてもよいし、異なる言語について信頼度が異なってもよい。
【００３１】
［実装例］
サービスプロバイダは、実名の識別に使用するためのメソッド、オブジェクト、又はアプリケーションプログラミングインターフェース（ＡＰＩ）を実装してもよい。以下は、当業者によって理解されるであろう、種々の言語の実名を検出するための多くの可能な実装例の一つである。
virtual bool MarkUpAllNames(
const string& candidate,
const string& language,
vector<linked_ptr<NameOccurrence> >* result)
【表１】
2015523638.tif 000003
【００３２】
例であるMarkUpAllNamesメソッドは、「candidate」変数に提供された名前の集合、並びに、「result」変数に返された全ての潜在的な名前及び名前の構成要素をマッチさせるよう実装することができる。例えば、MarkUpAllNames("Nicolas Sarkozy", "en")のように呼び出しが行われる。MarkUpAllNamesメソッドは、「Nicolas Sarkozy」を構文解析して「Nicolas」及び「Sarkozy」に分解する。言語インジケータ「en」は、「Nicolas Sarkozy」の言語が英語であると評価及び検出されたことを示す。そして、MarkUpAllNamesは、英語に関連する１以上のブラックリスト及び／又はホワイトリストを特定し、使用する。
【００３３】
MarkUpAllNamesメソッドは、「Nicolas」及び／又は「Sarkozy」をいずれのブラックリストにおいても見つけないかもしれない。MarkUpAllNamesメソッドは、「Nicolas」及び／又は「Sarkozy」を１以上のホワイトリストにおいて見つけ、以下のような「result」変数に返してもよい。
weight: 6.9
NamePart {
start_index: 0
end_index: 7
text: "Nicolas"
part_type: FIRST_NAME
abbreviated: false
}
NamePart {
start_index: 8
end_index: 15
text: "Sarkozy"
part_type: LAST_NAME
abbreviated: false
}
【００３４】
以下は、返されたNameOccurrenceの例である。
【表２】
2015523638.tif 000004
【００３５】
上記の例では、提供された名前「Nicolas Sarkozy」は、（１０．０スケールで）６．９の確実度で、実名であると決定される。閾値が６．８以下に設定されている場合、「Nicolas Sarkozy」は、英語での実名として承認される。他の言語（例えば、日本語）の実名についても（例えば、同じ又は類似したＡＰＩを用いて）同様に、又は別の方法で決定することができる。
【００３６】
ブロック２２０で、提供された名前の言語が検出されないと判定された場合、又はブロック２４０で、提供された名前のいずれの部分もいずれのホワイトリストに存在しないと判定された場合、プロセス２００Ａは、図２Ｂに示されるサブプロセス“Ｂ”へと流れてもよい。例えば、提供された名前「ＴＳＵ９３＄」の言語は、合理的な努力では検出できないかもしれない。例えば、「ＴＳＵ９３＄」を表すために用いられるスクリプトは、英語スクリプト、又はラテン語に基づく言語の別のスクリプトであるかもしれない。しかし、「ＴＳＵ」は、日本語のひらがなの音節文字「つ」又はカタカナの音節文字「ツ」のローマ字表現であるかもしれない。実名の一つの前提は、名前が人間の言葉で表されていることであってもよい。上記では、文字列「ＴＳＵ９３＄」についての人間の言語を検出することは困難である。
【００３７】
[名前承認の検証]
ブロック２２０で言語が検出されなかった場合、提供された名前の承認性を評価する１以上の仕組みが用いられてもよい（ブロック２６５）。仕組みの一例は、内部レビュープロセスであってもよい。例えば、管理者は、提供された名前（例えば「Awesome Dude 420」）のレビューのため、ツール又はＵＩ１５０と同様のユーザインタフェースを使用し、その名前を承認し、（例えば、コントロール１５４を用いて）「認証」し、拒絶し、又は（例えばコントロール１５６を用いて）「非認証」してもよい。いくつかの例示的な実施形態では、管理者は自分の決定を支持するために証拠１５２（例えば、当該名前の人の運転免許証のコピー）を提供してもよい。例えば、管理者は、当該名前の人が証拠として運転免許証のコピーを提供した後に、当該名前のレビューを行ってもよい（以下に示すサブプロセス“Ｃ”参照）。「認証」か「非認証」かといった名前の検証は、サービスプロバイダに受信されてもよい（ブロック２７３）。なお、管理者とは、内部レビュープロセスにおいて、名前のレビューを行う権限が与えられた人に対するラベルである。
【００３８】
別の仕組みの例は、外部レビュープロセスであってもよい（ブロック２７６）。例えば、提供された名前の人物と知り合いの別の人（例えば、友人又は家族）に、提供された名前の検証の機会が与えられてもよい。外部レビュープロセスでは、前述のように、ツール又はＵＩ１５０と同様のユーザインタフェースが用いられてもよい。外部レビュープロセスを用いた名前の検証結果は、サービスプロバイダに受信されてもよい（ブロック２７６）。
【００３９】
さらに別の仕組みは、サードパーティのプロバイダ及び／又はデータベースを含むレビュープロセスであってもよい。名前の検証プロセスのために、サードパーティのプロバイダ及び／又はデータベース（例えば、運転免許証データベース）を使用するための合意が確立されてもよい。サードパーティのプロバイダ及び／又はデータベースを用いた名前の検証結果（例えば、成功、失敗、又は他の状態）は、サービスプロバイダに受信されてもよい（ブロック２８０）。
【００４０】
上述の仕組み及び／又は上述されていない仕組みの一部又は全てを含んで、検証の仕組みは組み合せて用いることができる。ブロック２７０で、提供された名前が（例えば、名前の確実度に基づいて）承認可能である場合、提供された名前は、承認されてもよい（ブロック２９５，サブプロセス“Ａ”）。ブロック２７０で、提供された名前が承認可能ではないと判断された場合（例えば、「非認証」１５６の指示が受信された場合）、又はブロック２３０で名前の少なくとも一部がブラックリスト中に存在する場合、図２Ｃに示されるように、プロセス２００Ａはサブプロセス“Ｃ”へと流れる。
【００４１】
図２Ｃに示されるサブプロセス“Ｃ”は、名前が本物であるということを支持する確証を要求する（ブロック２８５）ために、名前の送信者（例えば名前の所有者）との通信を含んでもよい。例えば、サービスプロバイダは、名前の確証を提供することを指示するＥメールを名前の所有者に対して送信してもよい。名前の所有者は、例えば証拠を提出することにより名前が本物であると裏付けるために、ツール又はＵＩ１４０と同様のユーザインタフェースを用いてもよい。
【００４２】
例えば、所有者は、証拠１４２として、公共料金の請求書、運転免許証、又はクレジットカード情報のコピーを提供し、証拠を提出するためにコントロール１４４を動作させてもよい。証拠又は確証が、例えばサービスプロバイダによって、受信されてもよい（ブロック２９０）。提供された名前は承認されてもよい（ブロック２９５，サブプロセス“Ａ”）。証拠は、提供された名前が本物であると、立証又は証明するかもしれない。いくつかの状況では、ユーザは、提供された名前とは異なった実名の証拠を提供するかもしれない。いくつかの例示的な実施形態では、提供された名前を実名として承認する前に、受信した証拠又は確証が審査されてもよい。
【００４３】
例示的な実施形態は、上記のブロックの順序に限られず、他の任意の順序が実装されてもよい。例えば、プロセス２００Ａは、図２Ｃのサブプロセス“Ｃ”への流れに代えて、ブロック２２０又はブロック２４０から（図２Ｃにおける）サブプロセス“Ｃ”に流れるようにしてもよいがこれに限定されない。
【００４４】
［名前の構造の分解処理の例］
図２Ｅは、少なくとも一つの例示的な実施形態の実装に適した別の処理例を示している。任意の言語の名前がサービスプロバイダで受信されてもよい。サービスプロバイダは、名前の言語（例えば、人間の言語）を特定又は検出してもよい（ブロック２４５）。言語が検出又は特定されると、１以上の言語固有のルール及び／又はデータベースが、提供された名前が本物であるかを決定するために用いられてもよい。例えば、検出された言語は日本語であるだろう。日本語固有のルールの一つは、日本語の名前（例えば「品田ふみ子」）は、普通、姓の後に名がくるという構成であるというルールであってもよい。
【００４５】
名前「品田ふみ子」の構造は、姓「品田」と名「ふみ子」に分解（ブロック２５０）されてもよい。そして、分解された構造である名前の構成要素「品田」及び／又は「ふみ子」は、名前が実際の実名であるという信頼度を生成するために、実際の実名情報に関して検証されてもよい（ブロック２５５）。例えば、姓「品田」は、一般的な又は使用されている日本語の姓についての１以上のリスト又はデータベース（例えばブラックリスト又はホワイトリスト）と比較されてもよい。いくつかの例示的な実施形態において、名「ふみ子」は、一般的な又は使用されている日本語の名についての１以上のリスト又はデータベースと比較されてもよい。信頼度は、片方又は両方の比較に基づいて生成されてもよい。ブロック２６０で、信頼度がある閾値を超えている場合（例えば５１％またはそれ以上）、名前「品田ふみ子」は承認されてもよい（ブロック２９５，サブプロセス“Ａ”）。もし、そうでない場合、プロセス２００Ｂは、図２Ｂに示されるサブプロセス“Ｂ”へ流れてもよい。サブプロセス“Ｂ”は、上述の通りである。
【００４６】
［代替の処理例］
図３は、少なくとも一つの例示的な実施形態の実装に適したさらなる別の処理例を示している。プロセス３００は、プロセス２００Ａの多くの可能なバリエーションの一つを示している。ブロック３１０で、名前が受信される。名前は任意の人間の言語で表現されうる。そして、言語の結果を生成するために、提供された名前の言語が、評価、検出される（ブロック３１５）。名前及び／又は名前の構成要素の１以上のリスト（例えば、上記で説明したホワイトリスト又はブラックリスト）が言語ごとに利用可能であってもよい。言語を検出後、名前及び／又は名前の構成要素のリストが、検出された言語に対して特定されてもよい（ブロック３２０）。名前及び／又は名前の構成要素のリストは、受信した名前の一部を含むかもしれない（ブロック３２５）。
【００４７】
例えば、受信した名前の姓は、リスト中の一般的に使用される姓のうちの一つであるかもしれないし、あるいは、当該姓は、実名でない名前のリスト（例えば、ブラックリスト）上に存在するものであるかもしれない。ブロック３３０で、リストが名前の少なくとも一部を含むかどうかに基づいて処置がとられる。例えば、ホワイトリストの場合、名前がホワイトリスト上に存在するとき、実名又は実名の可能性を有するものとして名前が承認されてもよい。あるいは、ブラックリストの場合、名前がリスト上に存在するとき、非実名又は非実名の可能性を有するものとして名前が拒絶されてもよい。名前は、例えばデータベースに、記録又は保存されてもよい。
【００４８】
いずれのリストにも名前が存在しない場合（例えば、名前の一部又は構成要素がいずれも、いずれのホワイトリスト又はブラックリストに存在しない場合）、名前が実名であるかを決定するための代替え的な仕組み（例えば、図２Ｂに示されるブロック２７３、２７６及び／又は２８０）に進み又は進むことなく、決定に基づく処置として、名前を拒絶してもよい。
【００４９】
いくつかの例において、プロセス２００Ａ、２００Ｂ及び３００は、異なるブロックで、又はより多くのブロック若しくはより少ないブロックで実装されてもよい。プロセス２００Ａ、２００Ｂ及び３００のうち１つ又は複数は、媒体上に格納され、１以上のコンピューティング装置の１以上のプロセッサにロードされ、コンピュータによって実施される方法として実行されることが可能な、コンピュータ実行可能命令として実装されてもよい。
【００５０】
［コンピューティング装置及び環境の例］
図４は、少なくとも一つの例示的な実施形態の実装に適した例示的なコンピューティング装置を伴うコンピューティング環境の例を示している。コンピューティング環境４００におけるコンピューティング装置４０５は、１以上の処理ユニット、コア若しくはプロセッサ４１０、メモリ４１５（例えば、ＲＡＭ、ＲＯＭ、及び／又はその類い）、内部記憶装置４２０（例えば、磁気、光学、ソリッドステートストレージ、及び／又はオーガニックストレージ）、及び／又はＩ／Ｏインタフェース４２５といった情報を通信するための通信機構又はバス４３０に接続可能な又はコンピューティング装置４０５に埋め込み可能な任意のものを含んでもよい。
【００５１】
コンピューティング装置４０５は、入力／ユーザインタフェース４３５及び出力デバイス／インタフェース４４０に通信可能に接続してもよい。入力／ユーザインタフェース４３５及び出力デバイス／インタフェース４４０の一方又は両方は、有線又は無線インタフェースであり、着脱可能であってもよい。入力／ユーザインタフェース４３５は、入力を提供するために用いられる物理的又は仮想的な任意の装置、コンポーネント、センサ、又はインタフェース（例えば、ボタン、タッチスクリーンインタフェース、キーボード、ポインティング／カーソル制御、マイク、カメラ、点字、モーションセンサ、光学読取装置、及び／又はその類い）を含んでもよい。出力デバイス／インタフェース４４０は、ディスプレイ、テレビ受像機、モニタ、プリンタ、スピーカ、点字、又はその類いを含んでもよい。いくつかの例示的な実施形態において、入力／ユーザインタフェース４３５及び出力デバイス／インタフェース４４０は、コンピューティング装置４０５に内蔵され又は物理的に接続されてもよい。他の例示的な実施形態において、他のコンピューティング装置が、コンピューティング装置４０５に対する入力／ユーザインタフェース４３５及び出力デバイス／インタフェース４４０として機能し、又は機能を提供してもよい。
【００５２】
コンピューティング装置４０５の例としては、高度なモバイル装置（例えば、スマートフォン、乗り物や他の機械における装置、人間や動物により持ち運ばれる装置、及びその類い）、モバイル装置（タブレット、ノートブック型パソコン、ラップトップ、パーソナルコンピュータ、携帯テレビ、ラジオ受信機、及びその類い）、及び携帯用のものとして設計されていない装置（例えば、デスクトップコンピュータ、他のコンピュータ、情報キオスク、１以上のプロセッサが内蔵及び／又は接続されたテレビ受像機、ラジオ受信機、並びにその類い）が含まれてもよいが、これに限定されない。
【００５３】
コンピューティング装置４０５は、外部記憶装置４４５や、同じ又は異なる構成の１以上のコンピューティング装置を含む任意の数のネットワークコンポーネント、装置、及びシステムと通信するためのネットワーク４５０と通信可能に（例えば、Ｉ／Ｏインタフェース４２５を介して）接続されてもよい。コンピューティング装置４０５又は接続した任意のコンピューティング装置は、サーバ、クライアント、シンサーバ、一般装置、特殊用途装置、又は他のものとして機能し、又は呼称されてもよいし、これらのサービスを提供してもよい。
【００５４】
Ｉ／Ｏインタフェース４２５は、コンピューティング環境４００における少なくとも全ての接続された構成要素、装置、及びネットワークとの情報通信のための、任意の通信若しくはＩ／Ｏプロトコル又は標準（例えば、Ｅｔｈｅｒｎｅｔ（登録商標）、８０２．１１ｘ、ユニバーサル・システム・バス、ＷｉＭａｘ、モデム、移動体通信ネットワークプロトコル、及びその類い）を用いる有線又は無線のインタフェースを含んでもよいが、これに限定されない。ネットワーク４５０は、任意のネットワーク又はネットワークの組み合わせであってもよい（例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、電話ネットワーク、移動体通信ネットワーク、衛星ネットワーク、及びその類い）。
【００５５】
コンピューティング装置４０５は、一時的媒体及び非一時的媒体を含むコンピュータ使用可能媒体又はコンピュータ可読媒体を使用し、又はこれらを用いた通信を行うことができる。一時的媒体は、伝送媒体（例えば、メタルケーブル、光ファイバ）、信号、搬送波、及びその類いを含む。非一時的媒体は、磁気媒体（例えば、ディスク、テープ）、光学的媒体（例えば、ＣＤ ＲＯＭ、デジタルビデオディスク、Ｂｌｕ−ｒａｙ（登録商標）ディスク）、ソリッドステートメディア（例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ソリッドステートストレージ）、及び他の不揮発性記憶装置又はメモリを含む。
【００５６】
コンピューティング装置４０５は、少なくとも一つの実施形態（例えば、説明された実施形態）を実装する技術、方法、アプリケーション、プロセス、又はコンピュータ実行可能命令のために用いられてもよい。コンピュータ実行可能命令は、一時的媒体から取り出され、非一時的媒体に格納され、さらに非一時的媒体から取り出されてもよい。実行可能命令は、１以上の任意のプログラミング、スクリプティング、及び機械語（例えば、Ｃ、Ｃ＋＋、Ｃ♯、Ｊａｖａ（登録商標）、Ｖｉｓｕａｌ Ｂａｓｉｃ、Ｐｙｔｈｏｎ、Ｐｅｒｌ、ＪａｖａＳｃｒｉｐｔ（登録商標）など）に基づくものであってもよい。
【００５７】
（複数の）プロセッサ４１０は、ネイティブ又はバーチャルな環境において、オペレーティングシステム（ＯＳ）（図示せず）のもとで、実行しうる。説明された実施形態を実装するために、論理ユニット４６０と、アプリケーションプログラミングインタフェース（ＡＰＩ）ユニット４６５と、入力ユニット４７０と、出力ユニット４７５と、言語検出ユニット４８０と、検証ユニット４８５と、名前決定ユニット４９０と、種々のユニットが他のユニット、ＯＳ、他のアプリケーション（図示せず）と通信するための内部ユニット通信機構４９５と、を含む１以上のアプリケーションが配置されてもよい。例えば、言語検出ユニット４８０、検証ユニット４８５、名前決定ユニット４９０が、図２Ａ〜Ｅ及び図３に示される１以上のプロセスを実装してもよい。説明されたユニットおよび要素は、設計、機能、構成又は実装において変形が可能であり、上述に限定されない。
【００５８】
いくつかの例示的な実施形態では、情報又は実行命令がＡＰＩユニット４６５によって受信された場合、ＡＰＩユニット４６５は、１又は複数の他のユニット（例えば、論理ユニット４６０、入力ユニット４７０、出力ユニット４７５、言語検出ユニット４８０、検証ユニット４８５、名前決定ユニット４９０）と通信してもよい。例えば、入力ユニット４７０が名前を受信した後、入力ユニット４７０は、言語検出ユニット４８０に当該名前を伝達するために通信ＡＰＩユニット４６５を使用してもよい。言語検出ユニット４８０は、ＡＰＩユニット４６５を介して、当該名前が本物であるかを検証するための検証ユニット４８５と連携してもよい。ＡＰＩユニット４６５を用いて、検証ユニット４８５は、名前が本物であるかを決定するために１以上のブラックリスト及び／又はホワイトリストを用いる名前決定ユニット４９０と、連携してもよい。いくつかの例示的な実施形態では、検証ユニット４８５は、名前の決定を助けるために、図２Ｂのサブプロセス“Ｂ”に示されるような１以上の仕組みを用いてもよい。
【００５９】
いくつかの例では、論理ユニット４６０は、上記実施形態を実装するために、ユニット間の情報の流れを制御し、ＡＰＩユニット４６５、入力ユニット４７０、出力ユニット４７５、言語検出ユニット４８０、検証ユニット４８５、名前決定ユニット４９０によって提供されるサービスを指揮するよう構成されてもよい。例えば、１以上のプロセス又は実装の流れは、論理ユニット４６０単独により、又は論理ユニット４６０とＡＰＩユニット４６５の協同により制御されてもよい。
【００６０】
いくつかの例示的な実施形態が図示及び説明されたが、これらの例示的な実施形態は、本明細書に記載された主題を当業者に伝えるために提供されている。本明細書に記載される主題は、説明した例示的な実施形態に限定されることなく、さまざまな形態で実施できることを理解すべきである。本明細書に記載の主題は、具体的に定義若しくは記載された事項を伴わずに、又は記載されていない他のまたは異なる構成要素若しくは事項を伴って、実施することができる。添付の特許請求の範囲及びその均等物で定義されたように、本明細書で説明される主題から逸脱することなく、これらの例示的な実施形態において変更がなされうることを、当業者は理解するであろう。
【図１Ａ】
2015523638.tif 000005
【図１Ｂ】
2015523638.tif 000006
【図２Ａ】
2015523638.tif 000007
【図２Ｂ】
2015523638.tif 000008
【図２Ｃ】
2015523638.tif 000009
【図２Ｄ】
2015523638.tif 000010
【図２Ｅ】
2015523638.tif 000011
【図３】
2015523638.tif 000012
【図４】
2015523638.tif 000013
【手続補正書】
【提出日】平成26年11月26日(2014.11.26)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
Ｉ／Ｏインタフェース４２５は、コンピューティング環境４００における少なくとも全ての接続された構成要素、装置、及びネットワークとの情報通信のための、任意の通信若しくはＩ／Ｏプロトコル又は標準（例えば、Ｅｔｈｅｒｎｅｔ、８０２．１１ｘ、ユニバーサル・シリアル・バス、ＷｉＭａｘ、モデム、移動体通信ネットワークプロトコル、及びその類い）を用いる有線又は無線のインタフェースを含んでもよいが、これに限定されない。ネットワーク４５０は、任意のネットワーク又はネットワークの組み合わせであってもよい（例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、電話ネットワーク、移動体通信ネットワーク、衛星ネットワーク、及びその類い）。
【国際調査報告】
2015523638.tif 000014