(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024127493
(43)【公開日】2024-09-20
(54)【発明の名称】テキスト生成装置、テキスト生成方法、およびプログラム
(51)【国際特許分類】
G06F 40/56 20200101AFI20240912BHJP
G06F 40/44 20200101ALI20240912BHJP
G06N 3/0475 20230101ALI20240912BHJP
G06N 20/00 20190101ALI20240912BHJP
【FI】
G06F40/56
G06F40/44
G06N3/0475
G06N20/00
【審査請求】有
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023036681
(22)【出願日】2023-03-09
(11)【特許番号】
(45)【特許公報発行日】2024-06-12
(71)【出願人】
【識別番号】397065480
【氏名又は名称】エヌ・ティ・ティ・コムウェア株式会社
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100101247
【弁理士】
【氏名又は名称】高橋 俊一
(74)【代理人】
【識別番号】100095500
【弁理士】
【氏名又は名称】伊藤 正和
(72)【発明者】
【氏名】川前 徳章
(57)【要約】
【課題】主観的なレビューを自動生成する。
【解決手段】テキスト生成システム1は、アイテムID、ユーザID、ユーザによるアイテムに対するレビュー、およびユーザのアイテムに対する評価を学習データとして、アイテムIDとユーザIDを入力するとユーザIDのユーザによるアイテムIDのアイテムに対するレビューを生成するとともに、同ユーザによる同アイテムに対する評価を生成するように学習した深層学習モデルと、アイテムIDとユーザIDを深層学習モデルに入力し、ユーザによるアイテムに対するレビューと評価を出力する生成部20を備える。深層学習モデルは、トランスフォーマーレイヤと、トランスフォーマーレイヤの出力にアイテムの特徴を反映するアスペクトレイヤと、アスペクトレイヤの出力にユーザの特徴を反映するプリファレンスレイヤと、プリファレンスレイヤの出力をテキストにデコードするデコーダと、プリファレンスレイヤの出力からユーザによるアイテムに対する評価を予測する評価予測部を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
アイテムの識別子、ユーザの識別子、ユーザによるアイテムに対するレビュー、およびユーザのアイテムに対する評価を学習データとして、アイテムの識別子とユーザの識別子を入力すると入力した識別子に相当するユーザによる入力した識別子に相当するアイテムに対するレビューを生成するとともに、同ユーザによる同アイテムに対する評価を生成するように学習した深層学習モデルと、
アイテムの識別子とユーザの識別子を前記深層学習モデルに入力し、前記ユーザによる前記アイテムに対するレビューと評価を出力する生成部を備え、
前記深層学習モデルは、Transformerを用いたテキスト生成モデルと、前記テキスト生成モデルの出力に前記アイテムの特徴を反映するアスペクトレイヤと、前記アスペクトレイヤの出力に前記ユーザの特徴を反映するプリファレンスレイヤと、前記プリファレンスレイヤの出力をテキストにデコードするデコーダと、前記プリファレンスレイヤの出力から前記ユーザによる前記アイテムに対する評価を予測する評価予測部を備える
テキスト生成装置。
【請求項2】
請求項1に記載のテキスト生成装置であって、
前記アスペクトレイヤとプリファレンスレイヤは、前記アイテムとユーザを複数種類に分類する中間変数を導入し、当該中間変数に応じてアイテムとユーザを前段のレイヤからの入力に反映する
テキスト生成装置。
【請求項3】
請求項1に記載のテキスト生成装置であって、
前記深層学習モデルの出力する予測評価の誤差を最小化するとともに、アイテムの識別子の埋め込み表現と対応するテキストの埋め込み表現、並びにユーザの識別子の埋め込み表現と対応するテキストの埋め込み表現とが近くなるように前記深層学習モデルを学習する学習部を備える
テキスト生成装置。
【請求項4】
コンピュータが、
アイテムの識別子、ユーザの識別子、ユーザによるアイテムに対するレビュー、およびユーザのアイテムに対する評価を学習データとして、アイテムの識別子とユーザの識別子を入力すると入力した識別子に相当するユーザによる入力した識別子に相当するアイテムに対するレビューを生成するとともに、同ユーザによる同アイテムに対する評価を生成するように学習した深層学習モデルを保持して、
アイテムの識別子とユーザの識別子を前記深層学習モデルに入力し、前記ユーザによる前記アイテムに対するレビューと評価を出力し、
前記深層学習モデルは、Transformerを用いたテキスト生成モデルと、前記テキスト生成モデルの出力に前記アイテムの特徴を反映するアスペクトレイヤと、前記アスペクトレイヤの出力に前記ユーザの特徴を反映するプリファレンスレイヤと、前記プリファレンスレイヤの出力をテキストにデコードするデコーダと、前記プリファレンスレイヤの出力から前記ユーザによる前記アイテムに対する評価を予測する評価予測部を備える
テキスト生成方法。
【請求項5】
請求項4に記載のテキスト生成方法であって、
前記アスペクトレイヤとプリファレンスレイヤは、前記アイテムとユーザを複数種類に分類する中間変数を導入し、当該中間変数に応じてアイテムとユーザを前段のレイヤからの入力に反映する
テキスト生成方法。
【請求項6】
請求項4に記載のテキスト生成方法であって、
コンピュータが、
前記深層学習モデルの出力する予測評価の誤差を最小化するとともに、アイテムの識別子の埋め込み表現と対応するテキストの埋め込み表現、並びにユーザの識別子の埋め込み表現と対応するテキストの埋め込み表現とが近くなるように前記深層学習モデルを学習する
テキスト生成方法。
【請求項7】
請求項1ないし3のいずれかに記載のテキスト生成装置の各部としてコンピュータを動作させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、テキスト生成装置、テキスト生成方法、およびプログラムに関する。
【背景技術】
【0002】
商品を実際に手にとって確認できないECサイトなどでは、ユーザは商品のレビューを参考にして購入する商品を選ぶことが多い。商品のレビューを数多く用意することで、売上増加に貢献できる。
【0003】
機械学習したモデルを用いてテキストを生成する技術が知られている。従来のテキスト生成モデルは、テキスト集合からテキストを構成する単語の統計的パターンを学習し、テキスト生成モデルにいくつかの単語を与えると、与えられた単語に続く単語を統計的パターンに基づいて予測する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来方法では同じようなテキストばかりが生成されるため、ユーザおよびアイテムごとに主観的なレビューを生成することが難しいという問題があった。
【0006】
本開示は、上記に鑑みてなされたものであり、主観的なレビューを自動生成することを目的とする。を目的とする。
【課題を解決するための手段】
【0007】
本開示の一態様のテキスト生成装置は、アイテムの識別子、ユーザの識別子、ユーザによるアイテムに対するレビュー、およびユーザのアイテムに対する評価を学習データとして、アイテムの識別子とユーザの識別子を入力すると入力した識別子に相当するユーザによる入力した識別子に相当するアイテムに対するレビューを生成するとともに、同ユーザによる同アイテムに対する評価を生成するように学習した深層学習モデルと、アイテムの識別子とユーザの識別子を前記深層学習モデルに入力し、前記ユーザによる前記アイテムに対するレビューと評価を出力する生成部を備え、前記深層学習モデルは、Transformerを用いたテキスト生成モデルと、前記テキスト生成モデルの出力に前記アイテムの特徴を反映するアスペクトレイヤと、前記アスペクトレイヤの出力に前記ユーザの特徴を反映するプリファレンスレイヤと、前記プリファレンスレイヤの出力をテキストにデコードするデコーダと、前記プリファレンスレイヤの出力から前記ユーザによる前記アイテムに対する評価を予測する評価予測部を備える。
【0008】
本開示の一態様のテキスト生成方法は、コンピュータが、アイテムの識別子、ユーザの識別子、ユーザによるアイテムに対するレビュー、およびユーザのアイテムに対する評価を学習データとして、アイテムの識別子とユーザの識別子を入力すると入力した識別子に相当するユーザによる入力した識別子に相当するアイテムに対するレビューを生成するとともに、同ユーザによる同アイテムに対する評価を生成するように学習した深層学習モデルを保持して、アイテムの識別子とユーザの識別子を前記深層学習モデルに入力し、前記ユーザによる前記アイテムに対するレビューと評価を出力し、前記深層学習モデルは、Transformerを用いたテキスト生成モデルと、前記テキスト生成モデルの出力に前記アイテムの特徴を反映するアスペクトレイヤと、前記アスペクトレイヤの出力に前記ユーザの特徴を反映するプリファレンスレイヤと、前記プリファレンスレイヤの出力をテキストにデコードするデコーダと、前記プリファレンスレイヤの出力から前記ユーザによる前記アイテムに対する評価を予測する評価予測部を備える。
【発明の効果】
【0009】
本開示によれば、主観的なレビューを自動生成することができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本実施形態のテキスト生成システムの構成の一例を示す図である。
【
図2】
図2は、本実施形態で提案する深層学習モデルの一例を示す図である。
【
図3】
図3は、アスペクトレイヤとプリファレンスレイヤで行われる処理を説明するための図である。
【
図4】
図4は、学習処理の流れの一例を示すフローチャートである。
【
図5】
図5は、テキスト生成処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
[システム構成]
以下、本発明の実施の形態について図面を用いて説明する。
【0012】
図1は、本実施形態のテキスト生成システムの構成の一例を示す図である。同図に示すテキスト生成システム1は、学習部10、生成部20、データ保存部30、および計算結果記憶部40を備える。テキスト生成システム1が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムはテキスト生成システム1が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリなどの記録媒体に記録することも、ネットワークを通して提供することも可能である。
【0013】
テキスト生成システム1は、客観的要素(aspect)と主観的要素(preference)をテキスト生成モデルに組み込み、客観的要素と主観的要素をテキストの生成に反映する。例えば、客観的要素はアイテム(商品)であり、主観的要素はユーザである。テキスト生成システム1に、ユーザの識別子(以下、ユーザと称する)とアイテムの識別子(以下、アイテムと称する)を入力すると、当該ユーザが当該アイテムについて書きそうなレビューを出力する。これにより、画一的なレビューでなく、ユーザとアイテムに応じた主観的なレビューを自動生成できる。
【0014】
学習部10は、ユーザ、アイテム、ユーザによるアイテムに対するレビュー(テキスト)、およびユーザによるアイテムに対する評価を学習データとして入力し、テキスト生成条件(ユーザとアイテム)とテキストの客観的要素/主観的要素との対応を学習して、テキスト生成条件に合ったレビューを自動生成する深層学習モデルを構築する。
【0015】
生成部20は、サービス事業者5から受け付けたユーザおよびアイテムをテキスト生成条件として深層学習モデルに入力し、ユーザのアイテム対するレビューを生成するとともに、ユーザのアイテム対する評価を予測する。サービス事業者5は、例えば、ECサイトの運営事業者である。
【0016】
データ保存部30は、ユーザ、アイテム、レビュー、および評価などの学習データを保持する。学習データは、実際にユーザがアイテムに対して記載したレビューおよび評価であり、サービス事業者5によって収集される。
【0017】
計算結果記憶部40は、学習によって得られた深層学習モデルのパラメータ、ユーザやアイテムの分散ベクトル(分散埋め込み表現)などの計算結果を保持する。
【0018】
[提案モデル]
図2を参照し、本実施形態で提案するテキスト生成モデル(深層学習モデル)について説明する。同図に示すテキスト生成モデルは、l層のトランスフォーマーレイヤ(Transformer Layer)、アスペクトレイヤ(Aspect Layer)、プリファレンスレイヤ(Preference Layer)、デコーダ(Word and ID Decoder)、および評価予測部(Rating Predictor)を備える。テキスト生成モデルに、ユーザIDのトークンとアイテムIDのトークンとシードワードとなる単語のトークンを入力すると、シードワードに続く単語を出力する。
【0019】
トランスフォーマーレイヤはアテンションメカニズムを備えるネットワークである。アテンションとはトークン間の関連度を表すスコアである。各トークンがQ(クエリ)、K(キー)、およびV(バリュー)の行列を持つ。次式のように、アテンションは、Vの加重和であり、その加重はQとKを使って計算される。
【0020】
【0021】
ここで、Wl
Q,Wl
K,Wl
Vは学習可能な重みである。Xは入力した単語のトークン数であり、dh及びdkは、クエリとキーの共有次元数である。
【0022】
数1におけるマスクに相当する行列Mは参照範囲の異なるマスクMd及びMiに相当する。Mdは、アスペクトレイヤとプリファレンスレイヤにて、ユーザIDまたはアイテムIDは全ての単語を参照でき、単語はユーザIDまたはアイテムIDとそれまでに出現した単語のみを参照できるようにする自己アテンションマスクである。Miは、トランスフォーマーレイヤにて、単語のトークンはそれまでに出現した単語のトークンのみを参照できるようにする自己アテンションマスクである。
【0023】
Hは、各レイヤへの入力であり、次式で表される。
【0024】
【0025】
H0は、トランスフォーマーレイヤへの入力であって、1番目からx番目までの単語についての分散埋め込み表現e1,...exである。具体的には、e1,...exのそれぞれは、単語のトークンの分散埋め込み表現、位置の分散埋め込み表現、およびデータ形式の分散埋め込み表現を合わせたものである。Hlは、l層目のトランスフォーマーレイヤの出力であり、次のレイヤへの入力である。
【0026】
アスペクトレイヤとプリファレンスレイヤは、次式のように、h*をZ種類に分類する中間変数zを導入し、中間変数zに応じて、アイテムIDに基づく客観的要素とユーザIDに基づく主観的表現をトランスフォーマーレイヤの出力に反映させる。
【0027】
【0028】
ここで、h
*(=h
i,h
u)は、アイテムIDとユーザIDの分散埋め込み表現である。h
*+l,xは、アスペクトレイヤまたはプリファレンスレイヤから出力されるx番目の出力である。関数Fは、中間変数zに応じて、トランスフォーマーレイヤの出力にh
*を反映させる関数である。z=0の場合はトランスフォーマーレイヤの出力をそのまま用いる。z>0の場合は上記のいずれかの変換式を任意に選択してh
l,xを変換する。
図3に、上記式を用いた、アスペクトレイヤとプリファレンスレイヤで行われる処理の概要を示す。アスペクトレイヤは、トランスフォーマーレイヤの出力h
l,xとアイテムIDの分散埋め込み表現h
iを入力してh
a+l,xを出力する。プリファレンスレイヤは、アスペクトレイヤの出力h
a+l,xとユーザIDの分散埋め込み表現h
uを入力してh
p+l,xを出力する。
【0029】
デコーダは、次式により、プリファレンスレイヤの出力Hp+lと重みWVを用いて次の単語の出現確率を計算し、テキストd(dの上に^)を生成する。
【0030】
【0031】
ここで、Teは温度パラメータである。
【0032】
評価予測部は、次式により、ユーザuによるアイテムiへの評価ru,i(rの上に^)を計算する。
【0033】
【0034】
ここで、φはtanh関数である。Wl、blは、評価を予測するl番目のニューラル層のプロジェクション行列とバイアスである。Wr、brは、出力層のプロジェクション行列とバイアスである。評価の予測には、多層パーセプトロン(MLP)を利用できる。
【0035】
[動作]
次に、
図4のフローチャートを参照し、学習処理について説明する。
【0036】
ステップS11にて、学習部10は、データ保存部30に保存されたユーザのアイテムに対するレビューと評価を取得し、レビューを単語に分割する。学習部10は、アイテム、ユーザ、およびユーザのアイテムに対するレビューと評価を学習データとして用いる。
【0037】
ステップS12にて、学習部10は、次式で示す目的関数Jが最小となるように、モデルのパラメータを更新する。学習には、アイテムの埋め込み表現と対応するテキストの埋め込み表現とが近くなるように学習するALM、ユーザの埋め込み表現と対応するテキストの埋め込み表現とが近くなるように学習するPLM、および評価の予測値とユーザのアイテムに対する評価とが近くなるように学習するタスクを導入した。
【0038】
【0039】
ここで、二重線の“1”は、ユーザuがアイテムiに評価を付けていたときは1、評価を付けていないときは0となるインジケータ関数である。λrとλdは評価を予測するコンポーネントとテキストを生成するコンポーネントとの間の重要性のバランスをとるためのハイパーパラメータである。Θrpは評価を予測するコンポーネントのパラメータの集合である。λrpはオーバーフィッティングを防止するための正則化パラメータである。“||・||”は、行列のフロベニウスノルムを示す。Rは、ユーザ-アイテム評価マトリックスである。ru,iは、ユーザuがアイテムiに実際に付けた評価である。ru,i(rの上にハット)は、評価の予測値である。LAPLMは、アスペクトレイヤとプリファレンスレイヤのそれぞれのタスクであり、いずれも次式で表される。
【0040】
【0041】
ここで、eaは、参照するターゲットとなるアイテムまたはユーザの分散埋め込み表現であり、epは対応するテキストの分散埋め込み表現であり、enは同じバッチ(学習データ)内の別のテキストの分散埋め込み表現である。LAPLMにより、アイテムまたはユーザと対応するテキストとが近くなるように学習する。
【0042】
学習部10は、評価予測とテキスト生成を同時に学習するので、予測評価に応じたレビューを生成できる。
【0043】
図5のフローチャートを参照し、テキスト生成処理について説明する。
【0044】
ステップS21にて、生成部20は、テキスト生成条件であるユーザIDとアイテムIDをモデルに入力する。
【0045】
ステップS22にて、生成部20は、シードワードをモデルに入力する。例えば、生成部20はテキストの始まりを示す“<s>”をモデルに入力する。
【0046】
ステップS23にて、モデルからシードワードに続く単語が出力される。
【0047】
ステップS24にて、生成部20は、テキストの生成が終了したか否かを判定する。例えば、モデルからテキストの終了を示す“<e>”が出力された場合、または出力されたテキストが最大文字数に達した場合に、生成部20はテキストの生成が終了したと判定する。
【0048】
テキスト生成が終了していない場合、ステップS22に戻り、生成部20はシードワードに続けてモデルの出力した単語をモデルに入力する。
【0049】
テキスト生成が終了した場合、ステップS25にて、生成部20はモデルの出力した単語をつなげてテキストを出力する。
【0050】
ステップS26にて、生成部20はモデルの出力したユーザのアイテムに対する予測評価を出力する。
【0051】
以上の処理により、ユーザとアイテムを条件としてレビューと評価が得られる。
【0052】
以上説明したように、本実施形態のテキスト生成システム1は、アイテムID、ユーザID、ユーザによるアイテムに対するレビュー、およびユーザのアイテムに対する評価を学習データとして、アイテムIDとユーザIDを入力するとユーザIDのユーザによるアイテムIDのアイテムに対するレビューを生成するとともに、同ユーザによる同アイテムに対する評価を生成するように学習した深層学習モデルと、アイテムIDとユーザIDを深層学習モデルに入力し、ユーザによるアイテムに対するレビューと評価を出力する生成部20を備える。深層学習モデルは、トランスフォーマーレイヤと、トランスフォーマーレイヤの出力にアイテムの特徴を反映するアスペクトレイヤと、アスペクトレイヤの出力にユーザの特徴を反映するプリファレンスレイヤと、プリファレンスレイヤの出力をテキストにデコードするデコーダと、プリファレンスレイヤの出力からユーザによるアイテムに対する評価を予測する評価予測部を備える。これにより、テキスト生成条件として入力したアイテムとユーザに応じた主観的なレビューを自動生成できる。また、学習済みのトランスフォーマを利用することでテキスト生成のための学習データを削減できる。
【符号の説明】
【0053】
1 テキスト生成システム
10 学習部
20 生成部
30 データ保存部
40 計算結果記憶部
5 サービス事業者