(57)【要約】【課題】複数の図形を組み合わせて作成される手書きの構成図に関して大量の学習データを容易に生成できるようにする。【解決手段】テキストデータから成る複数の意味データを生成する意味データ生成部１１と、複数の意味データのそれぞれからテキストデータから成る複数のアノテーションデータを生成するアノテーションデータ生成部１２と、複数のアノテーションデータのそれぞれから複数の手書き構成図データを生成する手書き構成図データ生成部１３と、意味データとそれから派生した手書き構成図データとをデータセットとして学習データを生成する学習データ生成部１４とを備え、手書き構成図データが１つも存在しない状態からであっても、大量の手書き構成図データを自動生成して学習データを得ることができるようにする。【選択図】図１
2020064438.tif 000002
【特許請求の範囲】
【請求項１】
複数の図形を組み合わせて作成される手書きの構成図に関する学習データを生成するための学習データ生成装置であって、
複数の図形の組み合わせから成る構成図の意味をテキストデータにより表した意味データを複数生成する意味データ生成部と、
上記意味データ生成部により生成された複数の意味データのそれぞれ毎に、上記複数の図形の大きさおよび配置位置をテキストデータにより表したアノテーションデータを複数生成するアノテーションデータ生成部と、
上記アノテーションデータ生成部により生成された複数のアノテーションデータのそれぞれ毎に、１つの図形について複数の手書き図形データをあらかじめ保存したデータベースから上記複数の手書き図形データを読み出してアノテーションの通りに配置することにより、１つのアノテーションデータから複数の手書き構成図データを生成する手書き構成図データ生成部と、
上記意味データ生成部により生成された上記複数の意味データおよび上記手書き構成図データ生成部により生成された複数の手書き構成図データを少なくとも用いて、上記意味データとそれから派生した上記手書き構成図データとを含んだデータセットから成る学習データを生成する学習データ生成部とを備えたことを特徴とする学習データ生成装置。
【請求項２】
上記手書き構成図データ生成部は、上記データベースから読み出した手書き図形データに対し複数パターンの変形処理を行うことにより、１つの手書き図形データから複数の手書き図形データを生成することを特徴とする請求項１に記載の学習データ生成装置。
【請求項３】
複数の図形を組み合わせて作成される手書きの構成図に関する学習データを生成するための学習データ生成方法であって、
学習データ生成装置の意味データ生成部が、複数の図形の組み合わせから成る構成図の意味をテキストデータにより表した意味データを複数生成する第１のステップと、
上記学習データ生成装置のアノテーションデータ生成部が、上記意味データ生成部により生成された複数の意味データのそれぞれ毎に、上記複数の図形の大きさおよび配置位置をテキストデータにより表したアノテーションデータを複数生成する第２のステップと、
上記学習データ生成装置の手書き構成図データ生成部が、上記アノテーションデータ生成部により生成された複数のアノテーションデータのそれぞれ毎に、１つの図形について複数の手書き図形データをあらかじめ保存したデータベースから上記複数の手書き図形データを読み出してアノテーションの通りに配置することにより、１つのアノテーションデータから複数の手書き構成図データを生成する第３のステップと、
上記学習データ生成装置の学習データ生成部が、上記意味データ生成部により生成された上記複数の意味データおよび上記手書き構成図データ生成部により生成された複数の手書き構成図データを少なくとも用いて、上記意味データとそれから派生した上記手書き構成図データとを含んだデータセットから成る学習データを生成する第４のステップとを有することを特徴とする学習データ生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習データ生成装置および学習データ生成方法に関し、特に、図形認識のための学習装置において機械学習を行う際に使用する学習データを生成するための装置および方法に用いて好適なものである。
【背景技術】
【０００２】
近年、人工知能（ＡＩ）の一手法である機械学習の発展が目覚ましい。機械学習は、主に教師あり学習と教師なし学習と強化学習とに大別される。このうち、教師あり学習は、入力とそれに対応すべき出力とから成るデータセット（学習データ、教師データ、あるいは訓練データなどと呼ばれる）を事前に与え、この学習データをガイドとして所定の演算を行うことによって学習モデル（予測モデルとも呼ばれる）を生成する手法をいう。精度の高い学習モデルを生成するためには、多くの学習データを用いて学習を行うことが求められる。
【０００３】
以上の観点から、学習データの生成に着目した技術が提案されている（例えば、特許文献１〜５参照）。特許文献１に記載の学習装置では、テキスト事例集合と名詞辞書とから表層データを生成した後、この表層データと意味概念シソーラスとから決定木作成装置用学習データを生成し、この学習データから言語の意味解析ルールである多義性解消ルールを生成するようになされている。
【０００４】
特許文献２に記載の学習装置では、テキストデータ群の構造化データの各々から、指定された項目名リストと一致する項目の値を、抽出対象とする項目の値として抽出し、当該抽出した抽出対象とする項目の値であることを示すアノテーションが付与されたテキストを疑似教師データとして作成する。そして、疑似教師データのテキストから抽出される素性と、テキストに付与されたアノテーションとに基づいて、抽出対象とする項目の値をテキストから抽出するための抽出モデルを学習するようになされている。
【０００５】
特許文献３に記載の学習装置では、照応・省略関係のアノテーション済のテキストデータから複数の述語対を選択し、各々を解析し判別のための特徴量を抽出した後、アノテーションに従って、学習のための正例および負例を特徴量を用いて生成する。そして、この学習データを用い、入力される述語対が項を共有しているかを示すよう項共有判別器の学習を行うようになされている。
【０００６】
特許文献４に記載の文字認識装置では、文字が記された被検査物を撮影した検査画像を対象として、文字を細線化したのちに所定の太さに太線化することによって正規化画像を生成し、正規化画像の文字領域から求めた特徴量に基づいて、文字領域に写っている文字を識別する。そして、複数のモデル画像の文字部分相互間の相違領域を細分化した第１セルの輝度値を特徴量として、サポートベクターマシンの学習データを生成するようになされている。
【０００７】
特許文献５には、手書き文字等の大量のデータ収集が困難なシステムにおいて、収集された少量の教師データから多量の教師データを新たに作成することにより、ニューラルネットワークの学習効率を向上させることができるようにしたニューラルネットワークが開示されている。具体的には、特許文献５には、教師データとしてあらかじめ収集されたドットデータの線分の端点、曲点、交点等の特徴点を判別した後、判別した特徴点の中点を新たな特徴点として設定し、新たに設定した特徴点を線分で結ぶことによって新規の教師データを生成することが開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平８−３２９０８２号公報
【特許文献２】特開２０１８−１４００３号公報
【特許文献３】特開２０１６−１９２１９８号公報
【特許文献４】特開２０１５−３２０８８号公報
【特許文献５】特開平８−９６０８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記特許文献５に記載されているように、学習の精度を上げるために本来は大量の学習データを用いることが望まれるのに対し、大量のデータ収集が困難な場合がある。すなわち、日常的に多くの場面で使われているウェブサイトのデータや、金融トランザクションや電子商取引のデータなどは元々大量に存在するため、学習データの収集が比較的容易である。これに対し、特許文献５に記載されている手書き文字のデータは、容易に収集できるような環境に蓄積されていないことが多く、収集が困難なデータの１つである。そのため、特許文献５に記載のシステムでは、与えられた数の学習データをもとに、その数以上の学習データを自動的に生成する仕組みを提供している。
【００１０】
しかしながら、特許文献５に記載のシステムでは、学習データとして与えられた手書き文字のドットデータの特徴点を求め、その特徴点をもとにドットデータを変形させることによって新たなドットデータを作っているだけである。そのため、新たに作られる学習データの数は、最初に与えられた学習データから抽出される特徴点の数以上には増やすことができず、作られる学習データの数はそれほど多くならないという問題があった。特許文献３，４に記載のシステムも基本的には同様で、与えられた学習データの特徴量を求め、その特徴量をもとに新たな学習データを作っているだけなので、作られる学習データの数には限界がある。
【００１１】
また、特許文献１〜５の何れにおいても、手書きの図形に関する学習データを生成することについては開示していない。例えば、複数の図形を組み合わせて作成される手書きの構成図（有向／無向グラフやフローチャート、コンピュータシステム構成図、回路設計図など）のデータも、収集が困難なデータの１つであるが、このような手書き構成図のデータについて学習データを大量に生成する仕組みは、特許文献１〜５には開示されていない。例えば、企業における会議などでホワイトボードに描かれた手書きの構成図や、個々の設計者が所有するノートやタブレット端末などに描かれた手書きの構成図は、学習データとして殆ど収集することができない。そのため、これに関する学習データを何らかの方法で大量に生成することが必要であるが、そのための有効な仕組みは提供されていない。
【００１２】
本発明は、このような問題を解決するために成されたものであり、複数の図形を組み合わせて作成される手書きの構成図に関して大量の学習データを容易に生成できるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
上記した課題を解決するために、本発明では、複数の図形を組み合わせて成る構成図の意味をテキストデータにより表した意味データを複数生成する意味データ生成部と、生成された複数の意味データのそれぞれ毎に、複数の図形の大きさおよび配置位置をテキストデータにより表したアノテーションデータを複数生成するアノテーションデータ生成部と、生成された複数のアノテーションデータのそれぞれ毎に、１つの図形について複数の手書き図形データをあらかじめ保存したデータベースから複数の手書き図形データを読み出してアノテーションの通りに配置することにより、１つのアノテーションデータから複数の手書き構成図データを生成する手書き構成図データ生成部と、以上のように生成された意味データとそれから派生した手書き構成図データとを含んだデータセットから成る学習データを生成する学習データ生成部とを備える。
【発明の効果】
【００１４】
上記のように構成した本発明によれば、テキストデータから成る複数の意味データが自動生成され、複数の意味データのそれぞれからテキストデータから成る複数のアノテーションデータが自動生成され、複数のアノテーションデータのそれぞれから複数の手書き構成図データが生成され、意味データとそれから派生した手書き構成図データとを含んだデータセットから成る学習データが生成されるので、手書き構成図データが１つも存在しない状態からでも、大量の手書き構成図データを自動生成し、大量の学習データを得ることができる。このように、本発明によれば、複数の図形を組み合わせて作成される手書きの構成図に関して大量の学習データを容易に生成することが可能である。
【図面の簡単な説明】
【００１５】
【図１】本実施形態による学習データ生成装置の機能構成例を示すブロック図である。
【図２】本実施形態の意味データ生成部により生成される意味データの一例を示す図である。
【図３】本実施形態のアノテーションデータ生成部により生成されるアノテーションデータの一例を示す図である。
【図４】本実施形態の手書き構成図データ生成部により生成される手書き構成図データの一例を示す図である。
【図５】学習器の構成例を示す図である。
【図６】予測器の構成例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態による学習データ生成装置１０の機能構成例を示すブロック図である。本実施形態の学習データ生成装置１０は、複数の図形を組み合わせて作成される手書きの構成図に関する学習データを自動的に生成するための装置である。構成図とは、有向／無向グラフやフローチャート、オブジェクト図、クラス図、コンピュータシステム構成図、回路設計図などに代表される図のことであり、構成要素として複数の図形を含み、かつ、複数の図形間に何らかの関係性を有するように形成された図の総称である。
【００１７】
図１に示すように、本実施形態の学習データ生成装置１０は、その機能構成として、意味データ生成部１１、アノテーションデータ生成部１２、手書き構成図データ生成部１３および学習データ生成部１４を備えている。また、本実施形態の学習データ生成装置１０は、記憶媒体として、手書き図形データ記憶部２１および学習データ記憶部２２を備えている。なお、手書き図形データ記憶部２１および学習データ記憶部２２は、学習データ生成装置１０に接続される他の装置が備える構成としてもよい。
【００１８】
上記各機能ブロック１１〜１４は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック１１〜１４は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【００１９】
手書き図形データ記憶部２１は、１つの図形について複数の手書き図形データをあらかじめ保存したデータベースを記憶する。ここでいう「図形」とは、上述した各種構成図を形成している個々の要素図形のことであり、例えば四角形（正方形、長方形、平行四辺形、台形、菱形などの他、これ以外の変形的な四角形を含む）、三角形（正三角形、二等辺三角形、直角三角形などの他、これ以外の変形的な三角形を含む）、その他の多角形、円形、楕円形、矢印、線などを含む。また、図形は、構成図特有の基本図形（例えば、アナログ回路の抵抗、コイル、コンデンサといった各種電気素子を表す図形や、デジタル回路のＡＮＤ回路、ＯＲ回路、ＮＯＴ回路といった各種論理回路を表す図形など）であってもよい。また、図形は、平面図形であってもよいし、立体図形であってもよい。
【００２０】
また、「手書き図形データ」とは、上述の図形を手書きによって描画したデータのことであり、例えばビットマップにより手書き図形を表したデータである。ここで、手書き図形データは、手書き図形が内接する最小面積の矩形の白紙カンバス（白色ドットを並べた背景データ）上に、所定色（例えば黒色）のドット群で手書き図形が描画されたデータである。
【００２１】
この手書き図形データは、例えば、筆記具を使って媒体に手書きされた図形をカメラによる撮影またはスキャナによる光学的な読み取りによってデータ化したものであってもよいし、タッチスクリーン等に手書き入力またはペン入力された軌跡をデータ化したものであってもよい。カメラによる撮影またはスキャナによる光学的な読み取りによって手書き図形データを生成する場合、２値化処理を行うことによって、手書き図形の部分を黒色、それ以外の背景部分を白色で表したデータとする。なお、手書き図形データの作成法はこれに限定されるものではなく、任意の方法で作成したものであってよい。
【００２２】
なお、上記のように手書き図形データを生成した場合、矩形のカンバスサイズがバラバラになる。そこで、図形ごとにカンバスサイズが統一されるように正規化するようにしてもよい。例えば、四角形の手書き図形データについては四角形に関する規定のカンバスサイズに統一し、円形の手書き図形データについては円形に関する規定のカンバスサイズに統一するといったように、カンバスサイズを調整することにより、図形ごとに複数の手書き図形データの大きさが揃うようにしておいてもよい。
【００２３】
意味データ生成部１１は、複数の図形の組み合わせから成る構成図の意味をテキストデータにより表した意味データを複数生成する。具体的には、意味データ生成部１１は、構成図に含まれる個々の図形（図形間の接続関係を示す図形を含む）の意味をテキストデータにより表した各種構成図の意味データを複数生成する。例えば、意味データ生成部１１は、このような意味データをランダムに複数生成する。ランダムというのは、構成図に含まれる個々の図形の種類や数、図形間の接続の仕方や種類などが任意という意味である。
【００２４】
ここで、意味データ生成部１１は、複数種類の構成図に関する意味データをランダムに生成してもよいし、特定の種類の構成図に関する意味データのみをランダムに生成してもよい。例えば、アナログ回路の設計図として作成されるこのとのある構成図についてのみ学習データを生成したい場合に、当該アナログ回路についての構成図のみに関する意味データをランダムに複数生成するようにしてもよい。本実施形態の学習データ生成装置１０は、特定の種類の構成図に関する学習データを生成する専用の装置として構成してもよいし、複数種類の構成図の中からユーザが任意に選択した構成図に関する学習データを生成可能な汎用の装置として構成してもよい。
【００２５】
図２は、意味データ生成部１１により生成される意味データの一例を示す図である。図２において、意味データ生成部１１により生成される１つの構成図に関する意味データ１０１は、「Ｓｑｕａｒｅ１→Ｃｉｒｃｌｅ１」および「Ｃｉｒｃｌｅ１→Ｓｑｕａｒｅ２」という２つのテキスト文から成る。「Ｓｑｕａｒｅ１→Ｃｉｒｃｌｅ１」は、「１つ目の四角形から１つ目の円に矢印が引かれている」という意味を表すテキスト文である。また、「Ｃｉｒｃｌｅ１→Ｓｑｕａｒｅ２」は、「１つ目の円から２つ目の四角形に矢印が引かれている」という意味を表すテキスト文である。意味データ生成部１１は、このようなテキストデータから成る意味データ１０１，１０２，１０３，・・・を複数生成する。
【００２６】
アノテーションデータ生成部１２は、意味データ生成部１１により生成された複数の意味データ１０１，１０２，１０３，・・・のそれぞれ毎に、複数の図形の大きさおよび配置位置をテキストデータにより表したアノテーションデータを複数生成する。具体的には、アノテーションデータ生成部１２は、構成図に含まれる個々の図形の座標と、図形によっては更にサイズとをテキストデータにより表したアノテーションデータを複数生成する。ここで、座標とは、あらかじめ設定した所定の２次元空間（ｘ−ｙ座標空間）における位置を表す座標のことであり、ｘ座標値とｙ座標値との組み合わせにより表される。
【００２７】
例えば、図形が長方形（正方形を含む）の場合は、２つの対頂角の座標を特定すれば、その長方形の大きさと配置位置が一義的に決まる。よって、長方形に関するアノテーションデータは、２組の座標値で表すことが可能である。また、図形が平行四辺形の場合は、４つの頂点の座標を特定すれば、その平行四辺形の大きさと配置位置が一義的に決まる。よって、平行四辺形に関するアノテーションデータは、４組の座標値で表すことが可能である。また、図形が円の場合は、中心座標と半径を特定すれば、その円の大きさと配置位置が一義的に決まる。よって、円に関するアノテーションデータは、１組の座標値および半径（サイズ）で表すことが可能である。
【００２８】
このように、図形によって、必要となる座標値の組み合わせやサイズの情報が異なる。アノテーションデータ生成部１２は、意味データ生成部１１により生成された意味データを解釈し、意味データにより示されている個々の図形を特定した上で、それぞれの図形にとって必要な情報を含むアノテーションデータをそれぞれ生成する。例えば、アノテーションデータ生成部１２は、このようなアノテーションデータをランダムに複数生成する。ランダムというのは、図形の大きさおよび配置位置が何れも任意という意味である。ただし、ここでいうランダムは、一定の条件の下でのランダムとするのが好ましい。
【００２９】
例えば、矢印や線などのように、２つの図形の結び付きや関係性、あるいは１つの図形に対する入出力関係などを示す図形の場合は、他の図形と接する位置、交わる位置または近接する位置に配置するという条件を設定する。この場合において、どの程度の量の交わりまたは近接までを許容するかという条件を更に設定するようにしてもよい。例えば、「Ｓｑｕａｒｅ１→Ｃｉｒｃｌｅ１」という意味データに対して「→（矢印）」の図形に対応するアノテーションデータを生成する場合、アノテーションデータ生成部１２は、矢印の始点を「Ｓｑｕａｒｅ１」で示される四角形と接する位置、交わる位置または近接する位置に配置するとともに、矢印の終点を「Ｃｉｒｃｌｅ１」で示される円と接する位置、交わる位置または近接する位置に配置するという条件の下で、矢印の大きさと配置位置とをランダムに決めた複数のアノテーションデータを生成する。
【００３０】
図３は、アノテーションデータ生成部１２により生成されるアノテーションデータの一例を示す図である。図３において、複数のアノテーションデータ２０１-1，２０１-2，２０１-3，・・・は、図２に示した１つの意味データ１０１から生成される複数のアノテーションデータである。また、複数のアノテーションデータ２０２-1，２０２-2，２０２-3，・・・は、図２に示した別の１つの意味データ１０２から生成される複数のアノテーションデータである。これ以外のアノテーションは図示を省略しているが、アノテーションデータ生成部１２は、意味データ生成部１１により生成された他の意味データ１０３，・・・からも複数のアノテーションデータを生成する。
【００３１】
図３において、アノテーションデータ２０１-1には、意味データの「Ｓｑｕａｒｅ１」で示される１つ目の四角形に関する２組の座標値（最初の２つの値が１つの頂点のｘ座標値およびｙ座標値、次の２つの値が対角上にある頂点のｘ座標値およびｙ座標値を示している）と、意味データの「→」で示される１つ目の矢印に関する２組の座標値（最初の２つの値が矢印の始点のｘ座標値およびｙ座標値、次の２つの値が矢印の終点のｘ座標値およびｙ座標値を示している）と、意味データの「Ｃｉｒｃｌｅ１」で示される円に関する１組の座標値および半径（最初の２つの値が円の中心点のｘ座標値およびｙ座標値、次の１つの値が半径を示している）と、意味データの「→」で示される２つ目の矢印に関する２組の座標値と、意味データの「Ｓｑｕａｒｅ２」で示される２つ目の四角形に関する２組の座標値とが含まれている。
【００３２】
手書き構成図データ生成部１３は、アノテーションデータ生成部１２により生成された複数のアノテーションデータのそれぞれ毎に、手書き図形データ記憶部２１に記憶されているデータベースから複数の手書き図形データを読み出してアノテーションの通りに配置することにより、１つのアノテーションデータから複数の手書き構成図データを生成する。具体的には、手書き構成図データ生成部１３は、アノテーションデータで示される個々の図形のそれぞれについて、データベースに記憶されている複数の手書き図形データをランダムに適用することにより、手書き図形データのランダムな組み合わせから成る複数の手書き構成図データを生成する。
【００３３】
ここで、手書き構成図データ生成部１３は、アノテーションデータにより示される座標の位置に対し、手書き図形データのカンバスを合わせるようにして手書き図形データを配置する。例えば、四角形の場合、アノテーションデータにより示される２つの対頂角の座標の位置に対し、手書き図形データの矩形のカンバスの対頂角が一致するようにして、手書き図形データを配置する。このとき、アノテーションデータにより示される四角形のサイズと、手書き図形データのカンバスサイズとが一致しない場合は、手書き図形データを拡大または縮小した上で配置する。
【００３４】
また、例えば、円形の場合、アノテーションデータにより示される中心点の座標の位置に対し、手書き図形データのカンバスの中心点が一致するようにするようにして、手書き図形データを配置する。このとき、アノテーションデータにより示される円の半径と、手書き図形データのカンバスサイズ（一辺の長さの１／２の値）とが一致しない場合は、手書き図形データを拡大または縮小した上で配置する。
【００３５】
手書き構成図データ生成部１３は、四角形や円形以外の他の図形についても同様に、アノテーションデータにより示される図形の大きさおよび配置位置と、手書き図形データのカンバスの大きさおよび配置位置とが一致するような態様によって、複数の手書き図形データをアノテーションの通りに配置することにより、手書き構成図データを生成する。手書き構成図データ生成部１３により生成される手書き構成図データは、例えば手書き構成図がビットマップにより表された画像データである。
【００３６】
図４は、手書き構成図データ生成部１３により生成される手書き構成図データの一例を示す図である。なお、ここでは図示の便宜上、カンバス上で手書き構成図がある部分のみを示しており、カンバスサイズは正確なものではない。
【００３７】
図４において、複数の手書き構成図データ３０１-1-1，３０１-1-2，３０１-1-3，・・・は、図３に示した１つのアノテーションデータ２０１-1から生成される手書き構成図データである。これ以外の手書き構成図データは図示を省略しているが、手書き構成図データ生成部１３は、アノテーションデータ生成部１２により生成された他のアノテーションデータ２０１-2，２０１-3，・・・，２０２-1，２０２-2，２０２-3，・・・からも複数の手書き構成図データを生成する。
【００３８】
図４において、手書き構成図データ３０１-1-1は、１つ目の手書きの四角形から手書きの円に向かって手書きの矢印が引かれるとともに、手書きの円から２つ目の手書きの四角形に向かって手書きの矢印が引かれて成る１つの手書き構成図を示している。この手書き構成図データ３０１-1-1は、図２に示した１つの意味データ１０１をもとに、図３に示した１つのアノテーションデータ２０１-1を中間データとして自動生成されたものである。図４に示す他の手書き構成図データ３０１-1-2，３０１-1-3，・・・も同様に、図２に示した１つの意味データ１０１をもとに自動生成されたものである。
【００３９】
ここで、手書き構成図データ生成部１３は、手書き図形データ記憶部２１のデータベースから読み出した手書き図形データに対して複数パターンの変形処理を行うことにより、１つの手書き図形データから複数の手書き図形データを生成するようにしてもよい。すなわち、手書き構成図データ生成部１３は、図４に示される個々の図形（四角形、矢印、円のそれぞれ）に対し、複数パターンの変形処理を行うようにしてもよい。
【００４０】
手書き構成図データ生成部１３が行う手書き図形データに対する変形処理は、例えば、回転、ゆがみ、色の変更、階調の変更、明るさ・コントラストの変更、シャープ度の変更などの各種画像処理の何れか１つまたは複数の組み合わせである。この変形処理は、実際にホワイトボードやノートなどに人が構成図を描くときにおける手書き図形自体の様々な状態や、これらのホワイトボードやノートなどを人が撮影またはスキャンするときにおける様々な周囲環境などの違いを考慮して、生成される手書き構成図データに更なるバリエーションを与えるために行うものである。
【００４１】
なお、手書き構成図データ生成部１３が行う手書き図形データに対する変形処理は、以上の例に限定されない。例えば、機械学習の分野で公知の画像生成処理あるいは画像変形処理などを適用してもよい。具体的には、ＧＡＮ（Generative Adversarial Network）を適用して手書き図形データに対する変形を行うようにしてもよい。ＧＡＮは、ＡＣＧＡＮ（Auxiliary Classifier GAN）、ＤＣＧＡＮ（Deep Convolutional GAN）の何れでもよい。
【００４２】
学習データ生成部１４は、意味データ生成部１１により生成された複数の意味データと、手書き構成図データ生成部１３により生成された複数の手書き構成図データとを用いて、意味データとそれから派生した手書き構成図データとをデータセットとする学習データを生成する。そして、生成した学習データを学習データ記憶部２２に記憶させる。
【００４３】
上述したように、図２に示した１つの意味データ１０１から、図４に示した１つの手書き構成図データ３０１-1-1が生成される。学習データ生成部１４は、この派生関係にある意味データ１０１と手書き構成図データ３０１-1-1とを１つのデータセットとして、１つの学習データを生成する。同様に、同じ１つの意味データ１０１から、図４に示した１つの手書き構成図データ３０１-1-2も生成されている。学習データ生成部１４は、この派生関係にある意味データ１０１と手書き構成図データ３０１-1-2とを別のデータセットとして、別の学習データを生成する。これと同様の要領で、学習データ生成部１４は、派生関係にある意味データと手書き構成図データとをデータセットとして多数の学習データを生成する。
【００４４】
なお、以上のように構成した学習データ生成装置１０による学習データの生成手順は以下の通りである。
【００４５】
まず、意味データ生成部１１が、複数の図形の組み合わせから成る構成図の意味をテキストデータにより表した意味データを複数生成する（第１のステップ）。次に、アノテーションデータ生成部１２が、意味データ生成部１１により生成された複数の意味データのそれぞれ毎に、複数の図形の大きさおよび配置位置をテキストデータにより表したアノテーションデータを複数生成する（第２のステップ）。
【００４６】
次いで、手書き構成図データ生成部１３が、アノテーションデータ生成部１２により生成された複数のアノテーションデータのそれぞれ毎に、手書き図形データ記憶部２１のデータベースから複数の手書き図形データを読み出してアノテーションの通りに配置した後、個々の手書き図形データに対して変形処理を行うことにより、１つのアノテーションデータから複数の手書き構成図データを生成する（第３のステップ）。
【００４７】
そして、学習データ生成部１４が、意味データ生成部１１により生成された複数の意味データおよび手書き構成図データ生成部１３により生成された複数の手書き構成図データを用いて、意味データとそれから派生した手書き構成図データとをデータセットとする学習データを生成する（第４のステップ）。
【００４８】
図５は、以上のようにして生成した多数の学習データを使用して機械学習（教師あり学習）を行う学習器の構成例を示す図である。図５に示すように、学習モデル生成部５１は、公知の学習アルゴリズムに従って、学習データ記憶部２２に記憶された多数の学習データを使用して機械学習を実行し、学習モデルを生成する。生成した学習モデルは、学習モデル記憶部２３に記憶される。ここで適用する学習アルゴリズムは任意であるが、画像データの機械学習を行うのに適した学習アルゴリズムを用いるのが好ましい。
【００４９】
学習モデル生成部５１が行う機械学習は、手書き構成図データ（手書き構成図が描かれたホワイトボードを撮影したりノートをスキャンしたりすることによって生成される画像データ）を入力として、その画像データ中に描画されている手書き構成図の意味を表す意味データを出力するための学習モデルを生成および最適化するための処理である。
【００５０】
ここで生成する学習モデルは、例えば、入力された画像データから意味データをダイレクトに導き出すような学習モデルである。なお、入力された画像データ中に含まれる個々の図形（四角形、円、矢印など）を認識してアノテーションデータを生成し、当該アノテーションデータから意味データを導き出すような学習モデルとすることも可能である。後者の場合、学習データ生成部１４は、派生関係にある意味データとアノテーションデータと手書き構成図データとをデータセットとして学習データを生成するようにしてもよい。
【００５１】
図６は、学習モデル生成部５１により生成された学習モデルを使用して、手書き構成図の画像データから意味データを予測（認識）する予測器の構成例を示す図である。図６に示すように、予測処理部６１は、手書き構成図の画像データを入力し、これを学習モデル記憶部２３に記憶された学習モデルに適用することにより、当該学習モデルによって導かれる意味データを出力する。なお、手書き構成図の画像データからいったんアノテーションデータを生成する学習モデルの場合、予測処理部６１は、意味データに加えてアノテーションデータも出力するようにしてもよい。
【００５２】
予測処理部６１により出力された意味データ（およびアノテーションデータ）は、種々のアプリケーションソフトウェアで使用され得る。例えば、電子回路の設計図に関する手書き構成図が描かれた画像データを予測処理部６１に入力し、これによって出力された意味データをＥＤＡ（Electronic Design Automation）関連のアプリケーションソフトウェアに入力することにより、当該アプリケーションソフトウェアにおいて用意されている標準化された図形データを用いて生成された回路設計の構成図を得ることが可能となる。
【００５３】
以上詳しく説明したように、本実施形態では、テキストデータから成る複数の意味データを自動生成し、複数の意味データのそれぞれからテキストデータから成る複数のアノテーションデータを自動生成し、さらに、複数のアノテーションデータのそれぞれから複数の手書き構成図データを生成して、意味データとそれから派生した手書き構成図データとを含んだデータセットから成る学習データを生成するようにしている。これにより、手書き構成図データが１つも存在しない状態からであっても、大量の手書き構成図データを自動生成し、大量の学習データを得ることができる。
【００５４】
すなわち、意味データは単なるテキストデータであるから、コンピュータによって自動的に大量に生成することが可能である。また、アノテーションデータも単なるテキストデータであるから、コンピュータによって自動的に大量に生成することが可能である。しかも、１つの意味データから多数のアノテーションデータを生成できるので、多数の意味データをもとにして大量のアノテーションデータを生成することができる。さらに、大量に生成されたアノテーションデータのそれぞれに対し、個々の図形に対して手書き図形データを多数の組み合わせにより適用して手書き構成図データを生成しているので、多数の手書き構成図データを生成することができる。しかも、個々の手書き図形データに対して複数パターンの変形処理を施しているので、アノテーションデータに対する手書き図形データの組み合わせの数は膨大となり、この組み合わせによって得られる手書き構成図データの数も膨大なものとなる。
【００５５】
このように、本実施形態によれば、学習データの収集が困難な状況にある手書きの構成図に関して、大量の学習データを容易に生成することが可能である。
【００５６】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００５７】
１１  意味データ生成部
１２  アノテーションデータ生成部
１３  手書き構成図データ生成部
１４  学習データ生成部
【図１】
2020064438.tif 000003
【図２】
2020064438.tif 000004
【図３】
2020064438.tif 000005
【図４】
2020064438.tif 000006
【図５】
2020064438.tif 000007
【図６】
2020064438.tif 000008