IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アマゾン テクノロジーズ インコーポレイテッドの特許一覧

特表2022-510818改良されたデータマッチングのためのデータレコードの字訳
<>
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図1
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図2
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図3
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図4A
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図4B
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図4C
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図5
  • 特表-改良されたデータマッチングのためのデータレコードの字訳 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-01-28
(54)【発明の名称】改良されたデータマッチングのためのデータレコードの字訳
(51)【国際特許分類】
   G06F 16/383 20190101AFI20220121BHJP
【FI】
G06F16/383
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021527995
(86)(22)【出願日】2019-11-18
(85)【翻訳文提出日】2021-05-19
(86)【国際出願番号】 US2019062056
(87)【国際公開番号】W WO2020106644
(87)【国際公開日】2020-05-28
(31)【優先権主張番号】16/197,222
(32)【優先日】2018-11-20
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】506329306
【氏名又は名称】アマゾン テクノロジーズ インコーポレイテッド
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100135633
【弁理士】
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】スティーヴン マイケル アッシュ
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175FA01
5B175GC03
(57)【要約】
データレコードサービスが、元データレコードを受信し、並行して、元データレコードの音声ベース言語への字訳バージョンを生成するように構成されている。データレコードの個々のフィールドは、一次言語を識別し、個々のテキスト部分に対して言語固有のトークンを生成し、そのトークンを字訳することによって字訳することができる。レコード処理サービスは、元データレコードおよび字訳されたデータレコードの両方に対してマッチングモデルを実行して、一致するデータレコードを検出することができる。
【特許請求の範囲】
【請求項1】
データクエリに対してデータを処理するためのシステムであって、
前記システムは、レコード処理サービスに関連付けられた1つ以上のコンピューティングデバイスを備え、
前記レコード処理サービスは、元データレコードを受信するように構成され、少なくとも1つの元データレコードは、少なくとも1つの音声ベース言語と少なくとも1つの非音声ベース言語とに関連付けられた1つ以上のデータフィールドを含み、
前記レコード処理サービスは、前記元データレコードの前記1つ以上のデータフィールドのうちの個々のデータフィールドに対して、
前記元データレコードの前記個々のデータフィールドを処理して、前記元データレコードの前記個々のデータフィールドに対する一次言語を識別することと、
前記一次言語に基づいて、前記元データレコードの前記個々のデータフィールドに含まれる用語またはキャラクタに対して言語ベーストークンを生成することであって、前記言語ベーストークン内の少なくとも1つの言語ベーストークンは、前記少なくとも1つの音声ベース言語に対応し、前記言語ベーストークン内の少なくとも1つの言語ベーストークンは、少なくとも1つの非音声ベース言語に対応することと、
前記元データレコードを選別して、前記元データレコードの前記個々のデータフィールドにあるデータの少なくとも一部を削除することと、
前記生成された言語ベーストークンを基準音声ベース言語に字訳して、前記元データレコードの字訳バージョンを形成することと、
を行うように構成され、
前記レコード処理サービスは、
前記元データレコードと前記元データレコードの前記字訳バージョンとに対して、マッチングモデルを実行し、
前記元データレコードと前記元データレコードの前記字訳バージョンとに対する前記マッチングモデルの前記実行の結果に基づいて、前記元データレコードの一致するデータフィールドを識別する、
ように構成されるシステム。
【請求項2】
前記元データレコードの前記個々の部分の前記言語ベーストークンは、少なくとも2つの非音声ベース言語に対応する複数の言語ベーストークンを含む、
請求項1に記載のシステム。
【請求項3】
前記レコード処理サービスは、前記少なくとも2つの非音声言語に基づいて、異なる字訳プロセスを実施する、
請求項2に記載のシステム。
【請求項4】
前記レコード処理サービスは、前記基準音声ベース言語に対応する言語ベーストークンの字訳を除外する、
請求項1に記載のシステム。
【請求項5】
前記レコード処理サービスは、さらに、前記元データレコードと、前記元データレコードの前記字訳バージョンとの組み合わせに対して、マッチングモデルを実行するように構成されている、
請求項1に記載のシステム。
【請求項6】
データレコードを処理するためのコンピュータ実施方法であって、
前記コンピュータ実施方法は、元データレコードを受信するステップを含み、少なくとも1つの元データレコードは、複数の部分を含み、少なくとも1つの部分は、少なくとも1つの音声ベース言語と少なくとも1つの非音声ベース言語とに関連付けられたテキストまたはキャラクタを含み、
前記コンピュータ実施方法は、前記元データレコードの個々の部分に対して、
前記元データレコードの前記個々の部分に対して言語ベーストークンを生成するステップであって、前記言語ベーストークン内の少なくとも1つの言語ベーストークンは、第1の言語に対応し、前記言語ベーストークン内の少なくとも1つの言語ベーストークンは、第2の言語に対応し、前記第1の言語は、基準音声ベース言語に対応するステップと、
前記生成された言語ベーストークンを前記第1の言語に字訳して、前記元データレコードの字訳バージョンを形成するステップと、
を含み、
前記コンピュータ実施方法は、
前記元データレコードと前記元データレコードの前記字訳バージョンとに対して、マッチングモデルを実行するステップと、
前記元データレコードと前記元データレコードの前記字訳バージョンとに対する前記マッチングモデルの前記実行の結果に基づいて、一致する元データレコードを識別するステップと、
を含むコンピュータ実施方法。
【請求項7】
前記コンピュータ実施方法は、前記元データレコードを選別して、前記元データレコードの前記個々の部分の1つ以上のキャラクタまたは用語を削除するステップをさらに含む、
請求項6に記載のコンピュータ実施方法。
【請求項8】
前記コンピュータ実施方法は、前記元データレコードの前記個々の部分を処理して、前記元データレコードの前記個々の部分に対する一次言語を識別するステップをさらに含む、
請求項6に記載のコンピュータ実施方法。
【請求項9】
前記元データレコードの前記個々の部分に対して言語ベーストークンを生成するステップは、前記識別された一次言語に基づいて言語ベーストークンを生成するステップを含む、
請求項8に記載のコンピュータ実施方法。
【請求項10】
前記識別された一次言語に基づいて言語ベーストークンを生成するステップは、前記識別された一次言語に関連付けられたユニコード値の範囲に基づいて、前記個々の部分を比較するステップを含む、
請求項9に記載のコンピュータ実施方法。
【請求項11】
前記元データレコードの前記個々の部分に対する前記言語ベーストークンは、少なくとも前記第2の言語と第3の言語とに対応する複数の言語ベーストークンを含む、
請求項6に記載のコンピュータ実施方法。
【請求項12】
前記生成された言語ベーストークンを前記第1の言語に字訳して、前記元データレコードの字訳バージョンを形成するステップは、前記第2の言語および前記第3の言語に基づく異なる字訳プロセスを実施するステップを含む、
請求項11に記載のコンピュータ実施方法。
【請求項13】
前記コンピュータ実施方法は、前記元データレコードと前記元データレコードの前記字訳バージョンとの組み合わせに対して、マッチングモデルを実行するステップをさらに含む、
請求項6に記載のコンピュータ実施方法。
【請求項14】
前記コンピュータ実施方法は、前記元データレコードと前記元データレコードの前記字訳バージョンとに対して、前記マッチングモデルを実行することに基づいて、1つ以上の信頼値を関連付けるステップをさらに含む、
請求項6に記載のコンピュータ実施方法。
【請求項15】
前記第2の言語は、英語に対応し、
前記生成された言語ベーストークンを前記第1の言語に字訳して、前記元データレコードの字訳バージョンを形成するステップ、重み付き有限状態トランスデューサを実施するステップを含む、
請求項6に記載のコンピュータ実施方法。
【発明の詳細な説明】
【背景技術】
【0001】
一般的に記載すると、コンピューティングデバイスおよび通信ネットワークは、データまたは情報を交換するために利用することができる。共通のアプリケーションにおいては、コンピューティングデバイスは、通信ネットワークを介して、別のコンピューティングデバイスにコンテンツを要求することがある。例えば、パーソナルコンピューティングデバイスのユーザが、ブラウザアプリケーションを利用して、ネットワーク(例えば、インターネット)を介して、サーバコンピューティングデバイスにコンテンツページ(例えば、ネットワークページ、Webページなど)を要求し、またはサーバコンピューティングデバイスからサービスにアクセスすることができる。そのような実施形態では、ユーザコンピューティングデバイスは、クライアントコンピューティングデバイスと呼ばれることがあり、サーバコンピューティングデバイスは、コンテンツプロバイダまたはサービスプロバイダと呼ばれることがある。
【0002】
いくつかのアプリケーションでは、サービスプロバイダは、複数のユーザデバイスまたは他のネットワークベースデバイスとのインタラクションの一環として、データの生成または受信を行い得る。サービスプロバイダでは、データの記憶および保持が行われ、記憶されたデータには後でアクセス可能とされることが望まれ得る。そのようなアプリケーションでは、サービスプロバイダは、通信ネットワークを介してデータを受信するために利用できるネットワークベースのデータサービスを利用する場合がある。ネットワークベースのデータベースサービスは、さらに、通信ネットワークを介して、要求されたデータを提供することができる。さらに、ネットワークベースのデータベースサービスは、他のサービスによる記憶データの利用に関連するコマンドを受信することができる。
【0003】
図面を通じて、参照される要素間の対応関係を示すために、参照番号が再使用されることがある。図面は、本明細書に記載されている例示的な実施形態を説明するために提供されており、本開示の範囲を限定することを意図したものではない。
【図面の簡単な説明】
【0004】
図1】いくつかの実施形態による、1つ以上のユーザデバイス、1つ以上のサードパーティデータサービス、ネットワークサービスシステム、1つ以上のクエリサービス、およびレコード処理サービスを含むネットワーク環境のブロック図である。
図2】いくつかの実施形態による、データサービスまたはデータベースサービスとインタラクトするためのユーザデバイスの構成要素を例示するブロック図である。
図3】いくつかの実施形態による、さらなる処理のためにデータレコードの特徴化(featurization)を管理するためのレコード処理サービスの特徴化構成要素の構成要素を例示するブロック図である。
図4A】いくつかの実施形態による、特徴化のための1つ以上の字訳されたデータレコードを生成するためのデータレコードの処理を説明するブロック図である。
図4B】いくつかの実施形態による、特徴化のための1つ以上の字訳されたデータレコードを生成するためのデータレコードの処理を説明するブロック図である。
図4C】いくつかの実施形態による、特徴化のための1つ以上の字訳されたデータレコードを生成するためのデータレコードの処理を説明するブロック図である。
図5】いくつかの実施形態による、データレコード処理サービスによって実施されるデータレコード字訳処理ルーチンを例示する流れ図である。
図6】いくつかの実施形態による、ネットワークサービスによって実施されるデータレコード処理ルーチンを例示する流れ図である。
【発明を実施するための形態】
【0005】
一般的に記載すると、サービスプロバイダまたはコンテンツプロバイダは、データを記憶および送信のため収集しまたは生成するサービスを提供しまたはホストすることができる。このサービスは、一般に、データサービスまたはデータレコードサービスと呼ばれる。商取引に従事するサービスプロバイダに関しては、サービスプロバイダは、情報配信を容易にする目的で、ユーザコンピューティングデバイスまたは他のサービスプロバイダとインタラクトする1つ以上のサービスまたはネットワークリソースをホストすることができる。インタラクションまたはトランザクションの一環として、サービス/ネットワークリソースの1つ以上の構成要素は、サービスが記憶、処理、および送信を行うことが望まれ得るデータを生成しまたは取得することができる。サービスプロバイダ、インタラクションまたはトランザクションの種類に応じて、収集され送信されるデータの種類は異なるものになり得る。
【0006】
いくつかの具体的な実施形態では、データサービスプロバイダが、いくつかのデータソースからデータレコードを受信することができる。いくつかの実施形態では、データレコードに関連付けられた情報は、共通の主題を識別するデータ、または少なくとも部分的に重複する主題を有するデータを含み得る。例として、サービスプロバイダが、いくつかのデータソースから、ある地理的地域内の企業/組織のリストに対応するデータレコードを受信したとする。個々のリストには、組織の名称、連絡先情報、またはその他の識別情報、および組織に関するメタデータが含まれ得る。サービスプロバイダは、受信した情報を利用して、情報の収集、記憶、および処理を行い、個々のユーザまたは他のサービスからのクエリ(検索条件に一致する企業/組織に対してのクエリなど)に応答して情報を提供することができる。
【0007】
いくつかのシナリオでは、データサービスプロバイダは、企業組織に関する情報を提供する2つの異なるデータソースなどから、同じ企業/組織についての複数のリストを受信する場合がある。データサービスプロバイダが各データレコードを個別に保持していたならば、処理されたクエリは、検索クエリを満たす2つあるかのように見える組織/企業の識別を返す可能性があり、これは誤った検索結果または不正確であると見なされる可能性がある。この欠陥に対処するために、サービスプロバイダは、データレコードの少なくとも一部を処理して、検索条件の少なくとも一部に一致すると見なされる見込みのあるデータレコードを識別し得る、1つ以上のマッチングモデルを実施することができる。マッチングモデルは、一般にデータフィールドと呼ばれる、データレコードのフィールドの一部または全部を例示的に調査し、種々のコンテキストマッチングモデルを適用し得る。例えば、マッチングモデルが、コンテキスト処理を利用して、組織名情報を含むように定義された1つ以上のデータフィールドまたはデータレコードのフィールドを調査し、位置情報と一致する、または部分的に一致する可能性が高い組織名を特定してもよい。そしてデータサービスプロバイダは、マッチングモデルの結果に基づいて、一致したデータレコードが別個のデータレコードまたは関連性のないデータレコードとして返されないように、データレコードをマージさせまたはリンクさせることができる。
【0008】
いくつかの追加の実施態様では、データサービスプロバイダは、1つ以上のデータフィールドに複数の言語からのデータを含む可能性があるデータレコードを受信し得る。先の実施例を参照すると、アジアなどのいくつかの地域では、データレコードには、その地域に関連する1つ以上のアジア言語を含む企業または組織の名称と、英語、フランス語などの1つ以上の追加言語に関連する情報とが含まれ得る。日本語との関連では、会社名を、カタカナなどの、より形式的な音声ベース言語を利用して表記する場合がある。他の例では、会社名を、漢字などの非音声(例えば会話型)言語で表記する場合もある。さらにまた、一部のデータレコードには、スペイン語などの音声ベース言語と、英語などの非音声ベース言語との両方を含むラテン語ベース言語などでの会社名が含まれることがある。さらにもっと、日本語の実施例に関しては、データレコードは、日本語の音声ベースの単語、日本語の非音声ベースの単語、および1つ以上のラテン語ベースの単語を含む、言語の異種の組み合わせを含むことができる。そのような実施形態では、データサービスによって実施されるマッチングモデルは、1つ以上のデータフィールドが用語またはキャラクタの異種の組み合わせを含むデータレコードのマッチングを判定する上で、非効率かつ不正確となる可能性がある。
【0009】
複数言語データレコードの処理に伴う潜在的な非効率性に対処するために、データサービスは、1つ以上の個別のデータフィールドまたは個別のデータレコードのフィールドなど、1つ以上のデータレコードまたはデータレコードの一部の字訳バージョンの形式で、追加の特徴化データを生成し得る。より具体的には、本願の態様は、マッチングモデルの実行で用いる補足データレコードを生成するために、漢字またはラテン語ベース言語などの、1つ以上の非音声言語に合わせて形成されたデータを含むデータレコードの1つ以上の部分(例えば、1つ以上のデータフィールド)に対する字訳の利用に対応する。補足データレコードは、カタカナなどの基準となる音声言語に合わせて形成されていてもよい。本願は、1つ以上の音声言語に合わせて形成されたデータを含むデータレコードの1つ以上の部分(例えば、1つ以上のデータフィールド)に対する字訳の利用に対応する。そして、元データレコードと補足データレコードとは、1つ以上のマッチングモデルに従って処理され得る。元データレコードおよび補足データレコードへのマッチングモジュールの実行結果と、追加のデータ処理とを利用して、データレコード連携の精度を向上させることができる。
【0010】
一般的に記載すると、マッチングモデルを実施するために、特徴化データは、2つの大分類、すなわち、カテゴリ特徴データおよび数値特徴データに特徴付けられ得る。カテゴリ特徴データには、組織名、食品の種類、通りの名前、およびこれらに類するものなど、特定の数学的順序を持たないデータ値が含まれる。一般的なカテゴリデータは、文字列または整数を使用して表すことができる。数値特徴データには、ある値の範囲をとる定量的変数であり、数学的順序性を持つデータ値が含まれる。数値データの実施例としては、収入、年齢、およびこれらに類するものがある。数値特徴データは、さらに、比較的少数の利用可能な値を有する離散特徴データ、および多数の可能な値を有する連続特徴データと特徴付けられ得る。離散特徴データの実施例としては、所在地住所、郵便番号、およびこれらに類するものがある。連続特徴データの実施例としては、温度、在庫数、およびこれらに類するものがある。
【0011】
本願の態様によれば、1つ以上のデータソース、例示的には複数のデータソースから、1つ以上の元データレコードをレコード処理サービスが受信し得る。個々のデータレコードには、AIアルゴリズムによって実施されるマッチングモデルなど、一致するデータレコードを判定するために実施し得る1つ以上のマッチングモデルによって必要とされまたは利用されるデータに対応する特徴化データまたは特徴化設定データが含まれている。本願においては、人工知能は、一般に、深層学習アルゴリズム、ニューラルネットワークアルゴリズム、機械学習アルゴリズム、ビッグデータアルゴリズム、およびこれらに類するものを含むがこれらに限定されない、データを分析するために利用される様々なテクノロジに関連し得る。また一方、当業者であれば、本願は、AIアルゴリズムへの適用や、またはAIアルゴリズムのいずれかの特定の形式もしくは種類には限定されないことが理解されよう。
【0012】
本願の1つ以上の態様によれば、レコード処理サービスは、元データレコードを処理して、元データレコードに基づく1つ以上の字訳されたデータレコードを生成する。特徴化構成要素は、元データレコードを受信し、データレコードの1つ以上の部分(例えば、1つ以上の日付フィールド)に対する一次言語を判定する。例示的には、データレコードの一次言語は、異なる言語に対応するデータレコードの部分のテキストまたはキャラクタを識別するのに役立ち得る。その後、識別した一次言語に基づいて、特徴化構成要素は、個々のテキスト/キャラクタを識別し、個々の部分ごとに言語ベーストークンを生成する。先の例示的な実施例に関連して、一実施例では、特徴化構成要素は、テキスト/キャラクタの個々の部分を識別し、トークンが言語部分を漢字、カタカナ、または英語だと特徴付けて、識別した個々の部分を分類することができる。
【0013】
次に、特徴化構成要素は、言語トークンに基づいて、トークンのセットを処理して、トークンの字訳バージョンを形成する。一般的に記載すると、字訳とは、ある言語から別の言語に単語を移し替えるプロセスである。翻訳が目標言語での用語の意味を与えるものであるのに対し、字訳は単語がどのように発音されるかの情報を与えるものである。例えば、字訳は、文字を単語の元のアルファベットから、異なった、目標の言語の似たような響きの文字に変える。例示的には、字訳プロセスは、基準言語、すなわち、カタカナなどの音声ベース言語に従って言語ベーストークンを字訳しようとする試みに対応する。引き続き例示の実施例を参照すると、カタカナベース用語のトークンは、すでに音声ベース言語であり、字訳する必要がない場合もある。漢字またはラテン語ベース言語のトークンは、基準となる音声言語、例えば、カタカナに字訳することができる。字訳プロセスには、代替の音声ベース言語、またはスペイン語などの部分的に音声ベースの言語を、基準音声ベース言語に字訳することが含まれ得る。トークンの字訳バージョンは、元データレコードの字訳バージョンを形成し、次いでデータレコードの部分の字訳バージョン、またはデータレコードの選択したデータフィールドの字訳バージョンとして記憶される。元データレコード内のデータフィールドは、データレコードの1つ以上のデータフィールドまたは部分を字訳プロセスから省略することができるように、字訳されたデータレコードを形成するために、全てが字訳される必要はない。
【0014】
字訳されたデータレコード(例えば、元データレコードの1つ以上のデータフィールド)が作成されると、レコード処理サービスは、マッチングモデルに従って元データレコードおよび字訳されたデータレコードを処理することができる。例示的には、レコード処理サービスは、各データレコードへのマッチングモデルの結果を受け取って、潜在している一致するものを識別し得る。さらに、さらなる実施形態では、レコード処理サービスは、元データレコードと字訳されたデータレコードとを組み合わせて、追加の結果を生成してもよい。その結果に基づいて、レコード処理サービスは、一致するものを含めるかどうかを判定する際に、重み付けアルゴリズムまたは信頼値を利用することができる。例えば、レコード処理サービスは、一次検出言語および字訳されたトークン(例えば、英語のトークンを持つ漢字の一次言語)に基づいて、信頼係数を一致するものに関連付け得る。別の実施例では、レコード処理サービスは、特定の言語間での字訳モデルの正確さの特性評価に基づく信頼係数を、表音の目標言語に関連付け得る。しかし、いくつかの実施形態では、レコード処理サービスは、信頼値または重みを利用せず、マッチングモデルの実行のいずれかで結果として生じる一致を一致するものとして扱ってもよい。
【0015】
元データレコードの1つ以上のデータフィールドの字訳を利用して、基準音声ベース言語に従って元データレコードの字訳バージョンを形成することにより、本願の1つ以上の態様は上記の非効率性に対処する。より具体的には、レコード処理サービスは、元データレコードを処理し、字訳されたデータレコードを並行して生成することで、マッチングモデルのパフォーマンスを向上させ、1つ以上のフィールドに異なる言語を含み得る複数のソースからデータレコードを生成することによって生じる問題に対処する。
【0016】
本願の1つ以上の態様を、具体的な言語、字訳処理モデル、およびマッチングモデルに関して説明するが、そのような実施例は、本質的に例示的であり、一概に限定的だと解釈されるべきではない。したがって、特定の基準となる音声ベースおよび非音声ベースの言語への言及が、本願の1つ以上の態様に適用される全ての言語を限定する、または包括すると解釈されるべきではない。さらに、上記のように、元データレコードおよび字訳されたデータレコードへの言及は、一般に、1つ以上のデータレコードが、情報を持つ1つ以上のデータフィールドを有することに対応し得る。元データレコードの字訳バージョンは、元データレコードのそれぞれ個別のデータフィールドの正確な字訳バージョンである必要はなく、元データレコードのデータフィールドのサブセットまたは一部の字訳に対応するものであってもよい。
【0017】
図1は、データの生成、処理、および記憶のための概括的なネットワーク環境100を示す。例示的には、ネットワーク環境100を、複数の言語に関連付けられたデータレコードの生成、処理、および記憶に関して説明する。ネットワーク環境100には、一般にユーザコンピューティングデバイスと呼ばれ、ネットワーク環境構成要素の1つ以上の態様とインタラクトして、ネットワーク環境100の構成要素によって記憶されたデータを要求するように構成されている、個々のユーザによって利用される複数のデバイス102が含まれる。例えば、ユーザデバイス102は、クエリサービスまたはウェブサービスに要求を送信し、その要求が、結果的に、ネットワーク環境100で処理されるデータに対するクエリの生成をもたらし得る。
【0018】
ユーザコンピューティングデバイス102としては、直接接続を介して、または仲介を介して、ネットワーク120と通信することができる任意の数の様々なコンピューティングデバイスが含まれ得る。例えば、個々のアクセスコンピューティングデバイスは、ラップトップまたはタブレットコンピュータ、パーソナルコンピュータ、ウェアラブルコンピュータ、サーバ、パーソナルデジタルアシスタント(「PDA」)、ハイブリッドPDA/携帯電話、携帯電話、電子ブックリーダ、セットトップボックス、カメラ、特定用途向け機器(例えば、サーモスタットまたは冷蔵庫)、コントローラ、デジタルメディアプレーヤ、時計、アイウェア、家庭用または自動車用デバイス、モノのインターネット(「IoT」)デバイス、バーチャルリアリティまたは拡張現実デバイス、およびこれらに類するものに対応するものであってもよい。各ユーザコンピューティングデバイス102は、任意選択で、本明細書に開示された実施形態を実施するために使用される、ウェブブラウザなどの種々のアプリケーションまたはコンピュータ実行可能命令を含む、1つ以上のデータストア(図1には示さず)を含むことができる。ユーザコンピューティングデバイス102の例示的な構成要素は、図2に関して説明される。
【0019】
ネットワーク120は、任意の有線ネットワーク、無線ネットワーク、またはそれらの組み合わせであってもよい。さらに、ネットワーク120は、パーソナルエリアネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、ケーブルネットワーク、ファイバネットワーク、衛星ネットワーク、携帯電話ネットワーク、データネットワーク、またはそれらの組み合わせであってもよい。図1の例示的な環境では、ネットワーク120は、インターネットなどのグローバルエリアネットワーク(「GAN」)である。上記の他の種類の通信ネットワークを介して通信するためのプロトコルおよび構成要素は、コンピュータ通信分野の当業者にはよく知られており、したがって本明細書でさらに詳細に説明する必要はない。ユーザデバイス102は、ネットワーク120への単一の接続を有するものとして図示されているが、ユーザデバイス102の個々の構成要素は、全く別のポイントでネットワーク120に接続されてもよい。そのため、通信時間および通信容量は、図1の構成要素間で異なり得る。
【0020】
ネットワーク環境100はまた、一般にネットワークサービス(複数可)104と呼ばれるネットワークサービスのセットを含み、このセットは、通信ネットワーク120などの通信ネットワークを介して1つ以上のサービスプロバイダによって利用可能にされるネットワークサービスのセットを示す。例示的には、データの受信および処理を容易にするために、ネットワークサービス104は、レコード処理サービス106を含み得る。レコード処理サービス106は、サービスプロバイダによってホストされるネットワークベースのデータサービスに対応する。レコード処理サービス106を、1つ以上のデータソースから情報を受信すること、データソースを処理して、一致するデータレコードを判定すること、および一致したデータを本明細書に記載されたクエリサービスで利用できるようにすることに関して説明する。
【0021】
本願の態様の説明においては、レコード処理サービス106は、データサービスから元データレコードを受信して、元データレコードに基づき、元データレコードの1つ以上の字訳されたデータフィールドを有する、少なくとも1つの字訳されたデータレコードを生成するための特徴化構成要素108を含む。単一の構成要素として図示されているが、特徴化構成要素108は、データサービスからデータを受信するように構成された1つ以上のコンピューティングデバイス(物理的または仮想的)を論理的に表している。例えば、インタフェース構成要素は、地理的に異なるエリアに構成された任意の数の物理的または仮想的なコンピューティングデバイスに対応してもよい。レコード処理サービス106は、少なくとも部分的に、元データレコードおよび字訳されたデータレコードの記憶および処理を管理して、受信したデータレコードの一致するものを判定するように構成されたレコードマッチング構成要素110をさらに含む。下記のように、レコードマッチング構成要素110は、特徴化データのために、元データレコードおよび字訳されたデータレコードを利用する1つ以上のマッチングモデルを実施し得る。特徴化構成要素108の例示的な構成要素および動作は、図3に関して説明される。
【0022】
レコード処理サービス106は、本願の1つ以上の態様による、元データレコード、字訳されたデータレコード、およびマッチングデータを保持するための複数のデータストア112Aおよび112Bまたはデータベースノードを含み得る。図1は、データレコードを受信して保持するための複数のデータストア112を示す。データストアは、論理的にまとめて表現されているが、地理的に異なるエリアを経由するなど、分散して実装することもできる。いくつかの実施形態では、1つ以上の個々のノード112は、本明細書で説明されるように、データのサブセットをホストするための単一のパーティションを有し得る。他の実施形態では、個々のノード112は、複数のパーティションをホストすることもできる。
【0023】
ネットワークサービス104は、さらに、1つ以上のクエリサービス114を含み、これらは、一般に、データのためのレコード処理サービス106に対して1つ以上のクエリを生成するように機能し得る。例示的には、クエリサービス114は、ユーザデバイス102とインタラクトして、要求を受信し、応答性のあるコンテンツを提供することができるウェブサービスまたは他のネットワークベースのサービスを示し得る。ただし、クエリサービス114の表現は、一般的であるように意図されており、ユーザデバイス102とのインタラクションのいかなる特定の形態にも限定されるものではなく、またはレコード処理サービス106へのクエリを生成するために、ユーザデバイス102とのインタラクションを必要とする。同様に、いくつかの実施形態では、ユーザデバイス102は、レコード処理サービス106にクエリを直接送信してもよい。ネットワークサービス104が、図1に図示されているよりも少ない構成要素または多い構成要素を有していてもよいことは、当業者には理解されよう。したがって、図1のネットワークサービス104の描写は、例示として解釈されるべきである。
【0024】
ネットワーク環境100は、レコード処理サービス106によって受信されて処理されることになるデータを収集し、または生成するための、サードパーティデータサービス116などの複数のデータサービスを含み得る。サードパーティデータサービス116は、ネットワーク120を介してコマースをホストすること、ネットワーク120を介してコンテンツを提供すること、(直接的または間接的に)イベントを計測すること、およびこれらに類するものなど、様々な機能のいずれか1つに対応する1つ以上のサーバまたは構成要素を含んでもよい。図1に示すように、サードパーティデータサービス116は、スタンドアロンの通信ネットワークなどで、ネットワークサービス104とは独立してホストされ、通信ネットワーク120を介してネットワークサービス(複数可)に接続され得る。さらにまた、サードパーティデータサービス116は、ネットワークサービス104と追加の独立したネットワークとに関連する構成要素を含んでもよい。当業者であれば、サードパーティデータサービスへの言及は、単にネットワークサービスへのデータの送信を例示することが意図されたものであり、データサービスのネットワークサービスとの提携関係は、必須でもなく、または禁止でもないことを理解されよう。
【0025】
図2は、本願による、クエリサービスへのコンテンツ要求またはクエリを生成することができる例示的なユーザコンピューティングデバイス102のアーキテクチャの一実施形態を示す。図2に示されるユーザコンピューティングデバイス102の概括的なアーキテクチャは、本開示の態様を実施するために使用され得るコンピュータハードウェアおよびソフトウェア構成要素の構成を含む。図に示すように、ユーザコンピューティングデバイス102は、処理ユニット204、ネットワークインタフェース206、入力/出力デバイスインタフェース209、任意選択のディスプレイ202、および入力デバイス224を含み、これらの全てが、通信バスを介して互いに通信することができる。
【0026】
ネットワークインタフェース206は、図1のネットワーク120、およびネットワークサービス104など、1つ以上のネットワークまたはコンピューティングシステムへの接続性を提供し得る。結果として、処理ユニット204は、ネットワークを介して他のコンピューティングシステムまたはサービスから情報および命令を受信することができる。処理ユニット204はまた、メモリ210との間で通信を行い、さらに、入力/出力デバイスインタフェース209を介して、任意選択のディスプレイ202に出力情報を提供することもできる。入力/出力デバイスインタフェース209では、キーボード、マウス、デジタルペンなどの任意選択の入力デバイス224から、入力を受け入れる場合もある。いくつかの実施形態では、ユーザコンピューティングデバイス102は、図2に示すものよりも多い(または少ない)構成要素を含んでいてもよい。
【0027】
メモリ210は、1つ以上の実施形態を実施するために処理ユニット204が実行するコンピュータプログラム命令を含み得る。メモリ210としては、一般に、RAM、ROM、または他の永続的もしくは非一時的なメモリが含まれる。メモリ210は、ユーザコンピューティングデバイス102の一般的な管理および動作において処理ユニット204が使用するためのコンピュータプログラム命令を提供するオペレーティングシステム214を記憶していてもよい。メモリ210は、本開示の態様を実施するためのコンピュータプログラム命令およびその他の情報をさらに含み得る。例えば、一実施形態では、メモリ210は、ユーザデバイス102からデータを送信するためのインタフェースソフトウェア212を含む。いくつかの実施形態では、メモリ210は、クエリに関連したコマンドをクエリサービス114に送信するように少なくとも部分的に構成された、1つ以上の追加のソフトウェアアプリケーションまたは構成要素を含んでいてもよい。
【0028】
図3は、本願の態様による、データレコードの管理および処理の様々な態様を実施するための例示的なコンピューティングデバイス300のアーキテクチャの一実施形態を示す。コンピューティングデバイス300は、特徴化構成要素108など、レコード処理サービス106の一部であり得る。あるいは、コンピューティングデバイスは、レコード処理サービス106から独立したスタンドアロンデバイスであってもよい。
【0029】
図3に示されるコンピューティングデバイス300の概括的なアーキテクチャは、本開示の態様を実施するために使用され得るコンピュータハードウェアおよびソフトウェア構成要素の構成を含む。図に示すように、コンピューティングデバイス300は、処理ユニット304、ネットワークインタフェース306、コンピュータ可読媒体ドライブ308、入力/出力デバイスインタフェース309を含み、これらの全てが、通信バスを介して互いに通信することができる。コンピューティングデバイス300の構成要素は、物理的なハードウェア構成要素であってもよく、または仮想化環境に実装されていてもよい。
【0030】
ネットワークインタフェース306は、図1のネットワーク120など、1つ以上のネットワークまたはコンピューティングシステムへの接続性を提供し得る。結果として、処理ユニット304は、ネットワークを介して他のコンピューティングシステムまたはサービスから情報および命令を受信することができる。処理ユニット304はまた、メモリ310との間で通信を行い、さらに、入力/出力デバイスインタフェース409を介して、任意選択のディスプレイに出力情報を提供することもできる。いくつかの実施形態では、コンピューティングデバイス300は、図3に示すものよりも多い(または少ない)構成要素を含んでいてもよい。
【0031】
メモリ310は、1つ以上の実施形態を実施するために処理ユニット304が実行するコンピュータプログラム命令を含み得る。メモリ310としては、一般に、RAM、ROM、または他の永続的もしくは非一時的なメモリが含まれる。メモリ310は、コンピューティングデバイス300の一般的な管理および動作において処理ユニット304が使用するためのコンピュータプログラム命令を提供するオペレーティングシステム314を記憶していてもよい。メモリ310は、本開示の態様を実施するためのコンピュータプログラム命令およびその他の情報をさらに含み得る。例えば、一実施形態では、メモリ310は、データレコードを受信して処理するためのインタフェースソフトウェア312を含む。メモリ310は、本明細書で説明するように、受信したデータレコードを処理して一次言語を判定するためのスクリプト検出構成要素316を含む。メモリ310は、本明細書で説明するように、データレコード内の識別可能な単語または句に対応するスクリプトトークンの生成および管理を行うためのスクリプトトークン化構成要素318をさらに含む。メモリ310はまた、本明細書で説明するように、データレコード内の識別されたトークンに対応する字訳されたテキストの生成および管理を行うための字訳構成要素320を含む。
【0032】
上記で規定したように、一実施形態では、図3に示されたコンピューティングデバイス300は、コンピューティングネットワーク内の物理的なコンピューティングデバイスまたは仮想化されたコンピューティングデバイスとして実装することができる。別の実施形態では、コンピューティングデバイス300は、コンピューティングデバイス300の機能が物理的なコンピューティングデバイスの下層基盤ネットワークによって実装される仮想コンピューティングネットワークにおける論理的構成要素として実装され得る。したがって、本願の態様は、特にそのように示されない限り、物理的、仮想的、または論理的な実施形態を必要とする解釈に限定されるべきではない。
【0033】
図4A図4Cを次に参照して、マッチングモデル/アルゴリズムで利用するためのデータレコードの受信に関する例示的なインタラクションについて説明する。説明のために、1つ以上の例示的なサードパーティデータサービス116または他の顧客が、レコード処理サービス106にデータ記録を提供することに関与していると想定されている。例示的には、複数のサードパーティデータサービス116などの複数のデータソースが、レコード処理サービス106に元データレコードのセットを提供することに関与している。(1)では、サードパーティデータサービス116がデータの生成または収集を行い、データの少なくともサブセットをレコード処理サービス106に送信する。例示的には、サードパーティデータサービスによって提供されるデータレコードまたはデータは、様々なフォーマットで形成され、APIを介してなど、確立されたプロトコルおよびフォーマットに従ってレコード処理サービス106に送信され得る。個々のデータレコードは、テキストまたはキャラクタを含むことができる複数のデータフィールドを有する。さらに詳細に説明するように、データレコードの1つ以上に関連付けられたデータフィールドの少なくとも一部は、日本語の実施例におけるカタカナおよび漢字ベースキャラクタなど、少なくとも非音声ベースおよび音声ベースの言語に対応するテキストまたはキャラクタを含むことができる。さらに、データレコードの一部、例えばデータレコードの1つ以上のデータフィールドには、カタカナ、漢字、および英語のテキストまたはキャラクタの組み合わせなど、複数の言語のキャラクタおよびテキストを含めることができる。例えば、組織名に対応するデータフィールドでは英語および漢字のテキスト/キャラクタの組み合わせ、ならびに組織の所在地に対応するデータフィールドではカタカナのキャラクタなど、データレコードのデータフィールド間で言語の組み合わせが異なっていてもよい。
【0034】
(2)では、受信後に、レコード処理サービス106は、収集したデータをデータベースノード112Aまたは112Bに書き込むことなどによって、受信した元データレコードのセットを記憶する。図4Aには示されていないが、一般に元データレコードと呼ばれるデータレコードの記憶は、様々な方法で実施することができる。(3)で、レコード処理サービス106は、元データレコードを処理して、データレコードの少なくとも一部の一次スクリプト言語を判定する。上記のように、レコード処理サービス106は、マッチングモデルの実行に(直接的または間接的に)利用され得るデータレコードの選択された数のデータフィールドを処理するように構成することができる。例示的には、レコード処理サービス106は、データレコードの選択された部分に対して識別された一次スクリプト言語を利用して、データフィールド内のテキストまたは単語に対する言語の識別または関連付けを支援する。より具体的には、一実施形態では、一次スクリプト言語は、単語もしくは句を検出するための追加のコンテキストを提供し、または文字もしくはキャラクタのセットが、異なる言語に基づいていると解釈され得るシナリオの解決を支援することができる。例えば、ユニコード規格などの国際符号化規格に従って規定されたキャラクタの場合、規定された言語内の文字またはキャラクタは、個々のキャラクタ、文字、または単語に対しての規定された番号の範囲内でグループ化される。したがって、レコード処理サービスは、検出された一次言語に関連するユニコードキャラクタの主要な範囲を利用して、後述するように用語またはキャラクタの識別を支援することができる。これにより、レコード処理サービス106による検出のプロセスを改善することができ、処理プロセスのより迅速な実施を促進することができる。
【0035】
(4)で、レコード処理サービス106は、データレコードの1つ以上のデータフィールドを処理して、1つ以上のスクリプトトークンを生成する。例示的には、個々のスクリプトトークンは、字訳することができる文字、単語、キャラクタ、またはそれらの一部の識別に対応する。上記のように、スクリプトトークンまたはデータトークンの生成は、検出された一次言語に影響される可能性がある。例えば、レコード処理サービス106は、最初に、漢字または英語など、一次検出言語に一致する可能性のある用語またはキャラクタを特定しようと試みることができる。用語またはキャラクタを一次言語と一致させることができない場合、レコード処理サービス106は、その用語を別の可能な目標言語と一致させるように試みてもよい。
【0036】
(5)で、レコード処理サービス106は、さらに、元データレコードの処理または選別を行い得る。字訳のために、レコード処理サービス106は、字訳バージョンがない可能性のある1つ以上の用語もしくはキャラクタ、またはそれ以外には、字訳された形では有益ではない1つ以上の用語もしくはキャラクタを削除することができる。例えば、レコード処理サービス106は、トークンに関連付けられているか、またはトークン化の間に無視される可能性のある元レコードから、従来のストップワードまたは句読点を選別してもよい。別の実施形態では、レコード処理サービス106は、マッチングモデルで使用されない、または除外するように選択され得るデータレコードの1つ以上のデータフィールドを無視しまたは除外してもよい。いくつかの実施形態では、追加の処理または選別を、レコード処理サービス106から除外してもよい。
【0037】
(6)で、レコード処理サービス106は、識別されたトークンの少なくとも一部を処理して、識別されたトークンの基準言語、例示的には基準音声ベース言語への字訳を生成する。例示的な実施例の目的で、一実施形態では、基準音声ベース言語はカタカナであり得る。例示的には、レコード処理サービス106は、トークンの字訳を生成するために様々なモデルまたはプロセスを実施することができる。カタカナ、漢字、またはラテン語ベースキャラクタに基づくトークンを含み得る元データレコードの例示的な実施形態に関して、レコード処理サービス106は、異なる個々の言語に基づく字訳バージョンの生成のため、異なる字訳モデルおよび技法を実施してもよい。一態様では、カタカナなどの選択された基準音声ベース言語に対応するトークンの場合、レコード処理サービス106は、そのトークンがすでに所望の音声ベースの形式になっているか、またはそうでなければ最小限の字訳を有するため、そのトークンを無視することができる。別の態様では、漢字などのいくつかの非音声ベース言語に対応するトークンの場合、レコード処理サービス106は、形態素処理と辞書ベースの字訳とを実行して、漢字をカタカナなどの基準音声ベース言語に基づく音声ベースのキャラクタに字訳してもよい。例えば、レコード処理サービス106は、漢字のセットの統計モデルを利用して、表音文字/字訳に対応する単語の境界を識別することができる。さらに別の態様では、ラテン語ベース言語などの他の非音声言語に関連付けられたトークンの場合、レコード処理サービス106は、辞書ベースの字訳と重み付き有限状態トランスデューサ(「WFST」)ベースの変換とを実行してもよい。一般的に記載すると、有限状態トランスデューサの実施には、入力記号および出力記号の両方で状態遷移がラベル付けされている有限オートマトンの利用が含まれる。したがって、トランスデューサを通る経路は、入力記号シーケンスから出力記号シーケンスへのマッピングを符号化する。重み付きトランスデューサは、入力記号および出力記号に加えて、遷移にも重みを付ける。重みは、経路に沿って蓄積される確率、持続時間、ペナルティ、またはその他の量を符号化して、入力シーケンスを出力シーケンスにマッピングする際の全体的な重みを計算してもよい。例えば、WSFTベースのアプローチは、入力された英語のキャラクタシーケンスに対応する重み値を、出力されたカタカナのシーケンスに関連付けることにより、英語キャラクタのカタカナ字訳バージョンを生成するのに利用することができる。
【0038】
図4Bをここで参照すると、ある時点で、レコード処理サービス106は、元データレコードと並行して、字訳されたデータレコードを受信して記憶し得る。(8)で、レコード処理サービス106は、元データレコードと字訳されたデータレコードとのためのマッチングモデルを実施する。例示的には、レコード処理サービス106は、データレコードの1つ以上のフィールドで一致する情報を識別しようとする、AIアルゴリズムなどの同じマッチングモデルを実施する。マッチングモデルは、データレコードのフィールド(例えば、名前フィールド)の個々のエントリを他のエントリと照合しようとするペアワイズマッチングアルゴリズムに対応するものであってもよい。そのようなマッチングモデルは、用語のグループ化、用語間の距離、およびこれらに類するものなど、エントリの追加のコンテキストを組み込んで、マッチングを判定することができる。一実施形態では、レコード処理サービス106は、元データレコードおよび字訳されたデータレコードの両方に対して同じマッチングモデルを実施する。他の実施形態では、レコード処理サービス106は、字訳されたデータレコードにおけるストップワードまたは句読点の除去など、元データレコードと字訳されたデータレコードとの予想される差異を考慮するために、異なるマッチングモデルを実施してもよい。さらに、いくつかの実施形態では、レコード処理サービス106は、元データレコードと字訳されたデータレコードとの少なくとも一部をさらに組み合わせ、データレコードの1つ以上の組み合わせに対してマッチングモデルを実行してもよい。(9)では、マッチングモデルの結果に基づいて、レコード処理サービス106は、結果を処理する際に、重み付けアルゴリズムまたは信頼値を利用し得る。例えば、レコード処理サービス106は、一次検出言語および字訳されたトークン(例えば、英語のトークンを持つ漢字の一次言語)に基づいて、信頼係数を一致するものに関連付け得る。別の実施例では、レコード処理サービス106は、特定の言語間での字訳モデルの正確さの特性評価に基づく信頼係数を、表音の目標言語に関連付け得る。しかし、いくつかの実施形態では、レコード処理サービス106は、信頼値または重みを利用せず、マッチングモデルの実行のいずれかで結果として生じる一致を一致するものとして扱ってもよい。
【0039】
図4Cを次に参照して、クエリサービス114、レコード処理サービス106、およびユーザデバイス102の間の例示的なインタラクションを説明する。例示的には、図4Cを、ユーザデバイス102から、ネットワークサービス104に関連付けられた1つ以上のサービスに送信される、検索クエリなどのコンテンツ要求の処理に関して説明する。説明のために、ユーザデバイス102とネットワークサービス104との間のインタラクションは簡略化されている。ただし、そのようなインタラクションには、追加の代替のインタラクティブなステップが含まれている場合がある。
【0040】
(1)で、ユーザデバイス102は、クエリまたはコンテンツ要求をネットワークサービス104に送信する。説明のために、クエリまたはコンテンツ要求は、クエリサービス114によって、要求の少なくとも一部を受信する結果となる1つ以上の要求に対応し得る。例えば、クエリまたはコンテンツ要求には、クエリサービス114に送信される検索条件の形成を容易にする検索条件または主題仕様が含まれてもよい。
【0041】
(2)で、クエリサービス114は、検索条件を満たす情報について、レコード処理サービス106、またはレコード処理サービス106が提供する情報を有するデータベースに、要求を送信する。例えば、レコード処理サービス106は、一致するとは見なされない個別に識別可能なデータレコードに対応する1つ以上のデータレコードを識別することができる。さらに、レコード処理サービス106によって実施される追加の処理およびマッチングモデルに基づいて、レコード処理サービス106は、クエリサービス114に提供されるデータレコードの適合率および再現率を向上させることができる。(3)で、クエリサービス114は、ユーザデバイス102から受信した要求に適切な方法で(直接的または間接的に)クエリ結果を処理し得る。例えば、クエリサービス114は、クエリ結果を視覚的な形式で処理し、またはクエリ結果の選別、分類、もしくは優先順位付けを容易にするプロファイル情報などの追加情報に基づいて、クエリ結果をさらに処理してもよい。(4)で、クエリ結果がユーザデバイス102に返される。
【0042】
一般的に記載すると、追加の字訳されたデータレコードを利用することにより、レコード処理サービス106は、少なくとも部分的に、検索結果を改善する方法で、クエリ結果に応答するデータを提供し得る。このアプローチにより、レコード処理サービス106、クエリサービス114、またはその他のサービスが、ユーザクエリに対してデータを利用できるようにするために必要とする処理リソースの効率を高めることができる。
【0043】
図5を参照して、1つ以上のデータフィールドがキャラクタまたはテキストを有する元データレコードを処理するために、レコード処理サービス106によって実施されるデータレコード字訳ルーチン500を例示した流れ図500を説明する。例示的には、ルーチン500は、少なくとも1つのサードパーティデータサービス116もしくは他のソースまたは複数のサードパーティデータサービス116からデータレコード(例えば、データレコードのセット)を受信すると実施することができる。上記のとおり、例示的なサードパーティデータサービス116が、レコード処理サービス106にデータを提供することに関与していると想定されている。サードパーティデータサービス116は、データの生成または収集を行い、データの少なくともサブセットをレコード処理サービス106に送信する。例示的には、サードパーティデータサービスによって提供されるデータレコードまたはデータは、様々なフォーマットで形成され、APIを介してなど、確立されたプロトコルおよびフォーマットに従ってレコード処理サービス106に送信され得る。
【0044】
ブロック502では、レコード処理サービス106は、収集したデータをデータベースノード112Aまたは112Bに書き込むことなどによって、受信したデータのセットを受信して記憶する。任意の1つまたは複数のデータベースノードへの元データレコードの記憶は、様々な方法で実施することができ、いずれかの特定の技法またはデータノードの種類に限定されることは意図されていない。ブロック504で、レコード処理サービス106は、元データレコードを処理して、データレコードの一部(例えば、元データレコードのデータフィールドから選ばれたもの)に対する一次スクリプト言語を判定する。例示的には、レコード処理サービス106は、一次スクリプト言語を利用して、1つ以上のフィールドを有するテキストまたは単語の識別を支援する。より具体的には、一実施形態では、一次スクリプト言語は、単語もしくは句を検出するための追加のコンテキストを提供し、または文字もしくはキャラクタのセットが複数の方法で解釈され得るシナリオでの解決を支援することができる。上記のように、ユニコード規格などの国際符号化規格に従って規定されたキャラクタの場合、規定された言語内の文字またはキャラクタは、規定された番号の範囲内でグループ化される。したがって、レコード処理サービスは、検出された一次言語に関連するユニコードキャラクタの主要な範囲を利用して、後述するように用語またはキャラクタの識別を支援することができる。
【0045】
ブロック506で、レコード処理サービス106は、データレコードのデータフィールドを処理して、1つ以上のスクリプトトークンを生成する。例示的には、個々のスクリプトトークンは、字訳することができる文字、単語、キャラクタ、またはそれらの一部の識別に対応する。上記のように、スクリプトトークンまたはデータトークンの生成は、検出された一次言語に影響される可能性がある。例えば、レコード処理サービス106は、最初に、漢字または英語など、一次検出言語に一致する可能性のある用語またはキャラクタを特定しようと試みることができる。用語またはキャラクタを一次言語と一致させることができない場合、レコード処理サービス106は、その用語を別の可能な目標言語と一致させるように試みてもよい。
【0046】
ブロック508で、レコード処理サービス106は、さらに、元データレコードの処理または選別を行い得る。字訳のために、レコード処理サービス106は、字訳バージョンがない可能性のある1つ以上の用語もしくはキャラクタ、またはそれ以外には、字訳された形では有益ではない1つ以上の用語もしくはキャラクタを削除することができる。例えば、レコード処理サービス106は、トークンに関連付けられているか、またはトークン化の間に無視される可能性のある元レコードから、従来のストップワードまたは句読点を選別し、あるいはさらにデータフィールドを(たとえ1つ以上の言語を有するデータを含んでいたとしても)処理から除外してもよい。いくつかの実施形態では、レコード処理サービス106は、追加の処理または選別を、省略してもよい。
【0047】
ブロック510~ブロック514で、レコード処理サービス106は、識別されたトークンの少なくとも一部を処理して、識別されたトークンの音声ベース言語への字訳を生成する。より具体的には、レコード処理サービス106は、データレコードの1つ以上のフィールドに対応するトークンのセットを個別に処理することができる。例示的には、処理は、処理すべき次のトークンの識別を伴うブロック510で始まる反復プロセスに対応し得る。ブロック512で、レコード処理サービス106は、選択されたトークンの字訳を処理する。例示的には、レコード処理サービス106は、トークンの字訳を生成するために様々なモデルまたはプロセスを実施することができる。カタカナ、漢字、またはいくつかのラテン語ベースキャラクタに基づくトークンを含み得る元データレコードの例示的な実施形態に関して、レコード処理サービス106は、異なる個々の言語に対して、異なるモデルおよび技法を実施してもよい。一態様では、カタカナなどの音声ベース言語に対応するトークンの場合、レコード処理サービス106は、そのトークンがすでに音声ベースの形式になっているか、またはそうでなければ最小限の字訳を有するため、そのトークンを無視することができる。別の態様では、漢字などのいくつかの非音声ベース言語に対応するトークンの場合、レコード処理サービス106は、形態素処理と辞書ベースの字訳とを実行して、漢字をカタカナなどの音声ベースのキャラクタに字訳してもよい。例えば、レコード処理サービス106は、漢字のセットの統計モデルを利用して、表音文字/字訳に対応する単語の境界を識別することができる。さらに別の態様では、英語などのいくつかのラテン語ベース言語を含む他の非音声言語に関連付けられたトークンの場合、レコード処理サービス106は、辞書ベースの字訳と重み付き有限状態トランスデューサ(「WFST」)ベースの変換とを実行してもよい。上記のように、重み付きトランスデューサは、入力記号および出力記号に加えて、遷移にも重みを付ける。重みは、確率、持続時間、ペナルティ、または経路に沿って蓄積されるその他の量を符号化して、入力シーケンスを出力シーケンスにマッピングする際の全体的な重みを計算してもよい。例えば、WSFTベースのアプローチは、入力された英語のキャラクタシーケンスに対応する重み値を、出力されたカタカナのシーケンスに関連付けることにより、英語キャラクタのカタカナ字訳バージョンを生成するのに利用することができる。さらに別の態様では、スペイン語などのラテン語ベース言語を含む、基準音声ベース言語に対応しない他の音声言語に関連付けられたトークンの場合、レコード処理サービス106は、辞書ベースの字訳または他のカスタム技法を実行してもよい。
【0048】
決定ブロック514で、レコード処理サービス106は、追加のトークンを字訳すべきかどうかを判定する。字訳する場合、ルーチン500はブロック510に戻って、字訳すべき次のトークンを特定する。あるいは、追加のトークンを字訳すべきでない場合、ブロック516で、レコード処理サービス106は、字訳されたデータレコードを記憶するか、または記憶させる。ルーチン500は、ブロック518で終了する。
【0049】
図6を参照して、レコード処理サービス106によって実施されるデータレコード処理ルーチン600を例示する流れ図600を説明する。例示的には、ルーチン500は、本明細書に記載されているように、データレコードの字訳バージョンを形成するために、データレコードの処理時に実施することができる。上記のとおり、レコード処理サービス106は、元データレコードを記憶して処理し、元データレコードと字訳されたデータレコードとをマッチングモデルの適用に利用できるようにする。
【0050】
ブロック602で、レコード処理サービス106は、受信して、以前に記憶されていた元データレコードを取得する。ブロック604で、レコード処理サービス106は、以前に処理されていた可能性のある字訳されたデータレコードを取得する。あるいは、ブロック604の実施は、上記のように字訳されたデータレコードの生成を実施するための要求に対応してもよい。
【0051】
いくつかの実施形態では、レコード処理サービス106は、元データレコードと字訳されたデータレコードとの少なくとも一部をさらに組み合わせ、組み合わせたデータレコードに対してマッチングモデルを実行してもよい。そのため、決定ブロック606では、追加のマッチングモデルが実行されるかどうかを判定するためのテストが行われる。追加される場合、ブロック608で、レコード処理サービス106は、追加のマッチングモデルのためのデータレコードを処理する。例えば、レコード処理サービス106は、字訳されたデータレコードと元データレコードとを組み合わせてもよい。他の実施形態では、レコード処理サービス106は、字訳されたデータレコードおよび元データレコードのサブセットを生成し得る。さらに他の実施形態では、レコード処理サービス106は、目標言語が一致を検出する際により高いエラー率を有するなど、目標言語に関連する1つ以上のトークンを選別して除外することができる。ブロック612で、レコード処理サービス106は、追加の処理されたデータレコードに対してマッチングモデルを実行する。
【0052】
ブロック610で、レコード処理サービス106は、少なくとも元データレコードおよび字訳されたデータレコード、ならびにブロック606でレコード処理サービスによって生成されたいずれかの追加のデータレコードに対してマッチングモデルを実施する。例示的には、レコード処理サービス106は、データレコードの1つ以上のフィールドで一致する情報を識別しようとする、AIアルゴリズムなどの同じマッチングモデルを実施する。マッチングモデルは、データレコードのフィールド(例えば、名前フィールド)の個々のエントリを他のエントリと照合しようとするペアワイズマッチングアルゴリズムに対応するものであってもよい。そのようなマッチングモデルは、用語のグループ化、用語間の距離、およびこれらに類するものなど、エントリの追加のコンテキストを組み込んで、マッチングを判定することができる。一実施形態では、レコード処理サービス106は、元データレコードおよび字訳されたデータレコードの両方に対して同じマッチングモデルを実施する。他の実施形態では、レコード処理サービス106は、字訳されたデータレコードにおけるストップワードまたは句読点の除去など、元データレコードと字訳されたデータレコードとの予想される差異を考慮するために、異なるマッチングモデルを実施してもよい。
【0053】
ブロック612では、マッチングモデルの結果に基づいて、レコード処理サービス106は、結果を処理する際に、重み付けアルゴリズムまたは信頼値を利用し得る。例えば、レコード処理サービス106は、一次検出言語および字訳されたトークン(例えば、英語のトークンを持つ漢字の一次言語)に基づいて、信頼係数を一致するものに関連付け得る。別の実施例では、レコード処理サービス106は、特定の言語間での字訳モデルの正確さの特性評価に基づく信頼係数を、表音の目標言語に関連付け得る。しかし、いくつかの実施形態では、レコード処理サービス106は、信頼値または重みを利用せず、マッチングモデルの実行のいずれかで結果として生じる一致を一致するものとして扱ってもよい。ブロック614で、ルーチン600が終了する。
【0054】
本明細書に記載されている全ての方法およびタスクは、コンピュータシステムによって実行され、完全に自動化することができる。コンピュータシステムは、場合によっては、記載の機能を実行するためにネットワークを介して通信し相互運用する複数の別個のコンピュータまたはコンピューティングデバイス(例えば、物理サーバ、ワークステーション、ストレージアレイ、クラウドコンピューティングリソースなど)を含み得る。そのような各コンピューティングデバイスは、典型的には、メモリまたは他の非一時的コンピュータ可読記憶媒体もしくはデバイス(例えば、ソリッドステートストレージデバイス、ディスクドライブなど)に記憶されたプログラム命令またはモジュールを実行するプロセッサ(または複数のプロセッサ)を含む。本明細書に開示した各種の機能は、そのようなプログラム命令に具現化され得、またはコンピュータシステムの特定用途向け回路(例えば、ASICもしくはFPGA)に実装され得る。コンピュータシステムが複数のコンピューティングデバイスを含む場合、これらのデバイスは、同じ位置に配置されてもよいが、必ずしもそうする必要はない。開示された方法およびタスクの結果は、ソリッドステートメモリチップまたは磁気ディスクなどの物理記憶デバイスを異なる状態に変えることによって永続的に記憶されてもよい。一部の実施形態では、コンピュータシステムは、複数の別々の事業体または他のユーザによって処理リソースが共有されるクラウドベースのコンピューティングシステムであり得る。
【0055】
実施形態に応じて、本明細書に記載の処理またはアルゴリズムのいずれかの特定の行為、イベントまたは機能は、異なる順序で実行することができ、追加する、合体させる、または完全に省くことができる(例えば、記載した全ての動作またはイベントがこのアルゴリズムの実施に必須ではない)。また、特定の実施形態では、動作またはイベントは、逐次的にではなく同時並行的に、例えば、マルチスレッド処理、割り込み処理、または複数のプロセッサもしくはプロセッサコアを介して、あるいは他の並列アーキテクチャで実行することができる。
【0056】
本明細書に開示される実施形態に関連して説明した各種の例示的な論理ブロック、モジュール、ルーチン、およびアルゴリズムのステップは、電子ハードウェア(例えば、ASICもしくはFPGAデバイス)、コンピュータハードウェア上で動作するコンピュータソフトウェア、またはこれらの組み合わせとして実装することができる。さらに、本明細書に開示された実施形態に関連して説明される各種の例示的な論理ブロックおよびモジュールは、機械によって実装または実行することができる。このような機械としては、本明細書で説明される機能を実行するように設計されたプロセッサデバイス、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブルロジックデバイス、ディスクリートゲートもしくはトランジスタロジック、ディスクリートハードウェア構成要素、またはこれらの任意の組み合わせなどがある。プロセッサデバイスは、マイクロプロセッサとすることができるが、代替的に、プロセッサデバイスは、コントローラ、マイクロコントローラもしくはステートマシン、またはこれらの組み合わせなどとすることができる。プロセッサデバイスは、コンピュータ実行可能命令を処理するように構成される電気回路を含むことができる。他の実施形態では、プロセッサデバイスは、コンピュータ実行可能命令を処理せずに論理演算を実行するFPGAまたは他のプログラマブルデバイスを含む。プロセッサデバイスは、例えば、DSPとマイクロプロセッサとの組み合わせ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、または任意の他のそのような構成などの、コンピューティングデバイスの組み合わせとして実装することもできる。本明細書では主としてデジタル技術に関して説明しているが、プロセッサデバイスはまた、主としてアナログ部品を含み得る。例えば、本明細書に記載のレンダリング技術の一部または全部は、アナログ回路またはアナログ・デジタル混合回路で実装され得る。コンピューティング環境は、いくつか例を挙げると、マイクロプロセッサ、メインフレームコンピュータ、デジタルシグナルプロセッサ、携帯型コンピューティングデバイス、デバイスコントローラ、または電化製品内のコンピューティングエンジンに基づいたコンピュータシステムを含むが、これに限定されない任意の種類のコンピュータシステムを含むことができる。
【0057】
本明細書に開示した実施形態に関連して説明した方法、処理、ルーチンまたはアルゴリズムの要素は、直接ハードウェアで、プロセッサデバイスによって実行されるソフトウェアモジュールで、またはこれら2つの組み合わせで具現化することができる。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または任意の他の形態の非一時的コンピュータ可読記憶媒体に存在することができる。例示的な記憶媒体は、プロセッサデバイスが記憶媒体から情報を読み出し、情報を記憶媒体に書き込むことができるようにプロセッサデバイスに結合することができる。代替的には、記憶媒体は、プロセッサデバイスと一体にすることができる。プロセッサデバイスおよび記憶媒体は、ASICに存在することができる。ASICはユーザ端末に存在することができる。代替的には、プロセッサデバイスおよび記憶媒体は、ユーザ端末内のディスクリート部品として存在することができる。
【0058】
本明細書で使用する条件付きの文言、特に、「できる(can)」、「可能性がある(could)」、「場合がある(might)」、「~し得る(may)」、「例えば(e.g.,)」などは、特に明確に指定のない限り、または使用される文脈内で別様に解釈されない限り、一般に、特定の特徴、要素またはステップが、特定の実施形態には含まれるが他の実施形態には含まれないことを伝えるように意図している。したがって、そのような条件付きの文言は一般に、特徴、要素またはステップが1つまたは複数の実施形態に何らかの形で必要であることを示すように意図したものでもなく、これらの特徴、要素もしくはステップが任意の特定の実施形態に含まれるか、それとも任意の特定の実施形態において実行されるものであるかを、他の入力または指示の有無に関わらず判定する論理が1つまたは複数の実施形態に必ず含まれることを示すように意図したものでもない。「備える(comprising)」、「含む(including)」および「有する(having)」などの用語は同義語であり、包括的に、制限されない様式で使用され、追加の要素、特徴、行為および動作などを排除しない。また、「または(or)」という用語は、(排他的な意味ではなく)包括的な意味で使用しており、したがって、例えば、要素のリストを連結するために使用される場合、「または」という用語は、そのリスト内の要素の1つ、一部または全部を意味する。
【0059】
特に明記しない限り、「X、Y、またはZのうちの少なくとも1つ」という句などの選言的な文言は、項目、用語などが、X、Y、もしくはZのいずれか、またはそれらの任意の組み合わせ(例えば、X、Y、またはZ)であり得ることを提示するために一般に使用される文脈とともに別様に理解される。したがって、そのような選言的な文言は一般に、特定の実施形態が、Xのうちの少なくとも1つ、Yのうちの少なくとも1つ、およびZのうちの少なくとも1つがそれぞれ存在することを必要とすることを意味するものではなく、そうすべきでもない。
【0060】
上記の詳細な説明では、様々な実施形態に適用される新規の特徴を図示し、説明し、指摘しているが、例示したデバイスまたはアルゴリズムの形態および詳細の様々な省略、置換および変更は、本開示の趣旨から逸脱せずに実行できることは理解することが可能である。理解できるように、本明細書に記載の特定の実施形態は、一部の特徴を他の特徴とは別に使用または実施することができるので、本明細書に記載した特徴および利点の全てを提供しない形態内に具現化することができる。本明細書に開示されたある実施形態の範囲は、前述の説明によってではなく、添付された特許請求の範囲によって示される。特許請求の範囲の意味および均等範囲に入る全ての変更は、その範囲内に包含される。
【0061】
上記の事項は、以下の一連の条項を考慮してよりよく理解され得る。
条項1.データクエリに対してデータを処理するためのシステムであって、
レコード処理サービスに関連付けられた1つ以上のコンピューティングデバイスであって、前記レコード処理サービスが、
元データレコードを受信することであって、少なくとも1つの元データレコードが、少なくとも1つの音声ベース言語と少なくとも1つの非音声ベース言語とに関連付けられた1つ以上のデータフィールドを含む、前記受信することと、
前記元データレコードの前記1つ以上のデータフィールドのうちの個々のデータフィールドに対して、
前記元データレコードの前記個々のデータフィールドを処理して、前記元データレコードの前記個々のデータフィールドに対する一次言語を識別することと、
前記一次言語に基づいて、前記元データレコードの前記個々のデータフィールドに含まれる用語またはキャラクタに対して言語ベーストークンを生成することであって、前記言語ベーストークン内の少なくとも1つの言語ベーストークンが、前記少なくとも1つの音声ベース言語に対応し、前記言語ベーストークン内の少なくとも1つの言語ベーストークンが、少なくとも1つの非音声ベース言語に対応する、前記生成することと、
前記元データレコードを選別して、前記元データレコードの前記個々のデータフィールドにあるデータの少なくとも一部を削除することと、
前記生成された言語ベーストークンを基準音声ベース言語に字訳して、前記元データレコードの字訳バージョンを形成することと、
前記元データレコードと、前記元データレコードの前記字訳バージョンとに対して、マッチングモデルを実行することと、
前記元データレコードと、前記元データレコードの前記字訳バージョンとに対する前記マッチングモデルの前記実行の結果に基づいて、前記元データレコードの一致するデータフィールドを識別することと、
を行うように構成されている、前記1つ以上のコンピューティングデバイス
を備える、前記システム。
【0062】
条項2.前記元データレコードの前記個々の部分の前記言語ベーストークンが、少なくとも2つの非音声ベース言語に対応する複数の言語ベーストークンを含む、条項1に記載のシステム。
【0063】
条項3.前記レコード処理サービスが、前記少なくとも2つの非音声言語に基づいて、異なる字訳プロセスを実施する、条項2に記載のシステム。
【0064】
条項4.前記レコード処理サービスが、前記基準音声ベース言語に対応する言語ベーストークンの字訳を除外する、条項1に記載のシステム。
【0065】
条項5.前記レコード処理サービスがさらに、前記元データレコードと、前記元データレコードの前記字訳バージョンとの組み合わせに対して、マッチングモデルを実行するように構成されている、条項1に記載のシステム。
【0066】
条項6.データレコードを処理するためのコンピュータ実施方法であって、
元データレコードを受信することであって、少なくとも1つの元データレコードが複数の部分を含み、少なくとも1つの部分が、少なくとも1つの音声ベース言語と、少なくとも1つの非音声ベース言語とに関連付けられたテキストまたはキャラクタを含む、前記受信することと、
前記元データレコードの個々の部分に対して、
前記元データレコードの前記個々の部分に対して言語ベーストークンを生成することであって、前記言語ベーストークン内の少なくとも1つの言語ベーストークンが第1の言語に対応し、前記言語ベーストークン内の少なくとも1つの言語ベーストークンが第2の言語に対応し、前記第1の言語が基準音声ベース言語に対応する、前記生成することと、
前記生成された言語ベーストークンを前記第1の言語に字訳して、前記元データレコードの字訳バージョンを形成することと、
前記元データレコードと、前記元データレコードの前記字訳バージョンとに対して、マッチングモデルを実行することと、
前記元データレコードと、前記元データレコードの前記字訳バージョンとに対する前記マッチングモデルの前記実行の結果に基づいて、一致する元データレコードを識別することと、
を含む、前記コンピュータ実施方法。
【0067】
条項7.前記元データレコードを選別して、前記元データレコードの前記個々の部分の1つ以上のキャラクタまたは用語を削除することをさらに含む、条項6に記載のコンピュータ実施方法。
【0068】
条項8.前記元データレコードの前記個々の部分を処理して、前記元データレコードの前記個々の部分に対する一次言語を識別することをさらに含む、条項6に記載のコンピュータ実施方法。
【0069】
条項9.前記元データレコードの前記個々の部分に対して言語ベーストークンを生成することが、前記識別された一次言語に基づいて言語ベーストークンを生成することを含む、条項8に記載のコンピュータ実施方法。
【0070】
条項10.前記識別された一次言語に基づいて言語ベーストークンを生成することが、前記識別された一次言語に関連付けられたユニコード値の範囲に基づいて、前記個々の部分を比較することを含む、条項9に記載のコンピュータ実施方法。
【0071】
条項11.前記元データレコードの前記個々の部分に対する前記言語ベーストークンが、少なくとも前記第2の言語と第3の言語とに対応する複数の言語ベーストークンを含む、条項6に記載のコンピュータ実施方法。
【0072】
条項12.前記生成された言語ベーストークンを前記第1の言語に字訳して、前記元データレコードの字訳バージョンを形成することが、前記第2の言語および前記第3の言語に基づく異なる字訳プロセスを実施することを含む、条項11に記載のコンピュータ実施方法。
【0073】
条項13.前記元データレコードと前記元データレコードの前記字訳バージョンとの組み合わせに対して、マッチングモデルを実行することをさらに含む、条項6に記載のコンピュータ実施方法。
【0074】
条項14.前記元データレコードと、前記元データレコードの前記字訳バージョンとに対して、前記マッチングモデルを実行することに基づいて、1つ以上の信頼値を関連付けることをさらに含む、条項6に記載のコンピュータ実施方法。
【0075】
条項15.前記第2の言語が、漢字またはラテン語ベース言語の少なくとも1つを含む、条項6に記載のコンピュータ実施方法。
【0076】
条項16.前記第1の言語がカタカナを含む、条項6に記載のコンピュータ実施方法。
【0077】
条項17.前記第2の言語が英語に対応し、前記生成された言語ベーストークンを前記第1の言語に字訳して、前記元データレコードの字訳バージョンを形成することが、重み付き有限状態トランスデューサを実施することを含む、条項6に記載のコンピュータ実施方法。
【0078】
条項18.レコード処理サービスによって受信されたデータを管理して、データレコードをリンクさせるためのコンピュータ実施方法であって、
元データレコードの個々の部分に対して言語ベーストークンを生成することであって、前記言語ベーストークン内の少なくとも1つの言語ベーストークンが、少なくとも1つの音声ベース言語に対応し、前記言語ベーストークン内の少なくとも1つの言語ベーストークンが、少なくとも1つの非音声ベース言語に対応する、前記生成することと、
前記生成された言語ベーストークンを基準音声ベース言語に字訳して、前記元データレコードの字訳バージョンを形成することと、
前記元データレコードと、前記元データレコードの前記字訳バージョンとに対して、マッチングモデルを実行することと、
を含む、前記コンピュータ実施方法。
【0079】
条項19.前記元データレコードの前記個々の部分を処理して、前記元データレコードの前記個々の部分に対する一次言語を識別することをさらに含む、条項18に記載のコンピュータ実施方法。
【0080】
条項20.前記元データレコードの前記個々の部分に対して言語ベーストークンを生成することが、前記識別された一次言語に基づいて言語ベーストークンを生成することを含む、条項19に記載のコンピュータ実施方法。
【0081】
条項21.前記元データレコードの前記個々の部分に対する前記言語ベーストークンが、前記基準音声ベース言語を含まない少なくとも2つの言語に対応する複数の言語ベーストークンを含む、条項18に記載のコンピュータ実施方法。
【0082】
条項22.前記生成された言語ベーストークンを音声ベース言語に字訳して、前記元データレコードの字訳バージョンを形成することが、音声ベース言語に基づく異なる字訳プロセスを実施することを含む、条項21に記載のコンピュータ実施方法。
【0083】
条項23.前記元データレコードと前記元データレコードの前記字訳バージョンとの組み合わせに対して、マッチングモデルを実行することをさらに含む、条項18に記載のコンピュータ実施方法。
【0084】
上記の実施形態に対しては多くの変形および修正が可能であり、その要素は他の許容可能な例の一つとして理解されるべきであることを強調しておきたい。このような全ての修正および変形は、本開示の範囲内で本明細書に含まれ、以下の特許請求の範囲によって保護されることを意図している。
図1
図2
図3
図4A
図4B
図4C
図5
図6
【国際調査報告】