(57)【特許請求の範囲】
【請求項１】
コンピュータに、
複数の文節を含む文節群を複数有し、各文節群には順序を示す第１の情報が付されているデータ構造を有する入力ファイルを読み込むステップと、
複数の前記文節群からそれぞれ文節を１つずつ抽出し、該抽出した文節を前記第１の情報に従って並べ文章を生成する処理を、前記文節群からそれぞれ文節を１つずつ抽出する全ての組み合わせまたは任意の数の組み合わせについて行うことで、複数の文章からなる文章群を生成するステップと、
前記文章群を出力ファイルに書き込むステップと、
を実行させる文章作成プログラムであって、
前記入力ファイルのデータ構造において、各文節には、それぞれの前記文節群内では固有であって全ての前記文節群に跨がる第２の情報が付されると共に、複数の文節群に跨がる関連付けの情報を付すことが可能であり、
前記文節を抽出する際に、同じ関連付けの情報を有する文節群については、互いに同じ前記第２の情報が付された文節が抽出されることを特徴とする文章作成プログラム。
【請求項２】
前記入力ファイルのデータ構造において、１つの文節群または複数の文節群に跨がる複数のグループの情報を付すことが可能であり、
前記文章を生成する際に、同じグループの情報が付された文節群から抽出した文節を前記第１の情報に従って並べ１つの文節グループとし、複数の前記文節グループ同士の順序を任意に入れ替えて文章を生成することを特徴とする請求項１記載の文章作成プログラム。
【請求項３】
前記入力ファイルのデータ構造において、前記グループの情報をさらにグループ化した上位グループの情報を付すことが可能であり、
前記文章を生成する際に、同じ上位グループの情報が付された複数の前記文節グループ同士の順序を任意に入れ替えて文章を生成することを特徴とする請求項２記載の文章作成プログラム。
【請求項４】
前記入力ファイルのデータ構造において、前記文節には文字数が０字の空白データが含まれ、各文節群には読み込み行数の情報を付すことが可能であり、
前記文節を抽出する際に、前記読み込み行数の情報が付された文節群については、当該読み込み行数分の文節を、前記空白データを含めて抽出することを特徴とする請求項１〜３のいずれか１項に記載の文章作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文章を構成する文節のデータを含むファイルから日本語として自然な文章群を生成することのできる文章作成プログラムに関する。
【背景技術】
【０００２】
似た類型の文章を大量に作成し、コンピュータ上のデータとして保存したい場合、手入力でなされるのが一般的であるが、文章をコンピュータ上で自動的に作成することのできる文章作成プログラムあるいは文章作成支援プログラムを利用することで、手入力の負担を軽減することができる。このような文章作成プログラムとしては、例えば所定のフォームに必要な事項を入力することで、定型的な文章を作成するものなどがあった。（特許文献１参照）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１４５１６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の文章作成プログラムでは、基本的に入力された単語を用意された文章構造に当てはめて文章を作成しているため、日本語として必ずしも自然な文章になるとは限らなかった。また、大量の文章を文章作成プログラムで作成した場合に、文章を機械的に作成していると読者に感じさせるものとなっていた。
【０００５】
本発明は前記課題を鑑みてなされたものであり、文章を構成する文節のデータを用意することで日本語として自然な文章群を生成することのできる文章作成プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するため、請求項１の発明に係る文章作成プログラムは、コンピュータに、
複数の文節を含む文節群を複数有し、各文節群には順序を示す第１の情報が付されているデータ構造を有する入力ファイルを読み込むステップと、
複数の前記文節群からそれぞれ文節を１つずつ抽出し、該抽出した文節を前記第１の情報に従って並べ文章を生成する処理を、前記文節群からそれぞれ文節を１つずつ抽出する全ての組み合わせまたは任意の数の組み合わせについて行うことで、複数の文章からなる文章群を生成するステップと、
前記文章群を出力ファイルに書き込むステップと、
を実行させる文章作成プログラムであって、
前記入力ファイルのデータ構造において、各文節には、それぞれの前記文節群内では固有であって全ての前記文節群に跨がる第２の情報が付されると共に、複数の文節群に跨がる関連付けの情報を付すことが可能であり、
前記文節を抽出する際に、同じ関連付けの情報を有する文節群については、互いに同じ前記第２の情報が付された文節が抽出されることを特徴として構成されている。
【０００７】
請求項１に係る発明によれば、文章を構成する文節のデータを含む入力ファイルから、複数の文章群を自動的に生成することができる。また、複数の文節群に跨がる関連付けの情報を付すことができるので、密接な関連性を有する文節同士が、必ず特定の組み合わせで抽出され、不自然あるいは不整合な文章が生成されることを防止できる。
【００１０】
さらに、請求項３の発明に係る文章作成プログラムは、前記入力ファイルのデータ構造において、１つの文節群または複数の文節群に跨がる複数のグループの情報を付すことが可能であり、
前記文章を生成する際に、同じグループの情報が付された文節群から抽出した文節を前記第１の情報に従って並べ１つの文節グループとし、複数の前記文節グループ同士の順序を任意に入れ替えて文章を生成することを特徴として構成されている。
【００１１】
請求項３に係る発明によれば、文節群をグループ化し、グループ単位で順序をランダムに入れ替えることにより、同じ類型の文章にゆらぎを持たせることができるので、日本語として自然な文章群を生成することができる。
【００１２】
さらにまた、請求項４の発明に係る文章作成プログラムは、前記入力ファイルのデータ構造において、前記グループの情報をさらにグループ化した上位グループの情報を付すことが可能であり、
前記文章を生成する際に、同じ上位グループの情報が付された複数の前記文節グループ同士の順序を任意に入れ替えて文章を生成することを特徴として構成されている。
【００１３】
請求項４に係る発明によれば、下位グループをさらにグループ化した上位グループの設定を行うことで、複数の上位グループの中でそれぞれ下位グループの順序をランダムに入れ替えることができ、より自然な文章群を生成することができる。
【００１４】
そして、請求項５の発明に係る文章作成プログラムは、前記入力ファイルのデータ構造において、前記文節には文字数が０字の空白データが含まれ、各文節群には読み込み行数の情報を付すことが可能であり、
前記文節を抽出する際に、前記読み込み行数の情報が付された文節群については、当該読み込み行数分の文節を、前記空白データを含めて抽出することを特徴として構成されている。
【００１５】
請求項５に係る発明によれば、データ構造に空白データがある場合に、読み込み行数を設定することで、設定した文節群を所定の確率で空白とすることができ、これによって、より自然な文章群を生成することができる。
【発明の効果】
【００１６】
本発明に係る文章作成プログラムによれば、文章を構成する文節のデータを用意することで日本語として自然な文章群を生成することができる。
【図面の簡単な説明】
【００１７】
【図１】入力ファイルに記録されるデータ構造である。
【図２】関連付けの情報を付した場合のデータ構造である。
【図３】グループの情報を付した場合のデータ構造である。
【図４】空白データを含む場合のデータ構造である。
【図５】空白データを含む実際の言語からなるデータ構造である。
【図６】本実施形態のプログラムがコンピュータに行わせる処理のフローチャートである。
【図７】実際の言語からなるデータ構造である。
【発明を実施するための形態】
【００１８】
本発明の実施形態について図面に沿って詳細に説明する。本実施形態におけるプログラムは、予め用意した入力ファイルが有するデータ構造に基づいて、コンピュータに複数の文章を作成させ、作成された文章を記録した出力ファイルを得ることができるものである。
【００１９】
まず、入力ファイルに記録されるデータ構造について説明する。図１には、入力ファイルに記録されるデータ構造について示している。本実施形態では、データ構造の縦方向を列、横方向を行と称する。図１において、データ構造の左端の列にはアルファベットが、上端の行には数字が付されているが、これはデータ構造に格納されているデータを特定するために便宜的に付したものである。
【００２０】
データ構造では、各列に対して関連付け、グループ設定及び読み込み行数の情報を付することができるが、図１のデータ構造ではこれらはいずれも付されていない。関連付け、グループ設定及び読み込み行数については、後で詳述する。図１のデータ構造は、行方向に３行と、列方向に１０列あり、それぞれに文節のデータが格納されている。Ａ行には、１列目にａ１、２列目にａ２というように、１０列目のａ１０までの文節のデータが格納されている。Ｂ行には１列目のｂ１から１０列目のｂ１０まで、Ｃ行には１列目のｃ１から１０列目のｃ１０までが、それぞれ格納されている。１つの列に格納された複数の文節は、全体で一群の文節群を構成する。
【００２１】
ａ１、ａ２などの文節は、複数の単語からなる文節であってもよいし、単一の単語であってもよい。また、１列目の文節から１０列目までの文節を順番に並べることで、１つの文章が完成するようになっている。すなわち、それぞれの文節群が何列目であるかは、当該文節群中の文節の、文章中における順序の情報となっている。つまり、各文節群にはそれぞれに固有であって文章中での順序を示す第１の情報である列の情報が付されている。加えて、文節群を構成する各文節には、１つの文節群内では固有であって全ての文節群に跨がる第２の情報である行の情報が付されている。
【００２２】
本実施形態のプログラムは、このようなデータ構造を有する入力ファイルをコンピュータに読み込ませ、データ構造に含まれる複数の文節群からそれぞれ文節を１つずつ抽出し、抽出した文節を文節群の順序の情報である列の情報に従って並べ文章を生成し、この文章の生成を複数の文節群からそれぞれ文節を１つずつ抽出する全ての組み合わせまたは任意の数の組み合わせについて行う処理をコンピュータに行わせ、さらに、それによって生成された複数の文章群を出力ファイルに書き込む動作をコンピュータに行わせるものである。
【００２３】
図１のデータ構造を例にすると、文節群を構成する各列から１つずつ文節が抽出される。例えば、ａ１、ａ２、ａ３、ａ４、ａ５、ａ６、ａ７、ａ８、ａ９、ａ１０が抽出される。これらが、順序の情報に従って並べられて文章が生成される。前記例の場合、”ａ１ａ２ａ３ａ４ａ５ａ６ａ７ａ８ａ９ａ１０”という文章が生成される。また、ｂ１、ａ２、ｃ３、ｃ４、ａ５、ｂ６、ｃ７、ａ８、ｂ９、ａ１０が抽出された場合には、”ｂ１ａ２ｃ３ｃ４ａ５ｂ６ｃ７ａ８ｂ９ａ１０”という文章が生成される。図１のデータ構造において、それぞれ３つの文節を含む１０個の文節群から、文節を１つずつ抽出する組み合わせの数は、３の１０乗、すなわち５９０４９通りある。出力ファイルに書き込まれる文章群は、この組み合わせ全てであってもよいし、この中から任意の数をランダムに選択してもよい。
【００２４】
図２には、関連付けの情報を付した場合のデータ構造について示している。関連付けの情報は、必ず複数の文節群に跨がるように付される。図２では、２列目と３列目の文節群に”１”の関連付けの情報が、６列目、７列目、９列目の文節群に”２”の関連付けの情報が、それぞれ付されている。
【００２５】
関連付けの情報が付されている場合には、付されていない場合と比べて文節群からの文節の抽出処理が異なる。文節を抽出する際、同じ関連付けの情報を有する文節群については、互いに同じ第２の情報である行の文節が抽出される。例えば、図２において２列目でｂ２が抽出された場合は、同じ関連付けの情報”１”を有する３列目では、同じ行であるｂ３が必ず抽出される。また、６列目でｃ６が抽出された場合は、同じ関連付けの情報”２”を有する７列目ではｃ７が、９列目ではｃ９が、それぞれ抽出される。
【００２６】
関連付けを行った場合、同じ関連付けの情報を有する文節群同士での組み合わせの数が制限されることになるので、関連付けの情報を付していない場合よりも生成可能な文章の数が少なくなる。図２の場合では、２列目と３列目の組み合わせが固定され、６，７，９列目の組み合わせも固定されるので、１０個の文節群から文節を１つずつ抽出する組み合わせの数は３の７乗、すなわち２１８７通りとなる。
【００２７】
このように、複数の文節群に跨がる関連付けの情報を付すことができることにより、密接な関連性を有する文節同士が、必ず特定の組み合わせで抽出されるので、不自然あるいは不整合な文章が生成されることを防止できる。
【００２８】
図３には、グループの情報を付した場合のデータ構造について示している。グループの情報は、１つの文節群または複数の文節群に跨がるように付すことができる。また、図３においてグループの情報は、１つめの数字が上位グループの情報を表し、２つめの数字が下位グループの情報を表している。上位グループは１つまたは複数が設定され、下位グループは１つの上位グループの中で必ず複数が設定される。
【００２９】
グループの情報が付されている場合であっても、各文節群からの文節の抽出については、グループの情報が付されていない場合と同様である。グループの情報が付されている場合には、当該情報に基づいて抽出された文節をランダムに並べ替える処理が行われる。
【００３０】
文章を生成する際には、同一上位グループ内において、同じ下位グループの情報が付された文節群から抽出した文節を、列の情報に従って並べ１つの文節グループとする。同一上位グループ内では、必ず複数の下位グループの情報が付されているから、複数の文節グループが生成されることとなる。これら複数の文節グループについて、順序がランダムに入れ替えられる。複数の上位グループが設定されている場合には、それぞれの上位グループ内で、この入れ替えが行われる。
【００３１】
図３の例では、１列目から５列目の文節群に”１”の上位グループが付され、さらに１列目から３列目の文節群に”１”の下位グループが、４列目及び５列目に”２”の下位グループが、それぞれ付されている。また、７列目から９列目の文節群には”２”の上位グループが付され、さらに７列目及び８列目の文節群に”１”の下位グループが、９列目の文節群に”２”の下位グループが、それぞれ付されている。
【００３２】
この場合、上位グループが共通する１列目から５列目の文節群について、下位グループが共通する１列目から３列目までの文節と４列目から５列目までの文節は、それぞれ列の情報に従って並べられて文節グループとされ、これらがランダムに並べ替えられる。ここで、文節グループ内の順序は変わることなく、文節グループ同士の順序がランダムに入れ替えられる。
【００３３】
例えば、１列目から５列目までにおいて、ａ１、ｃ２、ａ３、ｃ４、ｂ５が抽出されたとして、下位グループが共通する”ａ１ｃ２ａ３”の文節グループと、下位グループが共通する”ｃ４ｂ５”の２つの文節グループが生成されるので、”ａ１ｃ２ａ３ｃ４ｂ５”となる場合と、”ｃ４ｂ５ａ１ｃ２ａ３”となる場合がある。
【００３４】
同様に、上位グループが共通する７列目から９列目の文節群において、例えばｂ７、ｃ８、ａ９が抽出されたとして、”ｂ７ｃ８”の文節グループと”ａ９“の文節グループが生成されるので、”ｂ７ｃ８ａ９“となる場合と、”ａ９ｂ７ｃ８”となる場合がある。
【００３５】
グループ情報が付されていない文節群については、これまで説明した場合と同様に、列の情報に従って並べられる。
【００３６】
このように、文節群をグループ化し、グループ単位で順序をランダムに入れ替えることにより、同じ類型の文章にゆらぎを持たせることができるので、日本語として自然な文章群を生成することができる。
【００３７】
また、本実施形態では下位グループをさらにグループ化した上位グループの設定もできるので、複数の上位グループの中でそれぞれ下位グループの順序をランダムに入れ替えることができ、より自然な文章群を生成することができる。
【００３８】
図４には、空白データを含む場合のデータ構造について示している。図４のデータ構造では、関連付け及びグループの情報は付されていないが、読み込み行数の情報が付されている。このデータ構造において、２列目のＣ行と、５列目のＢ行及びＣ行は、文字数が０字の空白データとなっている。
【００３９】
読み込み行数の設定がある場合、文節を抽出する際に、設定された文節については、当該読み込み行数分の文節を、空白データも含めて抽出する。空白データを含む文節群について、読み込み行数が設定されていない場合には、空白データ以外の文節のみを抽出する。
【００４０】
図４のデータ構造では、２列目には読み込み行数が３と、５列目には読み込み行数が２と、それぞれ設定されている。この場合、２列目の文節群には、文字を含む文節が２つと空白データが１つ含まれることになる。また、５列目の文節群には、文字を含む文節が１つと空白データが１つ含まれることになる。このため、２列目の文節群からは３分の１の確率で空白データが抽出され、５列目の文節群からは２分の１の確率で空白データが抽出される。例えば、”ａ１ｃ３ｃ４ｂ６ａ７ｂ８ａ９ｃ１０”のような文章が生成される。つまり、図４の例では、生成された文章のうち３つに１つは第２列の文節を有しないものであり、２つに１つは第５列の文節を有しないものとなる。
【００４１】
図５には、空白データを含む実際の言語からなるデータ構造について示している。この例は３つの文節群からなっている。このうち、２列目と３列目は、それぞれ文字を含む文節１つずつ有している。また、２列目には読み込み行数が２と設定されている。
【００４２】
この場合、２列目の文節群には、文字を含む１つの文節と、１つの空白データが含まれる。また、３列目の文節群には、読み込み行数が設定されていないので、文字を含む１つの文節のみが含まれる。したがって、このデータ構造から生成される文章は、「はじめまして、私は佐藤です。」、「はじめまして、佐藤です。」、「こんにちは、私は佐藤です。」、「こんにちは、佐藤です。」の全部で４つとなる。日本語では、「私は」のような一人称は省略されることが多く、図５のように一人称の文節に読み込み行数を設定することで、一定の割合で一人称が省略されることになるので、日本語としてより自然な文章群を生成することができる。
【００４３】
読み込み行数を設定する際には、言葉の実際の使われ方を考慮することが望ましい。例えば、自己紹介の時、一人称に「私は」を付ける日本人が５割程度であるとした場合には、図５において読み込み行数を２と設定するとよいし、また、その割合が１割程度であるならば、図５において読み込み行数を１０と設定するとよい。図５の例で、生成する文章数を例えば２つと設定した場合に読み込み行数を１０と設定していると、出力される文章に「私は」が含まれる確率を５分の１とすることができる。このように、読み込み行数の設定により、設定した文節群の出現確率をコントロールすることが可能である。
【００４４】
本実施形態のプログラムがコンピュータに行わせる処理のフローについて説明する。図６には、本実施形態のプログラムがコンピュータに行わせる処理のフローチャートを示している。まず、データ構造を有する入力ファイルの読み込みが行われる（Ｓ１）。次に、文章の生成の処理が行われるが、まず、文節読み込みのためのカウンターの数値ｎを１にセットする（Ｓ２）。最初に、データ構造のｎ列目について、関連付けの情報の有無を判別する（Ｓ３）。
【００４５】
Ｓ３でｎ列目の文節群に関連付けの情報が付されている場合、当該関連付けの情報の付されていた回数が１回目であるか否かを判定し（Ｓ４）、１回目であった場合には、ｎ列目の文節群からいずれか１つの文節を抽出する（Ｓ５）。文節の抽出は、当該文節群に含まれる文節のうち１つをランダムに抽出する。２回目以降であった場合には、１回目に当該関連付けの情報が付されていた列の文節群で抽出された文節と同じ行の文節を抽出する（Ｓ６）。これにより、ある関連付けの情報が最初に付されている文節群と、同じ関連付けの情報が付されている文節群とは、いずれも同じ行から文節が抽出されることとなる。
【００４６】
Ｓ３で関連付けの情報が付されていなかった場合、データ構造のｎ列目について、読み込み行数の設定の有無を判別する（Ｓ７）。ｎ列目について読み込み行数が設定されていた場合、空白データを含むｎ列目に格納された文節のうち１つが抽出される（Ｓ８）。すなわち、Ｓ８ではｎ列目の文節が１文字以上を含む文節または空白データのいずれかが抽出される。空白データが選択される確率は、前述のように、読み込み行数の設定値と１文字以上を含む文節の数の割合によって定まる。Ｓ７で読み込み行数が設定されていなければ、ｎ列目に格納された文節のうち１つが抽出される（Ｓ９）。
【００４７】
次に、文末まで文節を抽出したか否か、すなわち最後の列まで抽出を行ったか否か判定する（Ｓ１０）。文末でなければ、カウンターの数値ｎに１を加算し（Ｓ１１）、次の列に対して文節の抽出を行うため、Ｓ３からＳ１０までを繰り返す。文末まで達していた場合には、グループの設定がされているか否かを判定し（Ｓ１２）、グループの設定がされていた場合には、前述したグループ設定の場合の並べ替えを行う（Ｓ１３）。そして、ここまでで抽出された文節を並べて文章を生成する（Ｓ１４）。Ｓ１４で生成した文章を、それまでに生成した文章と比較し、全く同じ文章が重複した場合には、生成した文章は破棄される（Ｓ１５）。
【００４８】
１つの文章を生成したら、それまで作成した文章群に含まれる文章の数が、所定数に達しているか否かを判定する（Ｓ１６）。本フローでは、予め設定した一定数の文章からなる文章群を生成するものとしている。Ｓ１６で判定する所定数は、各文節群から１つずつ文節を抽出する全ての組み合わせの数よりも小さい数である。Ｓ１６で所定数に達していなければ、Ｓ２からＳ１６のフローを繰り返す。
【００４９】
Ｓ１６で所定数に達していた場合、生成した全ての文章からなる文章群を生成する（Ｓ１７）。文章群を生成したら、それを出力ファイルに書き込み（Ｓ１８）、フローは終了する。なお、Ｓ１６の所定数は、各文節群から１つずつ文節を抽出する全ての組み合わせの数であってもよい。この場合、文節群からの文節の抽出は、ランダムではなく全ての組み合わせの文章が生成されるように順番に行うようにしてもよい。
【００５０】
図７には、実際の言語からなるデータ構造を示している。このデータ構造は、６列の文節群を有し、各文節群には最大６個の文節が含まれている。３列目と４列目の文節群には、同じ関連付けの設定がなされており、１列目と２列目の文節群には、上位グループ”１”が設定され、さらに１列目の文節群には下位グループ”１”が、２列目の文節群には下位グループ”２”が、それぞれ設定されている。また、３列目から５列目までの文節群には、上位グループ”２”が設定され、さらに３列目と４列目の文節群には下位グループ”１”が、５列目の文節群には下位グループ”２”が、それぞれ設定されている。また、２列目の文節群には読み込み行数として”５”が設定されている。
【００５１】
本データ構造では、３列目と４列目には同じ関連付けの情報が付されているので、３列目と４列目は必ず同じ行の文節が選択される。具体的には、「東京の港区で」、「横浜のみなとみらいで」、「名古屋の名古屋駅で」、「大阪の心斎橋で」、「神戸の三宮で」、「京都の祇園で」という組み合わせとなる。３列目の文節群は都市名を、４列目の文節群は地名を、それぞれ含んでおり、これらは不可分な関係にあるので、関連付けの設定によってこれらが必ず対応するように文章が生成され、不整合を生じないようにすることができる。
【００５２】
図７のデータ構造から生成される文章の最大数は、３列目と４列目に関連付けの情報が付されていることから、６の５乗、すなわち７７７６通りであるが、２列目に２つの空白データがあり、これら２つのいずれか１つが選択された文章は、もう１つが選択された文章と重複するので、それを除くと全部で６４８０通りとなる。生成される文章群の文章数は、最大６４８０で任意に選択することができる。
【００５３】
このデータ構造から例えば、「甲は」、「去年、」、「東京の」、「港区で」、「佐藤さんと」、「出会った」の各文節が抽出されたとして、設定されたグループの情報によれば、下記のような文章が生成されうる。
１．甲は去年、東京の港区で佐藤さんと出会った
２．去年、甲は東京の港区で佐藤さんと出会った
３．甲は去年、佐藤さんと東京の港区で出会った
４．去年、甲は佐藤さんと東京の港区で出会った
【００５４】
実際には、これら４つの文章のうち１つがランダムに選ばれることになる。このように、グループ設定により、文節の順番が異なる文章のうちいずれかがランダムに選ばれるので、同じ類型の多数の文章を生成した際に、文章群が機械的に生成されたものであることを感じにくくして、より自然な日本語とすることができる。
【００５５】
また、第２列の読み込み行数が５と設定されているので、例えば「丙は神戸の三宮で田中さんと遊んだ」のように、時期を示す文節を省略した文章が、２０％の確率で生成される。これによって、文章群がより自然に感じられるようにすることができる。
【００５６】
以上、本発明の実施形態について説明したが、本発明の適用は本実施形態には限られず、その技術的思想の範囲内において様々に適用されうるものである。本実施形態において、「列」や「行」は説明のため便宜的に用いたものであり、文節群の順序を示す情報や、ある文節群内で固有であって全ての文節群に跨がる情報が、各文節群あるいは文節と関連付けされていればよい。また、図６で本実施形態のフローを説明したが、フローの順番はこの限りではなく、また、図１〜図５で説明した機能を実現できるフローであればよく、この処理内容には限られない。
【要約】
【課題】文章を構成する文節のデータを用意することで日本語として自然な文章群を生成することのできる文章作成プログラムを提供する。
【解決手段】コンピュータに、複数の文節を含む文節群を複数有し、各文節群には順序を示す第１の情報が付されているデータ構造を有する入力ファイルを読み込むステップと、複数の文節群からそれぞれ文節を１つずつ抽出し、抽出した文節を第１の情報に従って並べ文章を生成する処理を、文節群からそれぞれ文節を１つずつ抽出する全ての組み合わせまたは任意の数の組み合わせについて行うことで、複数の文章からなる文章群を生成するステップと、文章群を出力ファイルに書き込むステップと、を実行させる文章作成プログラムである。
【選択図】図５【図１】
0005763828.tif 000002
【図２】
0005763828.tif 000003
【図３】
0005763828.tif 000004
【図４】
0005763828.tif 000005
【図５】
0005763828.tif 000006
【図６】
0005763828.tif 000007
【図７】
0005763828.tif 000008