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

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

▶ CROCO株式会社の特許一覧

特許7572092文章生成装置、文章生成システム、文章生成方法、およびプログラム
<>
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図1
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図2
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図3
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図4
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図5
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図6
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図7
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図8
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図9
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図10
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図11
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図12
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図13
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図14
  • 特許-文章生成装置、文章生成システム、文章生成方法、およびプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-10-15
(45)【発行日】2024-10-23
(54)【発明の名称】文章生成装置、文章生成システム、文章生成方法、およびプログラム
(51)【国際特許分類】
   G06F 40/56 20200101AFI20241016BHJP
   G06F 40/44 20200101ALI20241016BHJP
【FI】
G06F40/56
G06F40/44
【請求項の数】 8
(21)【出願番号】P 2024011298
(22)【出願日】2024-01-29
【審査請求日】2024-01-29
(31)【優先権主張番号】P 2023074646
(32)【優先日】2023-04-28
(33)【優先権主張国・地域又は機関】JP
【早期審査対象出願】
(73)【特許権者】
【識別番号】318003825
【氏名又は名称】CROCO株式会社
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100171446
【弁理士】
【氏名又は名称】高田 尚幸
(72)【発明者】
【氏名】栗田 佳典
(72)【発明者】
【氏名】柏木 謙一
(72)【発明者】
【氏名】高橋 裕志郎
(72)【発明者】
【氏名】川口 淳一
【審査官】長 由紀子
(56)【参考文献】
【文献】特開2020-035019(JP,A)
【文献】特開2023-025933(JP,A)
【文献】特開2017-117270(JP,A)
【文献】GPT-Templatorで簡単に狙った回答をえる [ChatGPTプロンプト],[online],SHINOBI,2023年04月10日,[検索日 2024.02.16] インターネット:https://www.shinobi.jp/affiliate/gpt-templator-explain/
【文献】[初心者向け] ChatGPTを使って一瞬でプロライター級のブログを書く方法 ,[online],F-Labo,2023年02月24日,[検索日 2024.02.20] インターネット:https://vc-labo.design/chatgpt/
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-58
(57)【特許請求の範囲】
【請求項1】
対象者に提供するテーマ情報に関する出力文を取得する文章生成装置であって、
前記対象者の属性を示すペルソナ情報を入力するための入力項目を含むテンプレートを取得するテンプレート取得部と、
前記テンプレート取得部によって取得された前記テンプレートを用いて、ユーザによって入力された前記ペルソナ情報を取得する入力項目取得部と、
前記入力項目取得部によって取得された前記ペルソナ情報に基づいて、前記テーマ情報を用いずに、学習モデルを用いて生成された前記対象者に関する文章であるアドバイス文を生成するとともに、前記アドバイス文からキーフレーズを抽出する入力文生成部と、
前記入力文生成部によって抽出された前記キーフレーズと、前記テーマ情報とに基づき、学習モデルを用いて生成された出力文を取得する出力文取得部と、
を備える文章生成装置。
【請求項2】
前記入力項目取得部によって取得された前記ペルソナ情報に応じて、前記出力文取得部によって取得された前記出力文における漢字の割合または口語表現の割合を変更する変換部を更に備える、
請求項1記載の文章生成装置。
【請求項3】
前記出力文取得部によって取得された前記出力文を編集する編集部を更に備える、
請求項1記載の文章生成装置。
【請求項4】
前記出力文取得部によって取得された前記出力文と、インターネット上から取得された比較対象の文章である比較対象文のそれぞれを分解した文ごとの特徴ベクトルである文ベクトルを取得し、前記出力文と前記比較対象文のそれぞれに含まれ、文章を構成する重要な要素であるキーフレーズを取得し、前記出力文と前記比較対象文との間の前記文ベクトル同士の類似度と、同じ前記キーフレーズの出現度合の類似度とに基づいて、前記出力文と前記比較対象文との総合類似度を算出する類似度算出部を更に備える、
請求項1記載の文章生成装置。
【請求項5】
前記類似度算出部は、
前記出力文から得られた前記文ベクトルである一以上の第1文ベクトルと、前記比較対象文から得られた前記文ベクトルである一以上の第2文ベクトルとを網羅的に比較して前記文ベクトル同士の類似度を算出し、前記文ベクトル同士の類似度に基づいて、前記出力文と前記比較対象文との類似度を表す第1指標値を算出する文ベクトル比較部と、
前記出力文から得られた前記キーフレーズと、前記比較対象文から得られた前記キーフレーズとの間で一致する前記キーフレーズが、前記出力文と前記比較対象文とのそれぞれにおいて出現する出現度合に基づいて、前記出力文と前記比較対象文との類似度を表す第2指標値を算出するキーフレーズ比較部と、
前記第1指標値と前記第2指標値とに基づいて前記出力文と前記比較対象文の総合類似度を算出する総合類似度算出部と、を備える、
請求項に記載の文章生成装置。
【請求項6】
請求項に記載の文章生成装置と、
前記文章生成装置の前記総合類似度算出部により算出された前記総合類似度を表示する端末装置と、を備える、
文章生成システム。
【請求項7】
対象者に提供するテーマ情報に関する出力文を取得する文章生成装置が、
前記対象者の属性を示すペルソナ情報を入力するための入力項目を含むテンプレートを取得し、
取得された前記テンプレートを用いて、ユーザによって入力された前記ペルソナ情報を取得し、
取得された前記ペルソナ情報に基づいて、前記テーマ情報を用いずに、学習モデルを用いて生成された前記対象者に関する文章であるアドバイス文を生成するとともに、前記アドバイス文からキーフレーズを抽出し、
抽出された前記キーフレーズと、前記テーマ情報とに基づき、学習モデルを用いて生成された出力文を取得する、
文章生成方法。
【請求項8】
対象者に提供するテーマ情報に関する出力文を取得する文章生成装置に、
前記対象者の属性を示すペルソナ情報を入力するための入力項目を含むテンプレートを取得させ、
取得された前記テンプレートを用いて、ユーザによって入力された前記ペルソナ情報を取得させ、
取得された前記ペルソナ情報に基づいて、前記テーマ情報を用いずに、学習モデルを用いて生成された前記対象者に関する文章であるアドバイス文を生成させるとともに、前記アドバイス文からキーフレーズを抽出させ、
抽出された前記キーフレーズと、前記テーマ情報とに基づき、学習モデルを用いて生成された出力文を取得させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文章生成装置、文章生成システム、文章生成方法、およびプログラムに関する。
【背景技術】
【0002】
従来、人工知能(AI:Artificial Intelligence)を用いた言語処理を行うことで、ユーザと対話する装置が知られている。例えば、特許文献1には、事前に学習されたニューラルネットワークを用いて、ユーザによって入力された入力文(プロンプト)に応じた出力文を生成する処理装置が提案されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2020-86549号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、ユーザが入力した入力文(プロンプト)の内容に応じて生成される出力文の内容が変わるため、入力文の内容によっては、ユーザの望む出力文が生成されない場合があった。このため、ユーザの望む出力文が生成されるまで入力文を繰り返し修正する必要があり、ユーザの手間や時間がかかってしまう場合があった。
【0005】
本発明は、このような事情を考慮してなされたものであり、ユーザの望む出力文を取得することができる文章生成装置、文章生成システム、文章生成方法、およびプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の文章生成装置は、対象者に提供するテーマ情報に関する出力文を取得する文章生成装置であって、前記対象者の属性を示すペルソナ情報を入力するための入力項目を含むテンプレートを取得するテンプレート取得部と、前記テンプレート取得部によって取得された前記テンプレートを用いて、ユーザによって入力された前記ペルソナ情報を取得する入力項目取得部と、前記入力項目取得部によって取得された前記ペルソナ情報に基づいて、前記テーマ情報を用いずに、学習モデルを用いて生成された前記対象者に関する文章であるアドバイス文を生成するとともに、前記アドバイス文からキーフレーズを抽出する入力文生成部と、前記入力文生成部によって抽出された前記キーフレーズと、前記テーマ情報とに基づき、学習モデルを用いて生成された出力文を取得する出力文取得部と、を備える。
【発明の効果】
【0007】
本発明の一態様によれば、ユーザの望む文章を取得することができる文章生成装置、文章生成システム、文章生成方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【0008】
図1】文章生成システムの全体構成を示す図である。
図2】文章生成装置100を示すブロック図である。
図3】端末装置200の表示部に表示されるドキュメント表示画面210の一例を示す図である。
図4】端末装置200の表示部に表示されるテンプレート表示画面220の一例を示す図である。
図5】端末装置200の表示部に表示されるテンプレート入力画面230の一例を示す図である。
図6】端末装置200の表示部に表示されるペルソナ表示画面240の一例を示す図である。
図7】端末装置200の表示部に表示されるペルソナ作成画面250の一例を示す図である。
図8】端末装置200の表示部に表示されるペルソナ詳細表示画面260の一例を示す図である。
図9】端末装置200の表示部に表示される類似チェックの結果一覧画面270の一例を示す図である。
図10】端末装置200の表示部に表示される類似チェックの結果詳細画面280の一例を示す図である。
図11】文ベクトル比較部172が文ベクトル同士の類似度を算出する様子の一例を示す図である。
図12】キーフレーズ比較部174が出力文および比較対象文における一致するキーフレーズがそれぞれの文章に出現した出現度合を算出する様子の一例を示す図である。
図13】類似度算出部170が出力文と比較対象文の総合類似度を算出する処理の内容を模式的に示す図である。
図14】文章生成装置100によって実行される処理の一例を示すフローチャートである。
図15図14のステップS110の類似度算出処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、実施形態の文章生成装置、文章生成システム、文章生成方法、およびプログラムを、図面を参照して説明する。
【0010】
図1は、文章生成システムの全体構成を示す図である。文章生成システムは、文章生成装置100と、端末装置200と、人工知能サーバ300と、言語解析サーバ400とを備える。文章生成装置100、端末装置200、人工知能サーバ300、および言語解析サーバ400は、ネットワークNWを介して互いに通信可能に接続されている。ネットワークNWは、例えば、WAN(Wide Area Network)、LAN(Local Area Network)、インターネット、プロバイダ装置、無線基地局、専用回線などのうちの一部または全部を含む。
【0011】
詳細は後述するが、文章生成装置100は、ユーザによってテンプレートに入力された入力項目の内容に基づいて入力文(プロンプト)を生成するコンピュータである。端末装置200は、例えば、デスクトップ型コンピュータ、ノート型コンピュータ、タブレット型コンピュータ、およびスマートフォンなどの携帯端末装置のいずれであってもよい。人工知能サーバ300は、文章生成装置100によって生成された入力文に基づき、学習モデルを用いて出力文を生成するサーバである。言語解析サーバ400は、文章の分割、文章における単語の出現位置の特定、特徴ベクトル(文ベクトル)の取得やキーフレーズの取得といった自然言語処理を行うサーバである。これらの装置の詳細については後述する。
【0012】
図2は、文章生成装置100を示すブロック図である。文章生成装置100は、テンプレート取得部110と、入力項目取得部120と、入力文生成部130と、出力文取得部140と、変換部150と、編集部160と、類似度算出部170と、通信部180と、記憶部190とを備える。
【0013】
テンプレート取得部110、入力項目取得部120、入力文生成部130、出力文取得部140、変換部150、編集部160、および類似度算出部170は、例えば、文章生成装置100のプロセッサがプログラムを実行することで実現されてもよいし、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)などのハードウェアによって実現されてもよいし、ソフトウェアとハードウェアが協働することで実現されてもよい。
【0014】
なお、類似度算出部170は、文ベクトル比較部172と、キーフレーズ比較部174と、総合類似度算出部176とを備える。これらの機能部の詳細については後述する。
【0015】
通信部180は、例えばNIC(Network Interface Card)を備える。文章生成装置100は、通信部180を用いて、ネットワークNWを介して端末装置200、人工知能サーバ300、および言語解析サーバ400と通信する。
【0016】
記憶部190は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ、またはこれらのうち複数が組み合わされたハイブリッド型記憶装置などにより実現される。また、記憶部190は、NAS(Network Attached Storage)や外部のストレージサーバなど、文章生成装置100がアクセス可能な外部装置であってもよい。なお、詳細は後述するが、記憶部190には、テンプレート情報、ペルソナ情報、入力文、出力文、および比較対象文などの情報が格納されている。
【0017】
端末装置200は、ユーザによって操作される端末であり、ブラウザを用いて各種画面を端末装置200に設けられた表示部に表示する。例えば、端末装置200は、URL(Uniform Resource Locator)を指定して文章生成装置100にアクセスすることにより、指定されたURLに対応する画面データを文章生成装置100から受信し、受信した画面データを表示部に表示する。以下、端末装置200に表示される画面について説明する。
【0018】
図3は、端末装置200の表示部に表示されるドキュメント表示画面210の一例を示す図である。ドキュメント表示画面210には、ドキュメント作成ボタン201、ドキュメント表示ボタン202、テンプレート表示ボタン203、ペルソナ表示ボタン204、設定ボタン205、ゴミ箱ボタン206、検索ワード入力領域211、新規作成ボタン212、およびインポートボタン213が表示されている。
【0019】
ドキュメント作成ボタン201は、ドキュメントの作成を指示するためのボタンである。ユーザがドキュメント作成ボタン201を選択すると、白紙のドキュメントを作成するか、テンプレートを使用してドキュメントを作成するかを選択する選択画面(不図示)が表示される。ユーザが白紙のドキュメントを作成することを選択した場合、文字が何も入力されていない状態のドキュメント入力画面(不図示)を表示する。一方、ユーザがテンプレートを使用してドキュメントを作成することを選択した場合、後述するテンプレート表示画面220(図4)が端末装置200の表示部に表示される。
【0020】
ドキュメント表示ボタン202は、ドキュメントの一覧を表示するためのボタンである。ユーザがドキュメント表示ボタン202を選択すると、ドキュメント表示画面210が表示される。ドキュメント表示画面210には、ユーザが生成したフォルダやドキュメントに関する情報が表示されている。図3に示される例では、会社案内用フォルダおよび各種ドキュメント(スプリングキャンペーンのためのプレスリリース、プレゼン用スピーチ台本)がドキュメント表示画面210に表示されている。ユーザが会社案内用フォルダを選択すると、会社案内用フォルダ内のフォルダやドキュメントが表示されることとなる。また、ユーザが各種ドキュメント(スプリングキャンペーンのためのプレスリリース、プレゼン用スピーチ台本)を選択すると、選択されたドキュメントの編集画面が表示されることとなる。
【0021】
なお、ユーザが生成したフォルダやドキュメントに関する情報は、文章生成装置100の記憶部190に格納されている。端末装置200は、文章生成装置100からフォルダやドキュメントに関する情報を受信し、ドキュメント表示画面210に表示する。
【0022】
テンプレート表示ボタン203は、テンプレートの一覧を表示するためのボタンである。ユーザがテンプレート表示ボタン203を選択すると、後述するテンプレート表示画面220(図4)が表示される。
【0023】
ペルソナ表示ボタン204は、登録済みのペルソナ情報の一覧を表示するためのボタンである。ペルソナ情報とは、文章生成装置100によって取得される出力文が提供される対象者(読者)の属性情報(例えば、氏名、性別、年齢、職業など)を示すデータである。ユーザがペルソナ表示ボタン204を選択すると、後述するペルソナ表示画面240(図6)が表示される。
【0024】
設定ボタン205は、文章生成装置100によって提供される文章生成サービスに関する各種設定を行うための設定画面(不図示)を表示するためのボタンである。設定画面では、利用中の文章生成サービスのプランの変更や、料金の支払い方法の変更などを行うことができる。
【0025】
ゴミ箱ボタン206は、ゴミ箱に移動されたフォルダやドキュメントの一覧を示すゴミ箱画面(不図示)を表示するためのボタンである。ゴミ箱に移動されたフォルダやドキュメントは、一定期間(例えば、30日)経過後に自動的に削除される。ゴミ箱画面では、ゴミ箱を空にする処理や、ごみ箱からフォルダやドキュメントを取り出す処理を行うことができる。
【0026】
検索ワード入力領域211は、端末装置200に対するユーザの操作に応じて検索ワードが入力される領域である。検索ワード入力領域211に検索ワードが入力されると、入力された検索ワードを含むフォルダやドキュメントの一覧が表示されることとなる。
【0027】
新規作成ボタン212は、フォルダやドキュメントの作成を指示するためのボタンである。ユーザが新規作成ボタン212を選択すると、プルダウンでフォルダとドキュメントの選択肢が表示される。ユーザがフォルダの選択肢を選択し、フォルダ名を入力することで、フォルダが新規に作成される。また、ユーザがドキュメントの選択肢を選択すると、前述のドキュメント作成ボタン201を選択した場合と同様の処理が行われる。
【0028】
インポートボタン213は、ドキュメントの取り込みを指示するためのボタンである。ユーザがインポートボタン213を選択し、取り込もうとするドキュメントを指定すると、指定されたドキュメントが文章生成装置100に送信され、文章生成装置100の記憶部190に格納される。取り込まれたドキュメントは、ドキュメント表示画面210に表示され、端末装置200によって編集可能となる。
【0029】
図4は、端末装置200の表示部に表示されるテンプレート表示画面220の一例を示す図である。テンプレート表示画面220には、複数のテンプレート選択ボタン221~227が表示されている。複数のテンプレート選択ボタン221~227の各々は、生成しようとするドキュメントの種類(プレスリリース、製品紹介、ブログ・コラムなど)に対応付けられている。
【0030】
具体的に、テンプレート選択ボタン221は、プレスリリースのテンプレートを選択するためのボタンである。テンプレート選択ボタン222は、製品紹介のテンプレートを選択するためのボタンである。テンプレート選択ボタン223は、ブログ・コラムのテンプレートを選択するためのボタンである。テンプレート選択ボタン224は、キャッチコピーのテンプレートを選択するためのボタンである。テンプレート選択ボタン225は、ビジネス文書のテンプレートを選択するためのボタンである。テンプレート選択ボタン226は、リライト・要約のテンプレートを選択するためのボタンである。テンプレート選択ボタン227は、カスタムのテンプレートを選択するためのボタンである。
【0031】
ユーザが複数のテンプレート選択ボタン221~227のうちの一つを選択すると、選択されたボタンに対応するテンプレート入力画面が表示される。本実施形態では、一例として、ユーザがプレスリリースのテンプレートを選択した場合の処理について説明する。
【0032】
ユーザがテンプレート選択ボタン221を選択すると、端末装置200は、プレスリリースのテンプレート要求を文章生成装置100に送信する。文章生成装置100がプレスリリースのテンプレート要求を端末装置200から受信すると、文章生成装置100のテンプレート取得部110は、記憶部190からプレスリリースのテンプレート情報を読み出し、読み出したプレスリリースのテンプレート情報を、通信部180を制御して端末装置200に送信する。端末装置200は、プレスリリースのテンプレート情報を文章生成装置100から受信すると、受信したプレスリリースのテンプレート情報に基づいてプレスリリースのテンプレート入力画面を表示する。
【0033】
図5は、端末装置200の表示部に表示されるテンプレート入力画面230の一例を示す図である。図5に示される例では、プレスリリースのテンプレート入力画面230が示されている。
【0034】
プレスリリースのテンプレート入力画面230には、ジャンル選択領域231、概要入力領域232、見出し入力領域233、ペルソナ選択領域234、テキスト作成ボタン235、テキスト表示領域236、ドキュメント保存ボタン237、および類似チェックボタン238が表示されている。
【0035】
ジャンル選択領域231は、プレスリリースのジャンルを選択するための領域である。ユーザがジャンル選択領域231を選択すると、複数のジャンルの選択肢がプルダウンで表示される。ユーザは、表示された複数のジャンルの選択肢のうちから一つを選択する。概要入力領域232は、プレスリリースの概要を入力するための領域である。見出し入力領域233は、プレスリリースの見出しを入力するための領域である。
【0036】
ペルソナ選択領域234は、登録済みの複数のペルソナ情報のうち、プレスリリースが提供される対象者(読者)のペルソナ情報を選択するための領域である。登録済みの複数のペルソナ情報は、文章生成装置100の記憶部190に格納されている。このため、端末装置200は、登録済みの複数のペルソナ情報を文章生成装置100から取得してよい。ユーザがペルソナ選択領域234を選択すると、登録済みの複数のペルソナ情報の選択肢がプルダウンで表示される。ユーザは、表示された複数のペルソナ情報の選択肢のうちから一つを選択する。なお、ペルソナ選択領域234に代えて、プレスリリースが提供される対象者(読者)のペルソナ情報(例えば、氏名、性別、年齢、職業など)を直接ユーザに入力させる領域が設けられていてもよい。
【0037】
なお、プレスリリースのテンプレートに含まれる入力項目は、これらの項目に限らない。例えば、プレスリリースの背景など、他の入力項目がプレスリリースのテンプレートに含まれていても構わない。また、人物を設定したペルソナ以外に、媒体を設定したペルソナを表示してもよい。媒体とは、例えばテレビのバラエティ番組、ドキュメンタリー番組、SNSインフルエンサー、日経新聞、一般全国新聞、業界専門新聞、週間雑誌等である。
【0038】
テキスト作成ボタン235は、プレスリリースのテンプレートの各項目に入力された情報に基づいて、テキストを生成させる指示を行うためのボタンである。ユーザがテキスト作成ボタン235を選択すると、端末装置200は、ユーザによって入力されたテンプレートの複数の入力項目の内容を文章生成装置100に送信する。文章生成装置100の入力項目取得部120は、端末装置200から送信された複数の入力項目の内容を取得する。また、文章生成装置100の入力文生成部130は、入力項目取得部120によって取得された複数の入力項目の内容に基づいて、入力文を生成する。入力文は、人工知能サーバ300に文章を生成させるためのプロンプトである。入力文生成部130は、生成した入力文を記憶部190に格納するとともに、通信部180を制御して人工知能サーバ300に送信する。
【0039】
人工知能サーバ300は、文章生成装置100から受信した入力文に基づき、ディープラーニングなどのアルゴリズムによって学習された学習モデルを用いて出力文を生成する。人工知能サーバ300に文章を生成させる場合、入力文に含まれる情報の質と量が十分でない場合には、ユーザの望む文章が生成されない場合がある。このため、文章生成装置100は、テンプレートを用いて複数の入力項目をユーザに入力させ、入力された複数の入力項目の内容に基づいて入力文を生成する。例えば、プレスリリースの文章を人工知能サーバ300に生成させる場合、入力文に組み込むべき必要不可欠な内容が、プレスリリースのテンプレートの各項目(ジャンル、概要、見出しなど)としてユーザによって入力される。このため、人工知能サーバ300は、文章生成装置100によって生成された入力文に基づいて、ユーザの望む文章(出力文)を生成することができる。
【0040】
人工知能サーバ300は、生成した出力文を文章生成装置100に送信する。文章生成装置100の出力文取得部140は、人工知能サーバ300から送信された出力文を取得する。これによって、文章生成装置100は、ユーザの望む文章(出力文)を人工知能サーバ300から取得することができる。
【0041】
なお、入力項目取得部120は、テンプレートを用いて入力されたペルソナ情報を取得し、入力文生成部130は、入力項目取得部120によって取得されたペルソナ情報に応じた入力文を生成してもよい。これによって、文章生成装置100は、出力文が提供される対象者(読者)の属性(例えば、氏名、性別、年齢、職業など)に応じた出力文を人工知能サーバ300に生成させるための入力文を生成することができる。
【0042】
また、文章生成装置100の変換部150は、入力項目取得部120によって取得されたペルソナ情報に応じて、出力文取得部140によって取得された出力文を変換してもよい。例えば、変換部150は、ペルソナ情報に応じて、出力文における漢字の割合や口語表現の割合を変更してもよい。具体的に、変換部150は、ペルソナ情報によって示される年齢が低いほど、漢字の割合を低くするとともに、口語表現の割合を高くするように出力文の内容を変換してもよい。また、変換部150は、ペルソナ情報によって示される年齢が高いほど、漢字の割合を高くするとともに、口語表現の割合を低くするように出力文の内容を変換してもよい。これによって、文章生成装置100は、出力文が提供される対象者(読者)の属性(例えば、氏名、性別、年齢、職業など)に応じた内容となるように、出力文を変換することができる。
【0043】
文章生成装置100の出力文取得部140は、通信部180を制御して端末装置200に出力文を送信する。端末装置200は、文章生成装置100から受信した出力文を、図5に示されるテキスト表示領域236に表示する。
【0044】
テキスト表示領域236に出力文が表示されている状態でユーザがドキュメント保存ボタン237を選択すると、出力文の内容がドキュメントとして保存される。端末装置200は、保存されたドキュメントを文章生成装置100に送信する。文章生成装置100は、端末装置200から受信した出力文を記憶部190に格納する。
【0045】
なお、ユーザは、テキスト表示領域236に表示された出力文を直接編集することが可能である。具体的に、端末装置200は、ユーザによって編集された出力文の内容を文章生成装置100に送信する。文章生成装置100の編集部160は、端末装置200から受信した内容に基づいて、出力文取得部140によって取得された出力文を編集する。また、編集部160は、編集された出力文を記憶部190に格納する。
【0046】
また、テキスト表示領域236に出力文が表示されている状態でユーザが類似チェックボタン238を選択すると、類似チェック処理が実行され、後述する類似チェックの結果一覧画面270(図9)が端末装置200に表示される。類似チェック処理は、生成された出力文に類似する文章がインターネット上に存在するか否かをチェックする処理である。生成された出力文がインターネット上で既に公開されている文章に類似する場合には、当該文章の著作権を考慮して、生成された出力文を使用できない場合がある。このため、ユーザからの指示に基づいて類似チェック処理が行われる。なお、類似チェック処理についての詳細は後述する。
【0047】
図6は、端末装置200の表示部に表示されるペルソナ表示画面240の一例を示す図である。ペルソナ表示画面240には、検索ワード入力領域241、新規作成ボタン242、および複数のペルソナ選択ボタン243~246が表示されている。
【0048】
検索ワード入力領域241は、端末装置200に対するユーザの操作に応じて検索ワードが入力される領域である。検索ワード入力領域241に検索ワードが入力されると、入力された検索ワードを含むペルソナ情報の一覧が表示されることとなる。
【0049】
新規作成ボタン242は、ペルソナ情報の作成を指示するためのボタンである。ユーザが新規作成ボタン242を選択すると、後述するペルソナ作成画面250(図7)が表示される。
【0050】
複数のペルソナ選択ボタン243~246の各々は、登録済みの複数のペルソナ情報に対応付けられている。具体的に、ペルソナ選択ボタン243は、ユーザAのペルソナ情報を選択するためのボタンである。ペルソナ選択ボタン244は、ユーザBのペルソナ情報を選択するためのボタンである。ペルソナ選択ボタン245は、ユーザCのペルソナ情報を選択するためのボタンである。ペルソナ選択ボタン246は、ユーザDのペルソナ情報を選択するためのボタンである。詳細は後述するが、ユーザが複数のペルソナ選択ボタン243~246のうちの一つを選択すると、選択されたボタンに対応するペルソナ詳細表示画面260(図8)が表示される。
【0051】
図7は、端末装置200の表示部に表示されるペルソナ作成画面250の一例を示す図である。ペルソナ作成画面250には、出力文が提供される対象者(読者)の属性情報の入力領域と、ペルソナ登録ボタン251とが表示されている。図7に示されるように、出力文が提供される対象者(読者)の属性情報は、対象者(読者)の画像、氏名、性別、年齢、職業、年収、家族、居住、趣味、休日の過ごし方、および性格に関する情報を含む。なお、対象者(読者)の属性情報はこれらの情報に限るものではなく、消費傾向、長所、短所、悩みなどの情報が含まれてもよい。ペルソナに画像や氏名を設定することによって、操作者が具体的な個人像を想起でき、無味乾燥なペルソナ集と比較して、より具体的に文章を提供したい相手をイメージし、容易に最適なペルソナを選択できるようになる。また、趣味や休日の過ごし方が設定されているため、PRしたい商品に応じた文章生成が可能となる。
【0052】
ユーザがペルソナ作成画面250上の全ての入力領域に情報を入力し、ペルソナ登録ボタン251を選択すると、入力されたペルソナ情報が登録される。端末装置200は、登録されたペルソナ情報を文章生成装置100に送信する。文章生成装置100は、端末装置200から受信したペルソナ情報を記憶部190に格納する。
【0053】
図8は、端末装置200の表示部に表示されるペルソナ詳細表示画面260の一例を示す図である。ここでは一例として、ユーザが図6に示されるペルソナ選択ボタン243を選択した場合に端末装置200に表示される画面について説明する。
【0054】
ユーザが図6に示されるペルソナ選択ボタン243を選択すると、端末装置200は、ユーザAのペルソナ情報要求を文章生成装置100に送信する。文章生成装置100は、端末装置200から受信したユーザAのペルソナ情報要求に基づき、記憶部190からユーザAのペルソナ情報を読み出す。また、文章生成装置100は、記憶部190から読み出したユーザAのペルソナ情報を、通信部180を制御して端末装置200に送信する。端末装置200は、ユーザAのペルソナ情報を文章生成装置100から受信すると、受信したユーザAのペルソナ情報を図8に示されるペルソナ詳細表示画面260に表示する。これによって、ユーザは、登録済みのペルソナ情報を確認することができる。
【0055】
図9は、端末装置200の表示部に表示される類似チェックの結果一覧画面270の一例を示す図である。前述したように、ユーザが図5に示される類似チェックボタン238を選択すると、類似チェック処理が実行され、類似チェックの結果一覧画面270が端末装置200に表示される。類似チェックの結果一覧画面270には、類似チェックの結果の一覧および複数の詳細表示ボタン271~274が表示される。
【0056】
類似チェックの結果一覧画面270において、生成された出力文に類似するインターネット上のページの一覧が、総合類似度が高い順に表示されている。詳細は後述するが、総合類似度は、総合類似度算出部176によって算出される値である。また、類似チェックの結果一覧画面270には、生成された出力文に類似するインターネット上のページのタイトルや、URLについても表示される。
【0057】
ユーザが複数の詳細表示ボタン271~274のうちの一つを選択すると、後述する類似チェックの結果詳細画面280(図10)が端末装置200に表示される。本実施形態では、一例として、ユーザが詳細表示ボタン271を選択した場合の類似チェックの結果詳細画面280について説明する。
【0058】
図10は、端末装置200の表示部に表示される類似チェックの結果詳細画面280の一例を示す図である。類似チェックの結果詳細画面280には、総合類似度281、第1指標値282、第2指標値283、出力文284、および比較対象文285が表示される。総合類似度281、第1指標値282、および第2指標値283は、後述する類似チェック処理によって求められる値である。出力文284は、人工知能サーバ300によって生成され、文章生成装置100の出力文取得部140によって取得された出力文である。比較対象文285は、インターネット上から取得された文章である。類似チェック処理において、文章生成装置100の類似度算出部170は、出力文284と比較対象文285とがどの程度類似しているのかを示す指標(類似度)を算出する。以下、類似チェック処理の詳細について説明する。
【0059】
まず、類似チェック処理を行う際に利用される言語解析サーバ400について説明する。言語解析サーバ400は、文章の分割、文章における単語の出現位置の特定、特徴ベクトル(文ベクトル)の取得やキーフレーズの取得等を行うための各種解析器を有し、各種解析器に対して読み込ませる辞書・ライブラリ等を提供する。例えば、言語解析サーバ400は、BERT(Bidirectional Encoder Representations from Transformers)の自然言語処理モデルを用い、終止符などのような区切り符号に基づいて、文章ごとに対応する文ベクトルを作成することができる。また、言語解析サーバ400は、例えば、spaCy/GiNZA(日本語形態素解析器の一種)を用いて、文章ごとに対して文章を構成する重要な要素(キーフレーズ)を取得することができる。
【0060】
言語解析サーバ400は、例えば、事前に用意したコーパスをクラスタリングし、分類したクラスタ単位で各単語のスコアを計算する。文章からキーフレーズを抽出する際は、文章が属するクラスタの各単語のスコアを用いてフレーズ候補のスコアを求める。言語解析サーバ400は、類似した文章を多数集めることで、より良い精度の単語スコアを得ることができる。ここで、言語解析サーバ400は、ジャンル別のコーパスを用いてキーフレーズを抽出してもよい。例えば、言語解析サーバ400は、プレスリリース、製品紹介といったジャンルごとにコーパスを予め用意し、文ベクトル取得部122により指定されたジャンルに対応するコーパスを使用して単語のスコアを計算する。この場合、文ベクトル取得部122は、端末装置200からジャンルの指定を受け付けてもよい。
【0061】
記憶部190には、インターネット上をクローリングすることにより収集された複数の文章が、比較対象文として記憶されている。類似度算出部170は、記憶部190に格納された出力文および比較対象文を言語解析サーバ400に送信して文ベクトルの作成を依頼し、出力文および比較対象文のそれぞれに対応する文ベクトルを取得する。本実施形態において、出力文に基づき作成された文ベクトルを第1文ベクトルと称し、比較対象文に基づき作成された文ベクトルを第2文ベクトルと称する。
【0062】
また、類似度算出部170は、記憶部190に格納された出力文および比較対象文を取得し、それらを言語解析サーバ400に送信して出力文および比較対象文のそれぞれからのキーフレーズの抽出を依頼し、出力文および比較対象文のそれぞれに対応するキーフレーズを取得する。本実施形態において、出力文に基づき作成されたキーフレーズを第1キーフレーズと称し、比較対象文に基づき作成されたキーフレーズを第2キーフレーズと称する。
【0063】
類似度算出部170は、出力文および比較対象文の総合類似度を算出する。前述したように、類似度算出部170は、文ベクトル比較部172と、キーフレーズ比較部174と、総合類似度算出部176とを備える。
【0064】
文ベクトル比較部172は、出力文および比較対象文のそれぞれに基づいて作成された第1文ベクトルおよび第2文ベクトルのベクトル間距離(ユークリッド距離)またはコサイン類似度に基づき、第1文ベクトルと第2文ベクトルの類似度を算出する。文ベクトル比較部172は、第1文ベクトルと第2文ベクトルの類似度を、例えば網羅的に算出し、出力文および比較対象文の総合類似度を算出するための第1指標値を算出する。
【0065】
図11は、文ベクトル比較部172が文ベクトル同士の類似度を算出する様子の一例を示す図である。図示するように、出力文および比較対象文のそれぞれは、文1、文2、文3のような形で複数の文に分解されている。出力文の文1の文ベクトルと、比較対象文の文2の文ベクトルとの類似度は97%であり、出力文の文1の文ベクトルと、比較対象文の文3の文ベクトルとの類似度は35%であり、出力文の文3の文ベクトルと、比較対象文の文4の文ベクトルとの類似度は97%である。このように、文ベクトル比較部172は、出力文に含まれるそれぞれの文の文ベクトルと、比較対象文に含まれるそれぞれの文の文ベクトルとの類似度を算出する。
【0066】
文ベクトル比較部172は、例えば、上記文ベクトル同士の類似度を算出した後に、算出した類似度が閾値以上であるか否かを判定する。そして、文ベクトル比較部172は、閾値以上である類似度(類似度の最大値を含む)および類似度が閾値以上である文ベクトルの組の数を計数する。本実施形態において、例えば、文ベクトル同士の類似度閾値を85%とする。この場合、図11における文ベクトルの組(1)、文ベクトルの組(4)、および文ベクトルの組(5)のそれぞれの類似度が「97%」、「88%」、「97%」であり、これらは85%の閾値以上であるため、文ベクトル比較部172は、上記文ベクトル同士の類似度およびそれらの組数「3」を算出して記憶部190に記憶させる。
【0067】
文ベクトル比較部172は、単に、算出した文ベクトル同士の類似度が閾値以上である類似度に基づいて第1指標値を計算してもよいし、閾値以上である類似度および類似度が閾値以上である文ベクトルの組の数に基づいて第1指標値を計算してもよい。また、文ベクトル比較部172は、例えば、閾値を超えた値が大きいほど重みを大きくして組の数の加重和を求めてもよい。
【0068】
更に、文ベクトル比較部172は、類似度の最大値に基づいて第1指標値を計算してもよい。本実施形態では、出力文および比較対象文の総合類似度を高精度に算出するため、文ベクトル比較部172は、文ベクトル同士の類似度の最大値および類似度が閾値以上である文ベクトルの組の数に基づいて、第1指標値を算出することとする。例えば、図11の場合、文ベクトル比較部172は、「97%」および「3」を用いて第1指標値を算出する。
【0069】
なお、文ベクトル比較部172は、単に類似度が閾値以上である文ベクトルの組の数に基づいて第1指標値を算出してもよいし、単に類似度の最大値に基づいて第1指標値を算出してもよい。文ベクトル比較部172は、例えば、類似度が閾値以上である文ベクトルの組の数が大きいほど第1指標値が大きくなるように、且つ、類似度の最大値が大きいほど第1指標値が大きくなるように、総合類似度を算出する。この傾向を有する限り、文ベクトル比較部172は、任意の手法で第1指標値を算出してよい。
【0070】
キーフレーズ比較部174は、出力文および比較対象文のそれぞれから抽出されたキーフレーズの間で一致するキーフレーズが、出力文および比較対象文のそれぞれにおいて出現する出現度合に基づいて、出力文および比較対象文の総合類似度を算出するための第2指標値を算出する。出現度合とは、出力文および比較対象文の長さを考慮して、相対的にどの程度の頻度ないし比重で出現したかを示す情報量である。
【0071】
図12は、キーフレーズ比較部174が出力文および比較対象文における一致するキーフレーズがそれぞれの文章に出現した出現度合を算出する様子の一例を示す図である。まず、キーフレーズ比較部174は、出力文および比較対象文におけるキーフレーズの出現数をカウントする。そして、キーフレーズ比較部174は、キーフレーズの出現数を、出力文または比較対象文の長さに応じた係数で除算した値を、キーフレーズの出現度合として算出する。この係数は、出力文または比較対象文が長い程、大きくなる値である。
【0072】
例えば、図示するように、出力文および比較対象文のそれぞれに出現するキーフレーズは、「増設」、「MEMORY」、「メモリ」、「PC」等である。キーフレーズ「増設」は出力文に5回出現し、比較対象文に8回出現している。これに対して、出力文に対応する係数α1が50、比較対象文に対応する係数α2が100と計算されたとすると、「増設」は、出力文における出現度合が0.1と算出され、比較対象文における出現度合が0.08と算出される。出力文と比較対象文のうち一方にだけ出現するキーフレーズも存在し得る。その場合、そのキーフレーズが出現しない方の文章に対応するキーフレーズ出現数とキーフレーズ出現度合はゼロとなる。
【0073】
そして、キーフレーズ比較部174は、例えば、出力文と比較対象文の少なくともいずれかに出現するキーフレーズを仮想的に並べ、その出現数を要素とするベクトル(キーフレーズベクトル)を、出力文と比較対象文のそれぞれについて定義する。出力文に対応するキーフレーズベクトルを第1キーフレーズベクトルV1、比較対象文に対応するキーフレーズベクトルを第2キーフレーズベクトルV2とすると、図12の例では、式(1)のように表される。
V1=(0.1,0.06,0.2,0.14,…)
V2=(0.08,0,0.1,0.05,…) …(1)
【0074】
キーフレーズ比較部174は、例えば、第1キーフレーズベクトルV1と第2キーフレーズベクトルV2とのベクトル間距離(ユークリッド距離)やコサイン類似度を計算し、第2指標値として算出する。ここで計算されるベクトル間距離(ユークリッド距離)やコサイン類似度は、第1キーフレーズベクトルV1と第2キーフレーズベクトルV2との類似度であり、キーフレーズの出力文と比較対象文における出現度合の類似度の一例である。
【0075】
総合類似度算出部176は、第1指標値および第2指標値に基づいて、出力文および比較対象文の総合類似度を算出する。例えば、総合類似度算出部176は、第1指標値が大きいほど総合類似度が大きくなるように、且つ、第2指標値が大きいほど総合類似度が大きくなるように、総合類似度を算出する。この傾向を有する限り、総合類似度算出部176は、任意の手法で総合類似度を算出してよい。
【0076】
図13は、類似度算出部170が出力文と比較対象文の総合類似度を算出する処理の内容を模式的に示す図である。本実施形態において、例えば、類似度が閾値以上である文ベクトルの組の数はn、類似度の最大値はmと計算され、更に、キーフレーズの出力文における出現数はP、キーフレーズの比較対象文における出現数はPであり、出力文の正規化係数はα、比較対象文の正規化係数はαと設定されている。
【0077】
総合類似度算出部176は、文ベクトル比較部172がnおよびmに基づいて算出した第1指標値をFとし、キーフレーズ比較部174がP、P、α、およびαに基づいて算出した第2指標値をQとする。第1指標値Fの算出手法は、例えばF=f(n,m)で表される。f(n,m)は、前述したように、類似度が閾値以上である文ベクトルの組の数nが大きいほど第1指標値Fが大きくなるように、且つ、類似度の最大値mが大きいほど第1指標値Fが大きくなるように、第1指標値Fを算出する関数である。また、第2指標値Qの算出手法は、例えば、Q=q(P,P,α,α)で表される。Q=q(P,P,α,α)は、前述したように、出力文におけるキーフレーズの出現数Pを出力文の長さに応じた係数αで除算した値と、比較対象文におけるキーフレーズの出現数Pを比較対象文の長さに応じた係数αで除算した値とを、キーフレーズの各文章における出現度合として算出し、算出した値に基づき第2指標値Qを算出する関数である。
【0078】
そして、総合類似度算出部176は、第1指標値Fおよび第2指標値Qに基づいて、出力文および比較対象文の総合類似度Sを算出する。総合類似度Sの算出手法は、例えば、S=h(F,Q)で表される。S=h(F,Q)は、前述したように、第1指標値Fが大きいほど総合類似度Sが大きくなるように、且つ、第2指標値Qが大きいほど総合類似度Sが大きくなるように、総合類似度Sを算出する関数である。
【0079】
図14は、文章生成装置100によって実行される処理の一例を示すフローチャートである。端末装置200から文章生成装置100にテンプレート要求が送信されると、テンプレート取得部110は、端末装置200から受信したテンプレート要求に基づき、複数の入力項目を含むテンプレートを記憶部190から取得する(ステップS100)。テンプレート要求にはテンプレートの種類を示す情報(プレスリリース、製品紹介、ブログ・コラムなど)が含まれている。テンプレート取得部110は、テンプレート要求に含まれるテンプレートの種類に対応するテンプレートを記憶部190から取得する。テンプレート取得部110は、取得したテンプレート情報を、通信部180を制御して端末装置200に送信する。
【0080】
端末装置200は、文章生成装置100から受信したテンプレート情報に基づき、図5に示されるテンプレート入力画面230を表示する。ユーザによってテンプレートの複数の入力項目への入力が行われ、ユーザがテキスト作成ボタン235を選択すると、端末装置200は、ユーザによって入力されたテンプレートの複数の入力項目の内容を文章生成装置100に送信する。
【0081】
次に、入力項目取得部120は、端末装置200から送信された複数の入力項目の内容を取得する(ステップS102)。入力文生成部130は、入力項目取得部120によって取得された複数の入力項目の内容に基づいて、入力文を生成する(ステップS104)。その後、入力文生成部130は、生成した入力文を、通信部180を制御して人工知能サーバ300に送信する。
【0082】
人工知能サーバ300は、文章生成装置100から受信した入力文に基づき、ディープラーニングなどのアルゴリズムによって学習された学習モデルを用いて出力文を生成する。その後、人工知能サーバ300は、生成した出力文を文章生成装置100に送信する。
【0083】
次に、出力文取得部140は、人工知能サーバ300から送信された出力文を取得する(ステップS106)。その後、類似度算出部170は、類似チェックを行うか否かを判定する(ステップS108)。例えば、類似度算出部170は、図5に示される類似チェックボタン238がユーザによって選択された場合に、類似チェックを行うと判定してよい。
【0084】
類似度算出部170は、類似チェックを行わないと判定した場合、本フローチャートによる処理を終了する。一方、類似度算出部170は、類似チェックを行うと判定した場合、類似度算出処理を実行する(ステップS110)。
【0085】
図15は、図14のステップS110の類似度算出処理の一例を示すフローチャートである。まず、類似度算出部170は、出力文と比較対象文のそれぞれの全文を記憶部190から取得する(ステップS200)。また、類似度算出部170は、言語解析サーバ400に出力文および比較対象文を送信して文ベクトルの作成を依頼する。そして、類似度算出部170は、出力文の文ベクトルおよび比較対象文の文ベクトルを言語解析サーバ400から取得するとともに、出力文のキーフレーズおよび比較対象文のキーフレーズを言語解析サーバ400から取得する(ステップS202)。
【0086】
次に、文ベクトル比較部172は、出力文および比較対象文のそれぞれに基づいて作成された組ごとの文ベクトル同士の類似度を算出する(ステップS204)。文ベクトル比較部172は、第1文ベクトルから一つの文ベクトルを選び、第2文ベクトルから一つの文ベクトルを選び、選ばれた文ベクトル同士の類似度Ai,jの算出を、全ての組み合わせについて実行する。そして、文ベクトル比較部172は、算出した文ベクトル同士の類似度Ai,jが閾値Th以上であるか否かを判定する(ステップS208)。Ai,jとは、i番目の第1文ベクトルと、j番目の第2文ベクトルとの類似度を表している。算出した文ベクトル同士の類似度Ai,jが閾値Th以上でない場合、文ベクトル比較部172は、ステップS216に進む。算出した文ベクトル同士の類似度Ai,jが閾値Th以上である場合、文ベクトル比較部172は、閾値Th以上である文ベクトルの組の数nをカウントアップし、記憶部190に格納させる(ステップS212)。
【0087】
そして、文ベクトル比較部172は、全ての文ベクトルの組み合わせについて類似度Ai,jを算出したか否かを判定する(ステップS216)。全ての文ベクトルの組み合わせについて類似度Ai,jを算出していない場合、文ベクトル比較部172は、ステップS204に戻って、次の組の文ベクトルを選び、類似度Ai,jを算出する。全ての文ベクトルの組み合わせについて類似度Ai,jを算出した場合、文ベクトル比較部172は、算出した類似度のうち最大値mを抽出する(ステップS220)。次に、文ベクトル比較部172は、ステップS212においてカウントした数nおよびステップS220において計算した類似度の最大値mに基づいて、第1指標値Fを算出する(ステップS222)。
【0088】
本実施形態において、文章生成装置100は、ステップS204の処理を行うに伴い、出力文と比較対象文のそれぞれにおける一致するキーフレーズを抽出することを並行して行ってもよい(ステップS206)。
【0089】
キーフレーズ比較部174は、出力文と比較対象文のそれぞれにおけるキーフレーズの出現数PおよびPを算出する(ステップS210)。次に、キーフレーズ比較部174は、出力文および比較対象文のそれぞれの正規化係数αおよびαを算出する(ステップS214)。上記算出したP、P、α、およびαに基づいて、キーフレーズ比較部174は、第2指標値Qを算出する(ステップS218)。
【0090】
最後に、総合類似度算出部176は、第1指標値Fおよび第2指標値Qに基づき、出力文および比較対象文の総合類似度Sを算出する(ステップS224)。
【0091】
キーフレーズの比較によれば、文章全体からキーフレーズを抽出するため、文章全体の類似度を判定することができる。しかしながら、比較対象文が出力文の一部の文のみと一致するような場合、キーフレーズの比較のみでは、類似度が低いと判定される可能性がある。これに対し、本実施形態のように、キーフレーズの比較と文ベクトルの比較とを組み合わせることで、類似度をより高精度に判定することができる。
【0092】
すなわち、本実施形態において、文ベクトル同士の類似度を算出することで、ユーザは、出力文と比較対象文の局所的な類似度を判定できる。また、キーフレーズの出現度合の類似度を算出することで、ユーザは、出力文と比較対象文の全体の類似度を判断できる。
【0093】
図15の類似度算出処理によって算出された総合類似度、第1指標値、および第2指標値は、端末装置200に送信され、図10に示される類似チェックの結果詳細画面280に表示される。これによって、ユーザは、出力文と比較対象文とがどの程度類似するのかを把握することができる。
【0094】
次に、それぞれのペルソナにより焦点を当てた文章生成の例について説明する。まず、文章生成装置100は、ペルソナ生成プロンプト1を生成する。例えば、ペルソナ生成プロンプト1は、ユーザが入力したペルソナを引用し、人工知能サーバ300に「ユーザが入力したペルソナに向けて、生活習慣や人生のアドバイスについて簡潔に提示してください」と質問する。すると、人工知能サーバ300が、そのペルソナが興味を持つであろうキーワードを散りばめたアドバイス文を作成する。このアドバイス文は、人工知能サーバ300がその時に参照するインターネット情報によって、毎回異なったアドバイス文が生成される。例えば、日本における4月や米国における9月のような進級する季節において、まじめな中学2年生がペルソナである場合、「新学期ですね、新しい学年のスタートにあたって、これまでの学習を振り返って不得意分野をしっかりと学習し直すとともに、新学年で学ぶ予定の項目に目を通し、学習の目標設定をしましょう。また、部活動では中心的な役割を担う学年であるため、自分のことだけでなく、初めて入ってくる後輩とどのような活動をしていくか、活動のイメージを作っておくとよいでしょう。」といったアドバイス文が生成されたとする。
【0095】
次に、文章生成装置100は、ペルソナ生成プロンプト2を生成する。ペルソナ生成プロンプト2は、ペルソナ生成プロンプト1が出力したアドバイス文を引用し、人工知能サーバ300に「重要な単語やフレーズを8個抽出せよ」と質問する。すると、人工知能サーバ300は、アドバイス文からユーザが選択したペルソナが興味を持つであろうキーフレーズを抽出する。上記の例では「(1)新学期、(2)学年のスタート、(3)振り返り、(4)不得意分野、(5)学習の目標設定、(6)中心的な役割、(7)初めて入ってくる後輩、(8)活動のイメージ」が抽出されたとする。
【0096】
次に、文章生成装置100は、ユーザが入力した当初の情報(テーマ)と、当該キーフレーズを引用して、人工知能サーバ300に最終文章を作成させる。すると、ユーザの入力したテーマとキーフレーズとを組み合わせた最終文章が生成される。この最終文章は、最初のアドバイス文が毎回異なるため、毎回異なることになる。また、最終文章は、ペルソナが生活習慣や人生において興味を持つフレーズが用いられた文章となるため、ユーザが作成したいテーマに即しつつ、ペルソナが興味を持つ文章となる。例えば、上記の例では、ユーザの入力したテーマが「お弁当箱の新製品のPR」であった場合には、「新学期ですね!新しい学年のスタートにあたって新しいお弁当箱で気分一新しませんか?初めて入ってくる後輩と一緒にお弁当を食べることもあるかもしれませんね!」というPR文が生成されることになる。
【0097】
このように、本実施形態では、入力文生成部130は、ペルソナ情報に応じた入力文からキーフレーズを抽出する。人工知能サーバ300は、入力文生成部130によって抽出されたキーフレーズとユーザによって入力された複数の入力項目に基づき、学習モデルを用いて最終文章を生成する。出力文取得部140は、人工知能サーバ300によって生成された最終文章を取得する。これによって、本実施形態の文章生成装置100は、よりペルソナが興味を持つPR文を人工知能サーバ300に作成させることができる。
【0098】
なお、最終文章の作成プロンプトでは、人工知能サーバ300に役割を与えることが重要である。例えば、新商品のプレスリリースを生成する場合には、人工知能サーバ300に投げる質問の冒頭に「あなたは優秀な宣伝担当者です」と役割定義を行う。同じ商品を説明する場合であっても、技術者であれば商品の新機能と、それを実現するための技術的なトピックを説明するが、小学校の先生であれば、生徒に商品の安全な使い方を説明する。同じ「新商品の説明」というテーマでも、どのような立場で説明するのかを事前に明確化しておかなければ、的が外れた文章が生成されることが多く、効率が悪い。本実施形態では、質問の冒頭において下記に示す役割を人工知能サーバ300に与える指示を、最終文章を生成するためのプロンプトに加えている。このため、的確な文章が生成される確率が高くなる。本実施形態では、ユーザが選択したテンプレートに紐づけられた役割を人工知能サーバ300に与えることで、ユーザは人工知能サーバ300に与える役割を考えることなく、テンプレートを選択するだけで適切な文章が生成されることとなる。下記にテンプレートの種類ごとに人工知能サーバ300に与える役割の紐づけ例を示す。
【0099】
[テンプレート種類] [GPTに与える役割]
新商品のプレスリリース あなたは優秀な宣伝担当者です
要約 あなたは優秀なWEBライターです
製品紹介 あなたは優秀な販売員です
ブログ・コラム あなたは優秀なWEBライターです
【0100】
もちろん、各テンプレートに紐づけられた役割はこの限りではなく、より詳細な役割設定を定義してもよい。しかしながら、本発明者の知見では、例示した職業を役割として与えると良い文章が生成される確率が高かった。いずれの職業を役割として紐づけるにしても、「優秀な」をつけると良好な結果が得られやすい。
【0101】
なお、本実施形態の文章生成装置100は、人工知能サーバ300の機能のうちの一部または全部を含んでいてもよく、文章生成装置100が、学習モデルを用いて出力文を生成してもよい。また、本実施形態の文章生成装置100は、言語解析サーバ400の機能のうちの一部または全部を含んでいてもよく、文章生成装置100が、文章の分割、文章における単語の出現位置の特定、特徴ベクトル(文ベクトル)の取得やキーフレーズの取得といった自然言語処理を行ってもよい。
【0102】
以上説明した実施形態によれば、文章生成装置100は、複数の入力項目を含むテンプレートを取得するテンプレート取得部110と、テンプレート取得部110によって取得されたテンプレートを用いて、ユーザによって入力された複数の入力項目の内容を取得する入力項目取得部120と、入力項目取得部120によって取得された複数の入力項目の内容に基づいて、入力文を生成する入力文生成部130と、入力文生成部130によって生成された入力文に基づき、学習モデルを用いて生成された出力文を取得する出力文取得部140とを備える。これによって、文章生成装置100は、ユーザの望む出力文を取得することができる。
【0103】
以上、本発明の好ましい実施例を説明したが、本発明はこれら実施例に限定されることはない。本発明の趣旨を逸脱しない範囲で、構成の付加、省略、置換、およびその他の変更が可能である。本発明は前述した説明によって限定されることはなく、添付のクレームの範囲によってのみ限定される。
【符号の説明】
【0104】
100 文章生成装置
110 テンプレート取得部
120 入力項目取得部
130 入力文生成部
140 出力文取得部
150 変換部
160 編集部
170 類似度算出部
172 文ベクトル比較部
174 キーフレーズ比較部
176 総合類似度算出部
180 通信部
190 記憶部
200 端末装置
300 人工知能サーバ
400 言語解析サーバ
【要約】
【課題】ユーザの望む文章を取得することができる文章生成装置、文章生成システム、文章生成方法、およびプログラムを提供すること。
【解決手段】複数の入力項目を含むテンプレートを取得するテンプレート取得部と、前記テンプレート取得部によって取得された前記テンプレートを用いて、ユーザによって入力された前記複数の入力項目の内容を取得する入力項目取得部と、前記入力項目取得部によって取得された前記複数の入力項目の内容に基づいて、入力文を生成する入力文生成部と、前記入力文生成部によって生成された前記入力文に基づき、学習モデルを用いて生成された出力文を取得する出力文取得部と、を備える文章生成装置。
【選択図】図2
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15