(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023039888
(43)【公開日】2023-03-22
(54)【発明の名称】モデルトレーニング及び字庫作成の方法、装置、機器、及び記憶媒体
(51)【国際特許分類】
G06N 3/08 20230101AFI20230314BHJP
G06N 20/00 20190101ALI20230314BHJP
G06F 16/906 20190101ALI20230314BHJP
【FI】
G06N3/08
G06N20/00
G06F16/906
【審査請求】有
【請求項の数】21
【出願形態】OL
(21)【出願番号】P 2022007181
(22)【出願日】2022-01-20
(31)【優先権主張番号】202111057881.7
(32)【優先日】2021-09-09
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】▲劉▼ 家▲銘▼
(72)【発明者】
【氏名】唐 礼承
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA10
5B175FA03
(57)【要約】 (修正有)
【課題】モデルトレーニング及び字庫作成の方法、装置、機器及び記憶媒体を提供する。
【解決手段】方法は、ソースドメインのサンプル字及びソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得、ターゲットドメインのサンプル字およびターゲットドメインの関連字の少なくとも1つと、ターゲットドメインの生成字とをフォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、第1ロスに応じてフォント生成モデルのパラメータを調整し、ソースドメインのサンプル字、及びランダムベクトルをフォント生成ネットワークに入力し、ランダムドメインの生成字を得、ランダムドメインの生成字及びランダムドメインのサンプル字をロス分析ネットワークに入力し、第2ロスを得、第2ロスに応じてフォント生成モデルのパラメータを再び調整する。
【選択図】
図2A
【特許請求の範囲】
【請求項1】
ソースドメインのサンプル字および前記ソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得ることと、
ターゲットドメインのサンプル字および前記ターゲットドメインの関連字の少なくとも1つと、前記ターゲットドメインの生成字とを前記フォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、前記第1ロスに応じて前記フォント生成モデルのパラメータを調整することと、
前記ソースドメインのサンプル字、及びランダムベクトルを前記フォント生成ネットワークに入力し、ランダムドメインの生成字を得ることと、
前記ランダムドメインの生成字と、ランダムドメインのサンプル字を前記ロス分析ネットワークに入力し、第2ロスを得、前記第2ロスに応じて前記フォント生成モデルのパラメータを再び調整することと、を含む、
フォント生成モデルのトレーニング方法。
【請求項2】
前記フォント生成ネットワークは、内容エンコーダと、ランダムスタイルエンコーダと、ターゲットスタイルエンコーダと、デコーダとを含む、
請求項1に記載の方法。
【請求項3】
前記ソースドメインのサンプル字およびランダムベクトルを前記フォント生成ネットワークに入力し、ランダムドメインの生成字を得ることは、
前記ソースドメインのサンプル字を前記内容エンコーダに入力し、サンプル字の内容特徴を得ることと、
前記ランダムベクトルを前記ランダムスタイルエンコーダに入力し、ランダムドメインのスタイル特徴を得ることと、
前記ランダムドメインのスタイル特徴、及び前記サンプル字の内容特徴を前記デコーダに入力し、ランダムドメインの生成字を得ることと、を含む、
請求項2に記載の方法。
【請求項4】
ソースドメインのサンプル字および前記ソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得ることは、
ソースドメインのサンプル字を前記内容エンコーダに入力し、サンプル字の内容特徴を得ることと、
前記ソースドメインのサンプル字のターゲットドメインの関連字を前記ターゲットスタイルエンコーダに入力し、ターゲットドメインのスタイル特徴を得ることと、
前記ターゲットドメインのスタイル特徴と、前記サンプル字の内容特徴を前記デコーダに入力し、ターゲットドメインの生成字を得ることと、を含む、
請求項2に記載の方法。
【請求項5】
前記ロス分析ネットワークは、コンポーネント分類器と、文字判別器と、スタイル判別器と、文字分類器との少なくとも1つを含み、
前記第1ロスは、コンポーネント分類ロスと、第1文字分類ロスと、スタイル分類ロスと、第1誤字ロスとの少なくとも1つを含み、
前記第2ロスは、第2文字分類ロス及び第2誤字ロスとの少なくとも1つを含む、
請求項1に記載の方法。
【請求項6】
ターゲットドメインのサンプル字および前記ターゲットドメインの関連字の少なくとも1つと、前記ターゲットドメインの生成字とを前記フォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、前記第1ロスに応じて前記フォント生成モデルのパラメータを調整することは、
ターゲットドメインのサンプル字と、前記ターゲットドメインの生成字を前記文字判別器に入力し、第1文字分類ロスの第1文字ロス値を得、前記第1文字ロス値に基づいて、前記文字判別器のパラメータを調整して、調整された文字判別器を得ることと、
前記ターゲットドメインの生成字を、調整された文字判別器に入力し、第1文字分類ロスの第2文字ロス値を得、前記第2文字ロス値に基づいて、前記フォント生成ネットワークのパラメータを調整して、調整されたフォント生成ネットワークを得ることと、
ターゲットドメインのサンプル字、及び調整されたフォント生成ネットワークに基づいて更新されたターゲットドメインの生成字を、調整された文字判別器に入力し、前記第1文字ロス値を更新し、更新された第1文字ロス値に基づいて、文字判別器のパラメータを再び調整することと、を含む、
請求項5に記載の方法。
【請求項7】
ターゲットドメインのサンプル字と、前記ターゲットドメインの生成字を前記文字判別器に入力し、第1文字分類ロスの第1文字ロス値を得ることは、
ターゲットドメインのサンプル字と、前記ターゲットドメインの生成字を前記文字判別器に入力し、ターゲットドメインの生成字の文字分類ヘッド位置と、ターゲットドメインのサンプル字の文字分類ヘッド位置を得ることと、
ターゲットドメインの生成字の文字分類ヘッド位置と、ターゲットドメインのサンプル字の文字分類ヘッド位置に応じて、第1文字分類ロスの第1文字ロス値を決定することと、を含む、
請求項6に記載の方法。
【請求項8】
前記ターゲットドメインの生成字を、調整された文字判別器に入力し、第1文字分類ロスの第2文字ロス値を得ることは、
前記ターゲットドメインの生成字を、調整された文字判別器に入力し、ターゲットドメインの生成字の文字分類ヘッド位置を更新することと、
更新された文字分類ヘッド位置に応じて、第1文字分類ロスの第2文字ロス値を決定することと、を含む、
請求項6に記載の方法。
【請求項9】
ターゲットドメインのサンプル字および前記ターゲットドメインの関連字の少なくとも1つと、前記ターゲットドメインの生成字とを前記フォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、前記第1ロスに応じて前記フォント生成モデルのパラメータを調整することは、
ターゲットドメインのサンプル字と、前記ターゲットドメインの生成字を前記スタイル判別器に入力し、スタイル分類ロスの第1スタイルロス値を得、前記第1スタイルロス値に基づいて、前記スタイル判別器のパラメータを調整して、調整されたスタイル判別器を得ることと、
前記ターゲットドメインの生成字を、調整されたスタイル判別器に入力し、スタイル分類ロスの第2スタイルロス値を得、前記第2スタイルロス値に基づいて、前記フォント生成ネットワークのパラメータを調整して、調整されたフォント生成ネットワークを得ることと、
ターゲットドメインのサンプル字と、調整されたフォント生成ネットワークに基づいて更新されたターゲットドメインの生成字を、調整されたスタイル判別器に入力し、前記第1スタイルロス値を更新し、更新された第1スタイルロス値に基づいて、スタイル判別器のパラメータを再び調整することと、を含む、
請求項5に記載の方法。
【請求項10】
ターゲットドメインのサンプル字と、前記ターゲットドメインの生成字を前記スタイル判別器に入力し、スタイル分類ロスの第1スタイルロス値を得ることは、
ターゲットドメインのサンプル字と、前記ターゲットドメインの生成字を前記スタイル判別器に入力し、ターゲットドメインの生成字のスタイル分類ヘッド位置と、ターゲットドメインのサンプル字のスタイル分類ヘッド位置を得ることと、
ターゲットドメインの生成字のスタイル分類ヘッド位置と、ターゲットドメインのサンプル字のスタイル分類ヘッド位置に応じて、スタイル分類ロスの第1スタイルロス値を決定することと、を含む、
請求項9に記載の方法。
【請求項11】
前記ターゲットドメインの生成字を、調整されたスタイル判別器に入力し、スタイル分類ロスの第2スタイルロス値を得ることは、
前記ターゲットドメインの生成字を、調整されたスタイル判別器に入力し、ターゲットドメインの生成字のスタイル分類ヘッド位置を更新することと、
更新されたスタイル分類ヘッド位置に応じて、スタイル分類ロスの第2スタイルロス値を決定することと、を含む、
請求項9に記載の方法。
【請求項12】
前記ランダムドメインの生成字と、ランダムドメインのサンプル字を前記ロス分析ネットワークに入力し、第2ロスを得、前記第2ロスに応じて前記フォント生成モデルのパラメータを再び調整することは、
前記ランダムドメインの生成字と、ランダムドメインのサンプル字を前記文字判別器に入力し、第2文字分類ロスの第3文字ロス値を得、前記第3文字ロス値に基づいて、前記文字判別器のパラメータを調整することと、
前記ランダムドメインの生成字を、調整された文字判別器に入力し、第2文字分類ロスの第4文字ロス値を得、前記第4文字ロス値に基づいて、前記フォント生成ネットワークのパラメータを調整することと、
ランダムドメインのサンプル字と、調整されたフォント生成ネットワークに基づいて更新されたランダムドメインの生成字を、調整された文字判別器に入力し、前記第3文字ロス値を更新し、且つ更新された第3文字ロス値に基づいて、文字判別器のパラメータを再び調整することと、を含む、
請求項5に記載の方法。
【請求項13】
ターゲットドメインのサンプル字および前記ターゲットドメインの関連字の少なくとも1つと、前記ターゲットドメインの生成字とを前記フォント生成モデルのロス分析ネットワークに入力し、第1ロスを得ることは、
前記ターゲットドメインの関連字と、前記ターゲットドメインの生成字を前記コンポーネント分類器に入力し、前記ターゲットドメインの生成字のコンポーネントベクトルと、前記ターゲットドメインの関連字のコンポーネントベクトルを得ることと、
前記ターゲットドメインの生成字のコンポーネントベクトルと、前記ターゲットドメインの関連字のコンポーネントベクトルとの間の差に応じて、コンポーネント分類ロスを決定することと、を含む、
請求項5に記載の方法。
【請求項14】
ターゲットドメインのサンプル字および前記ターゲットドメインの関連字の少なくとも1つと、前記ターゲットドメインの生成字とを前記フォント生成モデルのロス分析ネットワークに入力し、第1ロスを得ることは、
ターゲットドメインのサンプル字と、前記ターゲットドメインの生成字を前記文字分類器に入力し、ターゲットドメインのサンプル字の文字分類ヘッドベクトルと、前記ターゲットドメインの生成字の文字分類ヘッドベクトルを得ることと、
前記ターゲットドメインのサンプル字の文字分類ヘッドベクトルと、前記ターゲットドメインの生成字の文字分類ヘッドベクトルとの間の差に応じて、第1誤字ロスを決定することと、を含む、
請求項5に記載の方法。
【請求項15】
前記ランダムドメインの生成字と、ランダムドメインのサンプル字を前記ロス分析ネットワークに入力し、第2ロスを得ることは、
前記ランダムドメインの生成字と、ランダムドメインのサンプル字を前記文字分類器に入力し、ランダムドメインの生成字の文字分類ヘッドベクトル、及び前記ランダムドメインのサンプル字の文字分類ヘッドベクトルを得ることと、
前記ランダムドメインの生成字の文字分類ヘッドベクトルと、前記ランダムドメインのサンプル字の文字分類ヘッドベクトルとの差に応じて、第2誤字ロスを決定することと、を含む、
請求項5に記載の方法。
【請求項16】
ソースドメインの入力字をフォント生成モデルに入力し、ターゲットドメインの新字を得ることと、
前記ターゲットドメインの新字に基づいて字庫を作成することと、を含み、
前記フォント生成モデルは、請求項1~15のいずれか一項に記載の方法により生成されたものである、
字庫作成方法。
【請求項17】
ソースドメインのサンプル字、及び前記ソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得るための生成字決定モジュールと、
ターゲットドメインのサンプル字および前記ターゲットドメインの関連字の少なくとも1つと、前記ターゲットドメインの生成字とを前記フォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、前記第1ロスに応じて前記フォント生成モデルのパラメータを調整するためのモデルトレーニングモジュールと、を備え、
前記生成字決定モジュールは、さらに、前記ソースドメインのサンプル字およびランダムベクトルを前記フォント生成ネットワークに入力し、ランダムドメインの生成字を得るために用いられ、
前記モデルトレーニングモジュールは、さらに、前記ランダムドメインの生成字と、ランダムドメインのサンプル字を前記ロス分析ネットワークに入力し、第2ロスを得、前記第2ロスに応じて前記フォント生成モデルのパラメータを再び調整するために用いられる、
フォント生成モデルのトレーニング装置。
【請求項18】
ソースドメインの入力字をフォント生成モデルに入力し、ターゲットドメインの新字を得るための新字生成モジュールと、
前記ターゲットドメインの新字に基づいて字庫を作成するための字庫作成モジュールと、を備え、
前記フォント生成モデルは、請求項1~15のいずれか一項に記載の方法によりトレーニングされたものである、
字庫作成装置。
【請求項19】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続されるメモリと、を含み、
前記メモリには、前記少なくとも1つのプロセッサにより実行可能な命令が記憶されており、前記命令は、前記少なくとも1つのプロセッサが請求項1~15のいずれか一項に記載のフォント生成モデルのトレーニング方法、及び/又は請求項16に記載の字庫作成方法を実行可能であるように、前記少なくとも1つのプロセッサにより実行される、
電子機器。
【請求項20】
コンピュータ命令が記憶された非一時的コンピュータ可読記憶媒体であって、
前記コンピュータ命令は、コンピュータに、請求項1~15のいずれか一項に記載のフォント生成モデルのトレーニング方法、及び/又は請求項16に記載の字庫作成方法を実行させるために用いられる、
非一時的コンピュータ可読記憶媒体。
【請求項21】
プロセッサに、請求項1~15のいずれか一項に記載のフォント生成モデルのトレーニング方法、及び/又は請求項16に記載の字庫作成方法を実行させる、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、人工知能の技術分野に関し、具体的に、コンピュータビジョン及び深層学習の技術分野に関し、OCR光学文字認識などのシーンに適用することができる。
【背景技術】
【0002】
インターネットの発展、及び人間の個性的な需要の増加に伴い、カスタムスタイルのフォントの生成が徐々に興っている。
【0003】
フォントの生成のプロセスは、実質的に、画像スタイルの遷移のプロセスであり、すなわち、1枚の画像を、内容を変えないまま別のスタイルに変換することであり、例えば、標準的な楷書体スタイルの字の
(外1)
をユーザの手書きスタイルの
(外2)
に変換する。
【発明の概要】
【0004】
本開示は、モデルトレーニング及び字庫作成の方法、装置、機器、及び記憶媒体を提供する。
【0005】
本開示の一局面によれば、フォント生成モデルのトレーニング方法であって、
ソースドメイン(source domain)のサンプル字と、ソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得ることと、
ターゲットドメイン(target domain)のサンプル字およびターゲットドメインの関連字の少なくとも1つと、ターゲットドメインの生成字とをフォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、第1ロスに応じてフォント生成モデルのパラメータを調整することと、
ソースドメインのサンプル字およびランダムベクトルをフォント生成ネットワークに入力し、ランダムドメインの生成字を得ることと、
ランダムドメインの生成字と、ランダムドメインのサンプル字をロス分析ネットワークに入力し、第2ロスを得、第2ロスに応じてフォント生成モデルのパラメータを再び調整することと、
を含む、フォント生成モデルのトレーニング方法を提供する。
【0006】
本開示の他の局面によれば、字庫作成方法であって、
ソースドメインの入力字をフォント生成モデルに入力し、ターゲットドメインの新字を得ることと、
ターゲットドメインの新字に基づいて字庫を作成することと、を含み、
フォント生成モデルは、本開示のいずれかの実施例に係るフォント生成モデルのトレーニング方法によりトレーニングされたものである、字庫作成方法を提供する。
【0007】
本開示の他の局面によれば、電子機器であって、
少なくとも1つのプロセッサと、
少なくとも1つのプロセッサに通信接続されるメモリと、を含み、
メモリには、少なくとも1つのプロセッサにより実行可能な命令が記憶されており、命令は、少なくとも1つのプロセッサが本開示のいずれかの実施例に係るフォント生成モデルのトレーニング及び/又は字庫作成方法を実行可能であるように、少なくとも1つのプロセッサにより実行される、
電子機器を提供する。
【0008】
本開示の他の局面によれば、コンピュータ命令が記憶された非一時的コンピュータ可読記憶媒体であって、コンピュータ命令は、本開示のいずれかの実施例に係るフォント生成モデルのトレーニング及び/又は字庫作成方法をコンピュータに実行させるために用いられる、非一時的コンピュータ可読記憶媒体を提供する。
【0009】
本開示の技術により、僅かなサンプルでフォント生成モデルをトレーニングすることに新たな考え方を提供し、モデルトレーニングの正確性及び汎化性を向上させる。
【0010】
この部分に記載の内容は、本開示の実施例の肝心又は重要な特徴を示すと意図するわけでもなく、本開示の範囲も制限するためでもないことを理解すべきである。本開示の他の特徴は、以下の明細書を通じて分かりやすくなる。
【図面の簡単な説明】
【0011】
図面は、本案をよりよく理解するためのものであり、本開示に対する限定とはならない。
【0012】
【
図1】本開示の一実施例に係る、フォント生成モデルのトレーニング方法及び/又は字庫作成方法を適用可能な例示的なシステムアーキテクチャの模式図である。
【
図2A】本開示の実施例に係るフォント生成モデルのトレーニング方法のフローチャートである。
【
図2B】本開示の実施例に係るフォント生成モデルの構成模式図である。
【
図3】本開示の実施例に係る他のフォント生成モデルの構成模式図である。
【
図4】本開示の実施例に係る他のフォント生成モデルのトレーニング方法のフローチャートである。
【
図5】本開示の実施例に係る他のフォント生成モデルのトレーニング方法のフローチャートである。
【
図6】本開示の実施例に係る字庫作成方法のフローチャートである。
【
図7】本開示の実施例に係るフォント生成モデルのトレーニング装置の構成模式図である。
【
図8】本開示の実施例に係る字庫作成装置の構成模式図である。
【
図9】本開示の実施例に係るフォント生成モデルのトレーニング方法及び/又は字庫作成方法を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0013】
以下、図面を参照しながら、本開示の例示的な実施例について説明し、このうち、理解に寄与するために、本開示の実施例の様々な細部を含み、それらを、例示的なものであると思うべきである。そのため、当業者は、本開示の範囲及び要旨を脱離せずに、ここに記載の実施例に対する様々な変更及び補正が可能であることを知るべきである。同様に、明瞭かつ簡明のために、以下の記載において、公知の機能及び構成についての説明を省略する。
【0014】
フォントの生成とは、画像スタイル遷移の分野における新興タスクであり、画像スタイル遷移とは、1枚の画像を、内容を変えないまま他のスタイルに変換することであり、深層学習の応用の人気研究方向である。
【0015】
現在では、GAN(Generative Adversarial Networks、敵対的生成ネットワーク)モデルを用いて、フォントの生成を実現することができる。しかし、GANモデルに基づくフォント生成案において、僅かなデータ量でトレーニングされたネットワークを使用すれば、傾き、大きさ、一部の筆画の特徴などのような弱い特徴のみを学習することができ、最もユーザースタイルを有する特徴を学習することができない。多くのデータ量でトレーニングされたネットワークを使用してもよく、スタイルには強いが、トレーニングセット以外の漢字は誤字を生みやすい。これらの主流の研究成果は、いずれもフォントレベルの効果を達成しにくい。
【0016】
本開示の実施例は、フォント生成モデルのトレーニング方法、及び該フォント生成モデルを用いて字庫を作成する方法を提供する。フォント生成モデルをトレーニングしてソースドメインとターゲットドメインとのフォントスタイル遷移タスクを実行するプロセスにおいて、ソースドメインとランダムスタイルとのフォント遷移トレーニングを導入して、すなわち、ランダムトレーニング分岐を増加させることにより、フォント生成モデルがフォントスタイル遷移を実行する能力を向上させ、ターゲットドメインのサンプルデータが少ない、又はソースドメインのフォントがフォント分布のスタイルに合わない場合、依然として美観で正確なフォントを生成することでき、モデルの正確性及び汎化性を向上させる。
【0017】
図1は、本開示の一実施例に係る、フォント生成モデルのトレーニング方法及び/又は字庫作成方法を適用可能な例示的なシステムアーキテクチャの模式図である。なお、
図1に示すものは、本開示の実施例を適用可能なシステムアーキテクチャの例だけであり、当業者が本開示の技術内容を理解することに寄与するためのものであり、本開示の実施例が他の機器、システム、環境、又はシーンに用いることができないとは意図しない。
【0018】
図1に示されるように、この実施例に係るシステムアーキテクチャ100は、複数の端末機器101と、ネットワーク102と、サーバ103とを含むことができる。ネットワーク102は、端末機器101とサーバ103との間で通信リンクの媒体を提供するために用いられる。ネットワーク102は、有線及び/又は無線通信リンクなどの様々な接続タイプを含むことができる。
【0019】
ユーザは端末機器101を用いてネットワーク102を介してサーバ103とインタラクトすることにより、メッセージを受送信すること等ができる。端末機器101は、様々な電子機器であってよく、スマートフォン、タブレット型コンピュータ、ラップトップ型携帯コンピュータなどを含んでいるが、それらに限定されない。
【0020】
本開示の実施例に係るフォント生成モデルのトレーニング方法及び/又は字庫作成方法のうちの少なくとも1つは、一般的にサーバ103により実行されてよい。それに対応して、本開示の実施例に係るフォント生成モデルのトレーニング装置及び/又は字庫作成の装置は、一般的にサーバ103に設けられてよい。本開示の実施例に係るフォント生成モデルのトレーニング方法及び/又は字庫作成方法は、サーバ103とは別に、端末機器101及び/又はサーバ103と通信可能なサーバ又はサーバクラスタにより実行されてもよい。それに対応して、本開示の実施例に係るフォント生成モデルのトレーニング装置及び/又は字庫作成の装置は、サーバ103とは別に、端末機器101及び/又はサーバ103と通信可能なサーバ又はサーバクラスタに設けられてもよい。
【0021】
図2Aは、本開示の実施例に係るフォント生成モデルのトレーニング方法のフローチャートであり、
図2Bは、本開示の実施例に係るフォント生成モデルの構成模式図である。本開示の実施例は、フォントスタイル遷移タスクを実行するフォント生成モデルをトレーニングする場合に適用され、特に、僅かなサンプルデータに基づいて、フォントスタイル遷移タスクを実行するフォント生成モデルをトレーニングする場合に適用される。この方法は、フォント生成モデルのトレーニング装置により実行することができ、この装置は、ソフトウェア及び/又はハードウェアで実現することができる。
図2A~2Bに示されるように、本実施例に係るフォント生成モデルのトレーニング方法は、以下のステップを含む。
【0022】
ステップS201:ソースドメインのサンプル字およびソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得る。
【0023】
ここで、ソースドメインのサンプル字は、ソースドメインのフォントスタイルを有する画像であってよく、ソースドメインのスタイルのフォントは、楷書体、明朝体、又はゴシック体(Gothic)などの常規フォントであってよい。ターゲットドメインの関連字は、ターゲットドメインのフォントスタイルを有し、かつソースドメインのサンプル字の部首をカバーすることができる画像であってよい。ターゲットドメインのフォントスタイルは、ユーザの手書きフォントスタイル、又は他のレタリングフォントスタイルであってよい。なお、本実施例において、ターゲットドメインの関連字の個数は1つ又は複数であってよく、好ましくは複数である。ターゲットドメインの生成字は、フォント生成モデルによって生成された、ソースドメインのサンプル字の内容と、ターゲットドメインの関連字のフォントスタイルを有する画像であってよく、例えば、ソースドメインのサンプル字は
(外3)
であり、対応する部首は
(外4)
と
(外5)
とを含むと、ターゲットドメインの関連字は、ターゲットドメインのフォントスタイルを有し、かつ
(外6)
又は
(外7)
とが含まれる全ての字の画像であってよい、例えば、「称」及び「佳」などである。ターゲットドメインの生成字は、ターゲットドメインのフォントスタイルを有する
(外8)
であってよい。
【0024】
図2Bに示されるように、本願の実施例に係るフォント生成モデル2は、ソースドメインのサンプル字をソースドメインのスタイルのフォントからターゲットドメインのスタイルのフォントに遷移するニューラルネットワークモデルである。該フォント生成モデル2は、フォント生成ネットワーク20と、ロス分析ネットワーク21とを含むことができる。ここで、フォント生成ネットワーク20は、フォントスタイル遷移のタスクを実行するためのものであり、すなわち、フォント生成モデルのバックボーンネットワークであり、ロス分析ネットワーク21は、モデルトレーニングの段階においてトレーニングプロセス中のモデルのロス関数を算出することにより、モデルがロス関数に基づいてパラメータの調整を行うために用いられる。
【0025】
具体的には、本実施例は、一回のイテレーティブトレーニングタスク(Iterative Training Task)を実行する時に、まず、ソースドメインのサンプル字に基づいて、該ソースドメインのサンプル字の部首をカバーする一連のターゲットドメインの関連字を取得し、その後、ソースドメインのサンプル字およびターゲットドメインの関連字をフォント生成モデル2のフォント生成ネットワーク20に入力し、フォント生成ネットワーク20が、入力されたソースドメインのサンプル字およびターゲットドメインの関連字に基づいて、ソースドメインのサンプル字のフォントスタイルをソースドメインのフォントスタイルからターゲットドメインのフォントスタイルに遷移して、ターゲットドメインの生成字を得てよい。
図2Bに示されるように、明朝体スタイルの字の
(外9)
(すなわち、ソースドメインのサンプル字)、及び手書きスタイルの字の「称」と「佳」(すなわち、ターゲットドメインの関連字)をフォント生成モデル2のフォント生成ネットワーク20に入力し、手書きスタイルの字の
(外10)
(すなわち、ターゲットドメインの生成字)を得る。
【0026】
ステップS202:ターゲットドメインのサンプル字およびターゲットドメインの関連字の少なくとも1つと、ターゲットドメインの生成字とをフォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、第1ロスに応じてフォント生成モデルのパラメータを調整する。
【0027】
ここで、ターゲットドメインのサンプル字は、ソースドメインのサンプル字の内容と、ターゲットドメインの関連字のフォントスタイルを有する、実際に存在する画像であってよい。それは、ターゲットドメインの生成字に対応する標準字である。例えば、ソースドメインのサンプル字は
(外11)
であり、ターゲットドメインはユーザの手書きスタイルのフォントであると、該ターゲットドメインのサンプル字は、ユーザがリアルに手書きした
(外12)
である。ターゲットドメインの生成字は、フォント生成モデルによって予測されたユーザの手書きの字の
(外13)
である。第1ロスは、ステップS201においてターゲットドメインの関連字と、ソースドメインのサンプル字に基づいてモデルをトレーニングする際に算出されたロス関数である。
【0028】
本実施例に係るフォント生成モデルにおけるロス分析ネットワークは、少なくとも1つのタイプのロス函数を解析する少なくとも1つのサブネットワークを含むことができ、つまり、該ロス分析ネットワークによって決定された第1ロスは、少なくとも1つのタイプのロス関数値を含むことができる。例えば、フォント生成モデルのロス分析ネットワークは、ターゲットドメインのサンプル字と、ターゲットドメインの生成字との文字内容の一致性を分析し、文字分類ロスを生成することができ、ターゲットドメインのサンプル字と、ターゲットドメインの生成字とのフォントスタイルの一致性を分析し、スタイル分類ロスを生成することができ、ターゲットドメインの関連字と、ターゲットドメインの生成字との部首(すなわち、コンポーネント)の一致性を分析し、コンポーネント分類ロスを生成することができ、ターゲットドメインの生成字が誤字であるかロスを分析し、誤字ロスを生成することなどができる。本実施例は、ロス分析ネットワークにより第1ロスを算出した後、該第1ロスに基づいて、フォント生成モデルのフォント生成ネットワークと、ロス分析ネットワークとのパラメータ値を調整する。この時、一回のイテレーティブトレーニングタスクの第1段階のトレーニング、すなわち、ターゲット分岐トレーニングを完了する。
【0029】
ステップS203:ソースドメインのサンプル字およびランダムベクトルをフォント生成ネットワークに入力し、ランダムドメインの生成字を得る。
【0030】
ここで、ランダムベクトルは、正規分布に従ってランダムにサンプリングされたランダムベクトルである。該ランダムベクトルは、ランダムドメインのスタイルのフォントの1つに対応する。ランダムベクトルの次元は予め設定されていてよい。ランダムドメインの生成字は、ソースドメインのサンプル字の内容と、ランダムベクトルに対応するランダムドメインのフォントスタイルとを有する画像であってよい。
【0031】
本実施例は、一回のイテレーティブトレーニングタスクに対しては、S201~S202の第1段階のトレーニングを完成した後、さらに、ソースドメインのサンプルフォントと、ランダムにサンプリングされたランダムベクトルに基づいて、モデルに第2段階のトレーニング、すなわち、ランダム分岐トレーニングを行う必要がある。具体的には、ソースドメインのサンプル字およびランダムベクトルをフォント生成モデル2のフォント生成ネットワーク20に入力し、フォント生成ネットワーク20は、入力されたソースドメインのサンプル字及びランダムベクトルに基づいて、ソースドメインのサンプル字のフォントスタイルをソースドメインのフォントスタイルから、ランダムベクトルに対応するランダムドメインのフォントスタイルに遷移させ、ランダムドメインの生成字を得る。
【0032】
ステップS204:ランダムドメインの生成字と、ランダムドメインのサンプル字をロス分析ネットワークに入力し、第2ロスを得、第2ロスに応じてフォント生成モデルのパラメータを再び調整する。
【0033】
ここで、ランダムドメインのサンプル字は、ソースドメインのサンプル字の内容と、ランダムドメインのフォントスタイルを有する、実際に存在する画像であってよい。それは、ランダムドメインの生成字に対応する標準字である。第2ロスは、ステップS203においてランダムベクトル、及びソースドメインのサンプル字に基づいてモデルをトレーニングする際に算出されたロス関数である。第1ロス及び第2ロスは、同じであってもよく、異なっていてもよい。
【0034】
ステップS203においてトレーニングするとき、フォントスタイルがランダムであるため、ロス分析ネットワークは、スタイル遷移が正確であるかどうかを決定することできず、従って、ロス分析ネットワークは、このステップを実行して第2ロスを生成するとき、文字内容から考えてもよく、例えば、ランダムドメインの生成字の文字内容と、ランダムドメインのサンプル字とが一致しているかどうかを解析し、文字分類ロスを生成することであってよく、また、ランダムドメインの生成字が誤字であるかという誤字ロスを分析してもよい。本実施例は、ロス分析ネットワークにより第2ロスを算出した後、該第2ロスに基づいて、フォント生成モデルのフォント生成ネットワークと、ロス分析ネットワークとのパラメータ値を調整する。この時、一回のイテレーティブトレーニングタスクの第2段階のトレーニング、すなわち、ランダム分岐トレーニングを完了する。
【0035】
なお、本願の実施例の案は、複数組のソースドメインのサンプル字に基づいて、モデルを複数回イテレーティブトレーニングする必要があり、具体的には、各組のソースドメインのサンプル字に対して、フォント生成モデルに一回のイテレーティブトレーニングを行う時に、ターゲット分岐(すなわち、S201~S202)及びランダム分岐(すなわち、S203~S204)に分けて2段階のトレーニングを行う。予め設けられたトレーニングの停止条件になるまでイテレーティブトレーニングが複数回行われると、フォント生成モデルのパラメータの調整が停止され、トレーニングされたフォント生成モデルが得られる。トレーニングの停止条件は、トレーニングの回数が予め設けられた回数に達すること、又は上記第1ロス及び/又は第2ロスが収束することなどを含むことができる。
【0036】
さらに、なお、フォント生成モデルに入力された字(例えば、ソースドメインのサンプル字、ターゲットドメインの関連字、ターゲットドメインのサンプル字、及びランダムドメインのサンプル字)は、画像の形で入力されたものであってよく、そして、フォント生成モデルに入力された字に対応する画像は、公開のデータセットからのもの、又は関連する権利が付与されて取得されたものであってよい。
【0037】
本願の実施例の案は、フォント生成モデルに一回のイテレーティブトレーニングを行う時に、ソースドメインのサンプル字およびターゲットドメインの関連字に基づいてモデルにターゲット分岐トレーニングを行う段階と、ソースドメインのサンプル字、及びランダムベクトルに基づいてモデルにランダム分岐トレーニングを行う段階と、を含む。ランダム分岐トレーニング段階を導入することにより、フォント生成モデルの、フォントスタイル遷移を実行する能力を向上させ、ターゲットドメインのサンプルデータが少ない、又はソースドメインのフォントがフォント分布のスタイルに合わない場合、依然として美観で正確なフォントを生成することができ、モデルの正確性及び汎化性を向上させる。僅かなサンプルでフォント生成モデルをトレーニングすることに新たな考え方を提供する。
【0038】
図3は、本開示の実施例に係る他のフォント生成モデルの構成模式図である。
図3に示されるように、本願の実施例におけるフォント生成モデル3のフォント生成ネットワーク30は、内容エンコーダ301と、ランダムスタイルエンコーダ302と、ターゲットスタイルエンコーダ303と、デコーダ304とを含む。ここで、内容エンコーダ301は、ソースドメインのサンプル字の内容特徴をエンコードするためのものであり、ランダムスタイルエンコーダ302は、ランダムベクトルのスタイル特徴をエンコードするためのものであり、ターゲットスタイルエンコーダ303は、ターゲットドメインの関連字のスタイル特徴をエンコードするためのものである。好ましくは、上記各エンコーダネットワークは、首尾接続された複数の全接続層からなる多層感知ネットワークを含むことができる。各エンコーダネットワークの多層感知ネットワークにおけるネットワーク層のデザインは、同じであってもよく、異なっていてもよい。デコーダ304は、各エンコーダによってエンコードされた特徴に基づいて、スタイル遷移後の生成字をデコードして得るためのものである。本実施例に係る上記各エンコーダネットワークは、いずれもデコーダ304に接続されている。
【0039】
本実施例に係るフォント生成モデルのスタイルエンコーダは、遷移されるターゲットスタイルのターゲットスタイルエンコーダだけでなく、ランダムスタイルのランダムスタイルエンコードも含み、こうして構成するメリットは、モデルトレーニング段階をサポートし、ランダムのスタイルのフォントの、モデルトレーニングに対する影響を導入して、フォント生成モデルがフォントスタイル遷移を実行する能力を向上させ、さらに、モデルの正確性及び汎化性を向上させることができることである。
【0040】
本願の実施例に係るフォント生成モデル3のロス分析ネットワーク31は、コンポーネント分類器311と、文字判別器312と、スタイル判別器313と、文字分類器314との少なくとも1つを含む。ここで、コンポーネント分類器311は、コンポーネント分類ロスを算出するためのものであり、文字判別器312は、文字分類ロスを算出するためのものであり、スタイル判別器313は、スタイル分類ロスを算出するためのものであり、文字分類器314は、誤字ロスを算出するためのものである。このため、本実施例に係る第1ロスは、コンポーネント分類ロスと、第1文字分類ロスと、スタイル分類ロスと、第1誤字ロスとの少なくとも1つを含み、第2ロスは、第2文字分類ロス及び/又は第2誤字ロスを含む。上記各ロスを算出する具体的なプロセスについては、後続の実施例にて詳しく説明する。
【0041】
本実施例に係るロス分析ネットワークは、異なるタイプのロスを算出する複数のネットワーク構成を含むことができ、こうして構成するメリットは、異なるタイプの複数のロスによりモデルをトレーニングして、モデルトレーニングの結果の正確性を大幅に向上させることである。
【0042】
次に、
図3に示すフォント生成モデルに基づいて、該フォント生成モデルのトレーニング方法を具体的に説明する。
【0043】
図4は、本開示の実施例に係る他のフォント生成モデルのトレーニング方法のフローチャートである。本開示の実施例は、上記実施例を踏まえて、ターゲットドメインの生成字、及びランダムドメインの生成字を得るプロセスについてさらに詳しく説明し、
図3~4に示されるように、本実施例に係るフォント生成モデルのトレーニング方法は、以下のステップを含む。
【0044】
ステップS401:ソースドメインのサンプル字を内容エンコーダに入力し、サンプル字の内容特徴を得る。
【0045】
ここで、サンプル字の内容特徴は、ソースドメインのサンプル字のフォント内容(例えば、文字種別、及びコンポーネント種別)を表す特徴であってよい。
【0046】
例示的には、
図3に示されるように、ソースドメインのサンプル字(例えば、明朝体スタイルのフォントの
(外14)
)をフォント生成モデル3のフォント生成ネットワーク30の内容エンコーダ301に入力し、該内容エンコーダ301は、入力されたソースドメインのサンプル字のフォント内容をエンコードし、サンプル字の内容特徴を得る。
【0047】
ステップS402:ソースドメインのサンプル字のターゲットドメインの関連字をターゲットスタイルエンコーダに入力し、ターゲットドメインのスタイル特徴を取得する。
【0048】
ここで、ターゲットドメインのスタイル特徴は、ターゲットドメインのフォントスタイルを表す特徴であってよい。
【0049】
例示的には、
図3に示されるように、ソースドメインのサンプル字のターゲットドメインの関連字(例えば、手書きスタイルのフォントの「称」と「佳」)をフォント生成モデル3のフォント生成ネットワーク30のターゲットスタイルエンコーダ303に入力し、該ターゲットスタイルエンコーダ303は、入力されたターゲットドメインの関連字のフォントスタイルをエンコードし、ターゲットドメインのスタイル特徴を得る。
【0050】
好ましくは、入力されたターゲットドメインの関連字が複数であると、ターゲットスタイルエンコーダ303は、まず、ターゲットドメインの関連字ごとにサブスタイル特徴を1つ生成し、その後、各サブスタイル特性を処理(例えば、平均値処理)し、ターゲットドメインを表すことができる全体的なスタイル特徴(すなわち、ターゲットドメインのスタイル特徴)を得てよい。
【0051】
ステップS403:ターゲットドメインのスタイル特徴と、サンプル字の内容特徴をデコーダに入力し、ターゲットドメインの生成字を得る。
【0052】
例示的には、
図3に示されるように、内容エンコーダ301によってエンコードされたサンプル字の内容特徴、及びターゲットスタイルエンコーダ303によってエンコードされたターゲットドメインのスタイル特徴をデコーダ304に入力し、デコーダ304は、ターゲットドメインのスタイル特徴と、サンプル字の内容特徴をデコードし、さらに、デコードの結果に基づいて、ソースドメインのサンプル字の内容と、ターゲットドメインの関連字のフォントスタイルを有するターゲットドメインの生成字(例えば、手書きスタイルの
(外15)
)を融合して得る。
【0053】
ステップS404:ターゲットドメインのサンプル字およびターゲットドメインの関連字の少なくとも1つと、ターゲットドメインの生成字とをフォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、第1ロスに応じてフォント生成モデルのパラメータを調整する。
【0054】
ステップS405:ソースドメインのサンプル字を内容エンコーダに入力し、サンプル字の内容特徴を得る。
【0055】
なお、該ステップの具体的な実行プロセスは、S401と同じである。第2段階のトレーニングを実行するとき、該ステップを実行しなくてもよく、すなわち、S407を実行するとき、S401において得られたサンプルの内容特徴を取得すればよい。
【0056】
ステップS406:ランダムベクトルをランダムスタイルエンコーダに入力し、ランダムドメインのスタイル特徴を得る。
【0057】
ここで、ランダムドメインのスタイル特徴は、ランダムベクトルに対応するランダムドメインのフォントスタイルを表す特徴であってよい。
【0058】
例示的には、
図3に示されるように、正規分布に合致するランダムベクトルを、ランダムにサンプリングして、フォント生成モデル3のフォント生成ネットワーク30のランダムスタイルエンコーダ302に入力し、該ランダムスタイルエンコーダ302は、その内部の多層感知ネットワークにより、ランダムベクトルに対応するランダムのフォントスタイルのランダムドメインのスタイル特徴を得ることができる。
【0059】
ステップS407:ランダムドメインのスタイル特徴と、サンプル字の内容特徴をデコーダに入力し、ランダムドメインの生成字を得る。
【0060】
例示的には、
図3に示されるように、内容エンコーダ301によってエンコードされたサンプル字の内容特徴、及びランダムスタイルエンコーダ302によってエンコードされたランダムのスタイル特徴をデコーダ304に入力し、デコーダ304は、ランダムドメインのスタイル特徴、及びサンプル字の内容特徴をデコードし、さらに、デコードの結果に基づいて、ソースドメインのサンプル字の内容と、ランダムドメインのフォントスタイルを有するランダムドメインの生成字(
図3において、ランダムドメインの生成字を図示しない)を融合して得る。
【0061】
ステップS408:ランダムドメインの生成字と、ランダムドメインのサンプル字をロス分析ネットワークに入力し、第2ロスを得、第2ロスに応じてフォント生成モデルのパラメータを再び調整する。
【0062】
本願の実施例の案は、フォント生成モデルに一回のイテレーティブトレーニングを行う時に、ソースドメインのサンプル字およびターゲットドメインの関連字に基づいてモデルをトレーニングするだけでなく、ランダムベクトルをランダムスタイルエンコードネットワークに入力し、ランダムスタイルエンコードネットワークによって出力されたランダムのスタイル特徴に基づいて、ロス関数を再び算出して、モデルにランダム分岐トレーニングを行う。その同時に、ターゲットのスタイル字及びランダムのスタイルフォントの、モデルトレーニングに対する影響を導入して、フォント生成モデルの、フォントスタイル遷移を実行する能力を向上させ、さらに、モデルの正確性及び汎化性を向上させる。
【0063】
図5は、本開示の実施例に係るフォント生成モデルのトレーニング方法のフローチャートである。本開示の実施例は、上記実施例を踏まえて、第1ロス及び第2ロスを算出する方法、並びに第1ロス及び第2ロスに基づいてフォント生成モデルのパラメータを調整する方法についてさらに詳しく説明し、
図3及び
図5に示されるように、本実施例に係るフォント生成モデルのトレーニング方法は、以下のステップを含む。
【0064】
ステップS501:ソースドメインのサンプル字およびソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得る。
【0065】
ステップS502:ターゲットドメインのサンプル字およびターゲットドメインの関連字の少なくとも1つと、ターゲットドメインの生成字とをフォント生成モデルのロス分析ネットワークに入力し、コンポーネント分類ロスと、第1文字分類ロスと、スタイル分類ロスと、第1誤字ロスとの少なくとも1つを得、コンポーネント分類ロスと、第1文字分類ロスと、スタイル分類ロスと、第1誤字ロスとの少なくとも1つに応じてフォント生成モデルのパラメータを調整する。
【0066】
次に、S502における各タイプのロスの算出方法、及び該ロスに基づいてモデルをどのようにトレーニングするかというプロセスを順次に説明する。
【0067】
(1)コンポーネント分類ロスを決定するプロセスは、ターゲットドメインの関連字、及びターゲットドメインの生成字をコンポーネント分類器に入力し、ターゲットドメインの生成字のコンポーネントベクトルと、ターゲットドメインの関連字のコンポーネントベクトルを得ることと、ターゲットドメインの生成字のコンポーネントベクトルと、ターゲットドメインの関連字のコンポーネントベクトルとの間の差に応じて、コンポーネント分類ロスを確定することと、を含むことができる。
【0068】
ここで、コンポーネントベクトルは、N次元のベクトルであってよく、Nは、コンポーネント表に含まれる全てのコンポーネント、すなわち、全ての部首の数量値である。コンポーネントベクトルにおける各要素は、コンポーネント表における1つのコンポーネントを表し、入力された字に該コンポーネントが含まれる場合、該要素は第1数値(例えば、1)であり、そうでなければ第2数値(例えば、0)である。そのため、コンポーネント分類器は、生成されたコンポーネントベクトルにより、入力された字に予め設けられた部首(すなわち、コンポーネント)が含まれるかどうかを予測することができる。
【0069】
具体的には、本実施例は、ターゲットドメインの関連字と、ターゲットドメインの生成字をコンポーネント分類器311に入力し、コンポーネント分類器311は、入力されたターゲットドメインの関連字及びターゲットドメインの生成字に対して、それぞれ1つのコンポーネントベクトルを生成し、例えばコンポーネントベクトル1とコンポーネントベクトル2とが挙げられ、さらに、N次元のコンポーネントベクトル1と、N次元のコンポーネントベクトル2との間の差に基づいて、コンポーネント分類ロス値を算出してよい。例えば、2つのコンポーネントベクトルの的交差エントロピーを算出して、分類ロス値とする。該コンポーネント分類ロス値を算出した後、全てのスタイルの字が該コンポーネント分類器311を通過した後、正確にコンポーネント分類され得るように、該コンポーネント分類ロス値を制限として、フォント生成モデル3のパラメータを調整することができる。本実施例は、フォント生成モデルのトレーニングプロセスにおいて、コンポーネント分類ロスを導入し、全てのスタイルの字が、該コンポーネント分類器を通過した後、正確にコンポーネント分類され得ることを保証でき、さらに、ターゲットドメインの生成字が、ターゲットドメインの関連字のコンポーネント(すなわち、複数のターゲットの関連字が共有するコンポーネント)を残すことを保証できる。
【0070】
(2)第1文字分類ロスを決定するプロセスは、以下のサブステップを含むことができる。
【0071】
サブステップA:ターゲットドメインのサンプル字と、ターゲットドメインの生成字を文字判別器に入力し、第1文字分類ロスの第1文字ロス値を得、第1文字ロス値に基づいて、文字判別器のパラメータを調整する。
【0072】
具体的には、
図3に示されるように、該サブステップは、ターゲットドメインのサンプル字、及びターゲットドメインの生成字を文字判別器312に入力し、ターゲットドメインの生成字の文字分類ヘッド位置と、ターゲットドメインのサンプル字の文字分類ヘッド位置を得、ターゲットドメインの生成字の文字分類ヘッド位置と、ターゲットドメインのサンプル字の文字分類ヘッド位置に応じて、第1文字分類ロスの第1文字ロス値を決定することであってよい。
【0073】
本実施例では、トレーニングサンプルは、M個(例えば、6700個)の字の画像を含むことができる。M個の字は、M次元のベクトル、すなわち、文字分類ヘッドベクトルを構成することができ、ベクトルにおける各要素は1つの字に対応し、文字分類ヘッドベクトルにおける該要素の位置は、文字分類ヘッド位置である。本実施例に係る文字判別器312は、ターゲットドメインのサンプル字のためにそれに対応する文字分類ヘッド位置Xを決定し、ターゲットドメインの生成字のためにそれに対応する文字分類ヘッド位置X*を決定する。そして、下記式(1)に基づいて、第1文字分類ロスの第1文字ロス値を算出する。第1文字ロス値を決定した後、該第1文字ロス値に基づいて、文字判別器312のパラメータを1回パラメータ調整する。
【0074】
【0075】
ここで、
【数2】
は、第1文字分類ロスの第1文字ロス値であり、Xは、ターゲットドメインのサンプル字の文字分類ヘッド位置であり、X*は、ターゲットドメインの生成字の文字分類ヘッド位置である。
【0076】
サブステップB:ターゲットドメインの生成字を、調整された文字判別器に入力し、第1文字分類ロスの第2文字ロス値を得、第2文字ロス値に基づいて、フォント生成ネットワークのパラメータを調整する。
【0077】
具体的には、
図3に示されるように、該サブステップは、ターゲットドメインの生成字を、調整された文字判別器312に入力し、ターゲットドメインの生成字の文字分類ヘッド位置を更新し、且つ更新された文字分類ヘッド位置に基づいて、第1文字分類ロスの第2文字ロス値を決定することであってよい。
【0078】
本実施例において、サブステップAにより文字判別器312のパラメータを一回更新した後、更新された文字判別器312は、ターゲットドメインの生成字の文字分類ヘッド位置を決定する操作を再実行し、すなわち、文字分類ヘッド位置X*を更新する。そして、下記式(2)に基づいて、第1文字分類ロスの第2文字ロス値を算出する。第2文字ロス値を決定した後、該第2文字ロス値に基づいて、フォント生成ネットワーク30のパラメータを1回パラメータ調整する。
【0079】
【0080】
ここで、
【数4】
は、第1文字分類ロスの第2文字ロス値であり、X*は、ターゲットドメインの生成字の文字分類ヘッド位置である。なお、この時のX*は、調整された文字判別器312によって更新された文字分類ヘッド位置である。
【0081】
サブステップC:ターゲットドメインのサンプル字と、調整されたフォント生成ネットワークに基づいて更新されたターゲットドメインの生成字を、調整された文字判別器に入力し、第1文字ロス値を更新し、且つ更新された第1文字ロス値に基づいて、文字判別器のパラメータを再び調整する。
【0082】
具体的には、
図3に示されるように、該ステップは、ソースドメインのサンプル字およびターゲットドメインの関連字を、サブステップBにより調整されたフォント生成ネットワーク30に再び入力して、ターゲットドメインの生成字を更新し、その後、更新されたターゲットドメインの生成字、及びターゲットドメインのサンプル字を、サブステップAにより調整された文字判別器312に再び入力し、ターゲットドメインの生成字の文字分類ヘッド位置X*と、ターゲットドメインのサンプル字の文字分類ヘッド位置Xを更新し、さらに、式(1)に基づいて、第1文字ロス値を更新し、さらに、更新された第1文字ロス値に基づいて、文字判別器312のパラメータを調整し直すものであってよい。
【0083】
本実施例は、フォント生成モデルのトレーニングプロセスにおいて、文字分類ロスを導入し、文字判別器312及びフォント生成ネットワーク30を交替でイテレーティブトレーニングし、フォント生成ネットワーク30と文字判別器312とのパラメータの正確性を大幅に向上させる。
【0084】
(3)スタイル分類ロスを決定するプロセスは、以下のサブステップを含む。
【0085】
サブステップD:ターゲットドメインのサンプル字、及びターゲットドメインの生成字をスタイル判別器に入力し、スタイル分類ロスの第1スタイルロス値を得、第1スタイルロス値に基づいて、スタイル判別器のパラメータを調整する。
【0086】
具体的には、
図3に示されるように、このサブステップは、ターゲットドメインのサンプル字、及びターゲットドメインの生成字をスタイル判別器に入力し、ターゲットドメインの生成字のスタイル分類ヘッド位置、及びターゲットドメインのサンプル字のスタイル分類ヘッド位置を得、ターゲットドメインの生成字のスタイル分類ヘッド位置と、ターゲットドメインのサンプル字のスタイル分類ヘッド位置に応じて、スタイル分類ロスの第1スタイルロス値を決定するものであってよい。
【0087】
本実施例では、トレーニングサンプルは、S種類(例えば、80種類)のスタイルフォントを含むことができる。S種類のスタイルは、S次元のベクトル、すなわち、スタイル分類ヘッドベクトルを構成することができ、ベクトルにおける各要素は1種類のスタイルに対応し、スタイル分類ヘッドベクトルにおける該要素の位置は、スタイル分類ヘッド位置である。本実施例に係るスタイル判別器313は、ターゲットドメインのサンプル字のためにそれに対応するスタイル分類ヘッド位置Yを決定し、ターゲットドメインの生成字のためにそれに対応するスタイル分類ヘッド位置Y*を決定する。そして、下記式(3)に基づいて、スタイル分類ロスの第1スタイルロス値を算出する。第1スタイルロス値を決定した後、該第1スタイルロス値に基づいて、スタイル判別器313のパラメータを1回パラメータ調整する。
【0088】
【0089】
ここで、
【数6】
は、スタイル分類ロスの第1スタイルロス値であり、Yは、ターゲットドメインのサンプル字のスタイル分類ヘッド位置であり、Y*は、ターゲットドメインの生成字のスタイル分類ヘッド位置である。
【0090】
サブステップE:ターゲットドメインの生成字を、調整されたスタイル判別器に入力し、スタイル分類ロスの第2スタイルロス値を得、第2スタイルロス値に基づいて、フォント生成ネットワークのパラメータを調整する。
【0091】
具体的には、
図3に示されるように、このサブステップは、ターゲットドメインの生成字を、調整されたスタイル判別器313に入力し、ターゲットドメインの生成字のスタイル分類ヘッド位置を更新し、且つ更新されたスタイル分類ヘッド位置に応じて、スタイル分類ロスの第2スタイルロス値を決定するものであってよい。
【0092】
本実施例において、によりスタイル判別器313のパラメータを一回更新した後、更新されたスタイル判別器313は、ターゲットドメインの生成字のスタイル分類ヘッド位置を決定する操作を再実行し、すなわち、スタイル分類ヘッド位置Y*を更新する。そして、下記式(4)に基づいて、スタイル分類ロスの第2スタイルロス値を算出する。第2スタイルロス値を決定した後、該第2スタイルロス値に基づいて、フォント生成ネットワーク30のパラメータを1回パラメータ調整する。
【0093】
【0094】
ここで、
【数8】
は、スタイル分類ロスの第2スタイルロス値であり、Y*は、ターゲットドメインの生成字のスタイル分類ヘッド位置である。なお、この時のY*は、調整されたスタイル判別器313によって更新されたスタイル分類ヘッド位置である。
【0095】
サブステップF:ターゲットドメインのサンプル字、及び調整されたフォント生成ネットワークに基づいて更新されたターゲットドメインの生成字を、調整されたスタイル判別器に入力し、第1スタイルロス値を更新し、且つ更新された第1スタイルロス値に基づいて、スタイル判別器のパラメータを再び調整する。
【0096】
具体的には、
図3に示されるように、該ステップは、ソースドメインのサンプル字およびターゲットドメインの関連字を、サブステップEにより調整されたフォント生成ネットワーク30に再び入力して、ターゲットドメインの生成字を更新し、その後、更新されたターゲットドメインの生成字と、ターゲットドメインのサンプル字を、サブステップDにより調整されたスタイル判別器313に再び入力し、ターゲットドメインの生成字のスタイル分類ヘッド位置Y*、及びターゲットドメインのサンプル字のスタイル分類ヘッド位置Yを更新し、さらに、式(3)に基づいて、第1スタイルロス値を更新し、さらに、更新された第1スタイルロス値に基づいて、スタイル判別器313のパラメータを調整し直すことであってよい。
【0097】
本実施例は、フォント生成モデルのトレーニングプロセスにおいて、スタイル分類ロスを導入し、スタイル判別器313及びフォント生成ネットワーク30を交替でイテレーティブトレーニングし、フォント生成ネットワーク30とスタイル判別器313とのパラメータの正確性を大幅に向上させる。
【0098】
(4)第1誤字ロスを決定するプロセスは、ターゲットドメインのサンプル字と、ターゲットドメインの生成字を文字分類器に入力し、ターゲットドメインのサンプル字の文字分類ヘッドベクトルと、ターゲットドメインの生成字の文字分類ヘッドベクトルを得ることと、ターゲットドメインのサンプル字の文字分類ヘッドベクトルと、ターゲットドメインの生成字の文字分類ヘッドベクトルとの間の差に応じて、第1誤字ロスを決定することと、を含む。
【0099】
具体的には、
図3に示されるように、ターゲットドメインのサンプル字、及びターゲットドメインの生成字を文字分類器314に入力し、文字分類器314は、ターゲットドメインのサンプル字のためにそれに対応する文字分類ヘッドベクトル
【数9】
を決定し、ターゲットドメインの生成字のためにそれに対応する文字分類ヘッドベクトル
【数10】
を決定し、ここで、ベクトル
【数11】
及び
【数12】
における各要素は、トレーニングサンプルにおける1つの文字を表すことができ、mは、トレーニングサンプルにおける文字の数を表し、例えば、トレーニングサンプルに字が6761個あれば、mは6760に等しくてよい。その後、分類ヘッドベクトル
【数13】
と文字分類ヘッドベクトル
【数14】
との間の差に基づいて、第1誤字ロスを算出する。例えば、分類ヘッドベクトル
【数15】
と文字分類ヘッドベクトル
【数16】
との間に基づく交差エントロピーに応じて、下記式(5)に従って、第1誤字ロスを算出することができる。第1誤字ロスを決定した後、該第1誤字ロスに基づいて、フォント生成ネットワーク30のパラメータを1回パラメータ調整する。
【0100】
【0101】
ここで、
【数18】
は、第1誤字ロスを表し、
【数19】
は、ターゲットドメインのサンプル字の文字分類ヘッドベクトルのうち、添え字がiである要素であり、
【数20】
は、ターゲットドメインの生成字の文字分類ヘッドベクトルのうち、添え字がiである要素であり、iは、0以上かつm以下の整数であり、mは、文字類分ヘッドベクトルにおける要素の数である。本実施例は、フォント生成モデルのトレーニングプロセスにおいて、誤字ロスを導入して、フォント生成ネットワーク30によって出力されたターゲットドメインの生成字の誤字率を制限することにより、フォント生成モデルが誤字を生成する確率を減少させる。
【0102】
なお、本実施例は、フォント生成モデルに対する第1段階のトレーニングを完成させるために、上記4つのロスの少なくとも1つを生成してフォント生成モデルのパラメータを調整することができる。
【0103】
ステップS503:ソースドメインのサンプル字、及びランダムベクトルをフォント生成ネットワークに入力し、ランダムドメインの生成字を得る。
【0104】
ステップS504:ランダムドメインの生成字と、ランダムドメインのサンプル字をロス分析ネットワークに入力し、第2文字分類ロス及び/又は第2誤字ロスを得、第2文字分類ロス及び/又は第2誤字ロスに応じてフォント生成モデルのパラメータを再び調整する。
【0105】
次に、S504における第2文字分類ロスと第2誤字ロスの算出方法、及び該ロスに基づいてモデルをトレーニングするプロセスを説明する。
【0106】
(1)第2文字分類ロスを決定するプロセスは、以下のサブステップを含むことができる。
サブステップG:ランダムドメインの生成字と、ランダムドメインのサンプル字を文字判別器に入力し、第2文字分類ロスの第3文字ロス値を得、第3文字ロス値に基づいて、文字判別器のパラメータを調整する。
【0107】
具体的には、
図3に示されるように、該サブステップは、ランダムドメインのサンプル字と、ランダムドメインの生成字を文字判別器312に入力し、ランダムドメインの生成字の文字分類ヘッド位置と、ランダムドメインのサンプル字の文字分類ヘッド位置を得、ランダムドメインの生成字の文字分類ヘッド位置と、ランダムドメインのサンプル字の文字分類ヘッド位置に応じて、第2文字分類ロスの第3文字ロス値を決定することであってよい。該第3文字ロス値に基づいて文字判別器312のパラメータを1回パラメータ調整する。
【0108】
なお、該第3文字ロス値の算出プロセスは、第1文字分類ロスの第1文字ロス値の計算と類似しており、式(1)を参照して算出することができ、式(1)におけるターゲットドメインのサンプル字の文字分類ヘッド位置をランダムドメインのサンプル字の文字分類ヘッド位置に変更し、ターゲットドメインの生成字の文字分類ヘッド位置をランダムドメインの生成字の文字分類ヘッド位置に変更すればよい。
【0109】
サブステップH:ランダムドメインの生成字を、調整された文字判別器に入力し、第2文字分類ロスの第4文字ロス値を得、第4文字ロス値に基づいて、フォント生成ネットワークのパラメータを調整する。
【0110】
具体的には、
図3に示されるように、このサブステップは、ランダムドメインの生成字を、調整された文字判別器312に入力し、ランダムドメインの生成字の文字分類ヘッド位置を更新し、且つ更新された文字分類ヘッド位置に応じて、第2文字分類ロスの第4文字ロス値を確定することであってよい。第4文字ロス値を確定した後、該第4文字ロス値に基づいて、フォント生成ネットワーク30のパラメータを1回パラメータ調整する。
【0111】
なお、該第4文字ロス値の算出プロセスは、第1文字分類ロスの第2文字ロス値の計算と類似しており、式(2)を参照して算出することができ、式(2)におけるターゲットドメインの生成字の文字分類ヘッド位置をランダムドメインの生成字の文字分類ヘッド位置に変更すればよい。
【0112】
サブステップI:ランダムドメインのサンプル字と、調整されたフォント生成ネットワークに基づいて更新されたランダムドメインの生成字を、調整された文字判別器に入力し、第3文字ロス値を更新し、且つ更新された第3文字ロス値に基づいて、文字判別器のパラメータを再び調整する。
【0113】
なお、サブステップIのプロセスは、上記サブステップCのプロセスと類似しており、ここでは説明を省略する。
【0114】
本実施例は、フォント生成モデルのトレーニングプロセスにおいて、文字分類ロスを導入し、文字判別器312及びフォント生成ネットワーク30を交替でイテレーティブトレーニングし、フォント生成ネットワーク30と文字判別器312とのパラメータの正確性を大幅に向上させる。
【0115】
(2)第2誤字ロスを決定するプロセスは、ランダムドメインの生成字と、ランダムドメインのサンプル字を文字分類器に入力し、ランダムドメインの生成字の文字分類ヘッドベクトルと、ランダムドメインのサンプル字の文字分類ヘッドベクトルを得ることと、ランダムドメインの生成字の文字分類ヘッドベクトルと、ランダムドメインのサンプル字の文字分類ヘッドベクトルとの間の差に応じて、第2誤字ロスを決定することと、を含むことができる。
【0116】
なお、第2誤字ロスを決定するプロセスは、上記第1誤字ロスを決定するプロセスと類似しており、ここでは説明を省略する。本実施例は、フォント生成モデルのトレーニングプロセスにおいて、誤字ロスを導入して、フォント生成ネットワーク30によって出力されたターゲットドメインの生成字の誤字率を制限することにより、フォント生成モデルが誤字を生成する確率を減少させる。
【0117】
さらに、なお、分別便宜上、本実施例は、*が付いているパラメータを用いて、該パラメータがモデルによって生成された画像に関連することを表し、*が付いていないパラメータを用いて、該パラメータが実際の画像に関連することを表す。
【0118】
さらに、なお、本実施例は、フォント生成モデルに対する第2段階のトレーニングを完成させるために、上記2つのロスの少なくとも1つを生成してフォント生成モデルのパラメータを調整することができる。
【0119】
本願の実施例の案は、フォント生成モデルをトレーニングするプロセスにおいて、複数のタイプのロスを導入し、複数のタイプのロスによりモデルトレーニングを共に制限し、モデルトレーニングの正確性を大幅に向上させる。
【0120】
図6は、本開示の実施例に係る字庫作成方法のフローチャートである。本開示の実施例は、上記実施例に基づいてトレーニングされたフォント生成モデルが字庫を作成する場合に適用される。該方法は、字庫作成装置により実行することができ、該装置は、ソフトウェア及び/又はハードウェアの形態で実現することができる。
図6に示されるように、本実施例に係る字庫作成方法は、以下のステップを含むことができる。
【0121】
ステップS601:ソースドメインの入力字をフォント生成モデルに入力し、ターゲットドメインの新字を得る。
【0122】
ここで、フォント生成モデルは、上記実施例に基づいてトレーニングされたフォント生成モデルであってよい。
【0123】
例えば、ソースドメインの入力字は、明朝体の字の画像であり、新字は、手書きの字の画像であり、明朝体の字の画像をフォント生成モデルに入力して、手書きの字の画像を得ることができる。
【0124】
ステップS602:ターゲットドメインの新字に基づいて字庫を作成する。
【0125】
本実施例は、フォント生成モデルによって生成された新字を記憶し、手書きのフォントスタイルを有する字庫を作成することができ、該字庫は入力法に適用可能であり、ユーザは、該字庫に基づく入力法を利用して、手書きのフォントスタイルを有する字を直接取得することができ、ユーザの多様な需要を満たし、ユーザ体験を向上させることができる。
【0126】
図7は、本開示の実施例に係るフォント生成モデルのトレーニング装置の構造模式図である。本開示の実施例は、フォントスタイル遷移タスクを実行するフォント生成モデルをトレーニングする場合に適用され、特に、僅かなサンプルデータに基づいて、フォントスタイル遷移タスクを実行するフォント生成モデルをトレーニングする場合に適用される。該装置は、ソフトウェア及び/又はハードウェアで実現することができ、該装置は、本開示のいずれかの実施例に係るフォント生成モデルのトレーニング方法を実現することができる。
図7に示されるように、該フォント生成モデルのトレーニング装置は、
ソースドメインのサンプル字、及びソースドメインのサンプル字のターゲットドメインの関連字をフォント生成モデルのフォント生成ネットワークに入力し、ターゲットドメインの生成字を得るための、生成字決定モジュール701と、
ターゲットドメインのサンプル字およびターゲットドメインの関連字の少なくとも1つ、ターゲットドメインの生成字とをフォント生成モデルのロス分析ネットワークに入力し、第1ロスを得、第1ロスに応じてフォント生成モデルのパラメータを調整するための、モデルトレーニングモジュール702と、を含み、
生成字決定モジュール701は、さらに、ソースドメインのサンプル字およびランダムベクトルをフォント生成ネットワークに入力し、ランダムドメインの生成字を得るために用いられ、
モデルトレーニングモジュール702は、さらに、ランダムドメインの生成字と、ランダムドメインのサンプル字をロス分析ネットワークに入力し、第2ロスを得、第2ロスに応じてフォント生成モデルのパラメータを再び調整するために用いられる。
【0127】
本願の実施例の案は、フォント生成モデルに一回のイテレーティブトレーニングを行う時に、ソースドメインのサンプル字およびターゲットドメインの関連字に基づいてモデルにターゲット分岐トレーニングを行う段階と、ソースドメインのサンプル字、及びランダムベクトルに基づいてモデルにランダム分岐トレーニングを行う段階と、を含む。ランダム分岐トレーニング段階を導入することにより、フォント生成モデルの、フォントスタイル遷移を実行する能力を向上させ、ターゲットドメインのサンプルデータが少ない、又はソースドメインのフォントがフォント分布のスタイル字に合わない場合、依然として美観で正確なフォントを作成することができ、モデルの正確性及び汎化性を向上させる。僅かなサンプルでフォント生成モデルをトレーニングすることに新たな考え方を提供する。
【0128】
さらに、上記フォント生成ネットワークは、内容エンコーダと、ランダムスタイルエンコーダと、ターゲットスタイルエンコーダと、デコーダとを含む。
【0129】
さらに、上記生成字決定モジュール701は、具体的に、
ソースドメインのサンプル字を内容エンコーダに入力し、サンプル字の内容特徴を得ることと、
ランダムベクトルをランダムスタイルエンコーダに入力し、ランダムドメインのスタイル特徴を得ることと、
ランダムドメインのスタイル特徴、及びサンプル字の内容特徴をデコーダに入力し、ランダムドメインの生成字を得ることと、に用いられる。
【0130】
さらに、上記生成字決定モジュール701は、具体的に、
ソースドメインのサンプル字を内容エンコーダに入力し、サンプル字の内容特徴を得ることと、
ソースドメインのサンプル字のターゲットドメインの関連字をターゲットスタイルエンコーダに入力し、ターゲットドメインのスタイル特徴を得ることと、
ターゲットドメインのスタイル特徴、及びサンプル字の内容特徴をデコーダに入力し、ターゲットドメインの生成字を得ることと、に用いられる。
【0131】
さらに、上記ロス分析ネットワークは、コンポーネント分類器と、文字判別器と、スタイル判別器と、文字分類器との少なくとも1つを含み、第1ロスは、コンポーネント分類ロスと、第1文字分類ロスと、スタイル分類ロスと、第1誤字ロスとの少なくとも1つを含み、第2ロスは、第2文字分類ロス及び/又は第2誤字ロスを含む。
【0132】
さらに、上記モデルトレーニングモジュール702は、
ターゲットドメインのサンプル字と、ターゲットドメインの生成字を文字判別器に入力し、第1文字分類ロスの第1文字ロス値を得るための、第1文字ロス算出ユニットと、
第1文字ロス値に基づいて、文字判別器のパラメータを調整するための、文字判別器調整ユニットと、
ターゲットドメインの生成字を、調整された文字判別器に入力し、第1文字分類ロスの第2文字ロス値を得るための、第2文字ロス算出ユニットと、
第2文字ロス値に基づいて、フォント生成ネットワークのパラメータ調整するための、フォント生成ネットワーク調整ユニットと、を含み、
第1文字ロス算出ユニットは、さらに、ターゲットドメインのサンプル字と、調整されたフォント生成ネットワークに基づいて更新されたターゲットドメインの生成字を、調整された文字判別器に入力し、第1文字ロス値を更新するために用いられ、
文字判別器調整ユニットは、さらに、更新された第1文字ロス値に基づいて、文字判別器のパラメータを再び調整するために用いられる。
【0133】
さらに、上記第1文字ロス算出ユニットは、具体的に、
ターゲットドメインのサンプル字、及びターゲットドメインの生成字を文字判別器に入力し、ターゲットドメインの生成字の文字分類ヘッド位置と、ターゲットドメインのサンプル字の文字分類ヘッド位置を得ることと、
ターゲットドメインの生成字の文字分類ヘッド位置と、ターゲットドメインのサンプル字の文字分類ヘッド位置に応じて、第1文字分類ロスの第1文字ロス値を決定することと、に用いられる。
【0134】
さらに、上記第2文字ロス算出ユニットは、具体的に、
ターゲットドメインの生成字を、調整された文字判別器に入力し、ターゲットドメインの生成字の文字分類ヘッド位置を更新することと、
更新された文字分類ヘッド位置に応じて、第1文字分類ロスの第2文字ロス値を決定することと、に用いられる。
【0135】
さらに、上記モデルトレーニングモジュール702は、
ターゲットドメインのサンプル字と、ターゲットドメインの生成字をスタイル判別器に入力し、スタイル分類ロスの第1スタイルロス値を得るための、第1スタイルロス算出ユニットと、
第1スタイルロス値に基づいて、スタイル判別器のパラメータを調整するための、スタイル判別器調整ユニットと、
ターゲットドメインの生成字を、調整されたスタイル判別器に入力し、スタイル分類ロスの第2スタイルロス値を得るための、第2スタイルロス算出ユニットと、
第2スタイルロス値に基づいて、フォント生成ネットワークのパラメータを調整するための、フォント生成ネットワーク調整ユニットと、を含み、
第1スタイルロス算出ユニットは、さらに、ターゲットドメインのサンプル字、及び調整されたフォント生成ネットワークに基づいて更新されたターゲットドメインの生成字を、調整されたスタイル判別器に入力し、第1スタイルロス値を更新するために用いられ、
スタイル判別器調整ユニットは、さらに、更新された第1スタイルロス値に基づいて、スタイル判別器のパラメータを再び調整するために用いられる。
【0136】
さらに、上記第1スタイルロス算出ユニットは、具体的に、
ターゲットドメインのサンプル字、及びターゲットドメインの生成字をスタイル判別器に入力し、ターゲットドメインの生成字のスタイル分類ヘッド位置、及びターゲットドメインのサンプル字のスタイル分類ヘッド位置を得ることと、
ターゲットドメインの生成字のスタイル分類ヘッド位置、及びターゲットドメインのサンプル字のスタイル分類ヘッド位置に応じて、スタイル分類ロスの第1スタイルロス値を決定することと、に用いられる。
さらに、上記第2スタイルロス算出ユニットは、具体的に、
ターゲットドメインの生成字を、調整されたスタイル判別器に入力し、ターゲットドメインの生成字のスタイル分類ヘッド位置を更新することと、
更新されたスタイル分類ヘッド位置に応じて、スタイル分類ロスの第2スタイルロス値を決定することと、に用いられる。
【0137】
さらに、上記モデルトレーニングモジュール702は、
ランダムドメインの生成字、及びランダムドメインのサンプル字を文字判別器に入力し、第2文字分類ロスの第3文字ロス値を得るための、第3文字ロス算出ユニットと、
第3文字ロス値に基づいて、文字判別器のパラメータを調整するための、文字判別器調整ユニットと、
ランダムドメインの生成字を、調整された文字判別器に入力し、第2文字分類ロスの第4文字ロス値を得るための、第4文字ロス算出ユニットと、
第4文字ロス値に基づいて、フォント生成ネットワークのパラメータを調整するための、フォント生成ネットワーク調整ユニットと、を含み、
第3文字ロス算出ユニットは、さらに、ランダムドメインのサンプル字と、調整されたフォント生成ネットワークに基づいて更新されたランダムドメインの生成字を、調整された文字判別器に入力し、第3文字ロス値を更新するために用いられ、
文字判別器調整ユニットは、さらに、更新された第3文字ロス値に基づいて、文字判別器のパラメータを再び調整するために用いられる。
【0138】
さらに、上記モデルトレーニングモジュール702は、
ターゲットドメインの関連字と、ターゲットドメインの生成字をコンポーネント分類器に入力し、ターゲットドメインの生成字のコンポーネントベクトルと、ターゲットドメインの関連字のコンポーネントベクトルを得、ターゲットドメインの生成字のコンポーネントベクトルと、ターゲットドメインの関連字のコンポーネントベクトルとの間の差に応じて、コンポーネント分類ロスを決定するための、コンポーネント分類ロス算出ユニットを含む。
【0139】
さらに、上記モデルトレーニングモジュール702は、
ターゲットドメインのサンプル字と、ターゲットドメインの生成字を文字分類器に入力し、ターゲットドメインのサンプル字の文字分類ヘッドベクトルと、ターゲットドメインの生成字の文字分類ヘッドベクトルを得、ターゲットドメインのサンプル字の文字分類ヘッドベクトルと、ターゲットドメインの生成字の文字分類ヘッドベクトルとの間の差に応じて、第1誤字ロスを決定するための、第1誤字ロス算出ユニットを含む。
【0140】
さらに、上記モデルトレーニングモジュール702は、
ランダムドメインの生成字と、ランダムドメインのサンプル字を文字分類器に入力し、ランダムドメインの生成字の文字分類ヘッドベクトルと、ランダムドメインのサンプル字の文字分類ヘッドベクトルを得、ランダムドメインの生成字の文字分類ヘッドベクトルと、ランダムドメインのサンプル字の文字分類ヘッドベクトルとの間の差に応じて、第2誤字ロスを決定するための、第2誤字ロス算出ユニットを含む。
【0141】
図8は、本開示の実施例に係る字庫作成装置の構成模式図である。本開示の実施例は、上記実施例に基づいてトレーニングされたフォント生成モデルが字庫を作成する場合に適用される。該装置は、ソフトウェア及び/又はハードウェアで実現することができ、該装置は、本開示のいずれかの実施例に係る字庫作成方法を実現することができる。
図8に示されるように、該字庫作成装置は、
ソースドメインの入力字をフォント生成モデルに入力し、ターゲットドメインの新字を得るための、新字生成モジュール801と、
ターゲットドメインの新字に基づいて字庫を作成するための、字庫作成モジュール802と、を含み、
ここで、フォント生成モデルは、本開示のいずれかの実施例に係るフォント生成モデルのトレーニング方法によりトレーニングされたものである。
【0142】
本実施例は、フォント生成モデルによって生成された新字を記憶し、手書きのフォントスタイルを有する字庫を作成することができ、該字庫は入力法に適用可能であり、ユーザは、該字庫に基づく入力法を利用して、手書きのフォントスタイルを有する字を直接取得することができ、ユーザの多様な需要を満たし、ユーザ体験を向上させることができる。
【0143】
上記製品は、本開示のいずれかの実施例に係る方法を実行することができ、方法を実行することに応じた機能モジュールと有益効果を備える。
【0144】
本開示の技術案において、係るフォント画像の収集、記憶、利用、加工、伝送、提供、及び公開などの処理は、いずれも関連する法律及び法規の規定に該当し、かつ公序良俗に違反しないことに注意すべきである。
【0145】
本開示の実施例により、本開示は、さらに、電子機器、可読記憶媒体、及びコンピュータプログラムを提供する。
【0146】
図9には、本開示の実施例を実行することに用いることができる例示的な電子機器900の模式的なブロック図が示されている。電子機器は様々な形のデジタルコンピュータを表すことを意図しており、例えば、ラップトップ型コンピュータ、デスクトップコンピュータ、テーブル、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータが挙げられる。電子機器は様々な形のモバイル装置を表すこともでき、例えば、パーソナルデジタルアシスタント、セルラ電話機、スマートフォン、ウェアラブルデバイス、及び他の類似した算出装置が挙げられる。本明細書に示す部品と、それらの接続及び関係と、それらの機能とは、一例に過ぎず、そして、本明細書に記載及び/又は要求される本開示の実現を限定することを意図しない。
【0147】
図9に示されるように、機器900は、読み出し専用メモリ(ROM)902に記憶されたコンピュータプログラム、又は記憶ユニット908からランダムアクセスメモリ(RAM)903にロードされたコンピュータプログラムに従って、様々な適切な動作及び処理を実行可能な算出ユニット901を含む。RAM903には、機器900の操作に必要な様々なプログラム及びデータが記憶されてもよい。算出ユニット901、ROM902、及びRAM903同士は、バス904を介して接続されている。入力/出力(I/O)インターフェース905も、バス904に接続されている。
【0148】
機器900における複数の部品は、I/Oインターフェース905に接続されており、前記部品は、キーボード、マウスなどの入力ユニット906と、様々なタイプのディスプレイ、スピーカなどの出力ユニット907と、磁気ディスク、光ディスクなどの記憶ユニット908と、ネットワークカード、モデム、無線通信トランシーバなどの通信ユニット909とを含む。通信ユニット909は、機器900がインターネットなどのコンピュータネットワーク及び/又は様々な通信網を介して他の機器と情報/データを交換することを許す。
【0149】
算出ユニット901は、処理及び算出の能力を有する様々な汎用及び/又は専用の処理コンポーネントであってよい。算出ユニット901としては、例えば、中央処理装置(CPU)、グラフィックスプロセッシングユニット(GPU)、様々な専用の人工知能(AI)コンピューティングチップ、機械学習モデルのアルゴリズムを演算する様々な算出ユニット、デジタルシグナルプロセッサ(DSP)、及び任意の適切なプロセッサ、コントローラ、マイクロコントローラなどが挙げられるが、これらに限定されない。算出ユニット901は、フォント生成モデルのトレーニング方法及び/又は字庫作成方法などの、上述した各方法及び処理を実行する。例えば、幾つかの実施例において、フォント生成モデルのトレーニング方法及び/又は字庫作成方法は、記憶ユニット908などの機械可読媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現され得る。幾つかの実施例において、コンピュータプログラムの一部又は全部は、ROM902及び/又は通信ユニット909を介して機器900にロード及び/又は実装され得る。コンピュータプログラムがRAM903にロードされて算出ユニット901により実行されると、上述したフォント生成モデルのトレーニング方法及び/又は字庫作成方法の1つ又は複数のステップを実行することができる。あるいは、他の実施例において、算出ユニット901は、フォント生成モデルのトレーニング方法及び/又は字庫作成方法を実行するように、他の任意の適切な形態(例えば、ファームウェア)により構成されてよい。
【0150】
本明細書において、上述したシステム及び技術の各実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、アプリケーション固有の標準製品(ASSP)、システムオンチップ(SOC)、コンプレックスプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現されてよい。これらの各実施形態は、1つ又は複数のコンピュータプログラムに実施されることを含み、該1つ又は複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサが含まれるプログラマブルシステムで実行及び/又は解釈することができ、該プログラマブルプロセッサは、専用又は汎用のプログラマブルプロセッサであってよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信して、データ及び命令を該記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置に伝送することができる。
【0151】
本開示に係る方法を実行するためのプログラムコードは、1つ又は複数のプログラミング言語の任意の組み合わせでプログラミングしてよい。それらのプログラムコードは、汎用のコンピュータ、専用のコンピュータ、又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供されてよく、それにより、プログラムコードがプロセッサ又はコントローラにより実行される時に、フローチャート及び/又はブロックに規定された機能/操作が実施されるようになる。プログラムコードは、完全に機械で実行されてよく、部分的に機械で実行されてよく、独立したソフトウェアパッケージとして部分的に機器で実行されかつ部分的にリモートマシンで実行されてよく、又は完全にリモートマシン若しくはサーバで実行されてよい。
【0152】
本開示の上記及び以下において、機械可読媒体は有形の媒体であってよく、それは、命令実行システム、装置若しくは機器が使用すること、又は命令実行システム、装置若しくは機器と組み合わせて使用するためのプログラムを含む又は記憶することができる。機械可読媒体は、機械可読信号媒体又は機械可読記憶媒体であってよい。機械可読媒体は、電子的、磁気的、光学的、電磁的、赤外的、若しくは半導体的なシステム、装置若しくは機器、又は上記内容の任意の適切な組み合わせを含んでいるが、それらに限定されない。機械可読媒体のより具体的な例は、1つ又は複数のラインに基づく電気的な接続、携帯コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブル読み出し専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、携帯コンパクトディスク読み出し専用メモリ(CD-ROM)、光学的な記憶機器、磁気的な記憶機器、又は上記内容の任意の適切な組み合わせを含んでいる。
【0153】
ユーザとのインタラクションを提供するために、ここで述べたシステム及び技術を、コンピュータに実施させることができ、該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティング装置(例えば、マウス又はトラックボール)を含み、ユーザは、該キーボード及びポインティング装置によりコンピュータに入力を提供することができる。他の種類の装置はさらにユーザとのインタラクションを提供するために用いられることができる。例えば、ユーザに提供されるフィードバックは、任意の形のセンスフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってよく、そして、任意の形(声入力、音声入力、又は触覚入力を含む)でユーザからの入力を受けることができる。
【0154】
ここで述べたシステム及び技術を、バックグラウンドの部品が含まれるコンピューティングシステム(例えば、データサーバとする)、中間の部品が含まれるコンピューティングシステム(例えば、アプリケーションサーバ)、フロントエンドの部品が含まれるコンピューティングシステム(例えば、グラフィカルユーザインタフェース、又はネットワークブラウザを有するユーザコンピュータであり、ユーザは、該グラフィカルユーザインタフェース、又は該ネットワークブラウザを介して、ここで述べたシステム及び技術の実施形態とインタラクトすることができる)、又は、これらのバックグラウンドの部品、中間の部品、若しくはフロントエンドの部品の任意の組み合わせが含まれるコンピューティングシステムに実施することができる。任意の形又は媒体のデジタルデータ通信(例えば、通信ネットワーク)を介して、システムの部品を互いに接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、ブロックチェーンネットワーク、及びインターネットを含む。
【0155】
コンピュータシステムは、クライアント及びサーバを含むことができる。クライアント及びサーバは、通常互いに離れており、そして、通常通信ネットワークを介してインタラクトする。対応するコンピュータで実行され、かつクライアント-サーバの関係を互いに有するコンピュータプログラムにより、クライアントとサーバとの関係を生成する。サーバは、クラウドサーバであってよく、クラウドコンピューティングサーバ又はクラウドホストとも呼ばれ、クラウドコンピューティングサービスシステムにおけるホスト製品であり、管理難易度が高く、業務拡張性が弱いという伝統的な物理ホスト及びVPSサービスに存在する欠陥を解決することを目的とする。サーバは、分散システムのサーバ、又はブロックチェーンと組み合わせられたサーバであってもよい。
【0156】
人工知能は、人間のある思考プロセス及び知能行為(例えば、勉強、推理、思考、計画など)をコンピュータにシミュレートさせることを研究する学科であり、ハードウェア的な技術もあれば、ソフトウェア的な技術もある。人工知能のハードウェア的な技術は通常、センサ、専用の人工知能チップ、クラウドコンピューティング、分散ストレージ、ビッグデータ処理などの技術を含み、人工知能のソフトウェア的な技術は主に、コンピュータビジョン技術、音声認識技術、自然言語処理技術、及び機械学習/深層学習技術、ビッグデータ処理技術、知識グラフ技術などの幾つかの方向を含む。
【0157】
クラウドコンピューティング(cloud computing)とは、ネットワークを介して柔軟で拡張可能な共有物理又は仮想リソースプールにアクセスし、デマンド、セルフサービスの形態に従ってリソースを配置及び管理することができる技術システムであり、リソースは、サーバ、オペレーティングシステム、ネットワーク、ソフトウェア、アプリケーション、及び記憶機器などを含んでよい。クラウドコンピューティング技術により、効果的で強いデータ処理能力を、人工知能、ブロックチェーンなどの技術応用やモデルトレーニングに提供することができる。
【0158】
上述に示した様々な形態のプロセスを用いて、ステップを並べ替えたり、増加させたり、削除したりすることができる。例えば、本開示に記載の各ステップは、並行に実行されてもよく、順次に実行されてもよく、異なる順番で実行されてもよく、本開示に開示された技術案の所望の結果を実現できれば、本明細書はここで限定しない。
【0159】
上記具体的な実施形態は、本開示の保護の範囲を制限するものとはならない。要求仕様及び他の要因に応じて、様々な補正、組み合わせ、サブ組み合わせ、及び代替が可能であることが、当業者には分かるべきだ。本開示の要旨及び原則内で行われた任意の補正、同等代替、及び改善などは、いずれも本開示の保護の範囲内に含まれる。