IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ネイバー コーポレーションの特許一覧 ▶ LINE株式会社の特許一覧

特開2022-51484表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法
<>
  • 特開-表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法 図1
  • 特開-表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法 図2
  • 特開-表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法 図3
  • 特開-表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法 図4
  • 特開-表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022051484
(43)【公開日】2022-03-31
(54)【発明の名称】表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法
(51)【国際特許分類】
   G06N 3/04 20060101AFI20220324BHJP
【FI】
G06N3/04
【審査請求】有
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2020219478
(22)【出願日】2020-12-28
(11)【特許番号】
(45)【特許公報発行日】2022-03-23
(31)【優先権主張番号】10-2020-0120504
(32)【優先日】2020-09-18
(33)【優先権主張国・地域又は機関】KR
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 2020年7月2日に「https://arxiv.org/abs/2007.00992」のウェブサイトで公開
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.HDMI
(71)【出願人】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(71)【出願人】
【識別番号】321003371
【氏名又は名称】LINE株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ハン ドンユン
(72)【発明者】
【氏名】ユン サンドゥ
(72)【発明者】
【氏名】ホ ビョンホ
(72)【発明者】
【氏名】ユ ヨンジュン
(57)【要約】
【課題】多様な実施形態に係る電子装置およびその動作方法は、複数の中間層を有する人工ニューラルネットワークに基づき、入力されるデータを処理するように構成される。
【解決手段】多様な実施形態によると、人工ニューラルネットワークは、中間層での表現的ボトルネック現象が最小化されるように中間層の加重値マトリックスに対するランクを拡張させるために、中間層のそれぞれに対して入力チャネルサイズが増加され、非線形活性化関数を利用し、中間層の間で拡張層の個数が増加されるように設計される。
【選択図】図1
【特許請求の範囲】
【請求項1】
電子装置の動作方法であって、
入力されるデータを検出する段階、および
複数の中間層を有する人工ニューラルネットワークに基づき、前記データを処理する段階を含み、
前記人工ニューラルネットワークは、
前記中間層での表現的ボトルネック現象が最小化されるように、前記中間層のそれぞれの加重値マトリックスに対するランクが拡張されるように設計される、
動作方法。
【請求項2】
前記人工ニューラルネットワークは、
前記中間層の前記ランクを拡張させるために、前記中間層のそれぞれに対して入力チャネルサイズが増加されるように設計される、
請求項1に記載の動作方法。
【請求項3】
前記人工ニューラルネットワークは、
前記中間層の前記ランクを拡張させるために、非線形活性化関数を利用するように設計される、
請求項1に記載の動作方法。
【請求項4】
前記人工ニューラルネットワークは、
前記中間層の前記ランクを拡張させるために、前記中間層の間で拡張層の個数が増加されるように設計される、
請求項1に記載の動作方法。
【請求項5】
前記入力チャネルサイズは、
インプットディメンションに対するアウトプットディメンションの割合を示す、
請求項2に記載の動作方法。
【請求項6】
前記拡張層のそれぞれは、出力側層のディメンションが入力側層のディメンションよりも大きいときの前記出力側層であり、
前記入力側層は、前記中間層のうちのいずれか1つであり、前記出力側層は、前記中間層のうちの他の1つであって、前記入力側層に隣接するものである、
請求項4に記載の動作方法。
【請求項7】
前記ランクは、
前記入力チャネルサイズが増加されることにより、線形的に拡張される、
請求項2に記載の動作方法。
【請求項8】
前記ランクは、
前記拡張層の個数が増加されることにより、線形的に拡張される、
請求項4に記載の動作方法。
【請求項9】
前記拡張層の個数は、
2と前記中間層の個数よりも1だけ少ない数との間のある1つの値である、
請求項4に記載の動作方法。
【請求項10】
請求項1~9のうちのいずれか一項に記載の動作方法を前記電子装置に実行させる、コンピュータプログラム。
【請求項11】
請求項1~9のうちのいずれか一項に記載の動作方法を前記電子装置に実行させるためのプログラムが記録されている、非一時的なコンピュータ読み取り可能な記録媒体。
【請求項12】
電子装置であって、
メモリ、および
前記メモリと連結し、前記メモリに記録された少なくとも1つの命令を実行するように構成された、プロセッサを含み、
前記プロセッサは、
複数の中間層を有する人工ニューラルネットワークに基づき、入力されるデータを処理するように構成され、
前記人工ニューラルネットワークは、
前記中間層での表現的ボトルネック現象が最小化されるように、前記中間層の加重値マトリックスに対するランクが拡張されるように設計される、
電子装置。
【請求項13】
前記人工ニューラルネットワークは、
前記中間層の前記ランクを拡張させるために、前記中間層のそれぞれに対して入力チャネルサイズが増加されるように設計される、
請求項12に記載の電子装置。
【請求項14】
前記人工ニューラルネットワークは、
前記中間層の前記ランクを拡張させるために、非線形活性化関数を利用するように設計される、
請求項12に記載の電子装置。
【請求項15】
前記人工ニューラルネットワークは、
前記中間層の前記ランクを拡張させるために、前記中間層の間で拡張層の個数が増加されるように設計される、
請求項12に記載の電子装置。
【請求項16】
前記入力チャネルサイズは、
インプットディメンションに対するアウトプットディメンションの割合を示す、
請求項13に記載の電子装置。
【請求項17】
前記拡張層のそれぞれは、出力側層のディメンションが入力側層のディメンションよりも大きいときの前記出力側層であり、
前記入力側層は、前記中間層のうちのいずれか1つであり、前記出力側層は、前記中間層のうちの他の1つであって、前記入力側層に隣接するものである、
請求項15に記載の電子装置。
【請求項18】
前記ランクは、
前記入力チャネルサイズが増加されることにより、線形的に拡張される、
請求項13に記載の電子装置。
【請求項19】
前記ランクは、
前記拡張層の個数が増加されることにより、線形的に拡張される、
請求項15に記載の電子装置。
【請求項20】
前記拡張層の個数は、
2と前記中間層の個数よりも1だけ少ない数との間のある1つの値である、
請求項15に記載の電子装置。
【発明の詳細な説明】
【技術分野】
【0001】
多様な実施形態は、表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびその動作方法に関する。
【背景技術】
【0002】
畳み込みニューラルネットワーク(convolutional neural network:CNN)は、人工ニューラルネットワーク(artificial neural network)の一種であり、データ処理のために幅広く利用されている。畳み込みニューラルネットワークの計算速度を改善するために、中間層(intermediate layer)のディメンション(dimension)が減少されている。しかしながら、中間層のディメンションの減少により、中間層の限定的なランク(rank)によって表現的ボトルネック現象(representational bottleneck)が発生し、これは情報の損失を誘発する。これにより、畳み込みニューラルネットワークの正確性および効率性が低下することがある。
【発明の概要】
【発明が解決しようとする課題】
【0003】
多様な実施形態は、表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づく電子装置およびこの動作方法を提供する。
【課題を解決するための手段】
【0004】
多様な実施形態に係る電子装置の動作方法は、入力されるデータを検出する段階、および複数の中間層を有する人工ニューラルネットワークに基づき、前記データを処理する段階を含み、前記人工ニューラルネットワークは、前記中間層での表現的ボトルネック現象が最小化されるように、前記中間層の加重値マトリックス(weight matrix)に対するランク(rank)が拡張されるように設計されてよい。
【0005】
多様な実施形態に係るコンピュータプログラムは、前記動作方法を前記電子装置に実行させるために非一時的なコンピュータ読み取り可能な記録媒体に記録されてよい。
【0006】
多様な実施形態に係る記録媒体は、前記動作方法を前記電子装置に実行させるためのプログラムが記録されている、非一時的なコンピュータ読み取り可能なものとして構成されてよい。
【0007】
多様な実施形態に係る電子装置は、メモリ、および前記メモリと連結し、前記メモリに記録される少なくとも1つの命令を実行するように構成されたプロセッサを含み、前記プロセッサは、複数の中間層を有する人工ニューラルネットワークに基づき、入力されるデータを処理するように構成され、前記人工ニューラルネットワークは、前記中間層での表現的ボトルネック現象が最小化されるように、前記中間層の加重値マトリックスに対するランクが拡張されるように設計されてよい。
【発明の効果】
【0008】
多様な実施形態によると、電子装置は、表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づき、データを処理してよい。このとき、人工ニューラルネットワークは、中間層の加重値マトリックスに対するランクが拡張されるように設計され、これにより、人工ニューラルネットワークで発生し得る表現的ボトルネック現象が最小化される。より詳細には、人工ニューラルネットワークは、中間層のそれぞれに対して入力チャネルサイズが増加され、非線形活性化関数を利用し、中間層の間で拡張層の個数が増加されるように設計されることにより、中間層の加重値マトリックスに対するランクが拡張される。これにより、人工ニューラルネットワークで表現的ボトルネック現象による情報の損失を防ぎ、人工ニューラルネットワークの正確性および効率性のような性能を向上させることができる。
【図面の簡単な説明】
【0009】
図1】多様な実施形態に係る、電子装置を示した図である。
図2】多様な実施形態に係る、人工ニューラルネットワークを説明するための図である。
図3】多様な実施形態に係る、人工ニューラルネットワークを説明するための図である。
図4】多様な実施形態に係る、人工ニューラルネットワークを説明するための図である。
図5】多様な実施形態に係る、電子装置の動作方法を示した図である。
【発明を実施するための形態】
【0010】
以下、本文書の多様な実施形態について、添付の図面を参照しながら説明する。
【0011】
図1は、多様な実施形態に係る、電子装置100を示した図である。
【0012】
図2図3、および図4は、多様な実施形態に係る、人工ニューラルネットワークを説明するための図である。
【0013】
図1を参照すると、多様な実施形態に係る電子装置100は、カメラモジュール110、連結端子120、通信モジュール130、入力モジュール140、表示モジュール150、オーディオモジュール160、メモリ170、またはプロセッサ180のうちの少なくともいずれか1つを含んでよい。一実施形態において、電子装置100の構成要素のうちの少なくともいずれか1つが省略されてもよいし、少なくとも1つの他の構成要素が追加されてもよい。一実施形態では、少なくとも、電子装置100の構成要素のうちのいずれか2つが、1つの統合された回路によって実現されてよい。例えば、電子装置100は、スマートフォン(smart phone)、携帯電話、ナビゲーション、コンピュータ、ノート型PC、デジタル放送用端末、PDA(personal digital assistants)、PMP(portable multimedia player)、タブレット、ゲームコンソール(game console)、ウェアラブルデバイス(wearable device)、IoT(internet of things)デバイス、家電機器、医療機器、ロボット(robot)、またはサーバのうちの少なくともいずれか1つを含んでよい。
【0014】
カメラモジュール110は、電子装置100で映像を撮影してよい。このとき、カメラモジュール110は、電子装置100の予め定められた位置に設置され、映像を撮影してよい。また、カメラモジュール110は、映像データを生成してよい。例えば、カメラモジュール110は、少なくとも、レンズ、少なくとも1つのイメージセンサ、イメージシグナルプロセッサ、またはフラッシュのうちのいずれか1つを含んでよい。
【0015】
連結端子120は、電子装置100と外部装置102とを物理的に連結してよい。例えば、外部装置102は、他の電子装置を含んでよい。このために、連結端子120は、少なくとも1つのコネクタを含んでよい。例えば、コネクタは、少なくとも、HDMIコネクタ、USBコネクタ、SDカードコネクタ、またはオーディオコネクタのうちのいずれか1つを含んでよい。
【0016】
通信モジュール130は、電子装置100と外部装置102、104との通信を実行してよい。通信モジュール130は、電子装置100と外部装置102、104との間の通信チャネルを樹立し、通信チャネルを介し、外部装置102、104との通信を実行してよい。ここで、外部装置102、104は、少なくとも、衛星、基地局、サーバ、または他の電子装置のうちのいずれか1つを含んでよい。通信モジュール130は、少なくとも、有線通信モジュールまたは無線通信モジュールのうちのいずれか1つを含んでよい。有線通信モジュールは、連結端子120を介し、外部装置102と有線で連結し、有線で通信してよい。無線通信モジュールは、少なくとも、近距離通信モジュールまたは遠距離通信モジュールのうちのいずれか1つを含んでよい。近距離通信モジュールは、外部装置102と近距離通信方式によって通信してよい。例えば、近距離通信方式は、少なくとも、ブルートゥース(Bluetooth)(登録商標)、Wi-Fiダイレクト(Wi-Fi direct)、または赤外線通信(IrDA:infrared data association)のうちのいずれか1つを含んでよい。遠距離通信モジュールは、外部装置104と遠距離通信方式によって通信してよい。ここで、遠距離通信モジュールは、ネットワーク190を介して外部装置104と通信してよい。例えば、ネットワーク190は、少なくとも、セルラネットワーク、インターネット、またはLAN(local area network)やWAN(wide area network)のようなコンピュータネットワークのうちのいずれか1つを含んでよい。
【0017】
入力モジュール140は、電子装置100の少なくとも1つの構成要素に使用される信号を入力してよい。入力モジュール140は、少なくとも、ユーザが電子装置100に直接的に信号を入力するように構成される入力装置、または周辺環境を感知して信号を発生するように構成されるセンサ装置のうちのいずれか1つを含んでよい。例えば、入力装置は、少なくとも、マイクロフォン(microphone)、マウス(mouse)、またはキーボード(keyboard)のうちのいずれか1つを含んでよい。一実施形態において、センサ装置は、少なくとも、タッチを感知するように設定されたタッチ回路(touch circuitry)、またはタッチによって発生する力の強度を測定するように設定されたセンサ回路のうちのいずれか1つを含んでよい。
【0018】
表示モジュール150は、電子装置100で視覚的に情報を表示してよい。例えば、表示モジュール150は、少なくとも、ディスプレイ、ホログラム装置、またはプロジエクタのうちのいずれか1つを含んでよい。一例として、表示モジュール150は、少なくとも、入力モジュール140のタッチ回路またはセンサ回路のうちのいずれか1つと組み立てられ、タッチスクリーンとして実現されてよい。
【0019】
オーディオモジュール160は、電子装置100でオーディオ信号を処理してよい。オーディオモジュール160は、少なくとも、オーディオ入力モジュールまたはオーディオ出力モジュールのうちのいずれか1つを含んでよい。オーディオ入力モジュールは、入力モジュール140に入力される音からオーディオ信号を取得してよい。オーディオ出力モジュールは、オーディオ信号を音として出力してよい。例えば、オーディオ出力装置は、少なくとも、スピーカまたはレシーバのうちのいずれか1つを含んでよい。
【0020】
メモリ170は、電子装置100の少なくとも1つの構成要素が使用する多様なデータを記録してよい。例えば、メモリ170は、少なくとも、揮発性メモリまたは不揮発性メモリのうちのいずれか1つを含んでよい。データは、少なくとも1つのプログラム、およびこれと関連する入力データまたは出力データを含んでよい。プログラムは、メモリ170に少なくとも1つの命令を含むソフトウェアとして記録されてよく、例えば、少なくとも、オペレーティングシステム、ミドルウェア、またはアプリケーションのうちのいずれか1つを含んでよい。
【0021】
プロセッサ180は、メモリ170のプログラムを実行し、電子装置100の少なくとも1つの構成要素を制御してよい。これにより、プロセッサ180は、データ処理または演算を実行してよい。このとき、プロセッサ160は、メモリ170に記録された命令を実行してよい。プロセッサ180は、人工ニューラルネットワーク(artificial neural network)に基づき、データを処理してよい。人工ニューラルネットワークは、入力層(input layer)、出力層(output layer)、および入力層と出力層との間の複数の中間層(intermediate layer)を含んでよい。各中間層は、少なくとも、入力側層または出力側層のうちのいずれか1つであってよい。言い換えれば、隣接する2つの中間層のそれぞれが、入力側層と出力側層とであってよい。ここで、拡張層(expand layer)および圧縮層(condense layer)が定義されてよい。拡張層は、出力側層のディメンション(d)が入力側層のディメンション(di-1)よりも大きいとき(d>di-1)の出力側層としての中間層を示してよい。圧縮層は、入力側層のディメンションが出力側層のディメンションよりも大きいとき(di-1>d)の出力側層としての中間層を示してよい。
【0022】
多様な実施形態によると、中間層での表現的ボトルネック現象(representational bottleneck)を最小化するために、人工ニューラルネットワークは、中間層の加重値マトリックス(weight matrix)に対するランク(rank)が拡張されるように設計されてよい。このために、人工ニューラルネットワークは、次の3つの条件に基づいて設計されてよい。例えば、人工ニューラルネットワークは、畳み込みニューラルネットワーク(convolutional neural network:CNN)を含んでよい。一例として、畳み込みニューラルネットワークの中間層、例えば、畳み込み層(convolutional layer)が、次の条件に基づいて設計されてよい。他の例として、畳み込みニューラルネットワークの中間層のうちのペナルト層(penultimate layer)が、次の条件に基づいて設計されてよい。
【0023】
最初の条件は、中間層のそれぞれに対して入力チャネルサイズ(input channel size)が増加されるように設計されなければならないという点であってよい。入力チャネルサイズとは、各中間層でのインプットディメンション(input dimension)(din)に対するアウトプットディメンション(output dimension)(dout)の割合(din/dout)を示してよい。ここで、アウトプットディメンション(dout)は、該当の中間層のディメンション(d)を示し、インプットディメンション(din)は、該当の中間層に対する入力側層のディメンション(di-1)を示してよい。すなわち、該当の中間層のディメンション(d)が固定されるとき、該当の中間層に対する入力側層のディメンション(di-1)が拡張されることにより、入力チャネルサイズが増加されてよい。
【0024】
次の条件は、非線形活性化関数(nonlinear activation function)を利用するように設計されなければならないという点であってよい。ここで、非線形活性化関数は、0が少ない関数として決定されてよい。
【0025】
i-番目の中間層の加重値マトリックスWiに基づき、該当の中間層によって生成されるi-番目の特徴(feature)が
【0026】
【数1】

として与えられるとき、加重値マトリックスWiに対するランクrank(Xi)は、該当の中間層のディメンション
【0027】
【数2】

と該当の中間層の入力側層のディメンション(di-1)のうちの最小値に限定されてよい。
【0028】
【数3】

であるが、ここで、oは、他の点ごとの乗算関数gとの点ごとの乗算(pointwise multiplication)を示してよい。不等式
【0029】
【数4】

によると、加重値マトリックスWiに対するランクrank(Xi)は、下記の数式(1)のように、rank(Wii-1)と点ごとの乗算関数gによって限定されてよい。
【0030】
【数5】
【0031】
前記数式(1)によると、i-番目の中間層の加重値マトリックスWiに対するランクrank(Xi)は、rank(Wii-1)が増加されることにより、拡張されてよい。すなわち、i-番目の中間層の加重値マトリックスWiに対するランクrank(Xi)は、該当の中間層の入力側層のディメンションdi-1が増加されることにより、拡張されてよい。同時に、前記数式(1)によると、i-番目の中間層の加重値マトリックスWiに対するランクrank(Xi)は、適切な点ごとの乗算関数giが利用されることにより、拡張されてよい。すなわち、i-番目の中間層の加重値マトリックスWiに対するランクrank(Xi)は、非線形活性化関数を点ごとの乗算関数giとして利用することにより、拡張されてよい。
【0032】
最初の条件と次の条件とに基づいて人工ニューラルネットワークが設計される場合、図2に示すように、入力チャネルサイズが増加されることにより、ランクが線形的に拡張されてよい。具体的には、図2(a)に示すように、各中間層に対して入力チャネルサイズが増加されることにより、ランクが線形的に拡張されてよい。また、図2(b)に示すように、複数の中間層に対して入力チャネルサイズが増加されることにより、ランクが線形的に拡張されてよい。
【0033】
最後の条件は、中間層の間で拡張層の個数が増加されるように設計されなければならないという点であってよい。ここで、拡張層の個数は、2と中間層の個数よりも1だけ少ない数との間のある1つの値であってよい。例えば、中間層の個数が5つであるとき、拡張層の個数は、2つ、3つ、または4つであってよい。ここで、中間層の個数が5つであるとき、下記の表1のように、拡張層の個数および中間層のディメンション構成により、ランクが検出されてよい。
【0034】
【表1】
【0035】
最後の条件に基づいて人工ニューラルネットワークが設計される場合、図3に示すように、拡張層の個数が増加されることにより、ランクが線形的に拡張されてよい。例えば、中間層の個数が5つであるとき、図3(a)に示すように、中間層の間で拡張層の個数が増加されることにより、ランクが拡張されてよい。また、中間層の個数が5つであるとき、図3(b)に示すように、表現的ボトルネック現象が発生したとしても、中間層の間で拡張層の個数が増加されることにより、ランクが線形的に拡張されてよい。
【0036】
多様な実施形態によると、上述した3つの条件に基づいて人工ニューラルネットワークが設計されることにより、ランクが拡張されてよい。具体的に、図4(a)は、従来の人工ニューラルネットワークの特異値分布を示しており、図4(b)は、多様な実施形態に係る人工ニューラルネットワークの特異値分布を示している。図4の(a)と(b)とを比較すると、多様な実施形態に係る人工ニューラルネットワークに比べ、従来の人工ニューラルネットワークは、0に近い特異値を有していることが分かる。ここで、特異値が0に近いということは、ランクが低いということを意味する。すなわち、従来の人工ニューラルネットワークに比べ、多様な実施形態に係る人工ニューラルネットワークは、より拡張されたランクを有することができる。
【0037】
上述したようなランクの拡張により、多様な実施形態に係る人工ニューラルネットワークのデータの処理性能を向上させることができる。これを確認するために、下記の表2のように、従来の人工ニューラルネットワークと多様な実施形態に係る人工ニューラルネットワークのそれぞれに基づき、多様なタイプのイメージが処理された。ここで、イメージから特徴、例えば、食べ物に関する特徴、自動車に関する特徴、航空機に関する特徴、および花に関する特徴を区別する性能が測定された。この結果、従来の人工ニューラルネットワークに比べ、多様な実施形態に係る人工ニューラルネットワークは、少ない数のパラメータを利用しながらも、高い性能でイメージから特徴を区別した。言い換えれば、多様な実施形態に係る人工ニューラルネットワークが上述した3つの条件に基づいて設計されることにより、より高い性能でデータを処理することができる。
【0038】
【表2】
【0039】
例えば、多様な実施形態に係る人工ニューラルネットワークは、下記の表3または表4のようなディメンション構成で設計されてよい。一例として、人工ニューラルネットワークは、下記の表3のように、中間層に対して約11.5ずつ増加されるディメンション構成で設計されてよい。他の例として、人工ニューラルネットワークは、下記の表4のように、中間層に対して約48ずつ増加されるディメンション構成で設計されてよい。
【0040】
【表3】
【0041】
【表4】
【0042】
図5は、多様な実施形態における、電子装置100の動作方法を示した図である。
【0043】
図5を参照すると、電子装置100は、段階510で、入力されるデータを検出してよい。次に、電子装置100は、段階520で、人工ニューラルネットワークに基づき、データを処理してよい。例えば、人工ニューラルネットワークは、畳み込みニューラルネットワーク(CNN)を含んでよい。
【0044】
多様な実施形態によると、中間層での表現的ボトルネック現象が最小化されるように、人工ニューラルネットワークは、中間層の加重値マトリックスに対するランクが拡張されるように設計されてよい。このために、人工ニューラルネットワークは、次の3つの条件に基づき、設計されてよい。
【0045】
最初の条件は、中間層のそれぞれに対して入力チャネルサイズが増加されるように設計されなければならないという点であってよい。入力チャネルサイズとは、各中間層でのインプットディメンション(din)に対するアウトプットディメンション(dout)の割合(din/dout)を示してよい。ここで、アウトプットディメンション(dout)は、該当の中間層のディメンション(d)を示し、インプットディメンション(din)は、該当の中間層に対する入力側層のディメンション(di-1)を示してよい。すなわち、該当の中間層のディメンション(d)が固定されるとき、該当の中間層に対する入力側層のディメンション(di-1)が拡張されることにより、入力チャネルサイズが増加されてよい。
【0046】
次の条件は、非線形活性化関数を利用するように設計されなければならないという点であってよい。ここで、非線形活性化関数は、0が少ない関数として決定されてよい。
【0047】
最後の条件は、中間層の間で拡張層の個数が増加されるように設計されなければならないという点であってよい。ここで、拡張層の個数は、2と中間層の個数よりも1だけ少ない数との間のある1つの値であってよい。例えば、中間層の個数が5つであるとき、拡張層の個数は、2つ、3つ、または4つであってよい。
【0048】
多様な実施形態によると、電子装置100は、表現的ボトルネック現象が最小化された人工ニューラルネットワークに基づいてデータを処理してよい。このとき、人工ニューラルネットワークは、中間層の加重値マトリックスに対するランクが拡張されるように設計され、これにより、人工ニューラルネットワークで発生し得る表現的ボトルネック現象が最小化されてよい。より詳細には、人工ニューラルネットワークは、中間層のそれぞれに対して入力チャネルサイズが増加され、非線形活性化関数を利用し、中間層の間で拡張層の個数が増加されるように設計されることにより、中間層の加重値マトリックスに対するランクが拡張されてよい。これにより、人工ニューラルネットワークで表現的ボトルネック現象による情報の損失を防ぎ、人工ニューラルネットワークの正確性および効率性のような性能を向上させることができる。
【0049】
多様な実施形態に係る電子装置100の動作方法は、入力されるデータを検出する段階510、および複数の中間層を有する人工ニューラルネットワークに基づき、データを処理する段階520を含んでよい。
【0050】
多様な実施形態によると、人工ニューラルネットワークは、中間層での表現的ボトルネック現象が最小化するように、中間層のそれぞれの加重値マトリックスに対するランクが拡張されるように設計されてよい。
【0051】
多様な実施形態によると、人工ニューラルネットワークは、中間層のランクを拡張させるために、中間層のそれぞれに対して入力チャネルサイズが増加されるように設計されてよい。
【0052】
多様な実施形態によると、人工ニューラルネットワークは、中間層のランクを拡張させるために、非線形活性化関数を利用するように設計されてよい。
【0053】
多様な実施形態によると、人工ニューラルネットワークは、中間層のランクを拡張させるために、中間層の間で拡張層の個数が増加されるように設計されてよい。
【0054】
多様な実施形態によると、入力チャネルサイズは、インプットディメンション(input dimension)に対するアウトプットディメンション(output dimension)の割合を示してよい。
【0055】
多様な実施形態によると、拡張層のそれぞれは、出力側層のディメンションが入力側層のディメンションよりも大きいときの出力側層であり、入力側層は、中間層のうちのいずれか1つであり、出力側層は、中間層のうちの他の1つであって、入力側層に隣接するものであってよい。
【0056】
多様な実施形態によると、ランクは、入力チャネルサイズが増加されることにより、線形的に拡張されてよい。
【0057】
多様な実施形態によると、ランクは、拡張層の個数が増加されることにより、線形的に拡張されてよい。
【0058】
多様な実施形態によると、拡張層の個数は、2と中間層の個数よりも1だけ少ない数との間のある1つの値であってよい。
【0059】
多様な実施形態に係る電子装置100は、メモリ170、およびメモリ170と連結し、メモリ170に記録される少なくとも1つの命令を実行するように構成された、プロセッサ180とを含んでよい。
【0060】
多様な実施形態によると、プロセッサ180は、複数の中間層を有する人工ニューラルネットワークに基づき、入力されるデータを処理するように構成されてよい。
【0061】
多様な実施形態によると、人工ニューラルネットワークは、中間層での表現的ボトルネック現象が最小化されるように、中間層の加重値マトリックスに対するランクが拡張されるように設計されてよい。
【0062】
多様な実施形態によると、人工ニューラルネットワークは、中間層のランクを拡張させるために、中間層のそれぞれに対して入力チャネルサイズが増加されるように設計されてよい。
【0063】
多様な実施形態によると、人工ニューラルネットワークは、中間層のランクを拡張させるために、非線形活性化関数を利用するように設計されてよい。
【0064】
多様な実施形態によると、人工ニューラルネットワークは、中間層のランクを拡張させるために、中間層の間で拡張層の個数が増加されるように設計されてよい。
【0065】
多様な実施形態によると、入力チャネルサイズは、インプットディメンションに対するアウトプットディメンションの割合を示してよい。
【0066】
多様な実施形態によると、拡張層のそれぞれは、出力側層のディメンションが入力側層のディメンションよりも大きいときの出力側層であり、入力側層は、中間層のうちのいずれか1つであり、出力側層は、中間層のうちの他の1つであって、入力側層に隣接するものであってよい。
【0067】
多様な実施形態によると、ランクは、入力チャネルサイズが増加されることにより、線形的に拡張されてよい。
【0068】
多様な実施形態によると、ランクは、拡張層の個数が増加されることにより、線形的に拡張されてよい。
【0069】
多様な実施形態によると、拡張層の個数は、2と中間層の個数よりも1だけ少ない数との間のある1つの値であってよい。
【0070】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるものとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことを理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0071】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に具現化されてもよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【0072】
多様な実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピディスク、および磁気テープのような磁気媒体、CD-ROM、DVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。
【0073】
本文書の多様な実施形態およびこれに使用された用語は、本文書に記載された技術を特定の実施形態に対して限定しようとするものではなく、該当の実施形態の多様な変更、均等物、および/または置換物を含むものと理解されなければならない。図面の説明に関し、類似する構成要素には類似の参照符号が付与されてよい。単数の表現は、文脈において明らかに異なるように意味されない限り、複数の表現を含んでよい。本文書において、「AまたはB」、「Aおよび/またはBのうちの少なくとも1つ」、「A、B、またはC」、または「A、B、および/またはCのうちの少なくとも1つ」などの表現は、ともに羅列された項目のすべての可能な組み合わせを含んでよい。「第1」、「第2」、「1番目」、または「2番目」などの表現は、該当の構成要素を、順序または重要度に関係なく修飾してよく、ある構成要素を他の構成要素と区分するために使用されるものに過ぎず、該当の構成要素を限定しない。ある(例:第1)構成要素が他の(例:第2)構成要素に「(機能的にまたは通信的に)連結されて」いるとか「接続されて」いるとされるときには、前記ある構成要素が前記他の構成要素に直接的に連結されてもよいし、他の構成要素(例:第3構成要素)を介して連結されてもよい。
【0074】
本文書で使用された用語「モジュール」は、ハードウェア、ソフトウェア、またはファームウェアで構成されたユニットを含み、例えば、ロジック、論理ブロック、部品、または回路などの用語と相互互換的に使用されてよい。モジュールは、一体で構成された部品、または1つまたはそれ以上の機能を実行する最小単位、またはその一部となってよい。例えば、モジュールは、ASIC(application-specific integrated circuit)で構成されてよい。
【0075】
多様な実施形態によると、記述した構成要素のそれぞれの構成要素(例:モジュールまたはプログラム)は、単数または複数の個体を含んでよい。多様な実施形態によると、上述した該当の構成要素のうちの1つ以上の構成要素または段階が省略されてもよいし、または1つ以上の他の構成要素または段階が追加されてもよい。大体的にまたは追加的に、複数の構成要素(例:モジュールまたはプログラム)は、1つの構成要素として統合されてよい。このような場合、統合された構成要素は、複数の構成要素それぞれの構成要素の1つ以上の機能を、統合以前に複数の構成要素のうちの該当の構成要素によって実行されることと同一または類似に実行してよい。多様な実施形態によると、モジュール、プログラム、または他の構成要素によって実行される段階は、順次的に、並列的に、反復的に、または発見的に実行されてもよいし、段階のうちの1つ以上が他の順序で実行されてもよいし、省略されてもよいし、または1つ以上の他の段階が追加されてもよい。
【符号の説明】
【0076】
100:電子装置
102、104:外部装置
110:カメラモジュール
120:連結端子
130:通信モジュール
140:入力モジュール
150:表示モジュール
160:オーディオモジュール
170:メモリ
180:プロセッサ
190:ネットワーク
図1
図2
図3
図4
図5