JP6850806B2 - 電子データ構造から属性を抽出するための注釈システム - Google Patents

電子データ構造から属性を抽出するための注釈システム Download PDF

Info

Publication number
JP6850806B2
JP6850806B2 JP2018536265A JP2018536265A JP6850806B2 JP 6850806 B2 JP6850806 B2 JP 6850806B2 JP 2018536265 A JP2018536265 A JP 2018536265A JP 2018536265 A JP2018536265 A JP 2018536265A JP 6850806 B2 JP6850806 B2 JP 6850806B2
Authority
JP
Japan
Prior art keywords
string
token
tokens
annotation
attributes
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.)
Active
Application number
JP2018536265A
Other languages
English (en)
Other versions
JP2019503541A (ja
JP2019503541A5 (ja
Inventor
ウー,ス−ミン
ボルジアン,ボロウジェニ・セタレー
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2019503541A publication Critical patent/JP2019503541A/ja
Publication of JP2019503541A5 publication Critical patent/JP2019503541A5/ja
Application granted granted Critical
Publication of JP6850806B2 publication Critical patent/JP6850806B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24573Query processing with adaptation to user needs using data annotations, e.g. user-defined metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Strategic Management (AREA)
  • Medical Informatics (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Economics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Library & Information Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

背景
電子商取引および電子棚札システムがより広く普及するにつれて、製品情報の提供および製品情報の正確性の保証に関して新たな困難が生じる。例えば、電子棚札において、異なる製品の各々は、多くの異なる属性を含む。これらの属性は、識別番号、価格、ブランド名、詳細な説明などを含むことができる。したがって、棚札の個々のカテゴリに数千個の異なる製品が含まれている場合、特に情報の入力が手動作業であることを考慮すると、情報の正確性を保証することは、複雑で時間のかかる作業である。
例えば、食料品店の場合、電子棚札に入力された各製品は、多くの異なる属性、例えば、重量、味、ブランド名、価格、パッケージ当たりの数量などを含むことができる。通常、様々な属性がデータベース内の異なる列と相関するため、作業員は、手動で情報を調べ、異なる列に入力する。さらに、製品の記述は、構造化されておらず且つ特定のフォーマットを有しないため、文法エラー、スペルミスおよび/または他のエラーを含む可能性がある。したがって、単に情報をデータベースにコピーするだけで、正確且つ適切にカタログ化された情報を提供することができない。したがって、正確な製品記述をデータベース内に提供することは、多くの複雑性を伴う困難な作業である。
概要
本開示の一態様において、命令を格納する非一時的なコンピュータ可読媒体が開示される。命令は、コンピューティング装置の1つ以上のプロセッサによって実行されると、コンピューティング装置に少なくとも以下のことを実行させ、以下のことは、記述文字列からのトークンを製品の規定の属性と相関させることを含み、規定の属性は、電子棚札データベース内の列に編成され、トークンを相関させることは、規定の属性のうちトークンとマッチする規定の属性を識別することと、規定の属性と各トークンとの間のマッチを示すように、注釈文字列を用いてトークンを列にマッピングすることとを含み、製品の各々は、記述文字列および注釈文字列のうち対応する1つに関連付けられ、記述文字列の各々は、棚札中の製品の属性を示す英数字の構造化されていない組み合わせを含み、以下のことは、規定の属性と識別されたトークンとの間の相関に従って、記述文字列および注釈文字列を反復的に解析することによって、トークンのうち識別されていないトークンについての推奨マッチを生成することと、記述文字列からトークンを抽出し、注釈文字列のマッピングによって指定された列にトークンを挿入することによって、トークンを電子棚札データベースにポピュレートすることを含む。同様の機能を実行するコンピュータ実装方法が開示される。
非一時的なコンピュータ可読媒体の別の実施形態において、トークンを電子棚札データベースにポピュレートすることをコンピューティング装置に実行させる命令は、コンピューティング装置に、記述を製品の各々についての電子棚札データベースにポピュレートするために注釈文字列によって識別された電子棚札データベースの列にトークンを格納することによって、注釈文字列に従って記述文字列を構造化することを実行させる命令を含み、トークンは、異なる長さを有し、棚札は、小売業の棚札であり、境界マーカは、記述文字列のトークンを区切り、スペースまたは英数字以外の文字を含む。
上記の非一時的なコンピュータ可読媒体の別の実施形態において、棚札のカテゴリ内の製品の記述文字列を含む電子データを記憶媒体から読み取ることによって、電子データを入手することをコンピュータ装置に実行させる命令をさらに含み、記述文字列は、規定のプロトコルに準拠していない非構造化データ文字列であり、規定の属性は、電子棚札データベースの列に関連付けられ、複数の製品の特性を含み、トークンを相関させることは、注釈文字列を初期化することによって、トークンと規定の属性との間のマッチを初期に識別する。
本開示の別の態様において、コンピューティングシステムが開示される。当該コンピューティングシステムは、非一時的なコンピュータ可読媒体に格納され、記述文字列からのトークンを製品の規定の属性と相関させるための命令を含むように構成された注釈モジュールを含み、規定の属性は、電子棚札データベース内の列に編成され、トークンを相関させることは、規定の属性のうちトークンとマッチする規定の属性を識別することと、規定の属性と各トークンとの間のマッチを示すように、注釈文字列を用いてトークンを列にマッピングすることとを含み、製品の各々は、記述文字列および注釈文字列のうち対応する1つに関連付けられ、記述文字列の各々は、棚札中の製品の属性を示す英数字の構造化されていない組み合わせを含み、非一時的なコンピュータ可読媒体に格納され、相関の関数である統計モデルによって特定された規定の属性と識別されたトークンとの間の相関に従って、記述文字列および注釈文字列を反復的に解析することによって、トークンのうち識別されていないトークンについての推奨マッチを生成するための命令を含むように構成された推論モジュールを含み、推奨マッチを生成することは、推奨マッチを用いて注釈文字列を更新することによって、トークンのうち識別されていないトークンを規定の属性にマッピングすることを含み、非一時的コンピュータ可読媒体に格納され、注釈文字列のマッピングによって指定された列にトークンを挿入することによって、トークンを電子棚札データベースにポピュレートするための命令を含むように構成される構造モジュールを含む。
コンピューティングシステムの別の実施形態において、構造モジュールは、記述文字列からトークンを自動的に抽出し、記述を製品の各々についての電子棚札データベースにポピュレートするために注釈文字列によって識別された電子棚札データベースの列にトークンを格納するによって、データベースをポピュレートするように構成され、トークンは、異なる長さを有し、棚札は、小売業の棚札であり、境界マーカは、記述文字列のトークンを区切り、スペースまたは英数字以外の文字を含む。
別の実施形態において、コンピューティングシステムは、非一時的コンピュータ可読媒体に格納され、記憶媒体から棚札のカテゴリ内の製品の記述文字列を含む電子データを読み取ることによって、電子データを受信および利用するための命令を含むように構成された通信モジュールをさらに含み、記述文字列は、規定のプロトコルに準拠していない非構造化データ文字列であり、規定の属性は、電子棚札データベースの列に関連付けられ、複数の製品の特性を含み、相関モジュールは、トークンを相関させることにより注釈文字列を初期化することによって、トークンと規定の属性との間のマッチを初期に識別するための命令を含むように構成される。
コンピューティングシステムの別の実施形態において、推論モジュールは、注釈文字列と記述文字列の規定の属性との間の相関精度を検証するように、注釈文字列を解析することによって注釈文字列のエラーを検出するための命令をさらに含むように構成される。
コンピューティングシステムの別の実施形態において、推論モジュールは、選択された分布に従って、記述文字列および対応する注釈文字列をトレーニングセットおよびテストセットに分割することによって、2つの異なる文字列セットを電子入力として提供するための命令を含むように構成され、テストセット内の記述文字列には、注釈を含まず且つテストセット内の記述文字列についての注釈文字列の元の注釈文字列を一時的に置換するテスト用注釈文字列が割り当てられ、条件付き確率場モデルを用いてトレーニングセットの注釈文字列からモデル化されたトレーニングセットのトークンと規定の属性との間の相関に従って、テストセットおよび規定の属性を解析するための命令を含むように構成され、テストセットを解析することは、テストセットの記述文字列にテスト用注釈文字列を新たに注釈することによって、テストセットの記述文字列のトークンと規定の属性と間のマッチを提案することを含み、テスト用注釈文字列と元の注釈文字列とを比較することによって、テストセットから新たに識別されたトークンから推奨マッチを生成するための命令を含むように構成される。
別の実施形態において、記述文字列から属性を抽出するように構成されたプロセッサを含むコンピューティング装置によって実行されるコンピュータ実装方法が開示される。当該方法は、通信ネットワークを介して遠隔装置から、記述文字列を含む電子データのストリームを受信するステップを含み、記述文字列は、棚札中の製品の属性を記述する英数字の構造化されていない組み合せであり、少なくともプロセッサにより、記述文字列のトークンとマッチしている電子棚札データベース内の規定の属性を識別し、トークンを規定の属性に関連付けられたデータベースの列にリンクすることによって、記述文字列のトークンを電子棚札データベース内の規定の属性と相関させるステップを含み、少なくともプロセッサにより、条件付き確率場モデルを用いて、識別されたトークンと規定の属性との間の既知の相関に従って、トークンのうち識別されていないトークンの推奨マッチングを生成することによって、識別されていないトークンの注釈文字列を反復的に更新するステップと、少なくともプロセッサにより、注釈文字列によって識別された列に記述文字列からのトークンを自動的に記憶することによって、注釈文字列に従って記述文字列からの識別されたトークンをデータベースにポピュレートするステップとを含む。
本明細書に組み込まれ、本明細書の一部を構成する添付の図面は、本開示の様々なシステム、方法および他の実施形態を示す。理解すべきことは、図面に示された要素の境界(例えば、ボックス、ボックスの群、または他の形状)は、境界の一例を表すことである。いくつかの実施形態において、1つの要素が複数の要素として実現されてもよく、複数の要素が1つの要素として実現されてもよい。いくつかの実施形態において、別の要素の内部コンポーネントとして示された要素は、外部コンポーネントとして実現されてもよい。その逆も同様である。さらに、要素は縮尺通りに描かれていない可能性がある。
非構造化記述文字列から属性を抽出することに関連するコンピューティングシステムの一実施形態を示す図である。 電子棚札データベース内の製品記述に構造化属性を与えることに関連する方法の一実施形態を示す図である。 文字列を注釈し、記述文字列内の値を規定の属性にリンクすることに関連する方法の一実施形態を示す図である。 規定の属性と非構造化記述文字列における値との間の推奨マッチを生成することに関連する方法の一実施形態を示す図である。 記述文字列の注釈におけるエラーを訂正することに関連する方法の一実施形態を示す図である。 開示された例示的なシステムおよび方法で構成されたコンピューティングシステムの一実施形態を示す図である。
詳細な説明
本明細書は、コンピュータ化システムおよび方法を記載する。これらのシステムおよび方法は、製品に関する非構造化属性情報を含む記述文字列を、その属性情報を適切な列と相関させるデータベース内の構造化エントリに変換する。一実施形態において、コンピューティングシステムは、データ構造にアクセスし、単一のカテゴリに分類された製品のデータ構造から、記述文字列の形にした属性情報を読み取る。カテゴリは、例えば、ヨーグルト、チーズ、男性用ネクタイ、または他の製品種類である。いずれの場合、製品は通常種類に関連させられる。しかしながら、記述文字列に含まれた情報が様々な異なるソースから提供され且つ任意の標準に準拠するように制御されていないため、これらの記述文字列は、構造化されていない。すなわち、例えば、記述文字列は、既知のクラス分け、ラベリングまたは他の既知のフォーマットに従って個々の属性を抽出できるように、体系的に編成されていない。記述文字列は、特定のフォーマット、プロトコルまたは他の配置に準拠していない。したがって、これらの記述文字列は、構造化されていない。
通常、各製品の記述文字列は、例えば、境界マーカ(すなわち、英数字以外の文字またはスペース)で区切られた各異なる要素(本明細書ではトークンとも呼ばれる)を含む英数字文字列である。しかしながら、記述文字列内の属性の順序、特定の属性のフォーマットおよび略語の使用は、知られていないまたはフォーマット標準に従って制御されていない。したがって、記述文字列が構造化されていないため、記述文字列から属性を抽出することは困難である。
したがって、一実施形態において、コンピューティングシステムは、記述文字列内の属性を識別し、属性をデータベースの列にマッピングするように構成される。これによって、コンピューティングシステムは、記述文字列から属性を抽出することができる。したがって、コンピューティングシステムは、非構造化記述文字列からの属性をデータベースにポピュレートすることによって、製品記述をデータベースに提供するようにプログラムされる。以下、属性の識別および抽出に関連するシステムおよび方法を説明する。
図1を参照して、コンピューティングシステム100の一実施形態が示されている。コンピューティングシステム100は、製品属性を電子/コンピュータ化棚札データベース110内の列にマッピング/リンクすることによって、属性を識別し、電子/コンピュータ化棚札データベース110に編成する機能を実行するように実装される。
一実施形態において、コンピューティングシステム100は、実行可能なアプリケーションまたは分散アプリケーションの集合を含むコンピューティング/データ処理システムである。アプリケーションおよびコンピューティングシステム100は、クラウドベースネットワークシステム、SaaS(software as a service)アーキテクチャ、または他の種類のネットワークコンピューティングソリューションと共に動作するように構成されてもよく、クラウドベースネットワーキングシステム、SaaSアーキテクチャ、または他の種類のネットワークコンピューティングソリューションとして実装されてもよい。一実施形態において、コンピューティングシステム100は、少なくとも本明細書に記載の機能を提供し、コンピュータネットワークを経由して(サーバとして機能する)コンピューティングシステム100と通信するコンピューティング装置/端末を介して、多くのユーザによって利用される集中型サーバ側アプリケーションである。
一実施形態において、本明細書に記載された1つ以上のコンポーネントは、非一時的なコンピュータ可読媒体に格納されたプログラムモジュールとして構成される。プログラムモジュールは、命令を含むように構成される。これらの命令は、少なくともプロセッサによって実行されると、コンピューティング装置に、本明細書に記載の対応する機能を実行させる。
したがって、一実施形態において、コンピューティングシステム100は、記述文字列130および注釈文字列140を格納するメモリ120と共に、いくつかのモジュールを含む。例えば、コンピューティングシステム100は、注釈モジュール150と、推論モジュール160と、構造モジュール170と、通信モジュール180とを含む。構造モジュール170と通信モジュール180とは、連動して動作することによって、記述文字列130から構造化されていない/フォーマットされていない属性を抽出し、構造化形式(すなわち、データベース表として)の属性を電子棚札データベース110に出力する。
したがって、一実施形態において、モジュール150、160、170および180は、非構造化属性を構造化属性に変換し、構造化属性を電子データ構造として電子棚札データベース110に電子的に出力する専用ハードウェアプロセッサとして具体化される。別の実施形態において、モジュール150、160、170、180は、非構造化属性の変換を達成するために、ハードウェアプロセッサを制御するように機能する。さらに、モジュール150、160、170および180は、メモリ120およびデータベース110に格納された電子データを処理する。一実施形態において、メモリ120は、本明細書に記載するように、抽出および変換を行うために使用される記述文字列130、注釈文字列140および他の情報を含む電子データ構造を格納するのに適したランダムアクセスメモリ(RAM)、ハードディスクドライブ(HDD)、または別のメモリである。
また、電子棚札データベース110は、構造化された列および行の形で製品情報を含む電子データ構造を格納する。これによって、様々な電算タスクで情報を検索および使用することができる。通常、電子棚札データベース110は、データを電子フォーマットで非一時的媒体に格納する。データは、例えば、食料品店、百貨店、電子取引ウェブサイト、または他の小売店などの小売業の棚札内の複数の製品に関する情報を含む。
さらに、一実施形態において、異なる列は、製品の異なる属性に従って定義される。例えば、データベース110は、各製品の異なる情報を分けるために、識別番号(SKU:Stock Keeping Unit)、ブランド名、重量、栄養情報などの異なる列を含む。当然ながら、製品の特定のカテゴリに応じて、リストアップされたものとは異なる規定の属性および対応するデータベース列を設けてもよい。いずれの場合、データベース110は、各属性用の異なる列を含み、コンピューティングシステム100は、記述文字列130から識別された属性をこれらの列にポピュレートする。
一実施形態において、コンピューティングシステム100は、通信ネットワーク190を介して記述文字列130を取得する。すなわち、コンピューティングシステム100は、通信ネットワーク190を介して通信するハードウェア装置である。通信ネットワーク190は、インターネット、ワイドエリアネットワーク(WAN)、または同様のネットワークである。一実施形態において、コンピューティングシステム100は、通信モジュール180によって制御され、ネットワークインターフェイスカード(NIC:network interface card)またはコンピューティングシステム100に内蔵された同様の装置を用いて、通信ネットワーク190を介して通信することによって、リモート装置と情報(例えば、記述文字列130)を交換することができる。
図2〜図5を参照して、コンピューティング装置100の更なる態様を説明する。図2の方法200は、未加工の非構造化記述文字列を受信、注釈、更新および検証した後、電子棚札データベース110に構造化/組織化するための全体像を示す。方法300、400および500は、方法200の要素220、230および240の詳細な説明を提供する。したがって、方法200の各要素を概略的に説明し、その後、図3、4および5を参照して要素220、230および240の詳細な説明を各々行う。また、図2〜5は、図1のコンピューティングシステム100の観点から説明される。
したがって、コンピューティングシステム100は、通信ネットワーク190を介してリモート装置から電子データストリームを受信することに応答して、メモリ110に格納された記述文字列130にアクセスすることによって、ブロック210で方法200の実行を開始する。一実施形態において、通信モジュール180は、リンクからネットワーク190への電子通信信号を検出し、信号からデータを識別し、データをバッファリングし、その後データをメモリ120に格納することによって、データストリームを受信する。
通常、データストリームは、複数の製品を電子棚札データベース110の棚札カテゴリに入力することを要請する小売業者からの通信情報であってもよい。したがって、データは、複数の製品を記述する記述文字列130を少なくとも含む。一実施形態において、記述文字列130は、複数の製品の属性を表す英数字の組み合わせである。また、前述したように、記述文字列130は、規定のプロトコルに準拠していないデータの非構造化文字列である。すなわち、記述文字列130は、データベース110内の属性と相関する文字を表す識別子および/または属性を識別するための特定の順序または他の構成を含まない。
記述文字列130は、文字の列である。一実施形態において、記述文字列130は、様々なトークン(すなわち、属性を構成する単語および文字)の間に境界マーカを含む。しかしながら、境界マーカは、いくつかの属性を区切るが、始終一貫しているとは見なされるべきではなく、いくつかの属性は、境界マーカを含まず、連続的に出現することがある。それにもかかわらず、境界マーカ間の一連の連続文字は、単一のトークンとして定義される。通常、注釈モジュール150および推論モジュール160は、トークンを処理する。
したがって、記述文字列130の各々は、通常、複数のトークンを含む。トークンは、異なる長さを有する。すなわち、トークンは、異なる数の英字および/または数字(すなわち、英数字)を含むことができる。また、トークンを区切る境界マーカは、スペースおよび他の記号(例えば、%、#、/)などの英数字以外の文字である。したがって、一実施形態において、通信モジュール180は、記述文字列をメモリ110に格納する電子データ構造を読み取り、必要に応じて記述文字列をモジュール150、160および170に送信することによって、記述文字列130を入手する。
ブロック220において、注釈モジュール150は、トークンの一部をデータベース110内の規定の属性(すなわち、列)と相関させる。ブロック220の相関は、図3および方法300を参照して後で詳細に説明する。しかしながら、通常、記述文字列130からのトークンを電子棚札データベース110内の規定の属性と相関させることは、例えば、注釈文字列140を部分的にポピュレートするための初期化として機能する。
すなわち、例えば、後続の要素がトークンと規定の属性との間の既知の関係から導出された相関を使用する可能性があるため、トークンと規定の属性との間の少なくとも一部のマッチ(match)を識別することは、例えば、ブロック230で行われるマッチの生成を改善することができる。いずれにしても、ブロック220において、注釈モジュール150は、トークンとマッチする規定の属性を識別することによって、少なくとも一部のトークンを規定の属性にマッピング/リンクする。
一実施形態において、注釈モジュール150は、注釈文字列140を用いて、記述文字列130内のトークンを識別し、当該トークンを規定の属性にマッピングする。例えば、注釈文字列150の各々は、記述文字列130の各々の値のプレースホルダ(placeholder)を含む。すなわち、注釈文字列140は、記述文字列130と1対1で対応する。したがって、記述文字列130の各々は、対応する注釈文字列140を有する。
また、注釈文字列140の各々は、対応する記述文字列と同様の数の文字を含む。注釈モジュール150は、記述文字列130のトークンとデータベース110の規定の属性との間のマッチを識別すると、規定の属性を示す特有の識別子を用いて各注釈文字列140の対応位置をマーク/注釈することによって、当該マッチを注釈文字列140と規定の属性との間にマッピングする。このようにして、コンピューティングシステム100は、注釈文字列140を用いて、識別されたトークンおよび識別されていないトークンを追跡する。注釈文字列140の例は、以下でより詳細に説明され、表1および4に示される。
ブロック230において、推論モジュール160は、識別されていないトークンの推奨(suggested)マッチを生成する。すなわち、ブロック220で相関を行った後、一部のトークンが識別されたが、残りのトークンがまだ識別されていない(すなわち、データベース110内の列/属性にマッチングされていない)。したがって、トークンをさらに識別するために、推論モジュール160は、識別されたトークンと規定の属性との間の既知の相関に従って、識別されていないトークンの全てまたは一部のマッチを推論する。一実施形態において、推論モジュール160は、相関の関数である統計モデルを用いて、マッチを推論(推測)する。例えば、推論モジュール160は、少なくとも部分的に条件付き確率場(CRF)解析に基づいた機械学習ルーチンを実行することによって、統計モデルを生成することができる。
続いて、推論モジュール160は、例えば、注釈文字列140および記述文字列130を電子入力として用いて統計モデルを訓練(すなわち、生成)することによって、推奨マッチを生成する。推論モジュール160は、識別された相関およびモデルからの他の情報を用いて、識別されていないトークンについての推奨マッチを生成する。また、一実施形態において、識別されていないトークンの推奨マッチを再検討して、受け入れるまたは拒否する。例えば、検証のために、推奨マッチは、グラフィカルユーザインタフェイス(GUI)に変換され、ユーザに提示されてもよい。したがって、通信モジュール180は、通信ネットワーク190を介して、推奨マッチを含むGUIを遠隔装置に提供し、遠隔装置で推奨マッチを含むGUIをユーザに表示させることができる。その後、ユーザは、正しい推奨マッチ(すなわち、注釈文字列を更新し且つ識別されていないトークンをデータベース110の列にマッピングするために使用されるべきマッチ)を選択的に検証することができる。
通常、相関は、特定の属性に関連するトークンの典型的な長さ、特定の文字の有無、特定の属性の記述文字列における文字の相対位置などを含むことができる。このようにして、推論モジュール160は、注釈文字列を反復的に更新し且つ識別されていないトークンをデータベース110の列にマッピングするために使用される推奨マッチを提供する。
方法400を用いて以下でブロック230の詳細を説明するが、理解すべきことは、注釈文字列140の更新が反復的に実行され、各後続の反復において現在の推奨マッチから収集された改善をモデルに適用することによって、各後続の反復とのマッチングを改善することである。したがって、推論モジュール160は、例えば、識別されていないトークンと規定の属性との間に新たなマッチを生成できなくなるまで、推奨マッチを反復的に生成することによって、注釈文字列140を更新することができる。
ブロック240において、注釈モジュール150は、記述文字列140におけるエラーを検出する。一実施形態において、注釈モジュール150は、ブロック230で注釈文字列を解析することによって整合性チェックを実行することによって、記述文字列140と規定の属性との間のマッピングの精度を検証する。したがって、一実施形態において、ブロック230で得られた元の注釈文字列140は、推論モジュール160によって完全に生成された新たな注釈文字列と比較される。例えば、2つのセットの注釈文字列の間の不一致は、可能なエラーとして識別される。
さらに、一実施形態において、識別された可能なエラーを再検討して、受け入れるまたは拒否することができる。例えば、検証のために、可能なエラーは、グラフィカルユーザインターフェイス(GUI)に変換され、ユーザに提示されてもよい。したがって、通信モジュール180は、通信ネットワーク190を介して、エラーを含むGUIを遠隔装置に提供し、遠隔装置でエラーを含むGUIをユーザに表示させることができる。その後、ユーザは、有効なエラー(すなわち、エラーが存在するため、置換されるべき注釈)を選択的に検証することができる。したがって、GUIは、ユーザとの対話に従って制御入力を生成し、通信モジュール180に送り返す。続いて、コンピューティングシステム100は、制御入力に従って注釈文字列140を更新する。エラー検出の更なる態様については、方法500を用いて以下で説明する。
ブロック250において、構造モジュール170は、ブロック220〜240の結果を電子棚札データベース110に出力する。一実施形態において、構造モジュール170は、注釈文字列140を用いて、各記述文字列130から属性を抽出して、電子データ構造、例えばデータベーステーブルに入れる。データベーステーブルは、例えば、電子棚札データベース110に指定された規定の属性の各々と相関する異なる列を含む。したがって、構造モジュール170は、注釈文字列140を用いて、記述文字列130から、規定の属性の値(例えば、トークン)を抽出し、抽出した値をテーブルの適切な列に格納する。
このようにして、構造モジュール170は、記述文字列130からの属性を適切な列に編成およびリンクすることによって、記述文字列130を構造化する。これによって、属性を識別することができ、データベース110に使用することができる。その後、構造モジュール170は、テーブルをデータベース110に格納して、整理された関連情報を製品の記述にポピュレートする。したがって、コンピューティングシステム100は、方法200に従って動作し、非構造化記述文字列内の属性情報を受信/利用し、記述文字列を棚札データベース110内のデータベーステーブルに変換することによって、電子応用のためにこれらの属性を索引付け、分類、照会またはコンピューター化することができる。
方法300を示す図3を参照する。上記で説明したように、方法300は、図2のブロック220に関する更なる詳細を示す。したがって、一実施形態において、方法300は、注釈モジュール150によって実行される。
したがって、ブロック305において、注釈モジュール150は、注釈文字列を作成する。一実施形態において、注釈モジュール150は、メモリ120において電子データ構造を生成することによって、注釈文字列を作成する。電子データ構造は、記述文字列130の各々と相関する異なる文字列を含む。さらに、注釈モジュール150は、記述文字列130内のトークンの全てが識別されていないことを特定する値を用いて、注釈文字列140の各々を初期化する。
表1は、注釈モジュール150が注釈文字列140を生成および初期化した後、3つの異なる記述文字列および対応する注釈文字列の例を示す。表1の記述文字列は、ヨーグルトカテゴリの3つの異なる製品に関連する。さらに、表1には、各注釈文字列140が、対応する記述文字列130と1対1で対応する文字を含む。注釈文字列における値「O」は、境界マーカまたはトークンの一部である関連文字が識別されていないことを示す。この例では「O」を使用しているが、任意の特有の文字を使用することができる。
Figure 0006850806
ブロック310において、注釈モジュール150は、記述文字列130を解析することによって、トークン頻度を決定する。トークン頻度は、例えば、記述文字列130において各異なるトークンの出現回数である。通常、トークンは、本明細書において境界マーカとも呼ばれた英数字以外の文字(例えば「%」、「#」、「/」、「?」、「スペース」)によって、記述文字列内の他の文字から区切られた連続する英字セットまたは数字セットとして定義される。したがって、特定のトークンは、例えば、数字と英字との間のスイッチとしての境界マーカによって、他の文字から区切られた任意の特定の文字セットである。
したがって、注釈モジュール150は、例えば、異なるトークンの記述文字列130を走査(すなわち、パース)し、異なるトークンを文字列内のトークンと比較し、異なるトークンの各マッチのカウント値を維持することによって、トークン頻度を決定する。
その後、ブロック315において、注釈モジュール150は、異なるトークンのトークン頻度に従ってトークンをフィルタリングすることによって、トークンをリストアップする。したがって、一実施形態において、注釈モジュール150は、トークン頻度に従って異なるトークンを分類し、分類した異なるトークンをリストに出力する。一実施形態において、通信モジュール180は、通信ネットワーク190を介してリストを送信し、リモート装置のGUI上で、リストを警告または他のプロンプトとしてユーザに表示させる。
Figure 0006850806
表2は、3つの記述文字列の例示的なトークンのリストを示す。この例示的なリストから見られるように、トークン「gr」は、最も高いトークン頻度3を有し、リスト内の他のトークンは、より低いトークン頻度を有する。一実施形態において、表2の例では全てのトークンがリストアップされているが、注釈モジュール150は、より重要なトークンを表示するために、Nよりも大きい頻度を有するトークンのみをリストアップすることができる。
ブロック320で、注釈モジュール150は、トークン制御入力に従って、注釈文字列を変更する。一実施形態において、注釈モジュール150は、通信モジュール180を介して遠隔装置上のGUIからトークン制御入力を受信する。別の実施形態において、トークン制御入力は、ユーザによってコンピューティングシステム100のI/Oポートを介して入力されたトークンおよび/または電子入力の規定の相関に従って、自動的に生成されてもよい。さらに別の実施形態において、トークン制御入力は、トークンを属性にマッチングするための規定の規則に従って、自動的に生成されてもよい。
いずれの場合、トークン制御入力は、トークンの少なくとも一部を規定の属性と相関させる。一実施形態において、注釈モジュール150は、規定の属性と相関された異なるトークンに、特有のラベルを割り当てる。表3は、2よりも大きいトークン頻度を有する各異なるトークンに割り当てられたラベル(すなわち、特有の識別子)を示す。
Figure 0006850806
したがって、注釈モジュール150は、ラベル付き異なるトークンを用いて、異なるトークンに対応する位置に位置する注釈文字列を注釈する(すなわち、標記する)。一実施形態において、注釈モジュール150は、トークン制御入力に従って識別されたラベル付きトークンに対応する注釈文字列140のデータ構造内の位置を変更することによって、注釈を行う。
注釈文字列140を変更する一例を表4に示す。表4は、表1および表2に示された3つの記述文字列と同様の記述文字列を示す。表4において、ラベル付きトークンを反映するために、注釈モジュール150は、対応する注釈文字列を変更した。なお、製品の記述文字列内の各文字は、注釈文字列においてトークンの識別ラベルを示す文字またはトークンが初期化の時に識別されていない(すなわち、「O」)ことを示す文字に対応している。
Figure 0006850806
方法300を継続すると、方法300の要素325〜345は、注釈文字列を絞り込むことを示す。すなわち、少なくとも一部のトークンおよびデータベース110の規定の属性をマッピング/リンクするように注釈文字列を初期に注釈すると、注釈モジュール150は、注釈文字列を絞り込むことによって、識別されていないトークンに対応する規定の属性をさらに識別する。
ブロック325において、注釈モジュール150は、隣接するトークンに従って有向グラフを生成することによって、注釈文字列140の絞り込みを開始する。一実施形態において、注釈モジュール150は、メモリ120において隣接するトークンの関係を格納する電子データ構造(例えば、リンクリスト、木構造)を生成し、有向グラフを定義するトークン間の関係を電子データ構造にポピュレートすることによって、有向グラフを生成する。
また、本開示に使用されている有向グラフは、個々の記述文字列における2つの隣接するトークンの任意の組み合わせである。したがって、各有向グラフは、第1のトークンおよび第2のトークンを含む。方法300の主な目的がトークンを規定の属性と相関させることであるため、注釈モジュール150は、識別されたトークンである第1のトークンおよび識別されていないトークンである第2のトークンを含む有向グラフを生成する。このようにして、トークンおよび隣接トークン間の相関をさらに解析することによって、識別されていないトークンが識別されたトークンと同様の属性に相関しているか否かを判断することができる。
したがって、ブロック330において、注釈モジュール150は、有向グラフを解析することによって、各々の有向グラフ(すなわち、各々のトークン対)の有向グラフ頻度を決定する。注釈モジュール150は、ブロック330では、個々のトークンではなく有向グラフを処理することを除いて、ブロック310と同様の機能を実行する。したがって、ブロック330において、注釈モジュール150は、各々の有向グラフをマッチングするために記述文字列130を走査し、各有向グラフの有向グラフ頻度のカウント値を維持する。このようにして、各有向グラフの出現数を決定することができる。
ブロック335において、注釈モジュール150は、有向グラフ頻度に従って有向グラフをフィルタリングすることによって、有向グラフをリストアップする。一実施形態において、注釈モジュール150は、有向グラフ頻度に従って各々の有向グラフを分類し、分類した有向グラフをリストに出力する。一実施形態において、通信モジュール180は、通信ネットワーク190を介してリストを送信し、リモート装置のGUI上でリストを警告または他のプロンプトとしてユーザに表示させる。
Figure 0006850806
表5は、上記の表1〜4からの例の続きを示す。通常、有向グラフは、有向グラフの全体(すなわち、複数のトークン)を単一の属性として同時に注釈すべき状況に対する識見を提供する。例えば、単一のトークンではなく2つのトークンを含むブランド名は、有向グラフを解析した後に注釈することができる。表5において、トークン1とトークン2の組み合わせは、有向グラフを表す。
ブロック340において、注釈モジュール150は、有向グラフ制御入力に従って、第1のトークンの注釈を用いて第2のトークンの注釈を置換することによって、注釈文字列140を変更する。一実施形態において、注釈モジュール150は、通信モジュール180を介して、遠隔装置上のGUIから有向グラフ制御入力を受信する。別の実施形態において、有向グラフ制御入力は、有向グラフの規定の相関および/またはユーザによってコンピューティングシステム100のI/Oポットを介して入力された電子入力に従って、自動的に生成されてもよい。いずれの場合、注釈モジュール150は、有向グラフ制御入力を用いて、有向グラフにおいて同一の規定の属性に対応するトークンを相関させる。
Figure 0006850806
表6は、有向グラフ制御入力を「承認」列に示す。表6の例において、有向グラフ制御入力は、「リンゴ」と「イチゴ」の組み合わせに対して承認を示している。すなわち、承認は、トークン「イチゴ」(すなわち、ラベル「F」)に使用されるラベルおよび対応する規定の属性がトークン「リンゴ」にも適用することを示す。したがって、表7に示すように、注釈モジュール150は、識別されたトークンを反映するように、有向グラフを含む記述文字列に対応する注釈文字列を更新する。
Figure 0006850806
このようにして、記述文字列130の注釈は、識別されていないトークンを電子棚札データベース110の規定の属性にさらに相関するように絞り込まれる。
更なるトークンを識別するように注釈文字列140の単一の絞り込みを説明したが、ブロック325から345までの注釈文字列140の絞り込みは、例えば、最高頻度で部分的に注釈された有向グラフ(例えば、1つの識別されたトークンおよび1つの識別されていないトークンを含む有向グラフ)の頻度が閾値量(例えば、<N)を満たすまでまたは注釈の置換に承認される有向グラフがいなくなるまで、反復的に実行されてもよい。
さらに、ブロック345において、注釈モジュール150は、注釈の置換に承認されなかった有向グラフを示す未承認有向グラフのリストを生成する(すなわち、表6にリストアップされている未承認)。その後の絞り込みの反復を行う場合、既に承認の検討を行った未承認の有向グラフは、リストから隠されてもよい。したがって、その後の反復を行う場合、ブロック335で未承認の有向グラフのリストを単純化することができる。
方法300が完了した後、コンピュータシステム100は、方法400に対応する方法200のブロック230に進む。方法400は、主にコンピューティングシステム100の推論モジュール160によって実行され、方法300が完了した後に注釈文字列140および記述文字列130から推定された相関に従って、推奨マッチを生成する。このようにして、注釈文字列140によって蓄積された記述文字列のトークンと文字との間の関係を用いて、トークンをさらに識別することができる。
したがって、推論モジュール160は、ブロック410において複数の製品をトレーニングセットおよびテストセットに分割することによって、方法400を開始する。一実施形態において、ブロック410の分割は、第1グループの製品の記述文字列および注釈文字列をトレーニングセットにグループ化することと、第2グループの製品の記述文字列および注釈文字列をテストセットにグループ化することとを含む。以下で詳述するように、後続のブロックは、テストセット内の記述文字列のために、新たなテスト用注釈文字列を生成する。新たなテスト用注釈文字列を注釈文字列140からの元のテスト用注釈文字列と比較することによって、トークンおよび属性間の新しいマッチを発見する。
さらに、一実施形態において、推論モジュール160は、選択された分布に従って製品(すなわち、記述および注釈文字列)を分割/グループ化することによって、2つの異なる文字列のセットを電子入力として後続のブロック420〜440に提供する。製品を分割するために選択された分布は、いくつかの異なるオプションのうち1つ以上を含むことができる。例えば、注釈文字列の注釈品質(例えば、高いパーセントでトレーニングセットを注釈し、低いパーセントでテストセットを注釈すること)に従っておよび/または一度に1つの属性に従って、製品を2つのセットにランダムに分割することができる。
表9は、製品をセットに分割する一例を示す。表9において、推論モジュール160は、属性に従ってセット間の文字列をグループ化した。すなわち、推論モジュール160は、ブランド属性の識別されたトークンを含む記述文字列をトレーニングセットにグループ化し、ブランド属性の識別されていないトークンを含む記述文字列をテストセットにグループ化する。
Figure 0006850806
一実施形態において、分布の選択は、機械学習に使用され得る相関を用いて注釈文字列を含むトレーニングセットを生成するように行われる。例えば、推論モジュール160は、トレーニングセットの注釈文字列からの相関およびより完全な情報を用いて、記述文字列130とデータベース110の規定の属性との間のマッチを表す相関および他のデータに従って、統計モデルを訓練する。
いずれの場合、ブロック410において、製品は、方法400の各反復によってグループに分割される。その後の反復は、予め選択された分布によって指定された選択に応じて(例えば、異なる属性または異なるオプションに従って)、同様の分割または異なる分割を使用することができる。
製品をセットに分割した後、推論モジュール160は、ブロック420において、テストセットのトークンと規定の属性との間のマッチを提案する。一実施形態において、推論モジュール160は、トレーニングセットのトークンと規定の属性との間の相関に従って、マッチを推定する。
例えば、ブロック420の初期化動作として、推論モジュール160は、機械学習技術を用いて、トレーニングセットの注釈文字列140およびトレーニングセットの記述文字列130からの情報をモデル化する。一実施形態において、機械学習技術は、トレーニングセットに対して条件付き確率場(CRF)解析を行うことを含む。推論モジュール160は、トレーニングセット内のデータ要素間のパターン/相関を認識するために、トレーニングセットをパース(parse)、走査(scan)または他の方法で解析することによってCRF解析を実行する。通常、トレーニングセットは、属性間のパターン例を具体化するためのサンプルセットとして機能する。したがって、推論モジュール160は、CRF解析を用いて、文字レベルで、(1)属性の値および特徴、および(2)属性/トークンの隣接文字間の関係/相関を学習する。
すなわち、推論モジュール160は、属性の値および特徴並びに規定の属性とマッチする識別されたトークンに隣接する文字間の関係/相関をモデル化する電子データ構造を生成する。続いて、推論モジュール160は、情報をモデルに適用することによって、テストセット内の記述文字列130のトークンとデータベース110の列内の規定の属性との間の推奨マッチを生成する。
例えば、トレーニングセットのCRF解析は、各属性のいくつかの実際値(すなわち、トレーニングセット内で相関する値)を学習する。また、CRF解析は、属性の特徴、例えば、属性値の典型的な長さ(例えば、ブランド名に対する測定単位の長さ)、特定の属性に関連する値が数字(例えば、体積、重量など)を含むか否か、および特定の属性(例えば、最初に出現するブランド値と最後に出現するサイズ)の記述文字列内の値の相対的な位置も学習する。
さらに、推論モジュール160は、トレーニングセットデータをパースおよび走査することによって、CRF解析をさらに実行し、特定の文字が特定の属性に関連付けられているか否か、隣接する文字がどの属性に関連付けられているかなどを学習する。一例として、推論モジュール160は、一連の数字の後に続く英字トークンが測定単位である可能性が高いことを示すことができる。いずれの場合、推論モジュール160は、トレーニングセットから、トークンが特定の属性とマッチングする確率を特徴付けるデータを生成して収集し、統計モデルを生成してメモリ120に格納する。
その後、推論モジュール160は、統計モデルを用いて、マッチを推定し、テストセットの記述文字列130の記述文字列に新たなテスト用注釈文字列を注釈する。このようにして、推論モジュール160は、テストセットの記述文字列130の各々に新たな注釈文字列を生成し、テストセットの記述文字列130内のトークンと規定の属性との間の可能なマッチを提案する。
推論モジュール160は、ブロック420の結果としての推奨マッチに従って、新たなテスト用注釈文字列を注釈する。したがって、推論モジュール160は、新たなテスト用注釈文字列をメモリ120に格納することができる。
ブロック430において、推論モジュール160は、ブロック420で生成された新たなテスト用注釈文字列をテストセット内の製品の元の注釈文字列140と比較する。テスト用注釈文字列と元の注釈文字列と比較することによって、テストセット内の識別されていないトークンの規定の属性を識別することができる。
Figure 0006850806
表10は、推論モジュール160が、過去にて製品の元の注釈文字列から識別されていなかったテスト用文字列内のブランド属性を自動的に注釈する方法を示す。したがって、ブロック430において、推論モジュール160は、文字列を比較し、新たに識別されたトークンをマッチとして提案する。
ブロック440において、推論モジュール160は、新たなテスト用注釈文字列から新たに識別されたトークンの注釈を元の注釈文字列140に選択的に記録する。一実施形態において、推論モジュール160は、ブロック430から推定されたマッチをリストアップし、承認リストを提供する。一実施形態において、通信モジュール180は、通信ネットワーク190を介してこのリストを送信し、リモート装置のGUI上で、リストを警告または他のプロンプトとしてユーザに表示させる。
さらに、一実施形態において、推論モジュール160は、通信モジュール180を介して、遠隔装置上のGUIから承認制御入力を受信する。別の実施形態において、承認制御入力は、規定の規則(例えば、推論されたマッチを常に承認する規則、または同一マッチの数が閾値を超えたときに承認する規則)および/またはユーザによってコンピューティングシステム100のI/Oポートを介して入力された電子入力を含むことができる。いずれの場合、承認制御入力は、ブロック420で生成された推奨マッチを元の注釈文字列140に記録するか否かを制御する。
ブロック450において、推論モジュール160は、ブロック420からの推奨マッチの数が規定の閾値を満たすか否かを判断する。規定の閾値は、方法400を実行することによって推定マッチがさらに生成されないまたは推奨マッチが規定の数よりも少ないなどの条件を示す。通常、規定の閾値は、推論モジュール160が例えば更なる改善が得られないまで推奨マッチを反復的に生成し、注釈文字列を更新するように選択される。
したがって、一実施形態において、推論モジュール160は、ブロック410〜450を繰り返すことによって、多くの反復で注釈文字列140をさらに更新するように構成される。通常、新たに識別された各トークンが記録され、その後ブロック420でモデルを更新するために使用されるため、推論モジュール160は、方法400を繰り返す。したがって、各後続の反復は、更なるマッチを推論するためのモデルデータの改良を含む。その結果、後続の反復は、以前に見逃したトークンのマッチを提案することができる。このように、推論モジュール160は、文字列を反復的に解析することによって、トークンの識別を改善すると共に、属性の抽出を改善する。
方法500は、図2のブロック240で簡単に説明したように、注釈文字列140内のエラーを検出する態様を記載する。方法500は、いくつかの特徴で方法400と同様である。例えば、方法500の主な意図は、トークンと注釈文字列の規定の属性との間のマッチを識別することである。すなわち、方法400の結果は、例えば、全ての注釈文字列140を完全に注釈することである。したがって、方法500は、注釈を再生成することによって、注釈文字列140内の矛盾を識別しようとする。例えば、コンピューティング装置100、より具体的に推論モジュール160は、前述したCRF解析を用いて新たなテスト用注釈文字列を識別するように方法500を実行する。このようにして、推論モジュール160は、追加の注釈文字列セットを生成することによって、元の注釈文字列140を交差検証し、注釈の一貫性をチェックすることによって、注釈文字列140と方法400から提供された規定の属性との間の相関の精度を検証する。
上述したように、方法500は、方法400と類似するいくつかの特徴を含む。したがって、簡潔のために、通常、方法400を参照しながら、方法500と方法400との間の相違点を指摘する。
推論モジュール160は、ブロック510で記述文字列および対応する注釈文字列をトレーニングセットおよびテストセットに分割することによって、方法500を開始する。方法400のブロック410に関連して説明したように、通常、文字列をトレーニングセットおよびテストセットに分割することは、文字列の一部を各セットにグループ化し、テストセット内の各記述文字列のテスト用注釈文字列を開始することを含む。同様に、ブロック510において、記述文字列および注釈文字列を各々のグループに分割し、テストセット内の記述文字列のために新たなテスト用注釈文字列を作成する。
しかしながら、ブロック510では、製品は、例えば、2つのセットにランダムに分割される。その理由は、方法400をもって上述したように、記述文字列130からのトークンが注釈文字列140において既に注釈されているからである。したがって、注釈文字列140が既に完了したため、他の特定のオップションに従って製品を分割しても、必ずしも方法500の動作を改善することはない。
ブロック520において、推論モジュール160は、ブロック420に関して説明したように、テストセットのトークンと規定の属性との間のマッチを推論する。ブロック520とブロック420との主な違いは、推論モジュール160がトレーニングおよびCRF解析を用いて、ブロック420のように新たなトークンを識別するのではなく、ブロック520で以前に識別されたトークンと推奨マッチとの間の矛盾を識別する。その理由は、方法400を用いてトークンを既に識別したため、方法500の目的は、新たなトークンを識別するのではなく、エラーを検出することであるからである。したがって、推論モジュール160は、ブロック520でテストセットの全てのトークンを新たに注釈/マッピングすることによって、ブロック530で比較を行うための新たなテスト用注釈文字列を提供する。
方法500を継続すると、推論モジュール160は、ブロック530において、テスト用注釈文字列をテストセット内の製品の元の注釈文字列140と比較する。ブロック530に行われた比較は、元の注釈文字列140と、生成されたテストセット内の製品の新たなテスト用注釈文字列との間の提示エラーを識別する。推論モジュール160は、提示エラーをリストに格納するまたは次の承認/否認のために提示エラーを表示する。
ブロック540において、推論モジュール160は、元の注釈文字列140の提示エラーを選択的に訂正する。一実施形態において、推論モジュール160は、提示エラーの各々を訂正するか否かを示すエラー制御入力を受信する。一実施形態において、エラー制御入力は、属性を編集することができるユーザグループからのクラウドソース(crowd source)承認/不承認を示す。さらに、別の実施形態において、推論モジュール160は、全ての提示エラーを自動的に修正してもよく、同一のエラーの数が閾値を超える場合に提示エラーを修正してもよい。このようにして、誤って注釈されたトークンを識別および訂正することによって、記述文字列130から属性を抽出する精度を改善する。
ブロック550において、規定の閾値をチェックする。一実施形態において、規定の閾値は、エラーをチェックするために方法500を繰り返す回数であってもよい。別の実施形態において、規定の閾値は、更なるエラーが承認されなくなるまで、方法500を繰り返すことを示す。このようにして、方法400の反復と同様に、後続の反復に追加の提示エラーをもたらすより正確なデータを用いて注釈文字列140を更新することによって、モデルを改善することができる。さらに、方法500を繰り返して実行することによって、最終的に全ての記述文字列を少なくとも1つの反復によるテストセットに含むことができ、したがって少なくとも1回で可能なエラーをチェックすることができる。
コンピューティング装置の実施形態
図6は、本明細書に記載された1つ以上の例示的なシステムおよび方法および/または等価物で構成および/またはプログラムされたコンピューティング装置の例を示す。例示的なコンピューティング装置は、バス608によって動作可能に接続されたプロセッサ602、メモリ604および入出力ポート610を含むコンピュータ600であってもよい。一例では、コンピュータ600は、図1のコンピューティングシステム100および関連する方法200〜500と同様に、記述ストリングから非構造化属性を容易に抽出するように構成された注釈ロジック630を含むことができる。異なる例では、抽出ロジック630は、ハードウェア、命令を記憶する非一時的なコンピュータ可読媒体、ファームウェア、および/またはそれらの組み合わせで実装されてもよい。抽出ロジック630は、バス608に取り付けられたハードウェア要素として示されているが、他の実施形態では、抽出ロジック630は、プロセッサ602に実装され、メモリ604に格納され、またはディスク606に格納されてもよい。
一実施形態において、ロジック630またはコンピュータは、説明された動作を実行するための手段(例えば、ハードウェア、非一時的コンピュータ可読媒体、ファームウェアなどの構造体)である。いくつかの実施形態において、コンピューティング装置は、クラウドコンピューティングシステムで動作するサーバ、SaaS(Software as a Service)アーキテクチャに構築されたサーバ、スマートフォン、ラップトップ、タブレットコンピューティング装置などであってもよい。
この手段は、例えば、識別された相関に従って注釈文字列に注釈し、識別されていないトークンと規定の属性との間のマッチを推測するようにプログラムされたASICとして実装することができる。また、この手段は、メモリ604に一時的に格納されるデータ616としてコンピュータ600に提示され、その後プロセッサ602によって実行されるコンピュータ実行可能な命令として実装されてもよい。
また、ロジック630は、条件付き確率場(CRF)解析を実行することによって、マッチを推定し、推定されたマッチに従って属性を抽出し、非構造化データをデータベースに格納された構造化属性に変換するための電子棚札データベースのテーブルである電子データ構造を生成するための手段(例えば、ハードウェア、実行可能な命令を記憶する非一時的なコンピュータ可読媒体、ファームウェア)を提供することができる。
コンピュータ600の例示的な構成を概ね説明すると、プロセッサ602は、デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャを含む様々なプロセッサであってもよい。メモリ604は、揮発性メモリおよび/または不揮発性メモリを含むことができる。不揮発性メモリは、例えば、ROM、PROMなどを含むことができる。揮発性メモリは、例えば、RAM、SRAM、DRAMなどを含むことができる。
記憶ディスク606は、例えば、入出力(I/O)インターフェイス(例えば、カード、デバイス)618および入出力ポート610を介して、コンピュータ600に動作可能に接続されてもよい。ディスク606は、例えば、磁気ディスクドライブ、ソリッドステートディスクドライブ、フロッピー(登録商標)ディスクドライブ、テープドライブ、Zipドライブ、フラッシュメモリカード、メモリスティックなどであってもよい。また、ディスク606は、CD−ROMドライブ、CD−Rドライブ、CD−RWドライブ、DVD ROMなどであってもよい。メモリ604は、例えば、プロセス614および/またはデータ616を格納することができる。ディスク606および/またはメモリ604は、コンピュータ600のリソースを制御および割り当てるオペレーティングシステムを格納することができる。
コンピュータ600は、I/Oインターフェイス618および入出力ポート610を介して、入出力(I/O)装置と対話することができる。入出力装置は、例えば、キーボード、マイクロフォン、ポインティングおよび選択装置、カメラ、ビデオカード、ディスプレイ、ディスク606、ネットワーク装置620などを含む。入出力ポート610は、例えば、シリアルポート、パラレルポートおよびUSBポートを含むことができる。
コンピュータ600は、ネットワーク環境で動作することができるため、I/Oインターフェイス618および/またはI/Oポート610を介してネットワーク装置620に接続することができる。コンピュータ600は、ネットワーク装置620を介して、ネットワークと対話することができる。コンピュータ600は、ネットワークを介して、リモートコンピュータに論理的に接続することができる。コンピュータ600が対話することができるネットワークは、LAN、WANおよび他のネットワークを含むがこれらに限定されない。
定義および他の実施形態
別の実施形態において、記載の方法および/またはその均等物は、コンピュータ実行可能な命令を用いて実装されてもよい。したがって、一実施形態において、非一時的コンピュータ可読/記憶媒体は、格納されたアルゴリズム/実行可能アプリケーションのコンピュータ実行可能な命令を含むように構成され、これらの命令は、機械装置によって実行されると、機械装置(および/または関連する要素)に方法を実行させる。例示的な機械装置は、プロセッサ、コンピュータ、クラウドコンピューティングシステムで動作するサーバ、SaaS(Software as a Service)アーキテクチャに構築されたサーバ、スマートフォンなどを含むがこれらに限定されない。一実施形態において、コンピューティング装置は、開示された方法のいずれかを実行するように構成された1つ以上の実行可能なアルゴリズムで実装される。
1つ以上の実施形態において、開示された方法またはその均等物は、方法を実行するように構成されたコンピュータハードウェアによって実行され、または非一時的なコンピュータ可読媒体に格納されたモジュールに組み込まれ、コンピューティング装置の少なくともプロセッサによって実行されると方法を実行するように構成された実行可能なアルゴリズムとして構成されたコンピュータ命令によって実行される。
説明を簡略化するために、図面に示された方法は、アルゴリズムの一連のブロックとして図示および説明されているが、理解すべきことは、これらの方法はブロックの順序によって制限されていないことである。いくつかのブロックは、図示および説明された順序と異なる順序でおよび/または他のブロックと同時に実行することができる。また、図示されたブロックの全てより少ないブロックを用いて、例示された方法を実施することができる。これらのブロックを複数の動作/コンポーネントに結合してもよく、複数の動作/コンポーネントに分割してもよい。さらに、追加および/または代替の方法は、ブロックに示されていない追加の動作を利用することができる。
以下に、本明細書に使用された一部の用語の定義を説明する。定義は、用語の範囲に含まれ、実施に使用され得る要素の様々な例および/または形態を含む。これらの例は、限定の意図をしていない。用語の単数形および複数形の両方は、定義に含まれる。
「1つの実施形態」、「一実施形態」、「1つの例」、「一例」などを言及する場合、記載された実施形態または例が特定の特徴、構造、特性、性質、要素または制限を含み得るが、必ずしも全ての実施形態または例が特定の特徴、構造、特性、性質、要素または制限を含むわけではない。また、「一実施形態において」という語句を繰り返して使用する場合、同一の実施形態を指す可能性があるが、必ずしも同一の実施形態を指すことはない。
「データ構造」という用語は、本明細書に使用される場合、メモリ、記憶装置または他のコンピュータ化システムに記憶されているコンピュータシステム内のデータ構成である。データ構造は、例えば、データフィールド、データファイル、データアレイ、データレコード、データベース、データテーブル、グラフ、ツリー、リンクリストなどのいずれか1つであってもよい。データ構造は、多くの他のデータ構造(例えば、多くのデータレコードを含むデータベース)から形成されてもよく、多くの他のデータ構造を含むことができる。他の実施形態によれば、他のデータ構造の例も可能である。
「コンピュータ可読媒体」または「コンピュータ記憶媒体」という用語は、本明細書に使用される場合、実行されると開示された1つ以上の機能を実行するように構成された命令および/またはデータを記憶する非一時的な媒体を指す。いくつかの実施形態において、データは、命令として機能することができる。コンピュータ可読媒体は、不揮発性媒体および揮発性媒体を含むがこれらに限定されない。不揮発性媒体は、例えば、光ディスク、磁気ディスクなどを含むことができる。揮発性媒体は、例えば、半導体メモリ、動的メモリなどを含むことができる。コンピュータ可読媒体の一般的な形態は、コンピュータ、プロセッサまたは他の電子装置が機能することができるフロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、他の磁気媒体、特定用途向け集積回路(ASIC)、プログラマブルロジック装置、コンパクトディスク(CD)、他の光学媒体、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、メモリチップまたはメモリカード、メモリスティック、ソリッドステートストレージ装置(SSD)、フラッシュドライブ、および他の媒体を含むがこれらに限定されない。各種類の媒体は、実装のために1つの実施形態に選択された場合、1つ以上の開示および/または請求された機能を実行するように構成されたアルゴリズムの命令を記憶することができる。
「ロジック」という用語は、本明細書に使用される場合、本明細書に記載の機能または動作のいずれかを実行するおよび/または他のロジック、方法および/またはシステムからの機能または動作を実行させるように構成されたコンピュータまたは電気ハードウェア、実行可能なアプリケーションまたはプログラムモジュールの命令を記憶する非一時的な媒体および/またはこれらの組み合わせを用いて実装されたコンポーネントを表す。ロジックの同等物は、開示された機能のうち1つ以上を実行するように構成され得るファームウェア、アルゴリズムでプログラムされたマイクロプロセッサ、離散ロジック(例えばASIC)、少なくとも1つの回路、アナログ回路、デジタル回路、プログラムされたロジック装置、アルゴリズムの命令を含むメモリ装置などを含んでもよい。一実施形態において、ロジックは、開示された機能のうち1つ以上を実行するように構成された1つ以上のゲート、ゲートの組み合わせ、または他の回路要素を含むことができる。複数のロジックを説明する場合、複数のロジックを1つのロジックに組み込むことが可能である。同様に、単一のロジックを説明する場合、単一のロジックを複数のロジックに分けることが可能である。一実施形態において、1つ以上のロジックは、開示および/または請求された機能を実行することに関連する構造に対応する。所望のシステム条件または仕様に基づいて、実装するロジックを選択することができる。たとえば、速度を重視する場合、ハードウェアを選択して、機能を実施する。より低いコストを重視する場合、記憶命令/実行可能なアプリケーションを選択して、機能を実施する。
「ユーザ」という用語は、本明細書に使用される場合、1人以上の人間、コンピュータまたは他の装置、もしくはこれらの組み合わせを含むがこれらに限定されない。
開示された実施形態は、かなり詳細で図示され記載されているが、添付の特許請求の範囲をその詳細に限定または制限することを意図していない。当然ながら、主題の様々な態様を説明するために、考えられる構成要素または方法のあらゆる組み合わせを記述することは不可能である。したがって、本開示は、特定の詳細または図示および説明された例示に限定されない。したがって、本開示は、添付の特許請求の範囲に含まれる変更、修正および変形を包含することを意図している。
「含む」(includeまたはincluding)という用語は、詳細な説明または特許請求の範囲に使用される場合、請求項の移行語として使用される用語「comprising」と同様に、包括的意味を有すると意図されている。
「または」という用語は、詳細な説明または特許請求の範囲に使用される場合(例えば、AまたはB)、「AまたはBまたは両方」を意味することが意図されている。出願人が「両方ではなく、AまたはBのみ」を指すことを意図する場合、「両方ではなく、AまたはBのみ」というフレーズを使用する。したがって、「または」という用語は、本明細書において、排他的な意味ではなく、包括的な意味を有するものとして使用される。

Claims (10)

  1. 命令を含むコンピュータ可読プログラムであって、前記命令は、コンピューティング装置の1つ以上のプロセッサによって実行されると、前記コンピューティング装置に少なくとも以下のことを実行させ、
    前記以下のことは、記述文字列からのトークンを複数の製品の規定の属性と相関させることを含み、前記規定の属性は、電子棚札データベース内の列に編成され、
    前記トークンを相関させることは、前記規定の属性のうち前記トークンとマッチする規定の属性を識別することと、前記規定の属性と前記各トークンとの間のマッチを示すように、注釈文字列を用いて前記トークンを前記列にマッピングすることとを含み、
    前記複数の製品の各々は、前記記述文字列および前記注釈文字列のうち対応する1つに関連付けられ、前記記述文字列の各々は、棚札中の前記複数の製品の属性を示す英数字の構造化されていない組み合わせを含み、
    前記以下のことは、
    前記規定の属性と識別されたトークンとの間の相関に従って、前記記述文字列および前記注釈文字列を反復的に解析することによって、前記トークンのうち識別されていないトークンについての推奨マッチを生成することと、
    前記記述文字列から前記トークンを抽出し、前記注釈文字列のマッピングによって指定された列に前記トークンを挿入することによって、前記トークンを前記電子棚札データベースにポピュレートすることとを含む、コンピュータ可読プログラム。
  2. 前記トークンを前記電子棚札データベースにポピュレートすることを前記コンピューティング装置に実行させる前記命令は、前記コンピューティング装置に、
    前記記述文字列から前記トークンを自動的に抽出し、記述を前記複数の製品の各々についての前記電子棚札データベースにポピュレートするために前記注釈文字列によって識別された前記電子棚札データベースの列に前記トークンを格納することによって、前記注釈文字列に従って前記記述文字列を構造化することを実行させる命令を含み、
    前記トークンは、異なる長さを有し、
    前記棚札は、小売業の棚札であり、
    境界マーカは、前記記述文字列のトークンを区切り、スペースまたは英数字以外の文字を含む、請求項1に記載のコンピュータ可読プログラム。
  3. 前記棚札のカテゴリ内の前記複数の製品の前記記述文字列を含む電子データを記憶媒体から読み取ることによって、前記電子データにアクセスすることを前記コンピューティング装置に実行させる命令をさらに含み、前記記述文字列は、規定のプロトコルに準拠していない非構造化データ文字列であり、
    前記規定の属性は、前記電子棚札データベースの列に関連付けられ、前記複数の製品の特性を含み、
    前記トークンを相関させることは、前記注釈文字列を初期化することによって、前記トークンと前記規定の属性との間のマッチを初期に識別する、請求項1または2に記載のコンピュータ可読プログラム。
  4. 前記トークンを相関させることを前記コンピューティング装置に実行させる前記命令は、前記コンピューティング装置に、前記トークンと前記電子棚札データベース内の前記規定の属性との間のマッピングを追跡するように前記注釈文字列を作成することを実行させる命令を含み、前記注釈文字列を作成することは、電子データ構造を生成することと、前記記述文字列内の各文字に対応する値を用いて前記電子データ構造内の前記各注釈文字列を初期化することとを含み、前記記述文字列は、前記値が識別されていないトークンであることを指定し、前記注釈文字列は、前記記述文字列と1対1で対応し、
    前記トークンを相関させることを前記コンピューティング装置に実行させる前記命令は、
    前記トークンのうちの別個のトークンについての前記記述文字列を走査することによって、前記記述文字列を解析して、前記トークンのうちの別個のトークンについてのトークン頻度を決定することと、
    前記別個のトークンについての前記トークン頻度に従って前記トークンをフィルタリングすることによって、前記トークンをリストアップすることと、
    前記トークンを前記電子棚札データベース内の前記規定の属性と相関させるトークン制御入力によって指定された前記注釈文字列を変更することによって、前記トークンを識別することとを実行させる命令を含み、前記注釈文字列を変更することは、特有の識別子に従って前記注釈文字列内の前記識別されたトークンを注釈することによって、前記識別されたトークンを前記規定の属性にマッピングすることとを実行させる命令を含む、請求項1〜3のいずれか1項に記載のコンピュータ可読プログラム。
  5. 前記トークンを相関させることを前記コンピューティング装置に実行させる前記命令は、前記識別されたトークンを隣接する識別されていないトークンに関連付ける有向グラフに従って前記注釈文字列を絞り込むことによって、前記規定の属性のうち前記識別されていないトークンに対応する規定の属性を識別することを実行させる命令を含み、
    前記有向グラフの各々は、前記記述文字列の各々からの2つの隣接トークンを含む、請求項1〜4のいずれか1項に記載のコンピュータ可読プログラム。
  6. 前記注釈文字列を絞り込むことを前記コンピューティング装置に実行させる前記命令は、
    識別されたトークンである第1のトークンと識別されていないトークンである第2のトークンとを含む隣接トークンに従って、前記有向グラフを生成することを実行させる命令を含み、前記有向グラフの各々は、前記記述文字列の各々からの2つの隣接トークンの組み合わせであり、
    前記注釈文字列を絞り込むことを前記コンピューティング装置に実行させる前記命令は、
    前記有向グラフを解析することによって、前記トークンのうちの別個のペアについての有向グラフ頻度を決定することと、
    前記有向グラフ頻度に従って前記有向グラフをフィルタリングすることによって、前記有向グラフをリストアップすることと、
    前記有向グラフの各々の有向グラフ制御入力に従って、前記第1のトークンの注釈を用いて前記第2のトークンの注釈を置換することによって、前記注釈文字列を変更することと、
    前記注釈文字列を変更した後、前記有向グラフのうち識別されていないトークンを含む有向グラフを示す未承認有向グラフのリストを生成することとを実行させる命令を含む、請求項5に記載のコンピュータ可読プログラム。
  7. 前記推奨マッチを生成することを前記コンピューティング装置に実行させる前記命令は、前記識別されていないトークンの数が規定の閾値を満たすまで、前記推奨マッチを用いて前記注釈文字列を反復的に更新することを前記コンピューティング装置に実行させる命令を含み、
    前記推奨マッチを生成することを前記コンピューティング装置に実行させる前記命令は、選択された分布に従って、前記記述文字列および対応する前記注釈文字列をトレーニングセットおよびテストセットに分割することによって、2つの異なる文字列セットを電子入力として提供することを実行させる命令を含み、前記テストセット内の記述文字列には、注釈を含まず且つ前記テストセット内の記述文字列についての、前記注釈文字列の元の注釈文字列を一時的に置換するテスト用注釈文字列が割り当てられ、
    前記推奨マッチを生成することを前記コンピューティング装置に実行させる前記命令は、条件付き確率場モデルを用いて前記トレーニングセットの前記注釈文字列からモデル化された前記トレーニングセットの前記トークンと前記規定の属性との間の相関に従って、前記テストセットおよび前記規定の属性を解析することを実行させる命令を含み、前記テストセットを解析することは、前記テストセットの前記記述文字列にテスト用注釈文字列を新たに注釈することによって、前記テストセットの前記記述文字列のトークンと前記規定の属性との間のマッチを提案することを含み、
    前記推奨マッチを生成することを前記コンピューティング装置に実行させる前記命令は、前記テスト用注釈文字列と前記元の注釈文字列とを比較することによって、前記テストセットから新たに識別されたトークンから前記推奨マッチを生成することを実行させる命令を含む、請求項1〜6のいずれか1項に記載のコンピュータ可読プログラム。
  8. 前記注釈文字列と前記記述文字列の前記規定の属性との間の相関精度を検証するように、前記注釈文字列を解析することによって前記注釈文字列のエラーを検出することを前記コンピューティング装置に実行させる命令をさらに含む、請求項1〜7のいずれか1項に記載のコンピュータ可読プログラム。
  9. コンピューティングシステムであって、
    コンピュータ可読プログラムに格納され、記述文字列からのトークンを製品の規定の属性と相関させるための命令を含むように構成された注釈モジュールを含み、前記規定の属性は、電子棚札データベース内の列に編成され、
    前記トークンを相関させることは、前記規定の属性のうち前記トークンとマッチする規定の属性を識別することと、前記規定の属性と前記各トークンとの間のマッチを示すように、注釈文字列を用いて前記トークンを前記列にマッピングすることとを含み、
    前記製品の各々は、前記記述文字列および前記注釈文字列のうち対応する1つに関連付けられ、前記記述文字列の各々は、棚札中の前記製品の属性を示す英数字の構造化されていない組み合わせを含み、
    コンピュータ可読プログラムに格納され、相関の関数である統計モデルによって識別された前記規定の属性と識別されたトークンとの間の相関に従って、前記記述文字列および前記注釈文字列を反復的に解析することによって、前記トークンのうち識別されていないトークンについての推奨マッチを生成するための命令を含むように構成された推論モジュールを含み、前記推奨マッチを生成することは、前記推奨マッチを用いて前記注釈文字列を更新することによって、前記トークンのうち前記識別されていないトークンを前記規定の属性にマッピングすることを含み、
    コンピュータ可読プログラムに格納され、前記注釈文字列のマッピングによって指定された列に前記トークンを挿入することによって、前記トークンを前記電子棚札データベースにポピュレートするための命令を含むように構成される構造モジュールを含む、コンピューティングシステム。
  10. 記述文字列から属性を抽出するように構成されたプロセッサを含むコンピューティング装置によって実行されるコンピュータで実現される方法であって、
    通信ネットワークを介して遠隔装置から、前記記述文字列を含む電子データのストリームを受信するステップを含み、前記記述文字列は、棚札中の複数の製品の属性を記述する英数字の構造化されていない組み合せであり、
    少なくとも前記プロセッサが、前記記述文字列のトークンとマッチする電子棚札データベース内の規定の属性を識別し、注釈文字列を用いて前記トークンを前記規定の属性に関連付けられたデータベースの列にマッピングすることによって、前記トークンを前記電子棚札データベース内の前記規定の属性と相関させるステップを含み
    少なくとも前記プロセッサが、条件付き確率場モデルを用いて、前記識別されたトークンと前記規定の属性との間の既知の相関に従って、前記トークンのうち識別されていないトークンについての推奨マッチングを生成することによって、前記識別されていないトークンの前記注釈文字列を反復的に更新するステップと、
    少なくとも前記プロセッサが、前記注釈文字列によって識別された列に前記記述文字列からの前記トークンを自動的に格納することによって、前記注釈文字列に従って前記記述文字列から識別された前記トークンをデータベースにポピュレートするステップとを含む、コンピュータで実現される方法。
JP2018536265A 2016-01-27 2017-01-26 電子データ構造から属性を抽出するための注釈システム Active JP6850806B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/007,381 US10628403B2 (en) 2016-01-27 2016-01-27 Annotation system for extracting attributes from electronic data structures
US15/007,381 2016-01-27
PCT/US2017/015002 WO2017132296A1 (en) 2016-01-27 2017-01-26 Annotation system for extracting attributes from electronic data structures

Publications (3)

Publication Number Publication Date
JP2019503541A JP2019503541A (ja) 2019-02-07
JP2019503541A5 JP2019503541A5 (ja) 2019-11-14
JP6850806B2 true JP6850806B2 (ja) 2021-03-31

Family

ID=57963504

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018536265A Active JP6850806B2 (ja) 2016-01-27 2017-01-26 電子データ構造から属性を抽出するための注釈システム

Country Status (5)

Country Link
US (1) US10628403B2 (ja)
EP (1) EP3408802A1 (ja)
JP (1) JP6850806B2 (ja)
CN (1) CN108496190B (ja)
WO (1) WO2017132296A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11010768B2 (en) * 2015-04-30 2021-05-18 Oracle International Corporation Character-based attribute value extraction system
US10997507B2 (en) * 2017-06-01 2021-05-04 Accenture Global Solutions Limited Data reconciliation
US11509540B2 (en) * 2017-12-14 2022-11-22 Extreme Networks, Inc. Systems and methods for zero-footprint large-scale user-entity behavior modeling
US10642869B2 (en) * 2018-05-29 2020-05-05 Accenture Global Solutions Limited Centralized data reconciliation using artificial intelligence mechanisms
KR102129843B1 (ko) * 2018-12-17 2020-07-03 주식회사 크라우드웍스 검증용 주석 처리 작업을 이용한 실전용 주석 처리 작업의 검증 방법 및 장치
US12028455B2 (en) * 2020-07-14 2024-07-02 Visa International Service Association Privacy-preserving identity attribute verification using policy tokens
US11645318B2 (en) * 2020-08-20 2023-05-09 Walmart Apollo, Llc Systems and methods for unified extraction of attributes
US11016980B1 (en) * 2020-11-20 2021-05-25 Coupang Corp. Systems and method for generating search terms
CN113377775B (zh) * 2021-06-21 2024-02-02 特赞(上海)信息科技有限公司 信息处理方法及装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082426B2 (en) * 1993-06-18 2006-07-25 Cnet Networks, Inc. Content aggregation method and apparatus for an on-line product catalog
MXPA04001463A (es) * 2001-08-16 2005-04-29 Trans World New York Llc Sistema de muestreo, recomendacion y compra de medios de usuario personalizado utilizando base de datos de inventario en tiempo real.
US7139752B2 (en) * 2003-05-30 2006-11-21 International Business Machines Corporation System, method and computer program product for performing unstructured information management and automatic text analysis, and providing multiple document views derived from different document tokenizations
US8977953B1 (en) * 2006-01-27 2015-03-10 Linguastat, Inc. Customizing information by combining pair of annotations from at least two different documents
JP2009026195A (ja) * 2007-07-23 2009-02-05 Yokohama National Univ 商品分類装置、商品分類方法及びプログラム
JP2010134709A (ja) * 2008-12-04 2010-06-17 Toshiba Corp 語彙誤り検出装置及び語彙誤り検出方法
US8352473B2 (en) * 2010-04-21 2013-01-08 Microsoft Corporation Product synthesis from multiple sources
EP2469421A1 (en) * 2010-12-23 2012-06-27 British Telecommunications Public Limited Company Method and apparatus for processing electronic data
US20120330971A1 (en) * 2011-06-26 2012-12-27 Itemize Llc Itemized receipt extraction using machine learning
US8706758B2 (en) 2011-10-04 2014-04-22 Galisteo Consulting Group, Inc. Flexible account reconciliation
CN103309961B (zh) * 2013-05-30 2015-07-15 北京智海创讯信息技术有限公司 基于马尔可夫随机场的网页正文提取方法
US9348815B1 (en) * 2013-06-28 2016-05-24 Digital Reasoning Systems, Inc. Systems and methods for construction, maintenance, and improvement of knowledge representations
CN103678665B (zh) * 2013-12-24 2016-09-07 焦点科技股份有限公司 一种基于数据仓库的异构大数据整合方法和系统
US20150331936A1 (en) * 2014-05-14 2015-11-19 Faris ALQADAH Method and system for extracting a product and classifying text-based electronic documents
CN104008186B (zh) * 2014-06-11 2018-10-16 北京京东尚科信息技术有限公司 从目标文本中确定关键词的方法和装置
CN105243162B (zh) * 2015-10-30 2018-10-30 方正国际软件有限公司 基于关系型数据库存储的对象化数据模型查询方法及装置

Also Published As

Publication number Publication date
WO2017132296A1 (en) 2017-08-03
US10628403B2 (en) 2020-04-21
JP2019503541A (ja) 2019-02-07
CN108496190B (zh) 2022-06-24
US20170212921A1 (en) 2017-07-27
EP3408802A1 (en) 2018-12-05
CN108496190A (zh) 2018-09-04

Similar Documents

Publication Publication Date Title
JP6850806B2 (ja) 電子データ構造から属性を抽出するための注釈システム
CN109472033B (zh) 文本中的实体关系抽取方法及系统、存储介质、电子设备
CN106815192B (zh) 模型训练方法及装置和语句情感识别方法及装置
WO2017216980A1 (ja) 機械学習装置
CN111522989B (zh) 用于图像检索的方法、计算设备和计算机存储介质
JP2019503541A5 (ja)
US20160117405A1 (en) Information Processing Method and Apparatus
CN110515896B (zh) 模型资源管理方法、模型文件制作方法、装置和系统
US20150032708A1 (en) Database analysis apparatus and method
US10002142B2 (en) Method and apparatus for generating schema of non-relational database
US20200272668A1 (en) Error correction method and apparatus, and computer readable medium
US11507746B2 (en) Method and apparatus for generating context information
JP2008198132A (ja) 固有表現抽出プログラム、固有表現抽出方法および固有表現抽出装置
CN109933803B (zh) 一种成语信息展示方法、展示装置、电子设备及存储介质
CN114254110A (zh) 用于确定文本数据的标签的方法和设备
JP2019032704A (ja) 表データ構造化システムおよび表データ構造化方法
CN117093556A (zh) 日志分类方法、装置、计算机设备及计算机可读存储介质
US7853597B2 (en) Product line extraction
JP2015018372A (ja) 表現抽出モデル学習装置、表現抽出モデル学習方法、および、コンピュータ・プログラム
US11113314B2 (en) Similarity calculating device and method, and recording medium
CN113704519B (zh) 一种数据集的确定方法、装置、计算机设备以及存储介质
CN115204155A (zh) 一种配置异常检测方法、装置、计算机设备和存储介质
CN110543467B (zh) 时间序列数据库的模式转换方法及装置
JP6123372B2 (ja) 情報処理システム、名寄せ判定方法及びプログラム
Thamviset et al. Structured web information extraction using repetitive subject pattern

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190930

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190930

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201023

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210308

R150 Certificate of patent or registration of utility model

Ref document number: 6850806

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250