(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-14
(45)【発行日】2022-10-24
(54)【発明の名称】行動認識のための時空間の平滑化フィーチャを正規化する方法およびシステム
(51)【国際特許分類】
G06T 7/00 20170101AFI20221017BHJP
G06N 3/04 20060101ALI20221017BHJP
【FI】
G06T7/00 350C
G06N3/04
(21)【出願番号】P 2020213564
(22)【出願日】2020-12-23
【審査請求日】2020-12-23
(31)【優先権主張番号】10-2019-0174262
(32)【優先日】2019-12-24
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(73)【特許権者】
【識別番号】321003371
【氏名又は名称】LINE株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】キム ジンヒョン
(72)【発明者】
【氏名】オ グァンジン
(72)【発明者】
【氏名】キム ユジン
(72)【発明者】
【氏名】ウィ ドンユン
(72)【発明者】
【氏名】ペ スンミン
【審査官】大塚 俊範
(56)【参考文献】
【文献】特表2004-511866(JP,A)
【文献】韓国登録特許第10-1563297(KR,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00- 7/90
G06N 3/02- 3/12
(57)【特許請求の範囲】
【請求項1】
コンピュータシステムが実行するフィーチャ正規化方法であって、
前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、
前記フィーチャ正規化方法は、
前記少なくとも1つのプロセッサにより、入力フィーチャから低周波成分を求める段階、
前記少なくとも1つのプロセッサにより、前記入力フィーチャと前記低周波成分との残差を利用して高周波成分を求める段階、
前記少なくとも1つのプロセッサにより、前記低周波成分にノイズを追加する段階
を含む、フィーチャ正規化方法。
【請求項2】
前記低周波成分を求める段階は、
ローパスフィルタを利用して前記入力フィーチャから前記低周波成分を分離すること
を特徴とする、請求項1に記載のフィーチャ正規化方法。
【請求項3】
前記低周波成分を求める段階は、
平均プーリングまたはガウシアンフィルタを利用して前記入力フィーチャから前記低周波成分を分離すること
を特徴とする、請求項1に記載のフィーチャ正規化方法。
【請求項4】
前記ノイズを追加する段階は、
前記入力フィーチャの局所的平均にランダムスケーリングを適用して前記ノイズを追加する段階
を含む、請求項1に記載のフィーチャ正規化方法。
【請求項5】
前記ノイズを追加する段階は、
与えられた確率分布でサンプリングされたスカラーを乗じる演算により、前記低周波成分の大きさをランダムに変調する段階
を含む、請求項1に記載のフィーチャ正規化方法。
【請求項6】
前記低周波成分に前記ノイズを追加するランダム平均スケーリングは、
ニューラルネットワークのネットワークモデルの残差分岐内に適用されること
を特徴とする、請求項1に記載のフィーチャ正規化方法。
【請求項7】
前記ランダム平均スケーリングは、前記ネットワークモデルの畳み込み層、バッチ正規化層、非線形活性化層のうちの少なくとも1つの階層の前に適用されることを
特徴とする、請求項6に記載のフィーチャ正規化方法。
【請求項8】
前記ネットワークモデルがベーシックブロック構造のネットワークの場合、前記ランダム平均スケーリングは、前記ネットワークモデルの一部のステージに含まれたすべてのバッチ正規化層の前にそれぞれ適用されること
を特徴とする、請求項6に記載のフィーチャ正規化方法。
【請求項9】
前記ネットワークモデルがボトルネックブロック構造のネットワークの場合、前記ランダム平均スケーリングは、前記ネットワークモデルの一部のステージに含まれたバッチ正規化層のうちの最後のバッチ正規化層の前に適用されること
を特徴とする、請求項6に記載のフィーチャ正規化方法。
【請求項10】
請求項1~9のうちのいずれか一項に記載のフィーチャ正規化方法を前記コンピュータシステムに実行させる、コンピュータプログラム。
【請求項11】
請求項1~9のうちのいずれか一項に記載のフィーチャ正規化方法をコンピュータに実行させるためのプログラムが記録されている、非一時なコンピュータ読み取り可能な記録媒体。
【請求項12】
コンピュータシステムであって、
メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサ
を含み、
前記少なくとも1つのプロセッサは、
入力フィーチャから低周波成分を求め、
前記入力フィーチャと前記低周波成分との残差を利用して高周波成分を求め、
前記低周波成分にノイズを追加すること
を特徴とする、コンピュータシステム。
【請求項13】
前記少なくとも1つのプロセッサは、
ローパスフィルタを利用して前記入力フィーチャから前記低周波成分を分離すること
を特徴とする、請求項12に記載のコンピュータシステム。
【請求項14】
前記少なくとも1つのプロセッサは、
平均プーリングまたはガウシアンフィルタを利用して前記入力フィーチャから前記低周波成分を分離すること
を特徴とする、請求項12に記載のコンピュータシステム。
【請求項15】
前記少なくとも1つのプロセッサは、
前記入力フィーチャの局所的平均にランダムスケーリングを適用して前記ノイズを追加すること
を特徴とする、請求項12に記載のコンピュータシステム。
【請求項16】
前記少なくとも1つのプロセッサは、
与えられた確率分布でサンプリングされたスカラーを乗じる演算により、前記低周波成分の大きさをランダムに変調すること
を特徴とする、請求項12に記載のコンピュータシステム。
【請求項17】
前記少なくとも1つのプロセッサは、
前記低周波成分に前記ノイズを追加するランダム平均スケーリングモジュールを含み、
前記ランダム平均スケーリングモジュールは、
ニューラルネットワークのネットワークモデルの残差分岐内に位置すること
を特徴とする、請求項12に記載のコンピュータシステム。
【請求項18】
前記ランダム平均スケーリングモジュールは、畳み込み層、バッチ正規化層、非線形活性化層のうちの少なくとも1つの階層の前に位置すること
を特徴とする、請求項17に記載のコンピュータシステム。
【請求項19】
前記ネットワークモデルがベーシックブロック構造のネットワークの場合、前記ランダム平均スケーリングモジュールは、前記ネットワークモデルの一部のステージに含まれたすべてのバッチ正規化層の前にそれぞれ位置すること
を特徴とする、請求項17に記載のコンピュータシステム。
【請求項20】
前記ネットワークモデルがボトルネックブロック構造のネットワークの場合、前記ランダム平均スケーリングモジュールは、前記ネットワークモデルの一部のステージに含まれたバッチ正規化層のうちの最後のバッチ正規化層の前に位置すること
を特徴とする、請求項17に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
以下の説明は、行動認識(action recognition)のためのフィーチャ正規化技術に関する。
【背景技術】
【0002】
知能型ビデオ監視システムのような保安関連分野、人間との相互交流実行能力を備える知能型ロボット、知能型家電製品などのような多くの分野において、人間の行動認識技術が適用されている。
【0003】
例えば、特許文献1(登録日2015年10月20日)には、キネクトを利用して行動認識に必要なデータを抽出した後、このデータを階層化して特徴を学習することにより、映像から行動を認識する技術が開示されている。
【0004】
3D畳み込みニューラルネットワーク(3D Convolution Neural Network)は、行動認識分野で広く使用されている。3D畳み込みニューラルネットワークは、時空間ストリームを処理するために追加の次元がある2D畳み込みニューラルネットワーク(2D Conv Net)で拡張されたものであり、大規模イメージ認識データセットに対して訓練された2Dカーネルを膨らませて画像ドメインで学習された知識を活用する。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
3D畳み込みニューラルネットワーク(3D Conv Net)の過剰適合(over fitting)の問題を解決するために、簡単かつ効率的な正規化方法を提供することができる。
【0007】
フィーチャの低周波成分(low-frequency component)の大きさ(magnitude)をランダムに変化させて内部表現(internal representation)を正規化するランダム平均スケーリング(RMS:random mean scaling)を適用することができる。
【課題を解決するための手段】
【0008】
コンピュータシステムが実行するフィーチャ正規化(feature regularization)方法であって、前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記フィーチャ正規化方法は、前記少なくとも1つのプロセッサにより、入力フィーチャから低周波成分を求める段階、前記少なくとも1つのプロセッサにより、前記入力フィーチャと前記低周波成分との残差(residual)を利用して高周波成分を求める段階、および前記少なくとも1つのプロセッサにより、前記低周波成分にノイズを追加する段階を含むフィーチャ正規化方法を提供する。
【0009】
一側面によると、前記低周波成分を求める段階は、ローパスフィルタを利用して前記入力フィーチャから前記低周波成分を分離してよい。
【0010】
他の側面によると、前記低周波成分を求める段階は、平均プーリング(average pooling)またはガウシアンフィルタ(Gaussian filter)を利用して前記入力フィーチャから前記低周波成分を分離してよい。
【0011】
また他の側面によると、前記ノイズを追加する段階は、前記入力フィーチャの局所的平均にランダムスケーリング(random scaling)を適用して前記ノイズを追加する段階を含んでよい。
【0012】
また他の側面によると、前記ノイズを追加する段階は、与えられた確率分布でサンプリングされたスカラーを乗じる演算により、前記低周波成分の大きさをランダムに変調する段階を含んでよい
【0013】
また他の側面によると、前記低周波成分に前記ノイズを追加するランダム平均スケーリングは、ネットワークモデルの残差分岐(residual branch)内に適用されてよい。
【0014】
また他の側面によると、前記ランダム平均スケーリングは、前記ネットワークモデルの畳み込み層(convolution layer)、バッチ正規化層(batch normalization layer)、非線形活性化層(nonlinear activation layer)のうちの少なくとも1つの層の前に適用されてよい。
【0015】
また他の側面によると、前記ネットワークモデルがベーシックブロック(basicblock)構造のネットワークの場合、前記ランダム平均スケーリングは、前記ネットワークモデルの一部のステージに含まれたすべてのバッチ正規化層の前にそれぞれ適用されてよい。
【0016】
さらに他の側面によると、前記ネットワークモデルがボトルネックブロック(bottleneck block)構造のネットワークの場合、前記ランダム平均スケーリングは、前記ネットワークモデルの一部のステージに含まれたバッチ正規化層のうちの最後のバッチ正規化層の前に適用されてよい。
【0017】
前記フィーチャ正規化方法を前記コンピュータシステムに実行させるために非一時なコンピュータ読み取り可能な記録媒体に記録される、コンピュータプログラムを提供する。
【0018】
前記フィーチャ正規化方法をコンピュータに実行させるためのプログラムが記録されている、非一時なコンピュータ読み取り可能な記録媒体を提供する。
【0019】
コンピュータシステムであって、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサは、入力フィーチャから低周波成分を求め、前記入力フィーチャと前記低周波成分との残差を利用して高周波成分を求め、前記低周波成分にノイズを追加することを特徴とする、コンピュータシステムを提供する。
【発明の効果】
【0020】
本発明の実施形態によると、3D畳み込みニューラルネットワークの過剰適合の問題を解決するために、簡単かつ効率的な正規化方法を提供することができる。
【0021】
本発明の実施形態によると、フィーチャの低周波成分の大きさをランダムに変化させて内部表現を正規化するランダム平均スケーリング(RMS)により、3D残差ネットワーク(residual network)の過剰適合の問題を効果的に解決することができる。
【0022】
本発明の実施形態によると、低周波成分に対する摂動(perturbation)を適用することにより、フィーチャ全体や高周波成分に適用するよりも、3D畳み込みニューラルネットワークの正確度と正規化効果を向上させることができる。
【図面の簡単な説明】
【0023】
【
図1】本発明の一実施形態における、コンピュータシステムの内部構成の一例を説明するためのブロック図である。
【
図2】本発明の一実施形態における、スケーリング因子に対する3D畳み込みニューラルネットワークの正確度を示したグラフである。
【
図3】本発明の一実施形態における、フィーチャ正規化のためのランダム平均スケーリングモジュールの例を示した図である。
【
図4】本発明の一実施形態における、フィーチャ正規化のためのランダム平均スケーリングモジュールの例を示した図である。
【
図5】本発明の一実施形態における、ランダム平均スケーリングモジュールが追加されたベーシックブロック構造のネットワークの例を示した図である。
【
図6】本発明の一実施形態における、ランダム平均スケーリングモジュールが追加されたボトルネックブロック構造のネットワークの例を示した図である。
【
図7】本発明の一実施形態における、ランダム平均スケーリングモジュールの位置別の正規化を示した実験結果を示した図である。
【
図8】本発明の一実施形態における、コンピュータシステムのプロセッサが含むことのできる構成要素の例を示した図である。
【
図9】本発明の一実施形態における、コンピュータシステムが実行することのできるフィーチャ正規化方法の例を示したフローチャートである。
【発明を実施するための形態】
【0024】
以下、本発明の実施形態について、添付の図面を参照しながら詳しく説明する。
【0025】
本発明の実施形態は、行動認識のためのフィーチャ正規化技術に関する。
【0026】
本明細書で具体的に開示される事項を含む実施形態は、フィーチャの低周波成分をランダムに変化させて内部表現を正規化するランダム平均スケーリング(RMS:Random Mean Scaling)によって簡単かつ効率的な正規化方法を提供することができ、これによって行動認識の正確度と正規化性能を向上させることができる。
【0027】
図1は、本発明の一実施形態における、コンピュータシステムの例を示したブロック図である。例えば、本発明の実施形態に係るフィーチャ正規化システムは、
図1に示したコンピュータシステム100によって実現されてよい。
【0028】
図1に示すように、コンピュータシステム100は、本発明の実施形態に係るフィーチャ正規化方法を実行するための構成要素として、メモリ110、プロセッサ120、通信インタフェース130、および入力/出力インタフェース140を含んでよい。
【0029】
メモリ110は、コンピュータ読み取り可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、およびディスクドライブのような永続的大容量記録装置を含んでよい。ここで、ROMやディスクドライブのような永続的大容量記録装置は、メモリ110とは区分される別の永続的記録装置としてコンピュータシステム100に含まれてもよい。また、メモリ110には、オペレーティングシステムと、少なくとも1つのプログラムコードが記録されてよい。このようなソフトウェア構成要素は、メモリ110とは別のコンピュータ読み取り可能な記録媒体からメモリ110にロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー(登録商標)ドライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信インタフェース130を通じてメモリ110にロードされてもよい。例えば、ソフトウェア構成要素は、ネットワーク160を介して受信されるファイルによってインストールされるコンピュータプログラムに基づいてコンピュータシステム100のメモリ110にロードされてよい。
【0030】
プロセッサ120は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ110または通信インタフェース130によって、プロセッサ120に提供されてよい。例えば、プロセッサ120は、メモリ110のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【0031】
通信インタフェース130は、ネットワーク160を介してコンピュータシステム100が他の装置と互いに通信するための機能を提供してよい。一例として、コンピュータシステム100のプロセッサ120がメモリ110のような記録装置に記録されたプログラムコードにしたがって生成した要求や命令、データ、ファイルなどが、通信インタフェース130の制御にしたがってネットワーク160を介して他の装置に伝達されてよい。これとは逆に、他の装置からの信号や命令、データ、ファイルなどが、ネットワーク160を経てコンピュータシステム100の通信インタフェース130を通じてコンピュータシステム100に受信されてよい。通信インタフェース130を通じて受信された信号や命令、データなどは、プロセッサ120やメモリ110に伝達されてよく、ファイルなどは、コンピュータシステム100がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。
【0032】
通信方式が限定されることはなく、ネットワーク160が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク160は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク160は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。
【0033】
入力/出力インタフェース140は、入力/出力装置150とのインタフェースのための手段であってよい。例えば、入力装置は、マイク、キーボード、カメラ、またはマウスなどの装置を、出力装置は、ディスプレイやスピーカのような装置を含んでよい。他の例として、入力/出力インタフェース140は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置150は、コンピュータシステム100と1つの装置で構成されてもよい。
【0034】
また、他の実施形態において、コンピュータシステム100は、
図1の構成要素よりも少ない又は多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、コンピュータシステム100は、上述した入力/出力装置150のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。
【0035】
ビデオ行動認識分野において、深層ニューラルネットワーク(deep neural network,DNN)は、3D畳み込みフィルタ(convolution filter)を必要とする場合が多く、多数のパラメータによって過剰適合が発生する場合が多い。
【0036】
DNNが直面している問題の1つである過剰適合は、3D畳み込みニューラルネットワーク(3D Conv Net)が時空間表現(spatio-temporal representation)をエンコードするのに選好されるアプローチであるビデオ行動認識分野においては、特に致命的である。
【0037】
3D畳み込みニューラルネットワークがビデオストリームを処理する能力を備えているにもかかわらず、多数のパラメータによってたびたび過度な問題に直面する。
【0038】
入力空間(input space)とフィーチャ空間(feature space)における正規化は、過剰適合の問題を緩和するための広く知られたアプローチであるが、過去の研究ではフィーチャに及ぼす影響がどこから始まるのかを動ずる方向(摂動方向,direction to perturb)を見逃している。
【0039】
このような方向が正規化には極めて重要な要素であると仮定するため、どのような情報が行動認識の課題に重要となるかを分析する必要がある。
【0040】
図2は、フィーチャの低周波と高周波成分の大きさを変調する多様なスケーリング因子に対して3D畳み込みニューラルネットワークの正確度の変化を示した図である。
図2によると、行動認識性能は、低周波よりも高周波成分により敏感であることが分かる。
【0041】
フィーチャに対する選択的摂動(perturbation)がネットワークを正規化する効果的な方法になるという点に基づき、本発明の実施形態では、ランダム平均スケーリング(RMS)を正規化方法として適用する。
【0042】
本発明の実施形態に係るランダム平均スケーリング(RMS)方法は、ランダムスカラーを時空間平滑化フィーチャに乗じて選択的に摂動を追加するものである。低周波情報を分離するために、イメージ処理で最も簡単なローパスフィルタ(low-pass filter)である3D平均フィルタ(殆どのディープラーニングで3D平均プーリング演算)を使用してよい。他の正規化方法と同じように、ランダム平均スケーリング(RMS)方法も、訓練(training)中に限って必要であり、推論(inference)中には追加作業は必要ない。
【0043】
先ず、行動認識と正規化について説明する。
【0044】
行動認識
3D畳み込みニューラルネットワークは、時空間ストリームを処理するために追加の次元がある2D畳み込みニューラルネットワーク(2D ConvNet)で拡張されたものであり、行動認識分野において広く利用されている。3D畳み込みニューラルネットワークは、大規模イメージ認識データセットに対して訓練された2Dカーネルを膨らませて画像ドメインで学習された知識を活用してよい。
【0045】
しかし、3D畳み込みニューラルネットワークは、多数のパラメータを短所としている。このような問題を克服するために、3Dカーネルを2Dカーネルと1Dカーネルからなる階段式に分解してよい。一例として、3DフィルタをH-W、T-H、T-Wによって同時に適用することのできる2Dフィルタに分解し、次の段階に3D畳み込みフィルタだけを使用してよい。
【0046】
一方、一部の研究では多段階モデルを提案しており、周波数に応じて情報を個別に使用する。例えば、静的空間フィーチャの遅い分岐(slow branch)と動的モーションフィーチャのための早い分岐(fast branch)で構成された2つのストリームモデルを利用してよい。また、単一ストリームモデルで多重周波数信号を処理するために、オクターブ畳み込み(Octave convolution)を利用してよい。
【0047】
グローバルへの依存性(global dependency)を捉えることは、行動認識モデルの改善のための他のアプローチであると言える。例えば、3D畳み込みニューラルネットワークの演算を減らすための方法として、非局所的モジュール(non-local module)を追加してよい。
【0048】
正規化
正規化は、モデルの過剰適合を解消するのに効果的ではあるが、ビデオドメインでは画像ドメインに比べて研究が活発でなかった。画像ドメインでは主に、データ拡張(data augmentation)、重み減衰(weight decay)、ドロップアウト(dropout)、ラベル平滑化(label smoothing)、およびバッチ正規化(batch normalization)などの正規化技法が使用されている。
【0049】
最近の研究では、ランダムオクルージョン(random occlusion)、画像補間(interpolating two images)または画像パッチ移植(transplanting an image patch onto another image)などの方法により、入力データ空間に対するデータ拡張を可能にする。
【0050】
また、内部表現は、最近の研究では正規化とは別の対象となっている。Shake-Shake正規化技術は、2-分岐ResNetには適用することができない前方および後方演算にランダムにスケーリングされた分岐を追加することで、多重分岐ResNetを正規化する。また、確率論的深さ(stochastic depth)(言い換えれば、RandomDrop)技術は、メイン分岐(main branch)と連結する残差分岐とをランダムに切り換える。このような2つの技術を融合したShakedropは、Shake-Shakeとしてのランダムドロップ転換メカニズムを採択し、2-分岐ResNetとの互換も可能である。
【0051】
以下では、本発明の実施形態における、時空間平滑化フィーチャに対するランダムスケーリング方法について説明する。
【0052】
ランダム平均スケーリング(RMS)
ランダムスケーリング(random scaling)は、畳み込みニューラルネットワークのいかなる階層にも適用可能な、簡単な正規化方法である。
【0053】
ランダムスケーリングは、与えられた確率分布(例えば、Gaussian)でサンプリングしたスカラーαを乗じてフィーチャの大きさをランダムに変調する方式である。
【0054】
本実施形態では、ランダムスケーリングをフィーチャに直接適用するのではなく、フィーチャの局所的平均(local mean)に適用する(ランダム平均スケーリング)。特に、ランダム平均スケーリング方法は、過剰適合を減らすために入力を周波数特徴(高周波成分と低周波成分)に分離し、低周波成分にノイズをランダムに追加する。
【0055】
一般的に、画像において、高周波成分はエッジ(edge)情報を含んでいるが、これは分類(classification)に重要な情報であると言える。したがって、分類に重要となる高周波成分は変化させずに、低周波成分だけをランダムにスケーリングすることにより、正規化効果を向上させることができる。
【0056】
入力から低周波成分を分離するためにローパスフィルタを使用してよく、一例として、平均プーリングまたはボックスフィルタ(box filter)やガウシアンフィルタなどが使用されてよい。
【0057】
局所的平均は、数式(1)のように計算されてよい。
【数1】
【0058】
ここで、xは入力フィーチャを意味し、Wiは現在のインデックスi周囲の3D局所的ウィンドウ(local window)を意味する。
【0059】
入力フィーチャxは、数式(2)のように、平均x
-と残差rに分離される。
【数2】
【0060】
ランダム平均スケーリングによる変調出力yは、数式(3)のように定義されてよい。
【数3】
【0061】
摂動は、訓練中に限って適用されてよい。αの確率分布の平均が1であれば、推論中はy=xとなる。
【0062】
上述したランダム平均スケーリング方法は、畳み込み、バッチ正規化(BN:batch normalization)、非線形活性化(nonlinear activation)などのような階層のいかなるレベルにも適用可能である。
【0063】
ネットワーク性能を向上させるためのランダム平均スケーリングの位置を決定してよい。また、局所的平均にランダムスケーリングを適用すれば、残差または入力全体にランダムスケーリングを適用するよりも性能を向上させることができる。局所的平均は入力の低周波成分として解説される反面、残差は残りの高周波成分を示す。
【0064】
図2を参照しながら説明したように、高周波変調が性能を著しく低下させるため、ランダム平均スケーリングは、低周波に比べて高周波成分をより活用するようにモデルを生成するものと推定される。
【0065】
図3は、本発明の一実施形態における、ランダム平均スケーリングモジュール300を示した図である。ランダム平均スケーリングは、
図3に示すように、いくつかの基本的演算を実行するネットワークモジュールによって実現されてよい。
【0066】
図3において、xは入力、x
-は入力平均(mean)、rは残差、yは出力を示し、
【数4】
は要素ごとの和(element-wise sum)の演算を示し、
【数5】
は要素ごとの積(element-wise multiplication)の演算を示す。
【0067】
図3では、説明の便宜のために、入力平均x
-と残差rとが分離された構造のランダム平均スケーリングモジュール300を示した。数式(1)の局所的平均は、殆どのディープラーニングフレームワークで提供する3D平均プーリングによって求めることができ、数式(3)は
図3のように示される。
【0068】
実際の実現のためには、数式(2)を利用しながら数式(3)をより単純な形態に修正してよい(数式(4))。
【数6】
【0069】
ここで、α’=α-1である。
【0070】
図4には、ランダム平均スケーリングモジュールを実現するための単純化された形態を示しており、数式(4)に該当するランダム平均スケーリングモジュール300を示すブロック図を示している。
【0071】
ランダム平均スケーリングモジュール300は、上述したように、平均プーリングとスカラーとの乗算のように簡単な演算だけを必要とするため、パラメータがなく、訓練中には少量の追加演算だけを必要とし、さらに推論中に追加の演算を必要としない。
【0072】
ランダム平均スケーリングによって効果が向上するネットワークの一例として、3D ResNet系列がある。例えば、SlowOnly、CSN(channel-separated convolutional network)などがこれに該当するが、SlowOnlyには、一般的な2D ResNetを3Dに確張した形態で3D畳み込みをres4とres5段階だけで使用するため時間軸による次元縮小がないという特徴があり、CSNは、light-weight(パラメータが少ない)3D ResNetであると言える。
【0073】
ランダム平均スケーリングモジュール300は、残差分岐内のどの位置にも適用可能であり、例えば、畳み込み層やReLu層の前に位置してよい。
【0074】
一例として、
図5は、ベーシックブロック構造のネットワークの例を示している。ベーシックブロック構造の場合、res4とres5段階に含まれたすべてのBN(バッチ正規化)層の前に、ランダム平均スケーリングモジュール300がそれぞれ追加されてよい。
【0075】
他の例として、
図6には、ボトルネックブロック構造のネットワークの例を示している。ボトルネックブロックの場合、res4とres5段階に含まれたBN(バッチ正規化)層のうちの最後のBN(バッチ正規化)層の前にランダム平均スケーリングモジュール300が追加されてよい。
【0076】
ランダム平均スケーリングモジュール300は、各畳み込み層の前、各BN(バッチ正規化)層の前、各ReLU層の前のように、いかなるレベルにも適用可能である。最後のReLU層の前のランダム平均スケーリングモジュール300は、メイン分岐と残差分岐の合算の前に位置してよい。
【0077】
ランダム平均スケーリングモジュール300の各位置の正規化効果の実験結果は、
図7に示すとおりである。
【0078】
図7で、SlowOnly-34に対してすべての可能な位置にランダム平均スケーリングモジュール300を追加した結果を詳察すると、ランダム平均スケーリングモジュール300が追加された位置による正規化効果の差は大きくないが、単一のランダム平均スケーリングモジュール300を使用する場合のうちで1番目のBN前のランダム平均スケーリングモジュール300が最も高い正確度を示すことが分かる。
【0079】
さらに、ボトルネックブロック構造のSlowOnly-50の場合、すべての場合においてランダム平均スケーリングモジュール300がネットワークの性能を向上させ、特に、最後のBN前のランダム平均スケーリングモジュール300が最も高い正確度を示した。1番目のBN前のランダム平均スケーリングモジュール300も大きな性能の差がないため効率的な選択にはなるが、演算効率のためには、ボトルネックブロック構造では、複数のランダム平均スケーリングモジュール300を使用しないように選択してよい。
【0080】
したがって、ランダム平均スケーリングモジュール300は、ベーシックブロック構造はもちろん、ボトルネックブロック構造でも、過去のモデルよりも高い性能を示すことが分かった。
【0081】
図8は、本発明の一実施形態における、コンピュータシステムのプロセッサが含むことのできる構成要素の例を示した図であり、
図9は、本発明の一実施形態における、コンピュータシステムが実行することのできるフィーチャ正規化方法の例を示したフローチャートである。
【0082】
図8に示すように、プロセッサ120は、周波数分離部801および正規化部802を含んでよい。このようなプロセッサ120の構成要素は、少なくとも1つのプログラムコードによって提供される制御命令にしたがってプロセッサ120によって実行される、互いに異なる機能(different functions)の表現であってよい。例えば、プロセッサ120が入力を周波数特性に分離するようにコンピュータシステム100を制御するために動作する機能的表現として、周波数分離部801が使用されてよい。
【0083】
プロセッサ120およびプロセッサ120の構成要素は、
図9のフィーチャ正規化方法が含む段階910~920を実行してよい。例えば、プロセッサ120およびプロセッサ120の構成要素は、メモリ110が含むオペレーティングシステムのコードと、上述した少なくとも1つのプログラムコードとによる命令(instruction)を実行するように実現されてよい。ここで、少なくとも1つのプログラムコードは、フィーチャ正規化方法を処理するために実現されたプログラムのコードに対応してよい。
【0084】
フィーチャ正規化方法は、図に示された順に発生しないこともあり、方法の段階のうちの一部が省略されることもあるし、あるいは追加の過程がさらに含まれることもある。
【0085】
プロセッサ120は、フィーチャ正規化方法のためのプログラムファイルに記録されたプログラムコードをメモリ110にロードしてよい。例えば、フィーチャ正規化方法のためのプログラムファイルは、メモリ110とは区別される永続的記録装置に記録されていてよく、プロセッサ120は、バスを介して永続的記録装置に記録されたプログラムファイルからプログラムコードがメモリ110にロードされるようにコンピュータシステム100を制御してよい。このとき、プロセッサ120およびプロセッサ120が含む周波数分離部801および正規化部802それぞれは、メモリ110にロードされたプログラムコードのうちの対応する部分の命令を実行して以下の段階910~920を実行するためのプロセッサ120の互いに異なる機能的表現であってよい。段階910~920の実行のために、プロセッサ120およびプロセッサ120の構成要素は、制御命令による演算を直接処理するか、またはコンピュータシステム100を制御してよい。
【0086】
プロセッサ120は、
図3と
図4を参照しながら説明したランダム平均スケーリングモジュール300を含んでよい。
【0087】
本発明に係るフィーチャ正規化方法は、次の2つの段階を含んでよい。
【0088】
段階910で、周波数分離部801は、入力フィーチャを周波数特性に分離してよい。周波数分離部801は、ローパスフィルタを利用して入力フィーチャから低周波成分を求め、入力フィーチャと低周波成分との残差を利用して高周波成分を求めてよい。一例として、周波数分離部801は、フィーチャマップに対して平均プーリングを利用して高周波成分(残差)と低周波成分(局所的平均)とに分離してよい。
【0089】
段階920で、正規化部802は、入力フィーチャから分離された低周波成分にノイズをランダムに追加して入力フィーチャを正規化してよい。正規化部802は、3D残差ネットワークの過剰適合の問題を解消するためにランダム平均スケーリング(RMS)を適用することにより、入力フィーチャから分離された高周波成分と低周波成分のうちで、高周波成分は維持し、低周波成分はランダムにスケーリングしてよい。例えば、正規化部802は、一様分布(uniform distribution)、正規分布(normal distribution)などを利用してフィーチャの低周波部分をランダムに変化させてよい。
【0090】
したがって、プロセッサ120は、フィーチャマップで低周波成分を分離し、該当の低周波成分をランダムに変化させて内部表現を正規化することでにより、過剰適合の問題を簡単かつ効率的に解決することができる。最終的に、平滑化されたフィーチャに対する正規化は、選択的に低周波成分と高周波成分を明確に取り扱うことによって性能向上を招来することができる。
【0091】
このように、本発明の実施形態によると、フィーチャの低周波成分の大きさをランダムに変化させて内部表現を正規化するランダム平均スケーリング(RMS)により、3D残差ネットワークの過剰適合の問題を効果的に解決することができる。また、本発明の実施形態によると、低周波成分に対する摂動を適用することにより、フィーチャ全体や高周波成分に適用するよりも、3D畳み込みニューラルネットワークの正確度と正規化効果を向上させることができる。
【0092】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0093】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【0094】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク、および磁気テープのような磁気媒体、CD-ROMおよびDVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。
【0095】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【0096】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【0097】
120:プロセッサ
801:周波数分離部
802:正規化部