以下、本実施形態における情報処理装置について説明する。
<実施の形態1>
図1に、本実施形態における情報処理装置100のハード構成図を示す。情報処理装置100は、受信文・返信文データベース101、メール分割部102、検索部103、返信文候補抽出部104、返信文候補文体変換部201、文体変換ルールテーブル206、返信文候補表示部105、返信文選択編集部202、差分解析部203、文体変換ルール生成部204、文体変換ルール候補格納部205及び返信文結合部107を有する。
受信文・返信文データベース101は、受信文と当該受信文に対する1つ以上の返信文の組が多数格納されたデータベースである。
メール分割部102は、受信メールが入力されると、句読点や絵文字、顔文字などを手がかりとして、文程度の長さの部分文字列に分割する。
検索部103は、分割された部分文字列に対して類似する受信文を受信文・返信文データベース101から検索する。
返信文候補抽出部104は、受信文・返信文データベース101から検索された受信文に対して、それぞれに対する返信文候補を抽出する。
返信文候補文体変換部201は、文体変換ルールテーブル206に登録された文体変換ルールに従って、データベースから抽出した各返信文候補を変換する。
返信文候補表示部105は変換された返信文候補をユーザに提示し、複数の返信文候補がある場合にはその中から1文の選択をユーザに促す。
返信文選択編集部202は、ユーザによる返信文の選択を受け付けるとともに、選択した文章に対するユーザのテキストの編集を受け付ける。
差分解析部203は、ユーザが選択した文章を編集した際に、編集前後のテキストの差分を抽出する。
文体変換ルール生成部204は、文体変換ルール候補を生成する。文体変換ルール生成部204は、生成した文体変換ルール候補を文体変換ルール候補格納部205に格納し、過去の文体変換ルール候補と照合する。そして、文体変換ルール生成部204は、同様のルールが予め定めた回数以上生成した場合、つまり、同様の修正が予め定めた回数以上行われたら、当該文体変換ルール候補を文体変換ルールとし、文体変換ルールテーブル206に格納する。文体変換ルールテーブル206に格納されたルールは、以降の返信文候補の文体変換に適用される。文体変換ルール生成部204は、同様のルールが生成された回数が、予め定めた回数に満たない場合には、文体変換ルール候補として文体変換ルール候補格納部205に反映する。
返信文結合部107は、ユーザによって選択および編集された返信文を連結して返信メールを作成する。
図2乃至図4は、本実施形態において、返信文候補の修正結果から差分を抽出して文体変換ルール候補を生成し、さらに、複数の文体変換ルール候補から文体変換ルールを導出する処理を説明した図である。
図2において、返信文候補抽出部104が、受信文・返信文データベース101から抽出した返信文候補の1つがテキスト1の「元気だよ。」であり、ユーザがテキスト1を選択した後、「元気だよーん!」に編集したとする。ここで、差分解析部203は、編集前後のテキストを比較することにより、差分は「。」が「ーん!」に置換されたということを取得する。また、差分解析部203は、編集前のテキストを形態素解析すると、「元気」は形容動詞語幹であり、「だ」は形容動詞終止形であり、「よ」は終助詞であり、「。」は句点であることを取得する。差分解析部203は、形態素解析結果に基づいて、文体変換ルール候補10を生成する。
文体変換ルール候補10は、条件情報20及び編集内容情報30を有する。条件情報20は先行単語情報21、当該単語情報22及び後続単語情報23を有する。編集内容情報30は、置換/挿入/削除情報31、置換前文字列情報32及び置換後文字列情報33を有する。本実施形態において、差分解析部203は、先行単語情報21が終助詞「よ」、当該単語情報22が句点「。」、後続単語情報23がない時、当該単語情報22の「。」を置換後文字列情報33の「ーん!」に置換するという文体変換ルール候補10を生成し、置換/挿入/削除情報31に「置換」、置換前文字列情報32に「。」、置換後文字列情報33に「ーん!」を格納する。
図3において、返信文候補抽出部104が、受信文・返信文データベース101から抽出した返信文候補のテキスト2の「明日行くよ。」を、ユーザが「明日行くよーん!」に編集した時も、文体変換ルール生成部204は、同じ文体変換ルール候補10を取得する。このように、返信文の選択と編集が何回か繰り返えされた後、同様の編集、つまり、「。」を置換後文字列情報33の「ーん!」に置換するという編集が予め定めた回数以上発生したら、文体変換ルール生成部204は、共通する条件と対応付けて文体変換ルール40として採用し、文体変換ルールテーブル206に格納する。
図4に、図2及び図3において説明した処理から得られた文体変換ルール40を示す。文体変換ルール40は、条件情報50及び編集内容情報60を有する。条件情報50は先行単語情報51、当該単語情報52及び後続単語情報53を有する。編集内容情報60は、置換/挿入/削除情報61、置換前文字列情報62及び置換後文字列情報63を有する。本実施形態では、文体変換ルール生成部204は、先行単語情報51が終助詞「よ」、当該単語情報52が句点「。」、後続単語情報53がない時、当該単語の「。」を置換後文字列情報63の「ーん!」に置換するという文体変換ルールが確定する。
図5乃至図7を用いて、他の文体変換ルール40を導出する処理について説明する。図5に示したように、図2及び図3の処理例では編集内容が置換であったが、本処理では編集内容が削除であるため、編集内容情報30は、置換/挿入/削除情報31、及び、削除文字列情報34を有している。テキスト1の「やっぱりいいよ」を「やっぱいいよ」に変更したユーザの編集から、先行単語情報21は無く、当該単語情報22が副詞「やっぱり」、後続単語情報23が形容動詞語幹「い」の時に、当該単語情報22の「やっぱり」の「り」を削除するという文体変換ルール候補10が得られる。
また、図6に示したように、テキスト2の「明日やっぱり止めた」を「明日やっぱ止めた」という編集からは、先行単語情報21が普通名詞「明日」、当該単語情報22が副詞「やっぱり」、後続単語情報23がマ行下一段動詞語幹「止」の時に、当該単語21の「やっぱり」の「り」を削除するという文体変換ルール候補10が得られる。返信文の選択と編集を何回か繰り返した後、「やっぱり」の「り」を削除するという編集が予め定めた回数以上行われたら、その共通条件とともに、その編集内容を文体変換ルール40として確定する。
図7に、図5及び図6において説明した処理から得られた文体変換ルール40を示す。図7に示した文体変換ルール40からは、先行単語情報51及び後続単語情報53に関係なく、当該単語情報52の副詞「やっぱり」から、削除文字列情報64に記載された「り」を削除するというルールが得られる。このように、副詞などの自立語において単語中の一部を削除するという編集は、先行単語情報51及び後続単語情報53に関係無くルール化できるのが一般的である。
図8乃至図10を用いて、他の文体変換ルール40を導出する処理について説明する。本処理では編集内容が挿入であるため、編集内容情報30は、置換/挿入/削除情報31、及び、挿入文字列情報35を有している。図8に示したように、テキスト1の「飲み会楽しみだね」に対して、「飲み会」の後に特定の絵文字を挿入する編集から、先行単語情報21が普通名詞「飲み会」、当該単語情報22は指定無し、後続単語情報23が普通名詞「楽しみ」の時に、当該単語情報22の位置に挿入文字列情報35として絵文字を挿入するという文体変換ルール候補10が得られる。このように編集前テキストの単語と単語の間に文字列を挿入する場合には、当該単語情報22は便宜上指定無しとして扱う。
図9に示したように、テキスト2の「飲み会しようよ」に対して、「飲み会」の後に特定の絵文字を挿入する編集から、先行単語情報21が普通名詞「飲み会」、当該単語情報22は指定無し、後続単語情報23がサ変動詞未然形「し」の時に、当該単語情報22の位置に挿入文字列情報35として絵文字を挿入するという文体変換ルール候補10が得られる。返信文の選択と編集を何回か繰り返した後、同絵文字を挿入する編集が予め定めた回数以上行われたら、その共通条件とともに、その編集内容を文体変換ルール40として確定する。
図10に、図8及び図9において説明した処理から得られた文体変換ルール40を示す。図10に示した文体変換ルール40からは、先行単語情報51「飲み会」の直後に挿入文字列情報65として同絵文字を挿入するというルールが得られる。このように単語間に文字列を挿入するルールは、それが先行単語情報51に依存するものか、後続単語情報53に依存するものなのかを判断するために、複数の編集の事例から共通条件を抽出する必要がある。
図11乃至図13を用いて、図2乃至図10を用いて説明した文体変換ルール40を適用して、返信文候補の文体を変換する処理について説明する。
図11に示すように、受信文・返信文データベース101には、例えば、「今日ひま?」という受信文70に対して、「暇だよ。」、「ごめん、ちょっと忙しいんだ。」及び「何もしてないよ。」という返信文80が格納されているとする。同様に、受信文「明日飲みに行こうよ〜」に対する返信文「飲み会いいよ!」、「OK!楽しみにしてるね!」及び「ごめん、やっぱり無理そう。」が、受信文「返事待ってまーす!」に対する返信文「よろしくね。」、「お待たせ。」及び「そういうわけなの。」が格納されているとする。
「明日ひま?飲みに行かない?連絡待ってるね。」という受信メールを受け取った時、まず、メール分割部102は、句読点や絵文字、顔文字などを手がかりとしてメール文の分割を行う。本実施形態において、メール分割部102は、メール文を「明日ひま?」、「飲みに行かない?」及び「連絡待ってるね。」に分割する。
検索部103は、メール分割部102によって分割された部分文字列のそれぞれに類似した受信文を受信文・返信文データベース101から検索する。類似文の検索アルゴリズムとしては、例えば、文字の一致数を用いて類似文を検索するものがあるが、これに限定されるわけではない。本実施形態においては、検索部103は、受信メール中の受信文「明日ひま?」に対して受信文・返信文データベース101の受信文「今日ひま?」を検索している。同様に、検索部103は、「飲みに行かない?」に対しては「明日飲みに行こうよ〜」を、「連絡待ってるね。」に対しては「返事待ってまーす!」を類似文として検索したとする。
返信文候補抽出部104は、検索部103によって検索された受信文に対する返信文を抽出する。つまり、返信文候補抽出部104は、「今日ひま?」に対応付けられている「暇だよ。」、「ごめん、ちょっと忙しいんだ。」及び「何もしてないよ。」といった返信文を、受信メール文の「明日ひま?」に対する返信文候補として抽出する。同様に、返信文候補抽出部104は、受信文「飲みにいかない?」に対する返信文候補として「飲み会いいよ!」、「OK!楽しみにしてるね!」及び「ごめん、やっぱり無理そう。」を、受信文「連絡待ってるね。」に対する返信文候補として「よろしくね。」、「お待たせ。」及び「そういうわけなの。」を抽出する。
図12に、本実施形態における文体変換ルールテーブル206を示す。文体変換ルールテーブル206には、図2乃至図10において説明した3種類の文体変換ルール40が格納されている。格納されているルールは、それぞれ、先行単語情報51が終助詞「よ」、当該単語情報52が句点「。」、後続単語情報53が無い時、当該単語情報52の「。」を「ーん!」に置換するルール、先行単語情報51及び後続単語情報53に関係無く、副詞「やっぱり」の「り」を削除文字列情報64として削除するルール、先行単語情報51「飲み会」の直後に挿入文字列情報65として絵文字を挿入するルールである。
図13に示すように、返信文候補文体変換部201は、図12に示した文体変換ルールテーブル206を参照して、返信文候補の文体変換を行う。例えば、「暇だよ。」という返信文候補は、先行単語情報51が終助詞「よ」、当該単語情報52が句点「。」、後続単語情報53が無いので、返信文候補文体変換部201は、文体変換ルールテーブル206を参照して、「暇だよーん!」に変換する。同様に、返信文候補文体変換部201は、「何もしてないよ。」を「何もしてないよーん!」に変換する。「飲み会いいよ!」という返信文候補は、先行単語が「飲み会」なので、返信文候補文体変換部201は、文体変換ルールテーブル206を参照して、「飲み会」の後に絵文字を挿入して「飲み会☆いいよ!」に変換する。また、「返信文候補文体変換部201は、文体変換ルールテーブル206を参照して、「ごめん、やっぱり無理そう。」という返信文候補は、前後の単語に関係無く、副詞「やっぱり」の「り」を削除するルールが適用され「ごめん、やっぱ無理そう。」に変換する。他の返信文候補については、当てはまる文体変換ルールが存在しないため、返信文候補文体変換部201は、受信文・返信文データベース101のテキストを返信文候補としてそのまま採用する。
返信文候補表示部105は、受信文・返信文データベース101から抽出され、さらに文体変換ルールが適用された返信文候補をユーザに提示し、ユーザに返信文候補の選択を促す。
返信文選択編集部202は、ユーザによる返信文の選択を受け付けるとともに、選択した文章に対するユーザのテキストの編集を受け付ける。ここでは、ユーザによって、「暇だよーん!」、「飲み会☆いいよ!」及び「よろしくね。」が選択されたとする。ここで、選択した返信文に対して編集がされた際には、差分解析部203及び文体変換ルール生成部204は、文体変換ルール候補の抽出、文体変換ルールの導出及び文体変換ルールの登録が行われる。
返信文結合部107は、ユーザにより選択及び編集された返信文を結合して、「暇だよーん!飲み会☆いいよ!よろしくね。」という返信メールを作成する。ここで、ユーザによる文章の追加、削除、修正などの編集を受け付ける機能を提供しても良い。
図14乃至図16を用いて、他の文体変換ルールを生成する処理を説明する。上述した処理では、文体変換ルールを適用する条件として、先行単語情報51、当該単語情報52、後続単語情報53の表記と品詞を用いることについて説明した。上述したように、自立語の文字内部での置換/挿入/削除は、先行単語情報51及び後続単語情報53に依存せずに実施することができるが、助詞、助動詞のような付属語は前後の単語によって変換できる場合とできない場合がある。
図14に示したように、テキスト1の「それ凄いね。」が「それ凄いじゃん。」に変換されていることから、返信文候補文体変換部201は、先行単語情報21が形容詞終止形「い」の時に、終助詞「ね」を置換後文字列情報33の「じゃん」で変換する文体変換ルール候補を導出できる。
図15に示したように、テキスト2の「すごく早いね。」が「すごく早いじゃん。」に変換されていることから、返信文候補文体変換部201は、先行単語情報21が形容詞終止形「い」の時に、終助詞「ね」を置換後文字列情報33の「じゃん」で変換する文体変換ルール候補を導出できる。
図16に、図14及び図15を用いて説明した処理から生成された文体変換ルール40を示す。先行単語情報21が形容詞終止形「い」の時に、終助詞「ね」を置換後文字列情報63の「じゃん」で変換するルールを導出できる。この時、後続単語情報53には影響されない。
図17及び図18を用いて、他の文体変換ルールを生成する処理を説明する。上述した処理では、文体変換ルールを適用する条件として、先行単語、当該単語、後続単語の表記と品詞を用いる例を説明したが、文体変換ルールを適用する条件の設定方法はこれに限定されない。本実施形態に示すように、文末に何か絵文字を挿入する編集の場合には、直前の単語には依存せず、文章を構成する単語のいずれかを条件とすることがある。
図17の例では、テキスト1の「今度テニス行きます」の末尾に特定の絵文字が挿入される編集の場合には、その形態素解析結果から、自立語である「関連単語1」24の副詞「今度」、「関連単語2」25の普通名詞「テニス」、「関連単語3」26のカ行五段動詞語幹「行」を例えば抽出することができる。抽出した3単語を条件として当該絵文字を挿入文字列情報35として文末挿入する変換を、文体変換ルール候補として生成する。
図18の例では、テキスト2の「来週のテニスの予定」に関しても末尾に特定の絵文字が挿入される編集がされた場合に、その形態素解析結果から、自立語である「関連単語1」24の普通名詞「来週」、「関連単語2」25の普通名詞「テニス」、「関連単語3」26の普通名詞「予定」が抽出でき、これらの3単語を条件として当該絵文字を挿入文字列情報35として文末挿入する変換を、文体変換ルール候補として生成することができる。返信文の選択と編集を何回か繰り返した後に、文末に当該絵文字を挿入する変換が予め定めた回数以上発生したら、それらの共通の条件とともに文体変換ルール40として登録する。
図19に、図17及び図18を用いて説明した処理から生成した文体変換ルール40を示す。文中に関連語57である普通名詞「テニス」が出現する文に対して、当該絵文字を挿入文字列情報65として文末挿入するという文体変換ルール40が導出される。
図20乃至図22を用いて、図14乃至図19を用いて説明した文体変換ルール40を適用して、返信文候補の文体を変換する処理について説明する。
図20を用いて本実施形態における文体変換ルールの適用処理について説明する。図20に示すように、受信文・返信文データベース101には、例えば、「おはよう」という受信文70に対して、「おはよう」、「おはよ〜」及び「おはよっ」という返信文80が格納されているとする。同様に、受信文「日曜日にテニスしようよ」に対する返信文「テニスOK!楽しみ!」、「それいいね。行きます。」及び「ごめん、ちょっと無理そうだね。」が格納されているとする。
「おはよう!今度の日曜日テニスしない?」という受信メールを受け取った時、まず、メール分割部102は、句読点や絵文字、顔文字などを手がかりとしてメール文の分割を行う。本実施形態において、メール分割部102は、メール文を「おはよう!」及び「今度の日曜日テニスしない?」に分割する。
検索部103は、メール分割部102によって分割された部分文字列のそれぞれに類似した受信文を受信文・返信文データベース101から検索する。本実施形態においては、検索部103は、受信メール中の受信文「おはよう!」に対して受信文・返信文データベース101の受信文「おはよう」を検索している。同様に、検索部103は、「今度の日曜日テニスしない?」に対しては「日曜日にテニスしようよ」を類似文として検索したとする。
返信文候補抽出部104は、検索部103によって検索された受信文に対する返信文を抽出する。つまり、返信文候補抽出部104は、「おはよう」に対応付けられている「おはよう」、「おはよ〜」及び「おはよっ」といった返信文を、受信メール文の「おはよう!」に対する返信文候補として抽出する。同様に、返信文候補抽出部104は、受信文「日曜日にテニスしようよ」に対する返信文候補として「テニスOK!楽しみ!」、「それいいね。行きます。」及び「ごめん、ちょっと無理そうだね。」を、受信文「日曜日にテニスしようよ」に対する返信文候補として抽出する。
図21に、本実施形態における文体変換ルールテーブル206を示す。文体変換ルールテーブル206は、図14乃至図19において説明した2種類の文体変換ルール40が格納されている。格納されているルールは、それぞれ、先行単語情報51が形容詞「い」、当該単語情報52が終助詞「ね」であり、後続単語情報53に無関係に、当該単語情報52の「ね」を置換後文字列情報63の「じゃん」で置換するルール、関連単語情報57が普通名詞「テニス」である場合、挿入文字列情報65として絵文字を挿入するルールである。
図22において、この文体変換ルールを用いて、受信文・返信文データベース101から抽出された「それいいね。行きます。」という返信文候補を「それいいじゃん。行きます。」に変換することができる。一方、返信文候補の中には「ごめん、ちょっと無理そうだね。」という文があり、この文中にも終助詞「ね」が存在する。これを「じゃん」に置換してしまうと、「ごめん、ちょっと無理そうだじゃん。」になり、日本語として不自然になってしまうが、先行単語情報51が形容詞「い」という条件があるため本ルールは適用されず、結果としてこのような不自然な変換を回避することができる。このように、付属語の文字内部での置換/挿入/削除に関する文体変換ルールにおいては、前後の単語を考慮した条件を付けたルールを導出する必要がある。また、受信文・返信文データベース101から抽出された「テニスOK!楽しみ!」という返信文候補において「テニスOK!」という文の末尾に、当該絵文字が挿入され、「テニスOK!♪楽しみ!」というように変換される。
ここでユーザが、提示された返信文候補から、「おはよ〜」と「テニスOK!♪楽しみ!」を選択したとすると、返信文結合部107は、ユーザにより選択された返信文を結合して、「おはよ〜テニスOK!♪楽しみ!」という返信メールを作成する。さらにここで、ユーザによる文章の追加、削除、修正などの編集を受け付ける機能を提供しても良い。
図23及び図24に本実形態における処理のフローを示す。
ステップS101において、メール分割部102は、受信メールが入力されると、句読点や絵文字、顔文字などを手がかりとして、受信メールを文程度の長さの部分文字列に分割する。この時分割された部分文字列数をNとする。図11において説明した処理では、メール分割部102は、受信メールを3つの部分文字列数に分割する。この場合、Nは「3」となる。処理はステップS102へ移行する。
ステップS102において、メール分割部102は、カウンタ値I=0とし、返信メールを一時的に格納するバッファを初期化する。処理はステップS103へ移行する。
ステップS103において、メール分割部102は、部分文字列数Nがカウンタ値Iよりも大きいか否かを判定する。図11において説明した処理では、部分文字列数Nは「3」なので、初回時には、「3」と「0」とが比較される。部分文字列数Nがカウンタ値Iよりも大きい場合、処理はステップS104へ移行する。一方、部分文字列数Nがカウンタ値Iよりも大きくない場合、処理はステップS113へ移行する。
ステップS104において、検索部103は、受信文・返信文データベース101から部分文字列と類似する受信文を検索する。図11において説明した処理では、検索部103は、まず「明日ひま?」に対して「今日ひま?」を検索する。処理はステップS105へ移行する。
ステップS105において、返信文候補抽出部104は、検索された受信文に対応付けられた返信文候補を抽出する。図11において説明した処理では、返信文候補抽出部104は、まず「今日ひま?」に対応付けられた「暇だよ。」、「ごめんちょっと忙しいんだ。」及び「何もしてないよ。」を抽出する。処理はステップS106へ移行する。
ステップS106において、返信文候補文体変換部201は、文体変換ルールテーブル206に登録された文体変換ルールの中で、返信文候補に適用できるものがあれば適用して、データベースから抽出した返信文候補を変換する。図13において説明した処理では、返信文候補文体変換部201は、「暇だよ。」を「暇だよーん!」に、「何もしてないよ。」を「「何もしてないよーん!」に変換する。処理はステップS107へ移行する。
ステップS107において、返信文候補表示部105は変換された返信文候補をユーザに提示し、複数の返信文候補がある場合にはその中から1文の選択をユーザに促す。図11において説明した処理では、返信文候補表示部105は、「明日ひま?」に対して、「暇だよーん!」、「ごめん、ちょっと忙しいんだ。」及び「何もしてないよーん!」をユーザに提示する。処理はステップS108へ移行する。
ステップS108において、返信文選択編集部202は、ユーザが返信文候補の中から選択した1文を受け付ける。図13において説明した処理では、返信文選択編集部202は、「暇だよーん!」を受け付ける。処理はステップS109へ移行する。
ステップS109において、返信文選択編集部202は、選択した文章に対してユーザが行った編集を適用する。処理はステップS110へ移行する。
ステップS110において、返信文選択編集部202は、作成した返信文を返信メールバッファに格納する。処理はステップS111へ移行する。
ここでステップS111における文体変換ルール登録処理について図24を用いて詳細に説明する。
ステップS1111において、差分解析部203は、登録選択した返信文候補にユーザが編集を施した否かを判定する。登録選択した返信文候補にユーザが編集を施した場合、処理はステップS1112へ移行する。一方、登録選択した返信文候補にユーザが編集を施していない場合、処理はステップS112へ移行する。
ステップS1112において、文体変換ルール生成部204は、差分解析部203が抽出した編集前後のテキストの差分に基づいて、文体変換ルール候補を生成する。例えば、図2において説明した処理では、差分解析部203は、先行単語情報21が終助詞「よ」、当該単語情報22が句点「。」、後続単語情報23がない時、当該単語情報22の「。」を置換後文字列情報33の「ーん!」に置換するという文体変換ルール候補10を生成し、置換/挿入/削除情報31に「置換」、置換前文字列情報32に「。」、置換後文字列情報33に「ーん!」を格納する。処理はステップS1113へ移行する。
ステップS1113において、文体変換ルール生成部204は、文体変換ルール候補格納部205を参照し、過去に同様の文体変換ルール候補が導出された回数を取得する。例えば、図3において説明した処理では、「。」を置換後文字列情報33の「ーん!」に置換するという図2において説明した処理と同様の編集が行われている。このように、図2及び図3において説明した処理と同様の編集が行われた回数を文体変換ルール生成部204は取得する。当該文体変換ルール候補が予め定めた回数以上導出された場合、処理はステップS1114へ移行する。一方、当該文体変換ルール候補が予め定めた回数以上導出されていない場合、処理はステップS1115へ移行する。
ステップS1114において、文体変換ルール生成部204は、当該文体変換ルール候補を文体変換ルールとして、文体変換ルールテーブル206に格納する。文体変換ルール生成部204は、例えば、図12において説明したような文体変換ルールを文体変換ルールテーブル206に格納する。処理はステップS112へ移行する。
ステップS1115において、文体変換ルール生成部204は、当該文体変換ルール候補がすでに文体変換ルール候補格納部205に登録されたものであれば、当該文体変換ルール候補の出現回数を1つ増やす。また、当該文体変換ルール候補がすでに文体変換ルール候補格納部205に登録されていない場合には、文体変換ルール生成部204は、同ルール候補を新規に登録して出現回数1とする。処理はステップS112へ移行する。
ステップS112において、メール分割部102は、Iをインクリメントし、「0」から「1」にする。処理はステップS103に戻り、次の部分文字列の処理に移る。本実施形態においては、Nは「3」であるため、ステップS101乃至ステップS112の処理は3回繰り返される。このようにして全ての部分文字列について処理が完了したら、処理はステップS113へ移行する。
続いて、ステップS103から始まる2回目のフローについて説明する。
ステップS103において、メール分割部102は、部分文字列数Nがカウンタ値Iよりも大きいか否かを判定する。図11において説明した処理では、部分文字列数Nは「3」なので、2回目のフローでは、「3」と「1」とが比較される。部分文字列数Nがカウンタ値Iよりも大きい場合、処理はステップS104へ移行する。一方、部分文字列数Nがカウンタ値Iよりも大きくない場合、処理はステップS113へ移行する。
ステップS104において、検索部103は、受信文・返信文データベース101から部分文字列と類似する受信文を検索する。図11において説明した処理では、検索部103は、「飲みに行かない?」に対して「明日飲みに行こうよ〜」を検索する。処理はステップS105へ移行する。
ステップS105において、返信文候補抽出部104は、検索された受信文に対応付けられた返信文候補を抽出する。図11において説明した処理では、返信文候補抽出部104は、「明日飲みに行こうよ〜」に対応付けられた「飲み会いいよ!」、「OK!楽しみにしてるね!」及び「ごめん、やっぱり無理そう。」を抽出する。処理はステップS106へ移行する。
ステップS106において、返信文候補文体変換部201は、文体変換ルールテーブル206に登録された文体変換ルールの中で、返信文候補に適用できるものがあれば適用して、データベースから抽出した返信文候補を変換する。図13において説明した処理では、返信文候補文体変換部201は、「飲み会いいよ!」を「飲み会☆いいよ!」に、「ごめん、やっぱり無理そう。」を「ごめん、やっぱ無理そう。」に変換する。処理はステップS107へ移行する。
ステップS107において、返信文候補表示部105は変換された返信文候補をユーザに提示し、複数の返信文候補がある場合にはその中から1文の選択をユーザに促す。図12において説明した処理では、返信文候補表示部105は、「飲みに行かない?」に対して、「飲み会☆いいよ!」、「OK!楽しみにしてるね!」及び「ごめん、やっぱ無理そう。」をユーザに提示する。処理はステップS108へ移行する。
ステップS108において、返信文選択編集部202は、ユーザが返信文候補の中から選択した1文を受け付ける。図12において説明した処理では、返信文選択編集部202は、「飲み会☆いいよ!」を受け付ける。処理はステップS109へ移行する。
ステップS109において、返信文選択編集部202は、選択した文章に対してユーザが行った編集を適用する。処理はステップS110へ移行する。
ステップS110において、返信文選択編集部202は、作成した返信文を返信メールバッファに格納する。処理はステップS111へ移行する。
ステップS111において、文体変換ルール登録処理が行われる。処理はステップS112へ移行する。
ステップS112において、メール分割部102は、Iをインクリメントし、「1」から「2」にする。処理はステップS103に戻り、次の部分文字列の処理に移る。
続いて、ステップS103から始まる3回目のフローについて説明する。
ステップS103において、メール分割部102は、部分文字列数Nがカウンタ値Iよりも大きいか否かを判定する。図11において説明した処理では、部分文字列数Nは「3」なので、3回目のフローでは、「3」と「2」とが比較される。部分文字列数Nがカウンタ値Iよりも大きい場合、処理はステップS104へ移行する。一方、部分文字列数Nがカウンタ値Iよりも大きくない場合、処理はステップS113へ移行する。
ステップS104において、検索部103は、受信文・返信文データベース101から部分文字列と類似する受信文を検索する。図11において説明した処理では、検索部103は、「連絡待ってるね。」に対して「返事待ってまーす!」を検索する。処理はステップS105へ移行する。
ステップS105において、返信文候補抽出部104は、検索された受信文に対応付けられた返信文候補を抽出する。図11において説明した処理では、返信文候補抽出部104は、「返事待ってまーす!」に対応付けられた「よろしくね。」、「お待たせ。」及び「そういうわけなの。」を抽出する。処理はステップS106へ移行する。
ステップS106において、返信文候補文体変換部201は、文体変換ルールテーブル206に登録された文体変換ルールの中で、返信文候補に適用できるものがあれば適用して、データベースから抽出した返信文候補を変換する。図11において説明した処理では、返信文候補文体変換部201は、「返事待ってまーす!」に対応する返信文に対して適用できる文体変換ルールが存在しないため、返信文候補文体変換部201は、変換処理を行わない。処理はステップS107へ移行する。
ステップS107において、返信文候補表示部105は変換された返信文候補をユーザに提示し、複数の返信文候補がある場合にはその中から1文の選択をユーザに促す。図13において説明した処理では、返信文候補表示部105は、「連絡待ってるね。」に対して、「よろしくね。」、「お待たせ。」及び「そういうわけなの。」をユーザに提示する。処理はステップS108へ移行する。
ステップS108において、返信文選択編集部202は、ユーザが返信文候補の中から選択した1文を受け付ける。図13において説明した処理では、返信文選択編集部202は、「よろしくね。」を受け付ける。処理はステップS109へ移行する。
ステップS109において、返信文選択編集部202は、選択した文章に対してユーザが行った編集を適用する。処理はステップS110へ移行する。
ステップS110において、返信文選択編集部202は、作成した返信文を返信メールバッファに格納する。処理はステップS111へ移行する。
ステップS111において文体変換ルール登録処理が行われる。処理は、ステップS112へ移行する。
ステップS112において、メール分割部102は、Iをインクリメントし、「2」から「3」とする。処理はステップS103に戻る。
ステップS103において、メール分割部102は、部分文字列数Nがカウンタ値Iよりも大きいか否かを判定する。図11において説明した処理では、部分文字列数Nは「3」なので、3回目のフローでは、「3」と「3」とが比較される。部分文字列数Nがカウンタ値Iよりも大きい場合、処理はステップS104へ移行する。一方、部分文字列数Nがカウンタ値Iよりも大きくない場合、処理はステップS113へ移行する。
ステップS113において、返信文結合部107は、返信メールバッファに格納された文字列を返信メールとして出力する。図13において説明した処理では、返信文結合部107は、返信文メールとして、「暇だよーん!飲み会☆いいよ!よろしくね。」を出力する。処理は終了する。
以上、本実施形態によれば、受信メールの内容に応じた返信文候補を自動的に提示してくれる機能を持ったメール装置において、過去に行った文体の編集と同様の編集が施された状態で返信文候補が用意されるようになり、ユーザが再度返信文を編集する手間を省くことができる。また継続して本機能を使用することによって、本装置がユーザのスタイルや文体を学習するように見せることができ、ユーザの装置への愛着を増す効果を奏することができる。
<実施の形態2>
ユーザがメールを作成する際には、送信相手に応じて文体が異なるのが一般的である。そこで、文体変換ルールを返信先と対応付けて管理し、送信相手に応じた文体変換ルールを使用して返信文候補を変換することで、より使い勝手の良い機能を提供することができる。また、文体変換ルールの導出や登録においても、導出した返信文を返信する相手に関連付けて文体変換ルールを登録する処理を用意する。
図25に本実施形態における情報処理装置100のハード構成図を示す。実施の形態1で説明した情報処理装置100が有する構成要素については図中に同番号で記し、ここでは説明を省略する。本実施形態における情報処理装置100は、新たに、発信者情報獲得部401及び返信先情報管理部402を有する。
本実施形態で特徴とするのは、発信者情報獲得部401において受信メールから発信者情報を獲得し、これを返信先情報として返信先情報管理部402で管理することである。発信者情報は発信者のメールアドレスや、メールソフト上でメール相手を管理するための名称等で良い。返信先情報管理部402は、返信文候補文体変換部201において返信文候補を変換する際に、現在作成しているメールの返信相手に該当する文体変換ルールを使用して返信文候補を変換する。また、返信先情報管理部402は、文体変換ルール生成部204において、生成された文体変換ルール候補を返信先と対応付けて文体変換ルール候補格納部205に格納する。さらに、返信先情報管理部402は、生成された文体変換ルール候補を文体変換ルールテーブルに登録する際にも返信先と対応付けて格納する。
図26に、本実施形態における受信文・返信文テーブル101を示す。例えば、「今日ひま?」という受信文70に対して、「暇だよ。」、「ごめん、ちょっと忙しいんだ。」及び「何もしてないよ。」という返信文80が格納されている。同様に、受信文「明日飲みに行こうよ〜」に対する返信文「飲み会いいよ!」、「OK!楽しみにしてるね!」及び「ごめん、やっぱり無理そう。」が、受信文「返事待ってまーす!」に対する返信文「よろしくね。」、「お待たせ。」及び「そういうわけなの。」が格納されている。
図27に本実施形態における文体変換ルールテーブル206を示す。文体変換ルールテーブル206には、これまでに説明したルール適用条件と編集内容と併せて、項番情報58及び返信先情報66が格納されている。本実施形態では、項番1〜3の文体変換ルールは返信先Aに対するルール、項番4〜6の文体変換ルールは返信先Bに対するルールである。つまり、返信先Aについてのルールは、先行単語情報51が終助詞「よ」、当該単語情報52が句点「。」、後続単語情報53が無い時、当該単語情報52の「。」を置換後文字列情報61の「ーん!」に置換する(項番1)、前後の単語に関係無く、副詞「やっぱり」の「り」を削除文字列情報64として削除する(項番2)、先行単語「飲み会」の直後に挿入文字列情報65として絵文字を挿入する(項番3)というルールが用意されている。また、返信先Bについてのルールは、前後の単語に関係無く、助動詞「だ」を置換後文字列情報61の「です」で置換する(項番4)、前後の単語に関係無く、感動詞「ごめん」に挿入文字列情報65の「なさい」を挿入する(項番5)、先行単語情報51が形容動詞終止形「い」、後続単語情報53が終助詞「よ」の時、挿入文字列情報65の「です」を挿入する(項番6)というルールが用意されている。
図28を用いて、返信先Aに対する返信文候補の文体変換について説明する。返信先がAの場合、「暇だよ。」という返信文候補には、先行単語情報51が終助詞「よ」、当該単語情報52が句点「。」、後続単語情報53が無い時、当該単語情報52の「。」を「ーん!」に置換するという条件が当てはまるので、「暇だよーん!」というテキストに変換される。同様に「何もしてないよ。」は「何もしてないよーん!」に変換される。「飲み会いいよ!」は、先行単語「飲み会」の直後に絵文字を挿入するというルールが適用され「飲み会」の後に挿入文字列情報65として、絵文字が挿入され「飲み会☆いいよ!」となる。「ごめん、やっぱり無理そう。」は、前後の単語に関係無く、副詞「やっぱり」の「り」を削除するというルールが適用され「ごめん、やっぱ無理そう。」に変換される。
図29を用いて、返信先Bに対する返信文候補の文体変換について説明する。返信先がBの場合には、返信文候補「暇だよ。」「ちょっと忙しいんだ。」に対して、前後の単語に関係無く、助動詞「だ」を「です」に置換するというルールが適用され、「暇ですよ。」「ちょっと忙しいんです。」に変換される。また「ごめん、」に対しては、前後の単語に関係無く、感動詞「ごめん」に「なさい」を挿入するというルールが適用され「ごめんなさい、」に変換される。「飲み会いいよ!」及び「何もしてないよ。」に対しては、先行単語が形容動詞終止形「い」、後続単語が終助詞「よ」の時「です」を挿入するというルールが適用され「飲み会いいですよ!」及び「何もしてないですよ。」に変換される。本図中には返信先Bに対する全てのルールを記載していないが、同様に返信先Bに対する文体変換ルールを適用することにより、次のような変換が行われる。すなわち、「楽しみにしてるね!」は「楽しみにしてますね!」に、「やっぱり無理そう。」は「やっぱり無理そうです。」に、「よろしくね。」は「よろしくお願いします。」に、「お待たせ」は「お待たせしました。」に、「そういうわけなの。」は「そういうわけです。」に変換される。このようにして、返信相手に相応しい文体で返信メールを用意することができる。
図30及び図31に本実形態における処理のフローを示す。
ステップS201において、発信者情報獲得部401が受信メールから発信者情報を獲得して、返信先情報として返信先情報管理部402に入力する。処理はステップS202へ移行する。
ステップS202において、メール分割部102は、受信メールが入力されると、句読点や絵文字、顔文字などを手がかりとして、受信メールを文程度の長さの部分文字列に分割する。この時分割された部分文字列数をNとする。処理はステップS203へ移行する。
ステップS203において、メール分割部102は、カウンタ値I=0とし、返信メールを一時的に格納するバッファを初期化する。処理はステップS204へ移行する。
ステップS204において、メール分割部102は、部分文字列数Nがカウンタ値Iよりも大きいか否かを判定する。部分文字列数Nがカウンタ値Iよりも大きい場合、処理はステップS205へ移行する。一方、部分文字列数Nがカウンタ値Iよりも大きくない場合、処理はステップS214へ移行する。
ステップS205において、検索部103は、受信文・返信文データベース101から部分文字列と類似する受信文を検索する。処理はステップS206へ移行する。
ステップS206において、返信文候補抽出部104は、検索された受信文に対応付けられた返信文候補を抽出する。処理はステップS207へ移行する。
ステップS207において、返信文候補文体変換部201は、返信文候補の文体を変換する際に、返信先情報を確認し、現在作成しているメールの返信先に該当する文体変換ルールを使用して、データベースから抽出した返信文候補を変換する。処理はステップS208へ移行する。
ステップS208において、返信文候補表示部105は変換された返信文候補をユーザに提示し、複数の返信文候補がある場合にはその中から1文の選択をユーザに促す。処理はステップS209へ移行する。
ステップS209において、返信文選択編集部202は、ユーザが返信文候補の中から選択した1文を受け付ける。処理はステップS210へ移行する。
ステップS210において、返信文選択編集部202は、選択した文章に対してユーザが行った編集を適用する。処理はステップS211へ移行する。
ステップS211において、返信文選択編集部202は、作成した返信文を返信メールバッファに格納する。処理はステップS212へ移行する。
ここでステップS212における文体変換ルール登録処理について図31を用いて詳細に説明する。
ステップS2121において、差分解析部203は、登録選択した返信文候補にユーザが編集を施した否かを判定する。登録選択した返信文候補にユーザが編集を施した場合、処理はステップS2122へ移行する。一方、登録選択した返信文候補にユーザが編集を施していない場合、処理はステップS213へ移行する。
ステップS2122において、文体変換ルール生成部204は、差分解析部203が抽出した編集前後のテキストの差分に基づいて、文体変換ルール候補を生成する。処理はステップS2123へ移行する。
ステップS2123において、文体変換ルール生成部204は、文体変換ルール候補格納部205を参照し、同一の返信先に対して、過去に同様の文体変換ルール候補が導出された回数を取得する。当該文体変換ルール候補が予め定めた回数以上導出された場合、処理はステップS2124へ移行する。一方、当該文体変換ルール候補が予め定めた回数以上導出されていない場合、処理はステップS2125へ移行する。
ステップS2124において、文体変換ルール生成部204は、当該文体変換ルール候補を文体変換ルールとして、返信先と共に文体変換ルールテーブル206に格納する。処理はステップS213へ移行する。
ステップS2125において、文体変換ルール生成部204は、当該文体変換ルール候補が既に文体変換ルール候補格納部205に登録されたものであれば、返信先と対応付けて、その出現回数を1つ増やす。また、当該文体変換ルール候補が既に文体変換ルール候補格納部205に登録されていない場合には、文体変換ルール生成部204は、返信先と対応付けて、同ルール候補を新規に登録して出現回数を1とする。処理はステップS112へ移行する。
ステップS213において、メール分割部102は、Iをインクリメントする。処理はステップS204に戻り、次の部分文字列の処理に移る。このようにして全ての部分文字列について処理が完了したら、処理はステップS214へ移行する。
ステップS214において、返信文結合部107は、返信メールバッファに格納された文字列を返信メールとして出力する。処理は終了する。
<実施の形態3>
同一ユーザでも、メールの言い回しや絵文字の使い方は1種類だけではなく、同様な文章に対して時と場合によって文体は様々であるから、その出現頻度に応じてより頻繁に使う書き方で返信文候補を用意すれば、編集の手間を省くことができる。そこで、文体変換ルールにはそのルールを適用した回数を合せて保持しておき、適用回数の多いものを優先的に適用して返信文候補を変換する、あるいは、変換した返信文候補を適用回数の多い順にユーザに提示することで、本機能の使い勝手を改善することができる。
図32に本実施形態における情報処理装置100のハード構成図を示す。実施の形態1で説明した情報処理装置100が有する構成要素については図中に同番号で記し、ここでは説明を省略する。本実施形態における情報処理装置100は、新たに、ルール適用回数管理部601を有する。
ルール適用回数管理部601は、文体変換ルールテーブル206に格納された文体変換ルールの適用回数を管理する。返信文候補文体変換部201において返信文候補の文体を変換する際には、適用回数の多いルールから順に適用していく。また、ユーザが返信文候補から選択した返信文を採用またはそれに対して編集を加えた場合に、文体変換ルールテーブルに蓄積された当該文体変換ルールの適用回数を更新する。適用回数の更新方法については、後述する。
図33に、本実施形態における受信文・返信文テーブル101を示す。例えば、「今日ひま?」という受信文に対して、「暇だよ。」、「ごめん、ちょっと忙しいんだ。」及び「何もしてないよ。」という返信文が格納されている。同様に、受信文「明日飲みに行こうよ〜」に対する返信文「飲み会いいよ!」、「OK!楽しみにしてるね!」及び「ごめん、やっぱり無理そう。」が、受信文「返事待ってまーす!」に対する返信文「よろしくね。」、「お待たせ。」及び「そういうわけなの。」が格納されている。
図34に本実施形態における文体変換ルールテーブル206を示す。文体変換ルールテーブル206には、上述したルール適用条件と編集内容と併せて、これまでのルールの適用回数情報67が格納されている。例えば、先行単語が終助詞「よ」、当該単語が句点「。」、後続単語が無い時、当該単語の「。」を「ーん!」に置換する(項番1)というルールの適用回数は「10回」である。また、例えば、前後の単語に関係無く、副詞「やっぱり」の「り」を削除する(項番2)というルールの適用回数は「8回」である。また、例えば、先行単語「飲み会」の直後に絵文字を挿入する(項番3)というルールの適用回数は「6回」である。また、例えば、先行単語が終助詞「よ」、後続単語が句点「。」の時、文字列「ぉ〜」を挿入する(項番4)というルールの適用回数は、「12回」である。また、例えば、前後の単語に無関係に、当該単語が普通名詞「飲み会」の時に、これを「宴会」に置換する(項番5)というルールの適用回数は、「9回」である。
図35を用いて、本実施形態における返信文候補の文体変換について説明する。文体変換を行う際に、より適用回数の多いものから順に適用していく。例えば、返信文候補「暇だよ。」に関して、まず、先行単語が終助詞「よ」、後続単語が句点「。」の時、文字列「ぉ〜」を挿入する(項番4)というルールが適用され、「暇だよぉ〜。」という文に変換される。先行単語が終助詞「よ」、当該単語が句点「。」、後続単語が無い時、当該単語の「。」を「ーん!」に置換する(項番1)というルールの適用条件もこの返信文候補に当てはまるが、先行単語が終助詞「よ」、後続単語が句点「。」の時、文字列「ぉ〜」を挿入する(項番4)というルールが優先されるため適用されない。返信文候補「何もしてないよ。」も同様に、「何もしてないよぉ〜」に変換される。同様に、「飲み会いいよ!」という返信文候補に対しては、前後の単語に無関係に、当該単語が普通名詞「飲み会」の時に、これを「宴会」に置換する(項番5)というルールが適用され「宴会いいよ!」となる。先行単語「飲み会」の直後に絵文字を挿入する(項番3)というルールの適用条件もこの返信文候補に当てはまるが、適用回数により、前後の単語に無関係に、当該単語が普通名詞「飲み会」の時に、これを「宴会」に置換する(項番5)というルールが優先される。本例では優先ルールにより変換された返信文候補を提示しているが、各ルールにより変換された全ての返信文候補を用意して、ルールの適用回数の順に優先順位をつけてユーザに提示することも可能である。その場合、下位に提示された、あまり適用回数の多くないルールにより変換された返信文候補もユーザは選択することができる。
図36及び図37に本実施形態におけるフローを示す。
ステップS301において、メール分割部102は、受信メールが入力されると、句読点や絵文字、顔文字などを手がかりとして、受信メールを文程度の長さの部分文字列に分割する。この時分割された部分文字列数をNとする。処理はステップS302へ移行する。
ステップS302において、メール分割部102は、カウンタ値I=0とし、返信メールを一時的に格納するバッファを初期化する。処理はステップS303へ移行する。
ステップS303において、メール分割部102は、部分文字列数Nがカウンタ値Iよりも大きいか否かを判定する。部分文字列数Nがカウンタ値Iよりも大きい場合、処理はステップS304へ移行する。一方、部分文字列数Nがカウンタ値Iよりも大きくない場合、処理はステップS313へ移行する。
ステップS304において、検索部103は、受信文・返信文データベース101から部分文字列と類似する受信文を検索する。処理はステップS305へ移行する。
ステップS305において、返信文候補抽出部104は、検索された受信文に対応付けられた返信文候補を抽出する。処理はステップS306へ移行する。
ステップS306において、返信文候補文体変換部201は、文体変換ルールテーブル206に登録された文体変換ルールの中で、これまでの適用回数を参照して、適用回数の多いルールから順に適用して、データベースから抽出した返信文候補を変換する。処理はステップS307へ移行する。
ステップS307において、返信文候補表示部105は変換された返信文候補をユーザに提示し、複数の返信文候補がある場合にはその中から1文の選択をユーザに促す。処理はステップS308へ移行する。
ステップS308において、返信文選択編集部202は、ユーザが返信文候補の中から選択した1文を受け付ける。処理はステップS309へ移行する。
ステップS309において、返信文選択編集部202は、選択した文章に対してユーザが行った編集を適用する。処理はステップS310へ移行する。
ステップS310において、返信文選択編集部202は、作成した返信文を返信メールバッファに格納する。処理はステップS311へ移行する。
ここでステップS311における文体変換ルール登録処理について図37を用いて詳細に説明する。
ステップS3111において、差分解析部203は、登録選択した返信文候補にユーザが編集を施した否かを判定する。登録選択した返信文候補にユーザが編集を施した場合、処理はステップS3112へ移行する。一方、登録選択した返信文候補にユーザが編集を施していない場合、処理はステップS3117へ移行する。
ステップS3117において、文体変換ルール生成部204は、返信文が既存の文体変換ルールを適用した返信文であるか否かを判定する。返信文が既存の文体変換ルールを適用した返信文である場合、処理はステップS3118へ移行する。一方、返信文が既存の文体変換ルールを適用した返信文でない場合、処理はステップS312へ移行する。
ステップS3118において、文体変換ルール生成部204は、当該文体変換ルールの適用回数を1つ加算する。処理はステップS312へ移行する。
ステップS3112において、文体変換ルール生成部204は、差分解析部203が抽出した編集前後のテキストの差分に基づいて、文体変換ルール候補を生成する。処理はステップS3113へ移行する。
ステップS3113において、文体変換ルール生成部204は、文体変換ルール候補格納部205を参照し、当該文体変換ルール候補と同一の文体変換ルールが既に文体変換ルールテーブルに登録されているか否かを判定する。当該文体変換ルール候補と同一の文体変換ルールが既に文体変換ルールテーブルに登録されている場合、処理はステップS3118へ移行する。一方、当該文体変換ルール候補と同一の文体変換ルールが既に文体変換ルールテーブルに登録されていない場合、処理はステップS3114へ移行する。
ステップS3114において、文体変換ルール生成部204は、文体変換ルール候補格納部205を参照し、同一の文体変換ルール候補が過去に何回発生したかをチェックし、その回数が予め定めた回数以上になったか否かを判定する。同一の文体変換ルール候補の過去の発生回数が予め定めた回数以上の場合、処理はステップS3115へ移行する。一方、同一の文体変換ルール候補の過去の発生回数が予め定めた回数未満の場合、処理はステップS3116へ移行する。
ステップS3115において、文体変換ルール生成部204は、当該文体変換ルール候補をこれまでの適用回数とともに、文体変換ルールとして、文体変換ルールテーブル206に格納する。処理はステップS312へ移行する。
ステップS3116において、文体変換ルール生成部204は、当該文体変換ルール候補をこれまでの適用回数とともに文体変換ルール候補として格納する。処理はステップS312へ移行する。
ステップS312において、メール分割部102は、Iをインクリメントする。処理はステップS303に戻り、次の部分文字列の処理に移る。このようにして全ての部分文字列について処理が完了したら、処理はステップS313へ移行する。
ステップS313において、返信文結合部107は、返信メールバッファに格納された文字列を返信メールとして出力する。処理は終了する。
図38は、本実施形態における情報処理装置100のハードウェア構成の一例を簡略的に示すブロック図である。情報処理装置100は、Central Processing Unit(CPU、中央処理装置)702、操作部704、表示部706、ROM708、RAM710、外部記憶装置714及びネットワークインタフェース装置718を有する。バス716は、CPU702、操作部704、表示部706、ROM708、RAM710、外部記憶装置714及びネットワークインタフェース装置718を相互に接続する。
CPU702は、各種演算処理を実行する。操作部704は、ユーザからのデータの入力を受け付ける。表示部706は、各種情報を表示する。ROM708は、Operating System(OS、オペレーティングシステム)等の各種プログラムを格納する。RAM710は、プログラムの実行やデータの記憶を行う。外部記憶装置714は、専用アプリケーション等を格納する。ネットワークインタフェース装置718は、ネットワークを介して他装置との間でデータの送受信を行う。なお、専用アプリケーションは、例えば、CD−ROMやDVDディスク、USBメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリなどのコンピュータ読取可能な記録媒体に格納されても良い。
ユーザが操作部704を利用して文書の作成を行いたい旨の命令を行うと、CPU702は、専用アプリケーションを外部記憶装置714から読み出してRAM710に展開することにより、専用アプリケーションを実行する。専用アプリケーションが実行されることにより、CPU702は、文書の作成や編集等を行うことができる。
以上、実施の形態2及び実施の形態3の発明は実施の形態1の発明に機能を付加する形態で説明を行ったが、実施の形態2の発明と実施の形態3の発明は組み合わせて実施することも可能である。
以上、本発明の例示的な実施の形態の情報処理装置について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。