(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-11
(45)【発行日】2024-12-19
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
G06Q 30/0201 20230101AFI20241212BHJP
G06F 16/332 20190101ALI20241212BHJP
G06F 16/383 20190101ALI20241212BHJP
【FI】
G06Q30/0201
G06F16/332
G06F16/383
(21)【出願番号】P 2022207906
(22)【出願日】2022-12-26
【審査請求日】2023-11-21
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】100109380
【氏名又は名称】小西 恵
(74)【代理人】
【識別番号】100109036
【氏名又は名称】永岡 重幸
(72)【発明者】
【氏名】カヤル チャンドライ
(72)【発明者】
【氏名】チャットパディヤイ サヤンタン
(72)【発明者】
【氏名】クーガ ヒマンシュ
(72)【発明者】
【氏名】バイリ カリアン
(72)【発明者】
【氏名】リード ケード
(72)【発明者】
【氏名】アブロール サティアン
【審査官】小原 正信
(56)【参考文献】
【文献】特開2020-038570(JP,A)
【文献】米国特許出願公開第2020/0250185(US,A1)
【文献】特開2022-173178(JP,A)
【文献】特開2006-164292(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06F 16/332
G06F 16/383
(57)【特許請求の範囲】
【請求項1】
店舗での取引を記述するエントリーを含むトランザクション情報を取得するトランザクション情報取得部と、
前記トランザクション情報取得部により取得された前記トランザクション情報からトランザクションテキストを分離するテキスト分離部と、
前記テキスト分離部により分離された前記トランザクションテキスト
から、前記取引が発生した店舗名を示す事業者またはブランドの情報を含むキーセグメントを特定し、特定された前記キーセグメントを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出する属性抽出部と、
前記属性抽出部により抽出された前記複数の属性を出力する出力部と、
を備え
、
前記属性抽出部は、
前記トランザクションテキストを、前記複数の自然言語処理モデルのうち、マルチリンガルに対応することができる自然言語処理ライブラリを実装する学習済み自然言語処理モデルに処理させることにより、直接属性としての前記キーセグメントを特定し、
特定された前記キーセグメントを、前記複数の自然言語処理モデルのうち、曖昧テキストマッチングアルゴリズムを実装する学習済み自然言語処理モデルまたは表音解析アルゴリズムを実装する学習済み自然言語処理モデルを使用して、前記直接属性としての前記キーセグメントに近似するテキストストリングを検索し、
前記直接属性をクエリとして外部情報源にアクセスすることにより、前記直接属性から派生する属性であり、前記事業者または前記ブランドの支店の情報、および、前記事業者または前記ブランドのコンペティタの情報のうちの少なくとも1つを含む派生属性を生成し、
前記直接属性および前記派生属性から前記複数の属性を抽出する、
ことを特徴とする情報処理装置。
【請求項2】
前記属性抽出部は、前記複数の自然言語処理モデルのうちのテキスト分類器を実装する学習済み自然言語処理モデルを使用して、特定された前記キーセグメントのカテゴリを予測し、予測されたカテゴリを前記複数の属性の1つとして抽出する
ことを特徴とする請求項
1に記載の情報処理装置。
【請求項3】
前記トランザクション情報取得部は、所定期間につき単一の取引明細から、前記トランザクション情報を取得する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
情報処理装置が実行する情報処理方法であって、
店舗での取引を記述するエントリーを含むトランザクション情報を取得するステップと、
取得された前記トランザクション情報からトランザクションテキストを分離するステップと、
分離された前記トランザクションテキスト
から、前記取引が発生した店舗名を示す事業者またはブランドの情報を含むキーセグメントを特定し、特定された前記キーセグメントを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出するステップと、
抽出された前記複数の属性を出力するステップと、
を含
み、
前記複数の属性をそれぞれ抽出するステップは、
前記トランザクションテキストを、前記複数の自然言語処理モデルのうち、マルチリンガルに対応することができる自然言語処理ライブラリを実装する学習済み自然言語処理モデルに処理させることにより、直接属性としての前記キーセグメントを特定し、
特定された前記キーセグメントを、前記複数の自然言語処理モデルのうち、曖昧テキストマッチングアルゴリズムを実装する学習済み自然言語処理モデルまたは表音解析アルゴリズムを実装する学習済み自然言語処理モデルを使用して、前記直接属性としての前記キーセグメントに近似するテキストストリングを検索し、
前記直接属性をクエリとして外部情報源にアクセスすることにより、前記直接属性から派生する属性であり、前記事業者または前記ブランドの支店の情報、および、前記事業者または前記ブランドのコンペティタの情報のうちの少なくとも1つを含む派生属性を生成し、
前記直接属性および前記派生属性から前記複数の属性を抽出する、ことを含む、
ことを特徴とする情報処理方法。
【請求項5】
情報処理をコンピュータに実行させるための情報処理プログラムであって、該プログラムは、前記コンピュータに、
店舗での取引を記述するエントリーを含むトランザクション情報を取得するトランザクション情報取得処理と、
前記トランザクション情報取得処理により取得された前記トランザクション情報からトランザクションテキストを分離するテキスト分離処理と、
前記テキスト分離処理により分離された前記トランザクションテキスト
から、前記取引が発生した店舗名を示す事業者またはブランドの情報を含むキーセグメントを特定し、特定された前記キーセグメントを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出する属性抽出処理と、
前記属性抽出処理により抽出された前記複数の属性を出力する出力処理と、
を含む処理を実行させるためのものであ
り、
前記属性抽出処理は、
前記トランザクションテキストを、前記複数の自然言語処理モデルのうち、マルチリンガルに対応することができる自然言語処理ライブラリを実装する学習済み自然言語処理モデルに処理させることにより、直接属性としての前記キーセグメントを特定し、
特定された前記キーセグメントを、前記複数の自然言語処理モデルのうち、曖昧テキストマッチングアルゴリズムを実装する学習済み自然言語処理モデルまたは表音解析アルゴリズムを実装する学習済み自然言語処理モデルを使用して、前記直接属性としての前記キーセグメントに近似するテキストストリングを検索し、
前記直接属性をクエリとして外部情報源にアクセスすることにより、前記直接属性から派生する属性であり、前記事業者または前記ブランドの支店の情報、および、前記事業者または前記ブランドのコンペティタの情報のうちの少なくとも1つを含む派生属性を生成し、
前記直接属性および前記派生属性から前記複数の属性を抽出する、ことを含む、
ことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法およびプログラムに関し、特に、ユーザの購買行動に関連する属性情報を抽出するための技術に関する。
【背景技術】
【0002】
近年、ユーザが商品やサービスをオンライン購入可能なウェブサイトやアプリケーションは多岐に亘る。ユーザは、これら多数のウェブサイトやアプリケーションを介して所望のオンライン店舗にアクセスし、所望の商品やサービスを、クレジットカード、デビットカード、および仮想通貨等の決済手段を使用したオンライン取引により購入する。
【0003】
このようなオンライン取引において、ユーザがどの店舗でどのようなオンライン取引を行ったかの購買行動に関する情報を分析し、それぞれのユーザをプロファイリングし、これらのプロファイリングの結果に基づいて、それぞれのユーザに向けてパーソナライズされた広告を提供することができる。これにより、コンバージョンレート(CVR)等の指標で示される広告効果の向上が期待できる。
【0004】
しかしながら、上記のように、ユーザがオンライン取引を行うウェブサイトやアプリケーションは多岐に亘るため、あるユーザがどの店舗でどのようなオンライン取引を行ったかの情報は、多数のドメインに分散して存在しており、それらのフォーマットもドメインごとに区々である。このため、これらの情報をそれぞれのドメインから取得し、一元的に集約して分析に供することは容易ではない。
【0005】
特許文献1は、ユーザが実際に行った決済内容を示す利用明細情報と、当該決済を行った店舗を示す店舗情報とを関連付けて生成する利用明細・店舗情報リンク装置を開示する。
具体的には、特許文献1に開示される利用明細・店舗情報リンク装置は、ユーザが実際に決済を行った店舗を特定する情報を含む利用明細情報を顧客端末に送信し、顧客端末から、利用明細情報に含まれる店舗を特定する情報を受信すると、対応する店舗情報を読み出して顧客端末に送信する。
ユーザが実際に利用した店舗に関する投稿を行うため、顧客端末から、送信した店舗情報に含まれる投稿機能情報が送信されると、特許文献1に開示される利用明細・店舗情報リンク装置はさらに、当該投稿機能情報に基づいて、投稿された情報を記憶・更新する。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1の技術によれば、ユーザが実際に決済を行った店舗を特定する情報を、利用明細情報から一元的に取得することができる。
【0008】
しかしながら、利用明細情報に含まれているのは、ユーザが投稿先の店舗を特定できれば足りるため、店舗名のテキスト情報や当該店舗の外観画像データのみであり、ユーザが実際に決済を行った店舗における購買行動を特徴付ける属性情報を利用明細情報から直接取得することができない。
また、利用明細情報のリンク先である店舗情報を参照すれば、店舗に関する属性情報を取得することが可能であるが、そのためには、サーバ装置である利用明細・店舗情報リンク装置において、多数のドメインにおいて都度発生する店舗の属性情報の更新や変更に常に追従しなければならず、煩雑であるとともに変更への柔軟性に欠ける。
【0009】
本発明は上記課題を解決するためになされたものであり、その目的は、ユーザの購買行動に関連する情報を容易かつ高精度に抽出することが可能な情報処理装置、情報処理方法およびプログラムを提供することにある。
【課題を解決するための手段】
【0010】
上記課題を解決するために、本発明に係る情報処理装置の一態様は、店舗での取引を記述するエントリーを含むトランザクション情報を取得するトランザクション情報取得部と、前記トランザクション情報取得部により取得された前記トランザクション情報からトランザクションテキストを分離するテキスト分離部と、前記テキスト分離部により分離された前記トランザクションテキストを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出する属性抽出部と、前記属性抽出部により抽出された前記複数の属性を出力する出力部と、を備える。
【0011】
本発明に係る情報処理方法の一態様は、情報処理装置が実行する情報処理方法であって、店舗での取引を記述するエントリーを含むトランザクション情報を取得するステップと、取得された前記トランザクション情報からトランザクションテキストを分離するステップと、分離された前記トランザクションテキストを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出するステップと、抽出された前記複数の属性を出力するステップと、を含む。
【0012】
本発明に係る情報処理プログラムの一態様は、情報処理をコンピュータに実行させるための情報処理プログラムであって、該プログラムは、前記コンピュータに、店舗での取引を記述するエントリーを含むトランザクション情報を取得するトランザクション情報取得処理と、前記トランザクション情報取得処理により取得された前記トランザクション情報からトランザクションテキストを分離するテキスト分離処理と、前記テキスト分離処理により分離された前記トランザクションテキストを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出する属性抽出処理と、前記属性抽出処理により抽出された前記複数の属性を出力する出力処理と、を含む処理を実行させるためのものである。
【発明の効果】
【0013】
本発明によれば、ユーザの購買行動に関連する情報を容易かつ高精度に抽出することができる。
上記した本発明の目的、態様及び効果並びに上記されなかった本発明の目的、態様及び効果は、当業者であれば添付図面及び請求の範囲の記載を参照することにより下記の発明を実施するための形態から理解できるであろう。
【図面の簡単な説明】
【0014】
【
図1】
図1は、本発明の各実施形態に係る属性情報抽出装置の機能構成の一例を示すブロック図である。
【
図2】
図2は、本実施形態に係る属性情報抽出装置がカード利用明細から抽出する各種属性情報の一例を説明する概念図である。
【
図3】
図3は、本実施形態に係る属性情報抽出装置に入力されるカード利用明細にマルチリンガルで記述されるトランザクションテキストの記述例を示す概念図である。
【
図4】
図4は、本実施形態に係る属性情報抽出装置が実行する属性抽出処理の概略処理手順の一例を示すフローチャートである。
【
図5】
図5は、属性情報抽出装置の属性抽出部が実行する、
図4のステップS3の自然言語処理の詳細処理手順の一例を示すフローチャートである。
【
図6】
図6は、属性情報抽出装置の属性抽出部が実行する、トランザクションテキストに記述される店舗名からテキスト分類器によって店舗が属するカテゴリを予測する処理の一例を説明する概念図である。
【
図7】
図7は、日本語のトランザクションテキストからそれぞれ抽出される直接属性および派生属性の一例を説明する概念図である。
【
図8】
図8は、英語のトランザクションテキストからそれぞれ抽出される直接属性および派生属性の一例を説明する概念図である。
【
図9】
図9は、属性情報抽出装置の後処理部が実行する、属性情報に基づくユーザのプロファイリング処理の処理結果の表示出力の一例を示す図である。
【
図10】
図10は、属性情報抽出装置の後処理部が実行する、属性情報に基づく事業者プロファイリング処理の処理結果の表示出力の一例を示す図である。
【
図11】
図11は、本実施形態に係る属性情報抽出装置のハードウエア構成の一例を示すブロック図である。
【発明を実施するための形態】
【0015】
以下、添付図面を参照して、本発明を実施するための実施形態について詳細に説明する。以下に開示される構成要素のうち、同一機能を有するものには同一の符号を付し、その説明を省略する。なお、以下に開示される実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【0016】
本実施形態に係る属性情報抽出装置は、クレジットカード等の利用明細等に基づいて、店舗における取引を記述するエントリーを含むトランザクション情報を取得し、取得されたトランザクション情報から、トランザクションテキストを分離し、分離されたトランザクションテキストを複数の自然言語処理モデルに入力して、トランザクションテキストに対応する複数の属性をそれぞれ抽出する。
【0017】
以下では、本実施形態が、クレジットカードの利用明細を単一の入力として、クレジットカード取引が実行された店舗をトランザクションテキストからキーセグメントとして特定し、特定された店舗の各種属性を抽出する例を説明するが、本実施形態はこれに限定されない。
本実施形態は、クレジットカードのみならず、デビットカード、仮想通貨等、利用明細が記録され得る取引手段について、同様に適用可能である。また、利用明細のトランザクションテキストからキーセグメントとして特定されるのは、取引が実行された店舗に限定されず、例えば、店舗所在地、購入商品またはサービス等、ユーザの購買行動を特定可能なあらゆる情報であってよい。
【0018】
<属性情報抽出装置の機能構成>
図1は、本実施形態に係る属性情報抽出装置1の機能構成の一例を示すブロック図である。
図1に示す属性情報抽出装置1は、トランザクション情報取得部11、トランザクションテキスト分離部12、属性抽出部13、属性出力部14、および後処理部15を備える。
【0019】
属性情報抽出装置1は、記憶装置に格納されたカード利用明細2を読み出して、読み出されたカード利用明細2のデータからトランザクション情報を取得し、取得されたカードトランザクション情報からトランザクションテキストを分離する。
属性情報抽出装置1はさらに、分離されたトランザクションテキストを、複数の自然言語処理モデル3を使用して自然言語処理することにより、トランザクションテキストから対応する複数の属性を抽出し、抽出された複数の属性を属性情報データベース4に出力する。出力された属性は、属性情報抽出装置1により、例えば、ユーザや店舗のプロファイリング等の各種の後処理に供される。
【0020】
属性情報抽出装置1は、PC(Personal Computer)等で構成されるクライアント装置(不図示)とネットワークを介して通信可能に接続してよい。この場合、属性情報抽出装置1はサーバに実装され、クライアント装置は、属性情報抽出装置1が外部と情報の入出力を実行する際のユーザインタフェースを提供してよく、また、属性情報抽出装置1の各コンポーネント11~15の一部または全部を備えてもよい。
【0021】
トランザクション情報取得部11は、記憶装置に格納されたカード利用明細2を読み出して、読み出されたカード利用明細2のデータからトランザクション情報を取得し、取得されたトランザクション情報をトランザクションテキスト分離部12へ供給する。
【0022】
カード利用明細2は、ユーザごとに発行される、所定期間に亘るクレジットカード等のカードの利用履歴である。このカード利用明細2は、所定期間、例えば毎月、の利用明細発行の対象であるカードの店舗における取引を記述するエントリーを含む。各エントリーが、ある店舗で発生した1回のカード取引に相当する。カード利用明細2は、オンライン店舗における商品やサービスの購入であるウェブ上の取引と、実店舗における商品やサービスの購入である実取引の双方のエントリーを含んでよい。また、利用明細発行の対象であるカードの利用が国内に限定されない限り、カード利用明細2は、国内でのカード取引および国外でのカード取引の双方のエントリーを含んでよい。すなわち、カード利用明細2は、多言語(マルチリンガル)で記述されてよい。
【0023】
本実施形態では、このカード利用明細2を、属性抽出のための単一の情報源として使用する。
例えば、あるユーザに対してより高い広告効果を得るためには、ユーザの購買行動における各種属性を把握することが重要である。ここでより多くの属性を取得するために、通常は、多数の異なるドメイン、例えば、旅行ウェブサイト、電子商取引(EC)ウェブサイト、金融取引アプリケーション、健康関連アプリケーション、食品関連アプリケーション、レストラン予約ウェブサイト等、を介してそれぞれ取得された情報を収集するが、それぞれ異なるインタフェースを介してクロスドメインで属性を収集するのは煩雑であり柔軟性に欠ける。
【0024】
これに対して、本実施形態では、基本的に、カード利用明細2を単一の情報源として、ユーザの購買行動における各種属性のために使用する。カード利用明細2は、カード所有者であるユーザが所定期間に亘り当該カードが利用可能な多数の店舗で行ったすべてのカード取引の集合体である。したがって、容易かつ一元的に、ユーザの購買行動における各種属性を抽出することが可能となる。
ただし、本実施形態はこれに限定されず、追加的に、他の情報、例えば、他のウェブサイトやアプリケーション等の他のドメインから取得された情報から、トランザクション情報を取得してよい。
【0025】
カード利用明細2を格納する記憶装置は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)等の不揮発性記憶装置で構成されてよい。
トランザクション情報取得部11は、このような記憶装置に予め格納されたカード利用明細2を読み出すことにより、トランザクション情報を取得してもよく、あるいは、カード利用明細2を記憶する同一のまたは異なる対向装置から通信I/Fを介してカード利用明細2を受信してもよい。
【0026】
トランザクション情報取得部11はまた、属性情報抽出装置1において属性抽出処理を実行するために必要な各種パラメータの入力を受け付ける。トランザクション情報取得部11は、属性情報抽出装置1と通信可能に接続されるクライアント装置のユーザインタフェースを介して、各種パラメータの入力を受け付けてよい。
【0027】
ここで、トランザクション情報は、カード利用明細2から抽出された、店舗でのカード取引を特定する情報であり、カード所有者のユーザID、取引が発生した日時、取引額、取引が発生した店舗名、購入商品またはサービスの記述等のフィールドを含んでよい(
図2を参照して後述)。このうち、店舗名、取引額は、所定長のテキストストリングであるトランザクションテキストとして記述されてよい。トランザクション情報の各エントリーも、カード利用明細2と同様、ある店舗で発生した1回のカード取引に相当し、また、多言語(マルチリンガル)で記述されてよい。
ここで、 トランザクションテキストは、文字数が制限されたテキストストリング(文字列、テキスト情報)であり、言語種(日本語、英語等の複数の言語種のうちの1以上の言語種)の数が制限されたテキストストリングであり、文字種(カタカナ、アルファベット等の複数の文字種のうちの1以上の文字種)の数が制限されたテキストストリングである。テキストストリングの文字数は、例として、5~9、10~15、16~20、21~25、26~30等であってよい。トランザクションテキストは、その文字数がテキストストリングの文字数上限を超える場合、当該文字数上限を超える部分が削除された上で記述されトランザクション情報として扱われる。
【0028】
トランザクションテキスト分離部12は、トランザクション情報取得部11から供給されるトランザクション情報から、トランザクションテキストを分離し、属性抽出部13に供給する。
トランザクションテキスト分離部12はさらに、カード利用明細2から供給されるトランザクション情報のうち、トランザクションテキスト以外の情報、例えば、カード所有者のユーザID、取引が発生した日時、取引額等の情報を、トランザクションテキストとともに属性抽出部13へ供給してよい。
【0029】
属性抽出部13は、トランザクションテキスト分離部12から供給されるトランザクションテキストから、属性を抽出し、抽出された属性を属性出力部14へ供給する。
具体的には、属性抽出部13は、複数の学習済みの自然言語処理モデル3を使用して、自然言語処理を適用して、トランザクションテキストから各種属性を抽出する。
【0030】
本実施形態において、属性とは、カード所有者であるユーザの購買行動に関連し、当該ユーザの購買行動を特徴付けることの可能なあらゆる情報をいう。属性抽出部13により抽出される属性は、トランザクションテキストから直接的に抽出される直接属性と、直接属性から派生した派生属性とを含む。
【0031】
属性出力部14は、属性抽出部13から供給される属性を、属性情報データベース4に出力する。属性情報データベース4は、例えば、HDD、SSD等の不揮発性記憶装置で構成されてよく、或いは、属性情報抽出装置1とネットワークを介して接続されるNetwork Attached Storage(NAS)に配置されてもよい。
属性出力部14はまた、属性情報データベース4に蓄積された属性を、表示装置等を介して任意のGraphic User Interface(GUI)上で外部に表示出力してよい。
【0032】
後処理部15は、属性情報データベース4に蓄積された属性を任意に加工する後処理を実行する。後処理部15が属性情報データベース4を参照して実行する後処理は、例えば、ユーザのプロファイリングや店舗のプロファイリングを含んでよいが、その詳細は
図9および
図10を参照して後述する。
【0033】
図2は、属性情報抽出装置1の属性抽出部13がトランザクション情報から抽出する各種属性の一例を説明する概念図である。
図2を参照して、トランザクション情報取得部11が取得するトランザクション情報は、トランザクション情報取得部11に入力されるカード利用明細2と同様のエントリーを有し、各エントリーは、カード所有者を識別するユーザID21、トランザクションテキスト22、カード取引の額を示すトランザクション額23、カード取引の日時を示すトランザクション日時24の各フィールドを含む。トランザクションテキスト22は、例えば、カード取引が発生した店舗名、およびカード取引で購入された商品またはサービスの記述を含んでよい。
【0034】
本実施形態において、属性情報抽出装置1の属性抽出部13は、カード利用明細2から、直接属性5および派生属性6を抽出する。属性抽出部13はさらに、カード利用明細2から、カード取引識別情報7を抽出してよい。
【0035】
直接属性5は、属性抽出部13が、トランザクションテキスト22に対して自然言語処理モデル3を使用した自然言語処理を適用することにより、トランザクションテキスト22から直接的に抽出される属性である。
図2を参照して、直接属性5は、例えば、カード取引が発生した店舗名を示す事業者/ブランド51、事業者/ブランド51のカテゴリ52、事業者/ブランド51のカテゴリ52を細分化したサブカテゴリ53、カード取引が発生した位置ないし場所を示すトランザクション位置54、トランザクション位置54が属するステート/国55、トランザクション位置54の緯度/経度56を含む。
【0036】
派生属性6は、属性抽出部13が、直接属性5に基づいて、インターネット上のウェブサイトや公開データベース等の外部の情報源から情報を抽出することにより、直接属性5から派生した属性である。
図2を参照して、派生属性6は、例えば、事業者/ブランド51の支店61の情報、例えば、支店の所在地、支店の規模等の情報、および、事業者/ブランド51と競合するコンペティタ62の情報、例えば、当該コンペティタの所在地、規模、競合する商品やサービス、および競合の程度等の情報を含む。
【0037】
カード取引識別情報7は、1回のカード取引を識別する情報であり、カード利用明細2のトランザクションテキスト22以外の各フィールド、ユーザID21、トランザクション額23、およびトランザクション日時24からそれぞれ取得される。カード取引識別情報7は、例えば、ユーザID71、トランザクション額72、およびトランザクション日時73を含む。
属性抽出部13により抽出された直接属性5、派生属性6、およびカード取引識別情報7は、1回のカード取引ごとに対応付けられて、属性情報データベース4に格納される。
【0038】
本実施形態では、多数の情報源にアクセスすることなく、カード利用明細2、特に、トランザクションテキスト22に記述される僅かなテキストストリングから、
図2に示すような多数種類の属性を、一元的かつ容易に抽出することができる。
属性抽出部13により実行される属性抽出処理の詳細は、
図5を参照して後述する。
【0039】
図3は、属性情報抽出装置1に入力されるカード利用明細2にマルチリンガルで記述されるトランザクションテキストの記述例を示す概念図である。
図3を参照して、日本語トランザクション31は、3回のカード取引に相当するエントリー311~313を含み、英語トランザクション32は、3回のカード取引に相当するエントリー321~323を含む。
【0040】
日本語トランザクション31のエントリー311は、トランザクションテキスト22「トイストア・ベビーストア横浜い」、トランザクション額23「¥2,643.00」、およびトランザクション日時24「15th Aug」を含む。同様に、日本語トランザクション31のエントリー312は、トランザクションテキスト22「トイストア・ベビーストア松戸」、トランザクション額23「¥3,100.00」、およびトランザクション日時24「22nd Aug」を含み、日本語トランザクション31のエントリー313は、トランザクションテキスト22「ホテル シマ」、トランザクション額23「¥20,400.00」、およびトランザクション日時24「25th Aug」を含む。
一方、英語トランザクション32のエントリー321は、トランザクションテキスト22「Toys Store, Baby Store Tokorozawa」、トランザクション額23「¥2,100.00」、およびトランザクション日時24「2nd Aug」を含む。同様に、英語トランザクション32のエントリー322は、トランザクションテキスト22「ABC KOREA SHOE STORE」、トランザクション額23「¥6,589.00」、およびトランザクション日時24「5th Aug」を含み、英語トランザクション32のエントリー323は、トランザクションテキスト22「Burger Waikiki」、トランザクション額23「¥950.00」、およびトランザクション日時24「20th Aug」を含む。
【0041】
図3のトランザクションテキスト22から理解されるように、カード利用明細2に記述されるカード取引のテキストストリングは、限られた文字数内で記述されなければならないため、ストリングの末尾が欠けている場合があり、その内容も、略語や、全角、半角、カナ等が混在している場合がある。このため、カード利用明細2に記述されるカード取引のテキストストリングから取得されるトランザクションテキスト22も、記述されたとおりのテキストを処理すると、直接属性5を抽出する精度が低下しかねず、また、派生属性6を派生させるためのクエリとしても不完全となりかねない。
本実施形態では、複数の自然言語処理モデル3を使用して、トランザクションテキスト22に対して曖昧テキストマッチング等を含んだ複数の自然言語処理を実行するため、このようなトランザクションテキスト22の不完全性を適切に補完して、属性抽出の精度を向上させることができる。
【0042】
<属性情報抽出装置1が実行する属性抽出処理>
図4は、本実施形態に係る属性情報抽出装置1が実行する属性抽出処理の概略処理手順の一例を示すフローチャートである。
なお、
図4の各ステップは、属性情報抽出装置1のHDD等の記憶装置に記憶されたプログラムをCPUが読み出し、実行することで実現される。また、
図4示すフローチャートの少なくとも一部をGPUなどの他のハードウエアにより実現してもよい。ハードウエアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからFPGA(Field Programmable Gate Array)上に自動的に専用回路を生成すればよい。また、FPGAと同様にしてGate Array回路を形成し、ハードウエアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
【0043】
S1で、属性情報抽出装置1のトランザクション情報取得部11は、記憶装置に格納されたカード利用明細2から、トランザクション情報を取得する。
ここで取得されるトランザクション情報は、カード利用明細2から抽出された、店舗でのカード取引を特定する情報であり、
図2を参照して、カード所有者のユーザID21、トランザクションテキスト22、トランザクション額23、およびトランザクション日時24の各フィールドを含む。
【0044】
S2で、属性情報抽出装置1のトランザクションテキスト分離部12は、S1でトランザクション情報取得部11により取得されたトランザクション情報から、トランザクションテキスト22を分離する。トランザクションテキスト22は、属性抽出のためのキーセグメントを含むテキストストリングであり、
図2および
図3を参照して、通常、カード取引が発生した店舗名、購入商品またはサービスの記述等を含むテキストストリングである。
以下では、テキストストリング中の店舗名(事業者/ブランド51)をキーセグメントとして特定する例を説明するが、本実施形態はこれに限定されず、店舗名に替えて、商品やサービス名称や他のテキストセグメントをキーセグメントとして特定してもよい。
【0045】
S3で、属性情報抽出装置1の属性抽出部13は、S2で分離されたトランザクションテキスト22に対して、複数の学習済み自然言語処理モデル3を使用し、自然言語処理を適用して、トランザクションテキスト22から直接属性5および派生属性6を含む各種属性を抽出する。
本実施形態において、属性抽出部13は、複数の自然言語処理モデル3を使用して、複数種類の自然言語処理を組み合わせることにより、カード利用明細2に記述された僅かなテキストストリングから、ユーザや店舗のプロファイリングに十分な多数種類の属性を抽出することができる。
属性抽出部13が実行するこの属性抽出処理の詳細は、
図5を参照して後述する。
【0046】
S4で、属性情報抽出装置1の属性出力部14は、S3で属性抽出部13によりトランザクションテキスト22から抽出された属性を、属性情報データベース4へ出力する。
S5で、属性情報抽出装置1の後処理部15は、属性情報データベース4に蓄積された属性を加工して、例えば、ユーザごとのプロファイリングや店舗(事業者/ブランド)ごとのプロファイリング等の任意の後処理を実行する。
【0047】
<属性抽出部13が実行する属性抽出処理の詳細>
図5は、属性情報抽出装置1の属性抽出部13が実行する、
図4のステップS3の自然言語処理の詳細処理手順の一例を示すフローチャートである。
なお、
図5に示すS31からS36までの処理は、逐次的に実行させる必要はなく、同時に実行されてよく、その実行順序も任意である。
【0048】
S31で、属性抽出部13は、トランザクションテキスト22中のキーセグメントを特定し、特定されたキーセグメントを認識する。
具体的には、属性抽出部13は、トランザクションテキスト22に記述される、例えば店舗名をキーセグメントとして特定してよい。店舗名は通常、事業者/ブランド51の名称の他、
図3に示すように、店舗所在地の情報を含む。このため、S31で属性抽出部13は、直接属性5として、事業者/ブランド51と、トランザクション位置54の各属性を抽出することができる。
なお、本実施形態でキーセグメントとして特定可能なトランザクションテキスト22のセグメントは、店舗名に限定されず、例えば、商品またはサービスの名称等、トランザクションテキスト22の他のセグメントがキーセグメントとして特定されてもよいが、以下では、店舗名がキーセグメントとして特定される例を説明する。
【0049】
S2でトランザクションテキスト22が分離されると、S31で、属性抽出部13は、例えば、Natural Language ToolKit(NLTK)を使用して、トランザクションテキスト22中から店舗名、すなわち、事業者/ブランド51、および場合によってはトランザクション位置54、を固有表現(named entity)として特定し、特定された固有表現をキーセグメントとして認識してよい。
【0050】
NLTKは、Python言語で自然言語処理を実行するための自然言語処理ライブラリであり、トランザクションテキスト22のテキスト分類、トークン化、ステミング(すなわち、語形が変化する単語の語幹でテキストマッチングすること)、品詞タグ付け、テキスト構文解析、形態素解析、意味論的推論等の機能を有する。NLTKは言語依存性を有し、それぞれの自然言語の文章を構造化し大規模に集積した、複数の自然言語にそれぞれ対応する複数のコーパスや言語依存アドオンモジュール等へのインタフェースを持つことにより、マルチリンガルに対応することができる。NLTKは自然言語処理モデルに実装され、テキスト分類や解析等の教師データを用いて、予め学習されていてよい。
【0051】
S32で、属性抽出部13は、S31で認識されたキーセグメントに近似する名称を、曖昧(fuzzy)テキストマッチングにより検索する。
具体的には、属性抽出部13は、S31で認識されたキーセグメントに意味的に類似するテキストストリング(名称)を、例えば、局所性鋭敏型ハッシュ(Locally Sensitive Hashing:LSH)アルゴリズムを実装する自然言語処理モデルを用いて検索してよい。LSHとは、高次元のデータを確率的な処理によって次元圧縮するための手法であり、テキストの類似性の測定に適用することができる。ハッシュの基本的な考え方は、類似したデータが高確率で同じバケットに入るようにデータを整理することである。多くの場合においてこのバケットの数は入力されるデータサンプルの数よりもずっと小さくなる。LSHを行うためのパラメータ集合をLSHファミリと呼び、LSHファミリは、距離空間と閾値、近似因子によって定義される。
【0052】
S32で使用される自然言語処理モデルは、LSHファミリのパラメータ集合を予め学習していてよい。例えば、この自然言語処理モデルは、集合同士の類似度を測定するJaccard距離(係数)を用いるLSHファミリであるMinHashを実装してよい。Jaccard距離は、ランダムなハッシュ関数を集合の各ベクトルに適用し、ハッシュ値の最小値が一致する確率により求められる。
【0053】
あるいは、S32で使用される自然言語処理モデルは、Jaro距離を用いて2つの文字列の部分的な一致を測定するJaro類似性(Jaro Similarity)を実装してよい。Jaro距離は、2つの文字列の間で一致する文字数と転置(transposition)を数値化することで、2つの文字列間の類似性を測定する。
【0054】
属性抽出部13はさらに、S32で、表音解析アルゴリズム(Phonetic Algorithm)を実装する自然言語処理モデルを用いて、S31で認識されたキーセグメントに音声学的に類似する名称を検索してよい。
表音解析アルゴリズムとしては、例えば、文字列の綴りから発音の近似形を導出するアルゴリズムの1つであるSoundexを用いることができる。
S32で属性抽出部13は、上記の曖昧テキストマッチングや表音解析で得られた近似する名称を含めて、直接属性5として、事業者/ブランド51と、トランザクション位置54の各属性を抽出することができる。
【0055】
S33で、属性抽出部13は、S31で認識されたキーセグメントのカテゴリを、テキスト分類器を用いて予測する。
具体的には、属性抽出部13は、S31で認識されたキーセグメントである店舗名中の、特に事業者/ブランド51をテキスト分類器に入力して、テキスト分類器に、事業者/ブランド51のカテゴリを予測させる。或いは、属性抽出部13は、トランザクションテキスト22中に記述される商品名やサービス名をテキスト分類器に入力して、事業者/ブランド51のカテゴリを予測してもよいし、事業者/ブランド51および商品名やサービス名の双方をテキスト分類器に入力して、カテゴリを予測してもよい。
【0056】
属性抽出部13は、例えば、TransformerやBERT(Bidirectional Encoder Representation from Transformers)による埋め込みを実装する自然言語処理モデルをテキスト分類器として用いて、事業者/ブランド51から、当該事業者/ブランド51のカテゴリを予測してよい。BERTは、Transformerによる双方向のエンコード表現を用いる事前学習モデルであり、ラベルが付与されていない大量のデータを用いて事前学習させることができる。
【0057】
図6は、属性情報抽出装置1の属性抽出部13が実行する、トランザクションテキスト22に記述される事業者/ブランド51からテキスト分類器によって事業者/ブランド51の属するカテゴリを予測する処理の一例を説明する概念図である。
【0058】
図6を参照して、トランザクションテキスト22は、5つのカード取引にそれぞれ相当する、5つのトランザクションテキスト22のエントリーを有する。各トランザクションテキスト22は、店舗名(事業者/ブランド51)のキーセグメントを含む。事業者/ブランド51の各エントリーを、テキスト分類器8に入力して、テキスト分類器8にカテゴリ52、およびサブカテゴリ53を予測させる。1番目のエントリーで例示すると、事業者/ブランド51「楽天トラベル国内宿泊」は、カテゴリ52「Travel」、およびサブカテゴリ53「Rakuten Travel(domestic)」に分類される。2番目以降のエントリーについても同様に、それぞれのカテゴリ52およびサブカテゴリ53に分類される。各エントリーについて、信頼度スコア(confidence)57は、予測されたカテゴリ52およびサブカテゴリ53の予測結果の信頼度を示す。
【0059】
4番目のエントリーのトランザクションテキスト22「ABC チューンズス」からは、事業者/ブランド51のキーセグメントとして、
図5のS31で「チューンズ」が抽出され、この抽出された「チューンズ」が、S33で、カテゴリ52「Hobby&Entertainment」、およびサブカテゴリ53「Digital Content」に分類されていることが理解できる。
【0060】
通常、店舗名から、当該店舗が属するカテゴリを特定するには、店舗名に付与された業種コード(Merchant Category Code:MCC)を参照する必要がある。これに対して、本実施形態では、自然言語処理モデル3を実装したテキスト分類器8を使用して、トランザクションテキスト22に含まれる店舗名のキーセグメントからカテゴリ52およびサブカテゴリ53を予測するので、事前に店舗名に対してMCCを対応付ける必要がなく、カード利用明細2のカード取引の記述における自由度が制約されることがない。
【0061】
図5に戻り、S34で、属性抽出部13は、S31で認識されたキーセグメントに対応する位置情報を特定する。
具体的には、属性抽出部13は、トランザクションテキスト22中の店舗名等にカード取引が発生した位置の情報が含まれている場合(例えば、
図3のエントリー311)には、当該位置の情報を直接属性5のトランザクション位置54として特定してよい。一方、属性抽出部13は、トランザクションテキスト22にカード取引が発生した位置の情報が含まれていない場合には、例えば、NLTKによりコーパス等にアクセスすることによって、トランザクションテキスト22から認識された店舗名から、当該店舗の位置の情報を直接属性5のトランザクション位置54として導出してよい。
【0062】
S34で、属性抽出部13はさらに、直接属性5のトランザクション位置54に対応するステート(都道府県ないし州)/国55、および緯度/経度56の位置情報を特定する。
具体的には、属性抽出部13は、例えば、NLTKを介してコーパスや地図情報等にアクセスすることによって、トランザクション位置54に対応するステート/国55、および緯度/経度56を特定してよい。
【0063】
S35で、属性抽出部13は、S31からS34で特定ないし導出された直接属性5を抽出する。
図2を参照して、S35で抽出される直接属性5は、事業者/ブランド51、カテゴリ52、サブカテゴリ53、トランザクション位置54、ステート/国55、および緯度/経度56を含む。
【0064】
S36で、属性抽出部13は、S31で認識されたキーセグメントから派生属性6を生成する。
具体的には、属性抽出部13は、例えば、インターネット上のWebサイトから特定の情報を自動抽出するWebスクレイピングのソフトウエアを使用して、派生属性6を動的に生成してよい。Webスクレイピングは、インターネット上のWebサイトを巡回するWebクローラと、WebサイトのHTML内から不要な情報を削除して必要な情報を抽出するWebスクレイパとを有し、巡回先のウェブサイトからリアルタイムで更新されている情報を取得することができる。
【0065】
S36で生成される派生属性6は、
図2を参照して、支店61、およびコンペティタ62を含む。支店61は、事業者/ブランド51の支店の情報であり、例えば、支店の所在地、支店の規模等の情報を含む。コンペティタ62は、事業者/ブランド51と競合するコンペティタの情報、例えば、当該コンペティタの所在地、規模、競合する商品やサービス、および競合の程度等の情報を含む。これらの派生属性6は、S35で直接属性5として抽出された、事業者/ブランド51、カテゴリ52、サブカテゴリ53、トランザクション位置54、ステート/国55、および緯度/経度56をWebスクレイピングのクエリに適宜含めることで、対応する情報を外部のWebサイトから取得することができる。
【0066】
S36で派生属性6が生成されると、
図4のS4へ進み、属性出力部14は、
図5のS35で抽出された直接属性5と、S36で生成された派生属性6を、属性情報データベース4へ出力する。
【0067】
図7は、日本語のトランザクションテキスト22からそれぞれ抽出される直接属性5および派生属性6の一例を説明する概念図である。
図7を参照して、日本語のトランザクションテキスト22「グリーンライン新静岡店」から、直接属性5と派生属性6とが抽出されている。
直接属性5としては、事業者/ブランド51「Green Line」、カテゴリ52「Clothing Store」、サブカテゴリ53「Apparels」、トランザクション位置54「Shizuoka」、ステート/国55「Japan」、緯度/経度56「34.9756」、「138.3827」がそれぞれ抽出されている。
派生属性6としては、支店61「同一ステート内:10」、「同一国内:25」、コンペティタ62「Blue Line」、「Red Line」、「Yellow Line」がそれぞれ抽出されている。
【0068】
一方、
図8は、英語のトランザクションテキスト22からそれぞれ抽出される直接属性5および派生属性6の一例を説明する概念図である。
図8を参照して、英語のトランザクションテキスト22「DEFG bangalore 8」から、直接属性5と派生属性6が抽出されている。
直接属性5としては、事業者/ブランド51「DEFG」、カテゴリ52「ToyStore」、サブカテゴリ53「Children Games」、トランザクション位置54「Bangalore」、ステート/国55「Karnataka」、「India」、緯度/経度56「12.9716」、「77.5946」がそれぞれ抽出されている。
派生属性6としては、支店61「同一ステート内:15」、「同一国内:30」、コンペティタ62「Toys Store」、「Pearl Toys」等がそれぞれ抽出されている。
【0069】
なお、
図8では、直接属性5は、カード取引識別情報7として、トランザクション情報に含まれるトランザクション額23フィールドから抽出されたトランザクション額72「420」、およびトランザクション日時24フィールドから抽出されたトランザクション日時73「20th August 2022」をそれぞれ含んでいる。
図7および
図8から理解されるように本実施形態によれば、僅かなテキストストリングであるトランザクションテキスト22に、複数の学習済み自然言語処理モデル3を使用した複数の自然言語処理を適用することにより、多数の種類の属性を容易かつ一元的に抽出することができる。
なお、
図7および
図8では、直接属性5および派生属性6が英語で抽出されているが、本実施形態はこれに限定されない。本実施形態において、属性抽出部13は、マルチリンガルに対応可能な自然言語処理モデル3を使用しているので、直接属性5および派生属性6はいずれも、トランザクションテキスト22の記述言語に依存することなく、自然言語処理モデル3が対応可能な任意の言語で出力することができる。
【0070】
<属性抽出処理のユースケース>
図9および
図10を参照して、属性情報抽出装置1の後処理部15が実行するユースケースとしての後処理の一例を説明する。
図9は、属性情報抽出装置1の後処理部15が実行する、属性情報データベース4に直積された属性情報に基づくユーザのプロファイリング処理の処理結果の表示出力の一例を示す図である。
後処理部15は、属性情報データベース4に蓄積された、カード所有者である特定のユーザの所定期間に亘る属性を読み出して解析することにより、当該期間中のユーザの購買行動を可視化することができる。
【0071】
図9を参照して、トランザクションテキスト22から抽出された直接属性5のカテゴリ52およびサブカテゴリ53に基づいて分類された、所定期間内に当該ユーザがカード取引により実行した購買行動の割合が、トランザクション額72に応じてパイチャートで示されている。
図9の右上の事業者(Merchants)タブを選択操作することにより、トランザクションテキスト22から抽出された直接属性5の事業者/ブランド51ごとに、トランザクション額72に応じて購買行動の割合を可視化することもできる。
このように、本実施形態によれば、属性情報データベース4に蓄積された属性情報に基づいてユーザの購買行動をプロファイリングすることで、ユーザの購買行動における傾向や嗜好を詳細に把握することができる。したがって、例えば、当該ユーザに対してより高い訴求力を持つ事業者/ブランドや商品/サービスカテゴリをより優先的にリコメンデーション表示するなどの手法で、広告配信を最適化することができる。
【0072】
図10は、属性情報抽出装置1の後処理部15が実行する、属性情報に基づく店舗(事業者/ブランド)のプロファイリング処理の処理結果の表示出力の一例を示す図である。
後処理部15は、属性情報データベース4に蓄積された全ユーザの所定期間に亘る属性を読み出して解析することにより、当該期間中における複数の事業者を評価することができる。
図10を参照して、トランザクションテキスト22から抽出された直接属性5の事業者/ブランド51に基づいて、所定期間内に全ユーザがカード取引により実行した購買行動の事業者ごとの額がそのカード取引回数とともに示されている。
さらに、派生属性6の支店61やコンペティタ62を利用して、当該事業者とそのコンペティタとを比較して表示してもよい。
【0073】
このように、本実施形態によれば、属性情報データベース4に蓄積された属性情報に基づいて事業者やブランドをプロファイリングすることで、最もカード取引で利用されている事業者、ブランド、店舗名を容易に特定することができる。したがって、例えば、解析対象クレジットカードのWebサイトや関連ECサイトなどに、特定されたブランド等をリコメンデーションとして表示することで、当該ブランドに関するコンバージョンレート(CVR)の向上が期待できる。
あるいは、特定されたブランド等を、解析対象クレジットカードのWebサイト上のバナーとして表示してもよく、特定されたブランド等とコラボレーションしたクレジットカードを提供することで、カード利用者の関心を高めてもよい。
【0074】
以上説明したように、本実施形態によれば、属性情報抽出装置は、記憶装置に格納されたカード利用明細を読み出して、読み出されたカード利用明細のデータからトランザクション情報を取得し、取得されたカードトランザクション情報からトランザクションテキストを分離する。
属性情報抽出装置はさらに、分離されたトランザクションテキストを、複数の自然言語処理モデルを使用して自然言語処理することにより、トランザクションテキストから対応する複数の属性を抽出し、抽出された複数の属性を属性情報データベースに出力する。出力された属性は、属性情報抽出装置により、例えば、ユーザや店舗のプロファイリング等の各種の後処理に供される。
【0075】
これにより、ユーザの購買行動に関連する属性情報を、容易かつ高精度に抽出することができる。したがって、多様なドメインに亘って横断的に、ユーザの購買行動をより的確にプロファイリングすることが可能になる。
【0076】
<属性情報抽出装置のハードウエア構成>
図11は、本実施形態に係る属性情報抽出装置1のハードウエア構成の非限定的一例を示す図である。
本実施形態に係る属性情報抽出装置1は、単一または複数の、あらゆるコンピュータ、モバイルデバイス、または他のいかなる処理プラットフォーム上にも実装することができる。
図11を参照して、属性情報抽出装置1は、単一のコンピュータに実装される例が示されているが、本実施形態に係る属性情報抽出装置1は、複数のコンピュータを含むコンピュータシステムに実装されてよい。複数のコンピュータは、有線または無線のネットワークにより相互通信可能に接続されてよい。
【0077】
図15に示すように、属性情報抽出装置1は、CPU111と、ROM112と、RAM113と、HDD114と、入力部115と、表示部116と、通信I/F117と、システムバス118とを備えてよい。属性情報抽出装置1はまた、外部メモリを備えてよい。
CPU(Central Processing Unit)111は、属性情報抽出装置1における動作を統括的に制御するものであり、データ伝送路であるシステムバス118を介して、各構成部(112~117)を制御する。なお、CPU111に替えて、またはこれに加えて、属性情報抽出装置1は、GPU(Graphics Processing Unit)を備え、このGPUにより、自然言語処理モデル3等の事前学習や推論処理を実行してもよい。
【0078】
ROM(Read Only Memory)112は、CPU111が処理を実行するために必要な制御プログラム等を記憶する不揮発性メモリである。なお、当該プログラムは、HDD(Hard Disk Drive)114、SSD(Solid State Drive)等の不揮発性メモリや着脱可能な記憶媒体(不図示)等の外部メモリに記憶されていてもよい。
RAM(Random Access Memory)113は、揮発性メモリであり、CPU111の主メモリ、ワークエリア等として機能する。すなわち、CPU111は、処理の実行に際してROM112から必要なプログラム等をRAM113にロードし、当該プログラム等を実行することで各種の機能動作を実現する。
【0079】
HDD114は、例えば、CPU111がプログラムを用いた処理を行う際に必要な各種データや各種情報等を記憶している。また、HDD114には、例えば、CPU111がプログラム等を用いた処理を行うことにより得られた各種データや各種情報等が記憶される。
入力部115は、キーボードやマウス等のポインティングデバイスにより構成される。
表示部116は、液晶ディスプレイ(LCD)等のモニターにより構成される。表示部116は、機械学習処理で使用される各種パラメータや、他の装置との通信で使用される通信パラメータ等を属性情報抽出装置1へ指示入力するためのユーザインタフェースであるGUI(Graphical User Interface)を提供してよい。
【0080】
通信I/F117は、属性情報抽出装置1と外部装置との通信を制御するインタフェースである。
通信I/F117は、ネットワークとのインタフェースを提供し、ネットワークを介して、外部装置との通信を実行する。通信I/F117を介して、外部装置との間で各種データや各種パラメータ等が送受信される。本実施形態では、通信I/F117は、イーサネット(登録商標)等の通信規格に準拠する有線LAN(Local Area Network)や専用線を介した通信を実行してよい。ただし、本実施形態で利用可能なネットワークはこれに限定されず、無線ネットワークで構成されてもよい。この無線ネットワークは、Bluetooth(登録商標)、ZigBee(登録商標)、UWB(Ultra Wide Band)等の無線PAN(Personal Area Network)を含む。また、Wi-Fi(Wireless Fidelity)(登録商標)等の無線LAN(Local Area Network)や、WiMAX(登録商標)等の無線MAN(Metropolitan Area Network)を含む。さらに、LTE/3G、4G、5G等の無線WAN(Wide Area Network)を含む。なお、ネットワークは、各機器を相互に通信可能に接続し、通信が可能であればよく、通信の規格、規模、構成は上記に限定されない。
【0081】
図1に示す属性情報抽出装置1の各要素のうち少なくとも一部の機能は、CPU111がプログラムを実行することで実現することができる。ただし、
図1に示す属性情報抽出装置1の各要素のうち少なくとも一部の機能が専用のハードウエアとして動作するようにしてもよい。この場合、専用のハードウエアは、CPU111の制御に基づいて動作する。
【0082】
なお、上記において特定の実施形態が説明されているが、当該実施形態は単なる例示であり、本発明の範囲を限定する意図はない。本明細書に記載された装置及び方法は上記した以外の形態において具現化することができる。また、本発明の範囲から離れることなく、上記した実施形態に対して適宜、省略、置換及び変更をなすこともできる。かかる省略、置換及び変更をなした形態は、請求の範囲に記載されたもの及びこれらの均等物の範疇に含まれ、本発明の技術的範囲に属する。
【0083】
(本開示の実施形態)
本開示は以下の実施形態を含む。
[1]店舗での取引を記述するエントリーを含むトランザクション情報を取得するトランザクション情報取得部と、前記トランザクション情報取得部により取得された前記トランザクション情報からトランザクションテキストを分離するテキスト分離部と、前記テキスト分離部により分離された前記トランザクションテキストを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出する属性抽出部と、前記属性抽出部により抽出された前記複数の属性を出力する出力部と、を備えることを特徴とする情報処理装置。
【0084】
[2]前記属性抽出部は、前記トランザクションテキスト中からキーセグメントを特定し、特定された前記キーセグメントから前記複数の属性を抽出することを特徴とする[1]に記載の情報処理装置。
【0085】
[3]前記属性抽出部は、前記トランザクションテキストを、前記複数の自然言語処理モデルのうちの自然言語処理ライブラリを実装する学習済み自然言語処理モデルに処理させることにより、前記キーセグメントを認識することを特徴とする[2]に記載の情報処理装置。
【0086】
[4]前記属性抽出部は、前記複数の自然言語処理モデルのうちのテキスト分類器を実装する学習済み自然言語処理モデルを使用して、特定された前記キーセグメントのカテゴリを予測し、予測されたカテゴリを前記複数の属性の1つとして抽出することを特徴とする[2]または[3]に記載の情報処理装置。
【0087】
[5]前記属性抽出部は、特定された前記キーセグメントをクエリとして外部情報源にアクセスすることにより、前記キーセグメントから派生する派生属性を生成することを特徴とする[2]から[4]のいずれかに記載の情報処理装置。
【0088】
[6]前記属性抽出部は、前記複数の自然言語処理モデルのうちの曖昧テキストマッチングアルゴリズムを実装する学習済み自然言語処理モデルを使用して、特定された前記キーセグメントに意味的に近似するテキストストリングを検索し、検索された前記テキストストリングおよび前記キーセグメントから前記複数の属性を抽出することを特徴とする[2]から[5]のいずれかに記載の情報処理装置。
【0089】
[7]前記属性抽出部は、前記複数の自然言語処理モデルのうちの表音解析アルゴリズムを実装する学習済み自然言語処理モデルを使用して、特定された前記キーセグメントに発音的に近似するテキストストリングを検索し、検索された前記テキストストリングおよび前記キーセグメントから前記複数の属性を導出することを特徴とする[2]から[6]のいずれかに記載の情報処理装置。
【0090】
[8]前記トランザクション情報取得部は、所定期間につき単一の取引明細から、前記トランザクション情報を取得することを特徴とする[1]から[7]のいずれかに記載の情報処理装置。
【0091】
[9]情報処理装置が実行する情報処理方法であって、店舗での取引を記述するエントリーを含むトランザクション情報を取得するステップと、取得された前記トランザクション情報からトランザクションテキストを分離するステップと、分離された前記トランザクションテキストを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出するステップと、抽出された前記複数の属性を出力するステップと、を含むことを特徴とする情報処理方法。
【0092】
[10]情報処理をコンピュータに実行させるための情報処理プログラムであって、該プログラムは、前記コンピュータに、店舗での取引を記述するエントリーを含むトランザクション情報を取得するトランザクション情報取得処理と、前記トランザクション情報取得処理により取得された前記トランザクション情報からトランザクションテキストを分離するテキスト分離処理と、前記テキスト分離処理により分離された前記トランザクションテキストを複数の自然言語処理モデルに入力して、前記トランザクションテキストに対応する複数の属性をそれぞれ抽出する属性抽出処理と、前記属性抽出処理により抽出された前記複数の属性を出力する出力処理と、を含む処理を実行させるためのものであることを特徴とする情報処理プログラム。
【符号の説明】
【0093】
1…属性情報抽出装置、2…カード利用明細、3…自然言語処理モデル、4…属性情報データベース、11…トランザクション情報取得部、12…トランザクションテキスト分離部、13…属性抽出部、14…属性出力部、15…後処理部、111…CPU、112…ROM、113…RAM、114…HDD、115…入力部、116…表示部、117…通信I/F、118…システムバス