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

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

▶ 株式会社PKSHA Technologyの特許一覧

特許7526416アクセント推定装置、およびアクセント推定方法
<>
  • 特許-アクセント推定装置、およびアクセント推定方法 図1
  • 特許-アクセント推定装置、およびアクセント推定方法 図2
  • 特許-アクセント推定装置、およびアクセント推定方法 図3
  • 特許-アクセント推定装置、およびアクセント推定方法 図4
  • 特許-アクセント推定装置、およびアクセント推定方法 図5
  • 特許-アクセント推定装置、およびアクセント推定方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-24
(45)【発行日】2024-08-01
(54)【発明の名称】アクセント推定装置、およびアクセント推定方法
(51)【国際特許分類】
   G10L 13/10 20130101AFI20240725BHJP
【FI】
G10L13/10 113Z
G10L13/10 111B
【請求項の数】 2
(21)【出願番号】P 2019226480
(22)【出願日】2019-12-16
(65)【公開番号】P2021096327
(43)【公開日】2021-06-24
【審査請求日】2022-10-11
【前置審査】
(73)【特許権者】
【識別番号】513106886
【氏名又は名称】株式会社PKSHA Technology
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】橘 秀幸
(72)【発明者】
【氏名】堅山 耀太郎
(72)【発明者】
【氏名】山田 尚史
【審査官】中村 天真
(56)【参考文献】
【文献】特開2008-116650(JP,A)
【文献】特表2009-500678(JP,A)
【文献】特開2004-309753(JP,A)
【文献】黒岩龍ほか,日本語音声合成を目的としたアクセント処理のための規則と統計的学習,日本音響学会講演論文集,2007年03月,p.301-302
【文献】長野徹ほか,N-gramモデルを用いた音声合成のための読みおよびアクセントの同時推定,情報処理学会論文誌,2006年06月,第47巻, 第6号,p.1793-1801
【文献】小野喜己ほか,ニューラルネットワークを用いたアクセント句境界及びアクセント核推定,日本音響学会講演論文集,2019年03月,p.1103-1106
【文献】Hideyuki TACHIBANA et al.,Accent Estimation of Japanese Words from Their Surfaces and Romanizations for Building Large Vocabulary Accent Dictionaries,2020 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP),2020年05月,p.8059-8063
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-13/10
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
表記と読みとアクセントとを関連付けた辞書がアクセント辞書であり、前記アクセント辞書に基づいて推定用表記を解析し、前記アクセント辞書に登録されているアクセントを前記推定用表記の読みに当てはめることを、前記アクセント辞書に登録されていない未知語を含めて行い、それによって、前記推定用表記の辞書アクセントを出力する解析部と、
登録済みの単語の群を1つのまとまりの意味を有した別の単語として、表記と読みと辞書アクセントとを入力値として当該表記の適切なアクセントを出力値とするように機械学習したモデルを備え、前記推定用表記、前記推定用表記の読み、および、前記解析部が出力した前記推定用表記の辞書アクセントを前記モデルの入力値として、前記モデルの出力値を前記推定用表記のアクセントとして出力する推定部と、を備え、
前記推定部は、前記モデルの入力値とする前記推定用表記の読みに、利用者が入力した適切な読みを用いる
アクセント推定装置。
【請求項2】
表記と読みとアクセントとを関連付けた辞書がアクセント辞書であり、前記アクセント辞書に基づいて推定用表記を解析し、前記アクセント辞書に登録されているアクセントを前記推定用表記の読みに当てはめることを、前記アクセント辞書に登録されていない未知語の読みを含めて行い、それによって、前記推定用表記の辞書アクセントを出力すること、および、
登録済みの単語の群を1つのまとまりの意味を有した別の単語として、表記と読みと辞書アクセントとを入力値として当該表記の適切なアクセントを出力値とするように機械学習したモデルを備え、前記推定用表記、前記推定用表記の読み、および、前記推定用表記の辞書アクセントを前記モデルの入力値として、前記モデルの出力値を前記推定用表記のアクセントとして出力すること、を含み、
前記モデルの入力値とする前記推定用表記の読みに、利用者が入力した適切な読みを用いる
アクセント推定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表記の読みに付与されるアクセントを出力するアクセント推定装置、アクセント学習装置、アクセント推定方法、および、アクセント学習方法に関する。
【背景技術】
【0002】
単語の読み上げにおける拍(モーラ)の強弱や高低であるアクセントは、人工的に作り出される合成音を自然に発せられた人間の音声に近づけるうえで重要な役割を担っている。アクセントを推定する技術には、各単語でのアクセントをシフトさせるアクセントルールを備えて、複合語の構成にアクセントルールを適用し、それによって、複合語でのアクセントを出力することが提案されている(例えば、特許文献1を参照)。また、入力されたテキストの形態素解析から読みの韻律を出力すると共に、入力されたテキストと一致するような音声素片系列を用いて、発話の速度やイントネーションが自然であるように韻律を修正する技術も知られている(例えば、特許文献2を参照)。
【先行技術文献】
【特許文献】
【0003】
【文献】特開平11-249866号公報
【文献】特開2008-139631号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、名詞を単に連結させることによって複合語を作れてしまう日本語では、新語が日々生み出されており、アクセントの推定に用いられる辞書に登録されていない単語、および、結合規則に準じない様式で結合された複合語などの未知語は、近年において増加する一途である。また、アクセント辞書に登録される単語の数量、および、結合規則に適合する複合語の数量にも限りがあるため、未知語の読みに適切なアクセントを付与できないのが実情である。仮に、アクセント辞書に登録されている単語であっても、同音異義語が多い日本語では、かな表記された単語から読みを推測する場合、また、文脈によって異なるアクセントが付与される単語などを扱う場合には、適切なアクセントを推定することが非常に困難であるとも言える。さらに、外来語を取り入れやすい日本語では、一般的なカタカナ語のアクセントを外来語に付与する場合もあれば、原語のアクセントを外来語に付与する場合もあれば、いずれにも該当しないアクセントを付与する場合もあるため、未知語の読みに適切なアクセントを作成することを、より一層に困難なものとしている。
【0005】
例えば、アクセント辞書に登録されていない「世界遺産」のアクセントを作成する場合、未知語である「世界遺産」は「世界」と「遺産」との2つの形態素に分割される。2つの形態素に適合した結合規則が存せず、2つの形態素がアクセント辞書に登録されている場合、「世界遺産」のアクセントは、各形態素のアクセントを単に連ねたものとなる。結果として、適切なアクセントが頭高型の「イ\サン(100)」であるべきところ、誤ったアクセントである平板型の「イ/サン(011)」が作成されてしまう。「焼肉定食」などの未知語も、同様であると言える。なお、ここで0と1は、イントネーションの高低につき、0は低く、1は高くあることを示す。「\」及び「/」は、イントネーションがその文字の間で低くなること、及び高くなることを示す。
【0006】
例えば、アクセント辞書に登録されていない新語である「働き方改革」のアクセントを作成する場合もまた、新語に適合した結合規則が存せず、「働き方改革」は「働き」「方」「改革」と3つの形態素に分割される。そして、適切なアクセントが頭高型の「カ\イカク(1000)」であるべきところ、平板型の「カ/イカク(0111)」が作成されてしまう。
【0007】
例えば、かな表記である「こうぎょう」から推測される読みのアクセントは、漢字表記として「工業」に相当する場合と「興業」に相当する場合との間で互いに異なる。かな表記である「いし」から推測される読みのアクセントもまた、漢字表記として「遺志」「意思」「医師」「石」のいずれに相当するかによって変わる。また、例えば、「渋谷」や「上野」のように地名と人名とに用いられる単語のアクセントは、文脈のなかで地名として用いられる場合と、文脈のなかで人名として用いられる場合との間で互いに異なる。加えて、「○○〇〇ちょう」とかな表記される地名にも、「ジ/ンボ\ウチョウ(神保町)」や「ユ/ウラ\クチョウ(有楽町)」のように一般的なアクセントの結合規則に当てはまる場合もあれば、「オ/オテ\マチ(大手町)」や「コ/ウジマチ(麹町)」のように当てはまらない場合もある。また、「クロワッサン」、「バウムクーヘン」、「バスケットボール」などの単語は、一般的なカタカナ語のアクセントを用いる例であって、カタカナ語の後ろから3モーラ目、もしくは、4モーラ目にアクセントが付与される。一方で、「カルテット」、「スイミング」、「アドバンス」などの単語は、一般的なカタカナ語のアクセント、および、原語のアクセントのいずれとも異なるアクセントが付与される。
【0008】
本発明は、アクセントの推定精度を向上可能にしたアクセント推定装置、アクセント推定方法、アクセント学習装置、および、アクセント学習方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するためのアクセント推定装置は、表記と読みとアクセントとを関連付けた辞書がアクセント辞書であり、前記アクセント辞書に基づいて推定用表記を解析し、前記アクセント辞書に登録されているアクセントを前記推定用表記の読みに当てはめることを、前記アクセント辞書に登録されていない未知語を含めて行い、それによって、前記推定用表記の辞書アクセントを出力する解析部と、表記と読みと辞書アクセントとを入力値として当該表記の適切なアクセントを出力値とするように機械学習したモデルを備え、前記推定用表記、前記推定用表記の読み、および、前記解析部が出力した前記推定用表記の辞書アクセントを前記モデルの入力値として、前記モデルの出力値を前記推定用表記のアクセントとして出力する推定部と、を備える。
【0010】
上記課題を解決するためのアクセント推定方法は、表記と読みとアクセントとを関連付けた辞書がアクセント辞書であり、前記アクセント辞書に基づいて推定用表記を解析し、前記アクセント辞書に登録されているアクセントを前記推定用表記の読みに当てはめることを、前記アクセント辞書に登録されていない未知語の読みを含めて行い、それによって、前記推定用表記の辞書アクセントを出力すること、および、表記と読みと辞書アクセントとを入力値として当該表記の適切なアクセントを出力値とするように機械学習したモデルを備え、前記推定用表記、前記推定用表記の読み、および、前記推定用表記の辞書アクセントを前記モデルの入力値として、前記モデルの出力値を前記推定用表記のアクセントとして出力すること、を含む。
【0011】
上記課題を解決するためのアクセント学習装置は、表記と読みとアクセントとを関連付けた辞書がアクセント辞書であり、前記アクセント辞書に基づいて学習用表記を解析し、前記アクセント辞書に登録されているアクセントを前記学習用表記の読みに当てはめることを、前記アクセント辞書に登録されていない未知語を含めて行い、それによって、前記学習用表記の辞書アクセントを出力する解析部と、機械学習したモデルを出力する学習部であって、前記学習用表記、前記学習用表記の読み、および、前記学習用表記の辞書アクセントを前記モデルの入力値とし、前記学習用表記の適切なアクセントを前記モデルの出力値の理想値として、前記モデルに機械学習させる前記学習部と、を備える。
【0012】
上記課題を解決するためのアクセント学習方法は、表記と読みとアクセントとを関連付けた辞書がアクセント辞書であり、前記アクセント辞書に基づいて学習用表記を解析し、前記アクセント辞書に登録されているアクセントを前記学習用表記の読みに当てはめることを、前記アクセント辞書に登録されていない未知語の読みを含めて行い、それによって、前記学習用表記の辞書アクセントを出力すること、および、機械学習したモデルを出力することであって、前記学習用表記、前記学習用表記の読み、および、前記学習用表記の辞書アクセントを前記モデルの入力値とし、前記学習用表記の適切なアクセントを前記モデルの出力値の理想値として、前記モデルに機械学習させること、を含む。
【0013】
上記アクセント推定装置において、前記解析部が、第1解析部であり、表記と読みとを関連付けた辞書が読み方辞書であり、前記読み方辞書に基づいて前記推定用表記を解析し、前記推定用表記の読みを出力する第2解析部をさらに備え、前記推定部は、前記モデルの入力値とする前記推定用表記の読みを、前記第2解析部が出力した前記推定用表記の読みとしてもよい。
【0014】
上記アクセント推定装置において、前記推定部は、前記モデルの入力値とする前記推定用表記の読みを、利用者が入力した適切な読みとしてもよい。
上記アクセント推定装置において、前記解析部は、前記アクセント辞書に基づいて前記推定用表記を解析して、前記推定用表記の読みを出力し、前記推定部は、前記モデルの入力値とする前記推定用表記の読みを、前記解析部が出力した前記推定用表記の読みとしてもよい。
【発明の効果】
【0015】
本発明によれば、アクセント辞書に登録されていない単語、および、結合規則に準じない様式で結合された複合語などの未知語の読みに適切なアクセントを付与することができるため、アクセントの推定精度を向上できる。
【図面の簡単な説明】
【0016】
図1】アクセント推定装置の一実施形態での構成を示すハードウェアブロック図。
図2】アクセント推定装置の一実施形態での構成を示す機能ブロック図。
図3】アクセント推定装置が備える機械学習モデルの一部を示す模式図。
図4】アクセント推定装置が行うアクセント推定方法の流れを示すフロー図。
図5】アクセント学習装置の一実施形態での構成を示す機能ブロック図。
図6】アクセント学習装置が行うアクセント学習方法の流れを示すフロー図。
【発明を実施するための形態】
【0017】
図1から図6を参照してアクセント推定装置、アクセント学習装置、アクセント推定方法、および、アクセント学習方法を具体化した一実施形態を説明する。
【0018】
[推定装置]
図1が示すように、アクセント推定装置10は、アクセント推定プログラムを実行して、アクセント推定方法を行う。アクセント推定装置10は、利用者端末20から推定要求20Qを受け付ける。アクセント推定装置10は、推定要求20Qを受け付けて、推定用表記20Dを取得する。推定用表記20Dは、アクセントを推定する対象である。アクセント推定装置10は、下記(A)~(D)の4つの入力値を、機械学習モデルの入力値に含める。機械学習モデルは、4つの入力値を用いて、推定用表記20Dのアクセントを出力する。アクセント推定装置10は、機械学習モデルが出力したアクセントを、推定要求20Qの回答10Aとして、利用者端末20に提供する。
(A)推定用表記20D
(B)推定用表記20Dの読み
(C)推定用表記20Dの品詞
(D)推定用表記20Dの辞書アクセント
(A)推定用表記20Dは、文字、数字、記号によって書き表される文字列である。推定用表記20Dは、例えば「世界遺産」のように、文法上のひとまとまりの意味を有した最小限の単位である単語である。推定用表記20Dは、例えば「北欧で登録されている世界遺産の数は」のように、単語の連なりとして統語論的にひとつの機能を有する文である。推定用表記20Dは、例えば「北欧で登録されている世界遺産の数は32カ所ある」のように、文の連なりとしてひとつの内容を表した文章である。
【0019】
(B)推定用表記20Dの読みは、推定用表記20Dの読み方を示す文字列である。推定用表記20Dの読みは、アクセントが当てはめられる最小の単位の並びである。例えば、推定用表記20Dが「世界遺産」である場合、推定用表記20Dの読みは「セカイイサン」である。アクセントが当てはめられる最小の単位は、「セ」や「カ」のように、1文字以上の仮名の列(モーラ)である。1文字以上の仮名の列は、1文字の仮名(五十音、濁点付き五十音、半濁点付き五十音(パ行)、長音記号「―」と促音「ッ」と撥音「ン」を含む)、または、1文字の仮名と1文字の小書き仮名(ァィゥェォャュョヮ)の組み合わせにより表現可能な音であり、この単位はモーラと呼称される。
【0020】
アクセントは、単語を読み上げたり、単語の読みの合成音を出力したりするときの、拍の強弱や高低である。アクセントは、句や文章を読み上げたり、句や文章の読みの合成音を出力したりするときの、拍の強弱や高低であるイントネーションを含む。アクセントは、単語を読み上げたり、単語の読みの合成音を出力したりするときの、拍の基本周波数パターンである。
【0021】
アクセントは、読み上げられる単語の読みを時間的に分割した基本的単位である各拍に1つずつ定められる。アクセントの表記は、例えば、HL式、線式、数字式である。例えば、3文字から構成される単語の読みである「イサン」のなかの最初の文字から数えて2文字目から音を高くする場合、アクセントは「LHH」「イ/サン」「011」などと表記される。
【0022】
(C)推定用表記20Dの品詞は、推定用表記20Dを構成する単語の品詞である。推定用表記20Dが日本語で表される場合、推定用表記20Dの品詞は、例えば、動詞、形容詞、形容動詞、普通名詞、固有名詞、代名詞、数詞、形式名詞、副詞、連体詞、接続詞、感動詞、助動詞、助詞、副助詞、係助詞、終助詞、接頭辞、接尾辞である。推定用表記20Dの品詞は、推定用表記20Dの読みを構成する最小の単位に1つずつ対応付けられる。例えば、推定用表記20Dが「遺産」である場合、推定用表記20Dの読みは「イサン」であり、推定用表記20Dの品詞は、「イ」に「普通名詞」、「サ」に「普通名詞」、および、「ン」に「普通名詞」と対応付けられる。
【0023】
(D)推定用表記20Dの辞書アクセントは、アクセント辞書13Aに基づいて、推定用表記20Dの読みに当てはめられたアクセントである。推定用表記20Dの辞書アクセントは、アクセント辞書13Aに登録されている単語の読みを、推定用表記20Dの読みに当てはめられることによって得られる。例えば、アクセント辞書13Aに登録されている単語が「世界」と「遺産」とであって、アクセント辞書13Aに「世界遺産」が登録されていないとする。このとき、アクセント辞書13Aには、「セ\カイ(100)」と「イ/サン(011)」とが登録されており、「世界遺産」の辞書アクセントは、これらのアクセントを連ねた「セ\カイイ/サン」である。
【0024】
アクセント辞書13Aは、単語の表記に、当該単語の読み、当該単語の品詞、および、当該単語のアクセントを関連付けた辞書である。例えば、単語の表記が「遺産」である場合、当該単語の読みである「イサン」、当該単語の品詞である3文字分の「普通名詞」、および、当該単語のアクセントである「011」あるいは「LHH」が関連付けられている。アクセント辞書13Aは、推定用表記20Dの読みにアクセントを当てはめること、すなわち、辞書アクセントの作成に用いられる。
【0025】
読み方辞書13Rは、単語の表記に、当該単語の読み、および、当該単語の品詞を関連付けた辞書である。例えば、単語の表記が「一日千秋」である場合、当該単語の読みである「イチジツセンシュウ」、および、当該単語の品詞である8文字分の「普通名詞」が関連付けられている。読み方辞書13Rは、推定用表記20Dの読みを作成することに用いられる。
【0026】
上述したように、アクセント辞書13Aに登録されていない単語である未知語は、近年において増加する一途である。また、アクセント辞書13Aが更新される頻度は、読み方辞書13Rが更新される頻度よりも、遙かに低いことが実情である。そして、アクセント辞書13Aに基づいて未知語の読みを解析するとなれば、読みを出力することは可能ではあるが、本来ならば1つのまとまりの意味を有する単語が、他の意味を有した登録済みの単語群として取り扱われやすくなる。例えば、未知語の表記が「一日千秋」である場合、登録済みの単語である「一日」と「千秋」とに読みが分割されて、当該表記の読みとして、「イチニチチアキ」が作成されてしまう。これに対して、読み方辞書13Rに基づいて未知語の読みを解析すれば、アクセント辞書13Aに基づいた解析と比べて、推定用表記20Dの読みが適切な読みとなる可能性が高まる。
【0027】
利用者端末20が備える入出力部21は、利用者による操作に従って、推定用表記20Dを入力する。なお、利用者端末20の入出力部21は、テキスト変換部を備えてもよい。テキスト変換部は、マイクに入力された利用者の音声をテキスト情報に変換する。利用者端末20の入出力部21は、テキスト変換部が変換したテキスト情報を、推定用表記20Dとして入力する。
【0028】
アクセント推定装置10は、通信部11、制御部12、および、記憶部13を備える。通信部11、制御部12、および、記憶部13は、1以上のコンピューターによって構成される。通信部11、制御部12、および、記憶部13を構成するコンピューターは、コンピューターネットワークに接続されている。通信部11を構成するコンピューター、制御部12を構成するコンピューター、および、記憶部13を構成するコンピューターは、ワイドエリアネットワークを構成する別々の閉域通信網に接続されて、ゲートウェイを通じて、相互に接続されてもよい。
【0029】
通信部11は、利用者端末20と接続するための通信デバイスを備える。通信部11は、例えば、組織内のコンピューターネットワークを通じて、利用者端末20に接続される。あるいは、通信部11は、インターネット、衛星ネットワーク、携帯電話ネットワーク、Wi-Fi(登録商標)などを通じて、利用者端末20に接続される。
【0030】
通信部11は、利用者端末20による推定要求20Qの入力を受け付ける。通信部11は、受け付けられた推定要求20Qを制御部12に入力する。通信部11は、制御部12が入力する取得命令を受け付けて、推定用表記20Dの取得を実行する。通信部11は、取得された推定用表記20Dを制御部12に入力する。
【0031】
制御部12は、中央演算処理装置、および、メモリを備える。制御部12は、アクセント推定を行うための各種処理を全てソフトウェアで処理するものに限らない。制御部12は、例えば、各種処理のなかの少なくとも一部の処理を実行する専用のハードウェア(ASIC)を備えてもよい。つまり、制御部12は、ASICなどの1つ以上の専用のハードウェア回路、知識検索プログラムに従って動作する1つ以上のプロセッサ、あるいは、これらの組み合わせ、を含む回路として構成し得る。なお、専用のハードウェア回路、プロセッサ、あるいは、これらの組み合わせを含む回路は、2つ以上の機能部を構成し得る。
【0032】
制御部12は、読み方推定用の機械学習モデルを備える。制御部12は、第1解析部、および、第2解析部として機能する。読み推定用の機械学習モデルは、ニューラルネットワークを備えた深層学習モデルである。読み推定用の機械学習モデルは、推定用表記20Dなどを入力値として、推定用表記20Dの読みを出力値とするように、機械学習した深層学習モデルである。制御部12は、読み方辞書13Rに基づいて、推定用表記20Dの形態素解析などの解析を行い、推定用表記20Dの読みと、推定用表記20Dを構成する単語の品詞と、を出力する。
【0033】
制御部12は、推定用表記20Dの読みにアクセント辞書13Aに登録されている読みを当てはめて、それによって、推定用表記20Dの読みにアクセントを当てはめる。制御部12は、アクセント辞書13Aに登録されていない未知語を含めて、推定用表記20Dの読みにアクセントを当てはめる。
【0034】
制御部12は、アクセント推定用の機械学習モデルを備える。制御部12は、推定部として機能する。アクセント推定用の機械学習モデルは、ニューラルネットワークを備えた深層学習モデルである。アクセント推定用の機械学習モデルは、(A)表記、(B)表記の読み、(C)表記を構成する単語の品詞、および、(D)表記の辞書アクセントを、1組みの入力値として取り扱う。アクセント推定用の機械学習モデルは、上記(A)~(D)を入力値として、入力値に含まれる表記について適切なアクセントを出力するように、機械学習した深層学習モデルである。
【0035】
記憶部13は、ハードディスクなどのコンピューター可読記憶媒体を備える。記憶部13は、アクセント辞書13A、および、読み方辞書13Rを読み出し可能に記憶する。記憶部13は、制御部12が読み出すアクセント推定プログラムを記憶する。記憶部13は、機械学習モデルを読み出し可能に記憶する。なお、アクセント辞書13A、読み方辞書13R、および、機械学習モデルは、制御部12が記憶してもよい。
【0036】
利用者端末20は、デスクトップ、ラップトップ、タブレット、および、スマートフォンなどのコンピューターであって、入出力部21を備える。入出力部21は、推定要求20Qと推定用表記20Dとを入力するためのインターフェースを備える。入出力部21は、推定用表記20Dの読みとアクセントとを出力するためのインターフェースを備える。入出力部21は、タッチパネル、キーボード、マウス、マイクなどの入力機器、および、ディスプレイ、スピーカなどの出力機器を備える。
【0037】
[モジュール]
図2が示すように、アクセント推定装置10は、読み推定モジュール14、および、アクセント推定モジュール15として機能する。アクセント推定装置10は、制御部12がアクセント推定プログラムを実行することによって、読み推定モジュール14、および、アクセント推定モジュール15として機能する。
【0038】
読み推定モジュール14は、通信部11を通じて取得した推定用表記20Dを解析する。読み推定モジュール14は、読み方辞書13Rに基づいて推定用表記20Dを解析し、解析の結果を用いて、推定用表記20Dの読み、および、推定用表記20Dを構成する単語の品詞を出力する。
【0039】
読み推定モジュール14は、例えば、推定用表記20Dの形態素解析を行う。形態素解析は、推定用表記20Dを単語に分割する単語分割、および、各単語に品詞を付与する品詞処理、および、各単語に活用を付与する活用処理を含む。また、形態素解析は、相互に隣り合う文字の列を形態素である単語と見なして、単語内の部分文字列や複合語を対象とした品詞処理、および、活用処理を含む。読み推定モジュール14は、形態素解析の他に、分割された単語の品詞を参照して、分割された単語を語幹の形に戻す語幹化処理、あるいは、分割された単語の活用を参照して、分割された単語を辞書などの見出し語に戻す見出し語化処理を行う。
【0040】
読み推定モジュール14は、機械学習モデルである読み推定モデルを備える。読み推定モデルは、推定用表記20Dの解析の結果に適合した読みを出力するように、学習用の入力値と学習用の読みとの関連性を学習したモデルである。推定用表記20Dの解析の結果は、例えば、推定用表記20D、推定用表記20Dに含まれる単語、当該単語の品詞、当該単語の活用、文字の種類である。
【0041】
読み推定モデルは、ニューラルネットワークを備える。読み推定モジュール14は、推定用表記20D、推定用表記20Dに含まれる単語、当該単語の品詞、当該単語の活用、文字の種類などの解析の結果を、ベクトル空間で表現する。読み推定モジュール14は、上述した解析の結果を入力値とし、推定用表記20Dの読みを出力値とする。読み方辞書13Rと読み推定モデルとを用いた読みの出力は、推定用表記20Dに含まれる未知語に適切な読みを付与しやすくする。
【0042】
読み方辞書13Rに登録された単語の数量は、新語や複合語を多く含み得る推定用表記20Dの構成単語と比べて非常に少ない。アクセント辞書13Aに登録された単語の数量は、読み方辞書13Rに登録された単語の数量よりもさらに少ない。部分文字列や複合語を単語と見なす形態素解析は、読み方辞書13Rに登録された単語を用いる読みにおいて、読みの精度を向上可能にする。また、アクセント辞書13Aに登録された単語を用いるアクセントの作成において、読みの精度が高められている分だけ、アクセントの精度を向上可能にする。
【0043】
なお、読み推定モジュール14は、前処理として、例えば、推定用表記20Dの構文解析を行ってもよい。構文解析は、単語間の関係を特定して単語に役割を付与する係り受け解析を含む。構文解析は、単語の列である句の句構造を特定して句に役割を付与する句構造解析を含む。構文解析が前処理として行われる場合には、例えば、推定用表記20Dを構成する形態素のなかに、高い精度のもとで終助詞を付与することが可能となる。そして、疑問、強意、詠嘆などのアクセントに大きな影響を与える終助詞が付与された場合には、読み推定モジュール14が出力した読みを用いるアクセントの作成において、より適切なアクセントを作成することが可能ともなる。
【0044】
アクセント推定モジュール15は、(D)推定用表記20Dの辞書アクセントを作成する。アクセント推定モジュール15は、辞書アクセントの作成に際して、読み推定モジュール14が出力した(B)推定用表記20Dの読み、(C)推定用表記20Dを構成する単語の品詞、および、アクセント辞書13Aを参照する。アクセント推定モジュール15は、推定用表記20Dの読みをアクセント辞書13Aに登録されている読みに当てはめて、それによって、辞書アクセントを作成する。この際、アクセント推定モジュール15は、推定用表記20Dに含まれる未知語について、当該未知語を複数の単語に分割し、分割された単語の読みをアクセント辞書13Aに登録されている読みに当てはめて、それによって、未知語のアクセントを作成する。
【0045】
例えば、アクセント推定モジュール15は、推定用表記20Dの読みが「セカイイサン」であるとき、当該読みがアクセント辞書13Aに登録されていない未知語であると判断する。そして、アクセント推定モジュール15は、アクセント辞書13Aに登録されている単語を用いて、「セカイ」に関連付けられた「100」と、「イサン」に関連付けられた「110」と、を連ねる。これにより、アクセント推定モジュール15は、辞書アクセントを出力する。
【0046】
例えば、アクセント推定モジュール15は、推定用表記20Dの読みが「イチジツセンシュウ」であるとき、当該読みがアクセント辞書13Aに登録されていない未知語であると判断する。そして、アクセント推定モジュール15は、アクセント辞書13Aに登録されている単語を用いて、「イチジツ」に関連付けられた「1000」と、「セン」に関連付けられた「10」と、「シュウ」に関連付けられた「00」と、を連ねる。これにより、アクセント推定モジュール15は、辞書アクセントを出力する。
【0047】
アクセント推定モジュール15は、機械学習モデルであるアクセント推定モデルを備える。アクセント推定モデルは、上記(A)~(D)の4つの入力値の意味に適合したアクセントを出力するように、学習用の入力値と学習用の教師アクセントとの関連性を学習した深層学習モデルである。アクセント推定モデルは、ニューラルネットワークを備える。アクセント推定モジュール15は、上記(A)~(D)の4つの入力値をベクトル空間で表現する。アクセント推定モジュール15は、上記(A)~(D)の4つの入力値をアクセント推定モデルに入力し、それによって、推定用表記20Dの適切なアクセントを作成する。
【0048】
[機械学習モデル]
図3が示すように、アクセント推定モジュール15が備えるアクセント推定モデルは、ニューラルネットワークを備える。ニューラルネットワークは、複数の入力ノードNAから構成される入力層18A、複数の中間ノードNBから構成される中間層18B(隠れ層)、および、複数の出力ノードNCから構成される出力層18Cを備える。
【0049】
ニューラルネットワークは、所定の演算を入力値に適用して出力値を演算するモデルである。なお、図3では、アクセント推定モデルの全体を示す便宜上、推定用表記20Dの読みに出現した文字20Qs、および、アクセント辞書13Aに基づいて解析された結果である辞書アクセント20Psのみを、エンコードされた入力値として示す。また、中間層18Bが一層である例を図示する。中間層18Bは、2層以上であってもよく、中間層18Bを構成する中間ノードNBと、出力層18Cを構成する出力ノードNCとの間に、複数の他のノードが介在してもよい。
【0050】
入力ノードNAと中間ノードNBとを接続するエッジE、および、中間ノードNBと出力ノードNCとを接続するエッジEは、各々独立に重みを定める。各エッジEが定める重みは、当該エッジEの入力端となるノードの入力値に掛け合わされて、掛け合わされた結果は、当該エッジEの出力端となるノードに引き渡される。
【0051】
中間ノードNBは、当該中間ノードNBに引き渡された値を足し合わせる。出力ノードNCもまた、当該出力ノードNCに引き渡された値を足し合わせる。中間ノードNBは、当該中間ノードNBで足し合わされた値を、当該中間ノードNBが定める活性化関数に適用して、当該中間ノードNBの出力値を出力する。出力ノードNCは、当該出力ノードNCで足し合わされた値を、当該出力ノードNCが定める活性化関数に適用して、当該出力ノードNCの出力値を出力する。
【0052】
各ノードNB,NCが定める活性化関数は、例えば、softmax関数、logistic関数、hyperbolic tangent関数、Rectifier Linear Unitである。各エッジEが定める重みは、ニューラルネットワークの学習によって最適化される。
【0053】
なお、アクセント推定モジュール15が備える推定モデルは、畳み込みニューラルネットワークを備えてもよい。畳み込みニューラルネットワークは、例えば、(A)推定用表記20D、(B)推定用表記20Dの読み、(C)推定用表記20Dを構成する単語の品詞、(D)推定用表記20Dの読みに当てはめられた辞書アクセントを、二次元の入力として取り扱う。
【0054】
畳み込みニューラルネットワークは、中間層として、畳み込み層、プーリング層、および、全結合層を備える。畳み込み層は、入力に対して畳み込み処理を行う。プーリング層は、入力に対してプーリング処理を行う。全結合層は、全結合層を構成する各ノードと、全結合層の1つ前の層を構成する全てのノードとを結合する。
【0055】
畳み込み処理は、二次元の入力全体にフィルタを適用する。フィルタは、所定サイズの二次元領域において、入力の特徴を凝縮するものである。フィルタは、畳み込みニューラルネットワークの学習によって更新される。すなわち、畳み込み処理は、二次元の入力全体において、入力の特徴を凝縮させて次の層に出力する。
【0056】
プーリング処理は、畳み込み処理の次に行われる。プーリング処理は、所定サイズの二次元領域ごとに重要な要素を抽出することを、二次元の入力に適用する。重要な要素は、所定サイズの二次元領域における最大値、あるいは、所定サイズの二次元領域における平均値などである。
【0057】
[推定方法]
アクセント推定装置10が行うアクセント推定方法は、読み推定処理、当てはめ処理、および、アクセント推定処理を含む。
【0058】
図4が示すように、読み推定処理は、まず、読み推定モジュール14が、利用者端末20から推定用表記20Dを取得し、記憶部13から読み方辞書13Rを取得する。次いで、読み推定モジュール14は、取得された推定用表記20Dを解析し、解析の結果を読み推定モデルに入力して、(B)推定用表記20Dの読み、および、(C)読みに含まれる単語の品詞を出力する(ステップS11)。
【0059】
当てはめ処理は、まず、アクセント推定モジュール15が、読み推定モジュール14から推定用表記20Dの読みと品詞とを取得し、記憶部13からアクセント辞書13Aを取得する。次いで、アクセント推定モジュール15は、取得された推定用表記20Dの読みと品詞とを解析し、推定用表記20Dの読みにアクセントを当てはめて、(D)辞書アクセントを出力する(ステップS12)。
【0060】
アクセント推定処理は、まず、アクセント推定モジュール15が、推定用表記20D、読み推定処理の結果である推定用表記20Dの読みと品詞、および、当てはめ処理の結果である辞書アクセントを、アクセント推定モデルに入力する。これにより、アクセント推定モジュール15は、推定用表記20Dのアクセント13Pを出力する(ステップS13)。
【0061】
[学習装置]
アクセント学習装置30は、アクセント推定装置10が備える機械学習モデルを変更して学習処理を行う点がことなる一方で、その他の構成においては、アクセント推定装置10と共通する。以下では、アクセント推定装置10と異なる構成を説明し、アクセント推定装置10と共通する構成に関しては、同一の符号を付して、その説明を割愛する。
【0062】
図5が示すように、アクセント学習装置30は、アクセント学習プログラムを実行して、アクセント学習方法を行う。アクセント学習装置30は、利用者端末20から学習要求を受け付ける。アクセント学習装置30は、学習用入力値20Rを取得する。学習用入力値20Rは、下記(A1)~(D1)の4つのデータから構成される。
(A1)学習用表記
(B1)学習用表記の読み
(C1)学習用表記の品詞
(D1)学習用表記の読みの教師アクセント
【0063】
学習用表記は、文字、数字、記号によって書き表される文字列である。学習用表記は、未知語を含む表記、および、未知語を含まない表記を含む。学習用表記の読みは、学習用表記の適切な読み方を示す文字列である。学習用表記の読みを構成する単語の適切な品詞である。学習用表記の読みの教師アクセントは、学習用表記の適切な読みに付与される適切なアクセントである。
【0064】
制御部12は、(B1)学習用表記の読み、および、(C1)学習用表記を構成する単語の品詞に基づいて、アクセント辞書13Aを参照し、学習用表記の読みにアクセントを当てはめる。制御部12は、アクセントの当てはめを通じて、(D2)学習前辞書アクセントを出力する。この際、制御部12は、学習用表記に含まれる未知語を複数の単語に分割し、分割された単語のアクセントを連ねて、未知語のアクセントとする。
【0065】
制御部12は、読み学習用の機械学習モデルを備える。読み学習用の機械学習モデルは、ニューラルネットワークを備えた深層学習モデルである。読み学習用の機械学習モデルは、入力値として、(A1)学習用表記、および、当該学習用表記を用いた形態素解析などの解析結果を入力値に用いる。読み学習用の機械学習モデルは、出力値の理想値として、(B1)学習用表記の読み、および、(C1)学習用表記を構成する単語の品詞を用いる。
【0066】
制御部12は、例えば、誤差逆伝播法などの学習方法を用い、入力値と出力値との間での重みなどの関係性を深層学習モデルに学習させる。制御部12は、読み学習処理の結果として、学習済みのモデルである読み推定モデルを出力する。
【0067】
制御部12は、アクセント学習用の機械学習モデルを備える。アクセント学習用の機械学習モデルは、ニューラルネットワークを備えた深層学習モデルである。アクセント学習用の機械学習モデルは、入力値として、(A1)学習用表記、(B1)学習用表記の読み、(C1)学習用表記の構成単語の品詞、(D2)学習前辞書アクセントを用いる。アクセント学習用の機械学習モデルは、出力値の理想値として、(D1)教師アクセントを用いる。
【0068】
制御部12は、例えば、誤差逆伝播法などの学習方法を用い、入力値と出力値との間での重みの関係性をモデルに学習させる。制御部12は、アクセント学習処理の結果として、学習済みのモデルであるアクセント推定モデルを出力する。
【0069】
例えば、制御部12は、入力層18Aに入力値を入力して、中間層18Bの出力値、および、出力層18Cの出力値を求める。次いで、出力層18Cの出力値と理想値との差分を、出力層18Cの誤差として求める。また、出力層18Cの誤差と、中間層18Bでの出力値とを用いて、中間層18Bの誤差を求める。次いで、出力層18Cの誤差が減るように、出力層18Cと中間層18Bとを接続するエッジEについて、重みを調整する。また、中間層18Bの誤差が減るように、中間層18Bと入力層18Aとを接続するエッジEについて、重みを調整する。そして、制御部12は、出力層18Cの誤差が十分に小さくなるまで、以上の処理を繰り返す。
【0070】
[学習方法]
アクセント学習装置30が行うアクセント学習方法は、読み学習処理、当てはめ処理、および、アクセント学習処理を含む。
【0071】
図6が示すように、読み学習処理では、まず、制御部12が、利用者端末20から(A1)学習用表記と、を取得し、記憶部13から読み方辞書13Rを取得する。次いで、制御部12は、読み方辞書13Rに基づいて、取得された学習用表記を解析する。そして、制御部12は、(A1)学習用表記と、当該学習用表記の解析の結果とを入力値とし、(B1)学習用表記の読みと、(C1)学習用表記を構成する単語の品詞とを理想値として、読み学習用の機械学習モデルに学習を実行させる。これによって、制御部12は、学習済みのモデルである読み推定モデルを出力する。
【0072】
当てはめ処理では、まず、制御部12が、(A1)学習用表記と、当該学習用表記の解析の結果とを入力値として、学習用表記の読みと、学習用表記を構成する単語の品詞とを出力する。次いで、制御部12は、記憶部13からアクセント辞書13Aを取得し、解析された学習用表記の読みと、解析された単語の品詞とを用い、アクセント辞書13Aに基づいて、学習用表記の読みにアクセントを当てはめる。これによって、制御部12は、(D2)学習前辞書アクセントを出力する(ステップS22)。なお、制御部12は、辞書アクセントの出力と同じく、学習用表記に含まれる未知語を複数の単語に分割し、分割された単語のアクセントを連ねて、未知語のアクセントとする。
【0073】
アクセント学習処理では、制御部12は、(A1)学習用表記、解析された学習用表記の読み、解析された単語の品詞、および、(D2)学習前辞書アクセントを入力値とする。次いで、制御部12は、(D1)教師アクセントを理想値として、アクセント学習用の機械学習モデルに学習を実行させる。これによって、制御部12は、学習済みのモデルであるアクセント推定モデルを出力する(ステップS23)。
【0074】
以上、上記実施形態によれば、以下に列挙する効果が得られる。
(1)推定用表記20Dが新語を含む場合であれ、推定用表記20Dが未知の結合規則で作られた複合語を含む場合であれ、アクセント辞書13Aに登録されたアクセントが未知語の読みに当てはめられる。そして、未知語の読みに当てはめられたアクセントが適切なアクセントではない場合であれ、当該アクセントを適切なアクセントに近づけ得るような推定が、アクセント推定モデルによって行われる。結果として、推定用表記20Dが未知語を含む場合であっても、推定用表記20Dの読みに適したアクセントを作成することが可能であるから、アクセントの推定精度を高めることが可能となる。
【0075】
(2)推定用表記20Dは、未知語の語彙、未知語の構造、未知語の由来、未知語の働き、未知語の類語、未知語の関連語、未知語の連想語、辞書登録された単語との類似性などに関わる多様な情報を含む。推定用表記20Dの読みは、上述した情報の他に、未知語の音韻に関わる情報、未知語の拍数に関わる情報などの多様な情報を含む。推定用表記20Dの辞書アクセントは、適切なアクセントと、アクセント辞書13Aを用いた当てはめによるアクセントとの関連性を定め得る情報である。上記(A)~(D)を入力値としたアクセント推定モデルによる推定は、これら各種の情報をアクセントの作成に反映させ得るため、アクセントの推定精度を高めることが可能となる。
【0076】
(3)アクセント推定処理では、読み推定モジュール14で推定された推定用表記20Rの読みと品詞とが入力値に含まれる。これにより、推定用表記20Rの読みや品詞の精度を高めることが可能であるから、アクセントの推定精度をさらに高めることが可能となる。
【0077】
(4)学習用表記は、未知語の語彙、未知語の構造、未知語の由来、未知語の働き、未知語の類語、未知語の関連語、未知語の連想語、辞書登録された単語との類似性などに関わる多様な情報を含む。学習用表記の読みは、上述した情報の他に、未知語の音韻に関わる情報、未知語の拍数に関わる情報などの多様な情報を含む。学習用表記20Dの辞書アクセントは、適切なアクセントと、アクセント辞書13Aを用いた当てはめによるアクセントとの関連性を定め得る情報である。上記(A1)~(C1)を入力値として上記(D1)を理想値とした機械学習モデルによる学習は、これら各種の情報を未知語とそのアクセントとの関連性に反映させ得るため、アクセントの推定精度を高めることが可能となる。
【0078】
(5)アクセント学習処理では、解析された学習用表記の読みと、解析された単語の品詞とが入力値に含まれる。すなわち、読み学習処理とアクセント学習処理とが共通する学習用表記を用いる一連の処理として学習されて、読み学習処理の学習結果がアクセント学習処理の結果に反映される。そのため、読み推定処理とアクセント推定処理とを一連の処理として行う形態において、アクセントの推定精度をさらに高めることが可能となる。
【0079】
なお、上記実施形態は、以下のように変更して実施できる。
・アクセント推定装置10は、読み推定処理に用いる辞書をアクセント辞書13Aとすることも可能である。なお、上述したように、読み推定処理に用いる辞書を読み方辞書13Rとする構成であれば、推定用表記20Dの読みの精度を高めることが可能である。一方、読み推定処理に用いる辞書をアクセント辞書13Aとする構成であれば、アクセント推定装置が備える辞書数を少なくして装置構成の簡素化を図ることが可能ともなる。
【0080】
・アクセント推定装置10は、推定用表記20Dと共に、推定用表記20Dの適切な読みを、利用者端末20から取得することも可能である。この際、アクセント推定装置10は、読み推定モジュール14の機能を割愛された構成であってもよい。利用者が入力した適切な読みをアクセントの推定に用いる構成であれば、アクセントの推定精度をさらに高めることが可能ともなる。
【0081】
・アクセント学習装置30は、アクセント辞書13Aを用いて、学習用表記の読み学習処理を行うことも可能である。すなわち、アクセント学習装置30は、学習用表記の解析を、アクセント辞書13Aを用いて行うことも可能である。
【0082】
・アクセント学習装置30は、学習用表記の適切な読みである(B1)学習用表記の読み、また、学習用表記の適切な品詞である(C1)学習用表記の品詞を、アクセント学習処理の入力値に用いることも可能である。
【0083】
・アクセント学習装置30は、利用者が入力した適切な学習用表記の読みを、アクセント学習処理の入力値に用いることも可能である。
・アクセント推定装置10は、アクセントの推定に際して、上記(A)(B)(D)を機械学習モデルの入力値として、上記(C)を機械学習モデルの入力値から割愛してもよい。アクセント学習装置30は、アクセントの学習に際して、上記(A1)(B1)(D1)を機械学習モデルの入力値として、上記(C1)を機械学習モデルの入力値から割愛してもよい。
【0084】
・アクセント推定装置10は、アクセント辞書13Aを更新する辞書更新部をさらに備えてもよい。辞書更新部は、推定用表記20D、推定用表記20Dの読み、推定用表記20Dを構成する単語の品詞、および、これらを入力に含めて推定されたアクセントを、互いに関連付けてアクセント辞書13Aに登録する。
【0085】
・アクセント推定装置10は、アクセント推定装置10に推定用表記20Dを入力するための入力部を別途備えてもよい。この際、アクセント推定装置10は、推定用表記20Dのアクセントを用いて推定用表記20Dの読みを音声化する合成部をさらにそなえてもよい。
【0086】
・アクセント推定装置10が利用者端末20に提供する回答は、推定用表記20Dのアクセントを用いて推定用表記20Dの読みを利用者端末20で音声化するためのデータであってもよい。
【符号の説明】
【0087】
10…アクセント推定装置
13A…アクセント辞書
13R…読み方辞書
20D…推定用表記
20R…学習用入力値
20Ps…辞書アクセント
30…アクセント学習装置
図1
図2
図3
図4
図5
図6