JP7140912B2 - 情報処理方法及び装置、電子機器、記憶媒体及びコンピュータプログラム - Google Patents

情報処理方法及び装置、電子機器、記憶媒体及びコンピュータプログラム Download PDF

Info

Publication number
JP7140912B2
JP7140912B2 JP2021515573A JP2021515573A JP7140912B2 JP 7140912 B2 JP7140912 B2 JP 7140912B2 JP 2021515573 A JP2021515573 A JP 2021515573A JP 2021515573 A JP2021515573 A JP 2021515573A JP 7140912 B2 JP7140912 B2 JP 7140912B2
Authority
JP
Japan
Prior art keywords
matrix
convolution
neural network
convolutional layer
transformation matrix
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021515573A
Other languages
English (en)
Other versions
JP2022500786A (ja
Inventor
兆陽 張
凌雲 呉
平 羅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Sensetime Technology Co Ltd
Original Assignee
Shenzhen Sensetime Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Sensetime Technology Co Ltd filed Critical Shenzhen Sensetime Technology Co Ltd
Publication of JP2022500786A publication Critical patent/JP2022500786A/ja
Application granted granted Critical
Publication of JP7140912B2 publication Critical patent/JP7140912B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)

Description

本開示は、情報処理に関し、特に、情報処理方法及び装置、電子機器並びに記憶媒体に関する。
強力な性能上の優位性により、畳み込みニューラルネットワークは、コンピュータビジョンや自然言語処理等の分野の大きな進歩を促進するものとして、産業界と学術界で盛んに研究されている。しかしながら、深層畳み込みニューラルネットワークは、大量の行列演算に制限されているので、大規模な記憶計算資源が必要とされることが一般であり、ニューラルネットワーク中の畳み込み単位(Convolution)の冗長性を低減することはこの問題の重要な解決策の1つとなる。ここで、グループ化畳み込み(Group Convolution)は、チャンネルをグループ分割して畳み込む手法であり、それぞれのネットワークに広く用いられている。
本開示は、ニューラルネットワークによって入力情報の情報処理を実行する技術手段を提供する。
本開示の一態様によれば、ニューラルネットワークに用いられる情報処理方法であって、受信された入力情報をニューラルネットワークに入力するステップと、前記ニューラルネットワークによって前記入力情報を処理することであって、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行する場合に、畳み込み層に対する変換行列を用いて畳み込み層の畳み込みカーネルを更新し、更新した畳み込みカーネルで前記畳み込み層の畳み込み処理をなすステップと、前記ニューラルネットワークによって処理された処理結果を出力するステップと、を含む情報処理方法を提供する。
ある可能な実施形態では、前記畳み込み層に対する変換行列を用いて畳み込み層の畳み込みカーネルを更新するステップには、前記畳み込み層の畳み込みカーネルの空間次元を取得するステップと、前記畳み込みカーネルの空間次元に基づいて、畳み込み層に対応する前記変換行列に対して、前記畳み込みカーネルの空間次元に依存する回数のコピー処理を実行するステップと、コピー処理された変換行列と前記畳み込みカーネルに対してドット積処理を実行して、対応する畳み込み層の更新された畳み込みカーネルを得るステップと、を含む。
ある可能な実施形態では、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行するステップの前に、前記方法は、畳み込み層に対応する前記変換行列を構成する行列ユニットを決定するステップであって、前記行列ユニットは、第1行列と第2行列、又は第2行列のみを含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が異なることに応じて、前記畳み込み層に対応する変換行列が第1行列と第2行列を含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が同じであることに応じて、前記畳み込み層に対応する変換行列が第2行列を含み、前記第1行列が単位行列を連結して形成されるものであり、前記第2行列が複数の部分行列の関数変換の内積によって得られるものであるステップと、決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するステップと、を更に含む。
ある可能な実施形態では、畳み込み層の変換行列を構成する第2行列を決定するステップには、各畳み込み層に対するゲートパラメータを取得するステップと、前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定するステップと、決定された前記部分行列に基づいて前記第2行列を形成するステップと、を含む。
ある可能な実施形態では、前記各畳み込み層に対するゲートパラメータを取得するステップには、受信された配置情報によって、各畳み込み層に対するゲートパラメータを取得するステップ、又は前記ニューラルネットワークのトレーニング結果に基づいて、畳み込み層に対するゲートパラメータを決定するステップを含む。
ある可能な実施形態では、前記決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するステップには、各畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数を取得するステップと、第1チャンネル数が第2チャンネル数より大きいことに応じて、第1行列と第2行列の積を前記変換行列とするステップと、第1チャンネル数が第2チャンネル数より小さいことに応じて、第2行列と第1行列の積を前記変換行列とするステップと、を含む。
ある可能な実施形態では、前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定するステップには、符号関数を用いて前記ゲートパラメータに対して関数処理を行って、二値化ベクトルを取得するステップと、前記二値化ベクトルに基づいて二値化ゲートベクトルを取得し、前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得るステップと、を含む。
ある可能な実施形態では、前記二値化ベクトルに基づいて二値化ゲートベクトルを取得するステップには、前記二値化ベクトルを前記二値化ゲートベクトルとするステップ、又は置換行列と前記二値化ベクトルの積の結果を前記二値化ゲートベクトルとするステップを含む。
ある可能な実施形態では、前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得るステップには、前記二値化ゲートベクトル中の要素が第1数値であることに応じて、全1行列の部分行列を取得するステップと、前記二値化ゲートベクトル中の要素が第2数値であることに応じて、単位行列の部分行列を取得するステップと、を含む。
ある可能な実施形態では、前記第1基礎行列が全1行列であり、第2基礎行列が単位行列である。
ある可能な実施形態では、前記決定された前記部分行列に基づいて前記第2行列を形成するステップには、複数の前記部分行列に対して内積演算を行って、前記第2行列を得るステップを含む。
ある可能な実施形態では、前記入力情報は、文字情報、画像情報、映像情報、音声情報の少なくとも1種を含む。
ある可能な実施形態では、前記変換行列の次元が第1チャンネル数に第2チャンネル数を掛けたものであり、前記第1チャンネル数が畳み込み層の入力特徴のチャンネル数であり、前記第2チャンネル数が畳み込み層の出力特徴のチャンネル数であり、前記変換行列の要素が0と1の少なくとも1つを含む。
ある可能な実施形態では、前記方法は、前記ニューラルネットワークをトレーニングするステップを更に含み、前記ニューラルネットワークをトレーニングするステップには、トレーニングサンプル及び教師となる真の検出結果を取得するステップと、前記ニューラルネットワークを用いて前記トレーニングサンプルを処理して、予測結果を得るステップと、前記予測結果と真の検出結果に対応する損失に基づいて、各ネットワーク層の畳み込みカーネルと変換行列を含む前記ニューラルネットワークのネットワークパラメータを、終了条件を満たすまでにフィードバック調整するステップと、を含む。
本開示の第2態様によれば、受信された入力情報をニューラルネットワークに入力するための入力モジュールと、前記ニューラルネットワークによって前記入力情報を処理することであって、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行する場合に、畳み込み層に対する変換行列を用いて畳み込み層の畳み込みカーネルを更新し、更新した畳み込みカーネルで前記畳み込み層の畳み込み処理をなすための情報処理モジュールと、前記ニューラルネットワークによって処理された処理結果を出力するための出力モジュールと、を含む情報処理装置を提供する。
ある可能な実施形態では、前記情報処理モジュールは、更に、前記畳み込み層の畳み込みカーネルの空間次元を取得し、前記畳み込みカーネルの空間次元に基づいて、畳み込み層に対応する前記変換行列に対して、前記畳み込みカーネルの空間次元に依存する回数のコピー処理を実行し、コピー処理された変換行列と前記畳み込みカーネルに対してドット積処理を実行して、対応する畳み込み層の更新された畳み込みカーネルを得るために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、畳み込み層に対応する前記変換行列を構成する行列ユニットを決定し、決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するために用いられ、前記行列ユニットは、第1行列と第2行列、又は第2行列のみを含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が異なることに応じて、前記畳み込み層に対応する変換行列が第1行列と第2行列を含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が同じであることに応じて、前記畳み込み層に対応する変換行列が第2行列を含み、前記第1行列が単位行列を連結して形成されるものであり、前記第2行列が複数の部分行列の関数変換の内積によって得られるものである。
ある可能な実施形態では、前記情報処理モジュールは、更に、各畳み込み層に対するゲートパラメータを取得し、前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定し、決定された前記部分行列に基づいて前記第2行列を形成するために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、受信された配置情報によって、各畳み込み層に対するゲートパラメータを取得し、又は前記ニューラルネットワークのトレーニング結果に基づいて、畳み込み層に対するゲートパラメータを決定するために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、各畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数を取得し、第1チャンネル数が第2チャンネル数より大きいことに応じて、第1行列と第2行列の積を前記変換行列とし、第1チャンネル数が第2チャンネル数より小さいことに応じて、第2行列と第1行列の積を前記変換行列とするために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、符号関数を用いて前記ゲートパラメータに対して関数処理を行って、二値化ベクトルを取得し、前記二値化ベクトルに基づいて二値化ゲートベクトルを取得し、前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得るために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、前記二値化ベクトルを前記二値化ゲートベクトルとし、又は置換行列と前記二値化ベクトルの積の結果を前記二値化ゲートベクトルとするために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、前記二値化ゲートベクトル中の要素が第1数値である場合に、全1行列の部分行列を取得し、前記二値化ゲートベクトル中の要素が第2数値である場合に、単位行列の部分行列を取得するために用いられる。
ある可能な実施形態では、前記第1基礎行列が全1行列であり、第2基礎行列が単位行列である。
ある可能な実施形態では、前記情報処理モジュールは、更に、複数の前記部分行列に対して内積演算を行って、前記第2行列を得るために用いられる。
ある可能な実施形態では、前記入力情報は、文字情報、画像情報、映像情報、音声情報の少なくとも1種を含む。
ある可能な実施形態では、前記変換行列の次元が第1チャンネル数に第2チャンネル数を掛けたものであり、前記第1チャンネル数が畳み込み層の入力特徴のチャンネル数であり、前記第2チャンネル数が畳み込み層の出力特徴のチャンネル数であり、前記変換行列の要素が0と1の少なくとも1つを含む。
ある可能な実施形態では、前記情報処理モジュールは、更に、前記ニューラルネットワークをトレーニングするために用いられ、前記ニューラルネットワークをトレーニングするステップには、トレーニングサンプル及び教師となる真の検出結果を取得するステップと、前記ニューラルネットワークを用いて前記トレーニングサンプルを処理して、予測結果を得るステップと、前記予測結果と真の検出結果に対応する損失に基づいて、各ネットワーク層の畳み込みカーネルと変換行列を含む前記ニューラルネットワークのネットワークパラメータを、終了条件を満たすまでにフィードバック調整するステップと、を含む。
本開示の第3態様によれば、プロセッサと、プロセッサ実行可能コマンドを記憶するためのメモリと、を含み、前記プロセッサは、前記メモリに記憶されたコマンドを呼び出して第1態様のいずれか一項に記載の方法を実行するように構成される電子機器を提供する。
本開示の第4態様によれば、コンピュータプログラムコマンドが記憶されているコンピュータ読取可能記憶媒体であって、前記コンピュータプログラムコマンドがプロセッサにより実行されると、第1態様のいずれか一項に記載の方法が実現されることを特徴とするコンピュータ読取可能記憶媒体を提供する。
本開示の実施例では、入力情報をニューラルネットワークに入力して対応する演算処理を実行するようにしてよく、ニューラルネットワークの畳み込み層の畳み込み処理を実行する時に、各畳み込み層に対して決定された変換行列に基づいてこの畳み込み層の畳み込みカーネルを更新し、新しい畳み込みカーネルを用いて対応する畳み込み処理をなすようにしてよく、この形態によって、各畳み込み層に対して対応する変換行列を単独して配置し、対応するグループ化効果を形成することを可能し、このグループ化は隣接するチャンネルのグループ化に限定されなく、更にニューラルネットワークの演算精度を高めることができる。
以上の一般説明と以下の詳細説明は解釈するための例示的なものに過ぎず、本開示を制限しないことを理解すべきである。
以下の図面と関連付けられた例示的な実施例に対する詳細な説明によれば、本開示の他の特徴および態様は明確になる。
ここの図面は明細書に組み込まれて明細書の一部を構成し、これらの図面は本開示に合致する実施例を示し、明細書と共に本開示の技術的手段を説明するために用いられる。
図1は、本開示の実施例に係る情報処理方法のフローチャートを示す。 図2は、本開示の実施例に係る情報処理方法で畳み込みカーネルを更新するフローチャートを示す。 図3は、従来の一般の畳み込み操作の模式図を示す。 図4は、従来のグループ化畳み込みの畳み込み操作の模式図を示す。 図5は、本開示の実施例に係る異なる変換行列の構造模式図を示す。 図6は、本開示の実施例に係る情報処理方法における変換行列の決定のフローチャートを示す。 図7は、本開示の実施例に係る情報処理方法における、畳み込み層の変換行列を構成する第2行列を決定する方法のフローチャートを示す。 図8は、本開示の実施例に係る情報処理方法におけるステップS1012のフローチャートを示す。 図9は、本開示の実施例に係る情報処理方法におけるステップS103のフローチャートを示す。 図10は、本開示の実施例に係るニューラルネットワークのトレーニングのフローチャートを示す。 図11は、本開示の実施例に係る情報処理装置のブロック図を示す。 図12は、本開示の実施例に係る電子機器のブロック図を示す。 図13は、本開示の実施例に係る電子機器の別のブロック図を示す。
以下に図面を参照しながら本開示の様々な例示的実施例、特徴および態様を詳細に説明する。図面における同じ符号は同じまたは類似する機能の要素を表す。図面において実施例の様々な態様を示したが、特に断らない限り、比例に従って図面を作る必要がない。
ここの用語「例示的」とは、「例、実施例として用いられることまたは説明的なもの」を意味する。ここで「例示的」に説明したいかなる実施例も他の実施例より優れたものと理解すべきではない。
本明細書の用語の「及び/又は」は、関連対象の関連関係を記述するためのものに過ぎず、3種の関係が存在可能であることを示し、例えば、A及び/又はBは、Aが単独して存在し、AとBが同時に存在し、Bが単独して存在するという3種の場合を示してもよい。また、本明細書の用語の「少なくとも1種」は多種のうちのいずれか1種又は多種のうちの少なくとも2種の任意の組合を示し、例えば、A、B、Cのうちの少なくとも1種を含むということは、A、B及びCから構成される集合から選択されるいずれか1つ又は複数の要素を含むことを示してもよい。
また、本開示をより効果的に説明するために、以下の具体的な実施形態において様々な具体的詳細を示す。当業者であれば、何らかの具体的詳細がなくなるにも関わらず、本開示は同様に実施できるということを理解すべきである。いくつかの実施例では、本開示の趣旨を強調するよう、当業者に既知の方法、手段、要素および回路に対する詳細な説明を省略する。
本開示で言及される上記各方法の実施例は、原理と論理に違反しない限り、相互に組み合わせて、組合せ後の実施例を形成することができることが理解され、ページ数に限りがあるので、本開示では詳細な説明を省略する。
また、本開示は、情報処理装置、電子機器、コンピュータ読取可能記憶媒体、プログラムを更に提供し、それらはいずれも本開示で提供されるいずれか1種の情報処理方法を実現することに利用可能であり、対応する技術的解決手段及び説明については方法部分の対応の記載を参照してもよく、ここで詳細な説明を省略する。
本開示の実施例の情報処理装置の実行主体は、任意の電子機器又はサーバであってよく、例えば、画像処理機能を有する画像処理装置、音声処理機能を有する音声処理装置及び映像処理機能を有する映像処理装置等であってよく、主に被処理情報によって決定してよい。ここで、電子機器は、ユーザ側装置(User Equipment、UE)、携帯機器、ユーザ端末、端末、セル方式の携帯無線電話、無線電話、携帯情報端末(Personal Digital Assistant、PDA)、携帯型デバイス、計算装置、車載装置、ウエアラブル装置等であってよい。ある可能な実施形態では、この情報処理方法は、プロセッサによってメモリに記憶されたコンピュータ読取可能コマンドを呼び出すことで実現してよい。
図1は本開示の実施例に係る情報処理方法のフローチャートを示し、図1に示すように、前記情報処理方法は、以下のステップを含む。
S10:受信された入力情報をニューラルネットワークに入力する。
ある可能な実施形態では、入力情報は、数字、画像、文字、オーディオ、ビデオの少なくとも1種を含んでもよいし、他の実施形態では、他の情報を含んでもよく、本開示はこれを限定するものではない。
ある可能な実施形態では、本開示で提供された情報処理方法は、ニューラルネットワークによって実現されてよく、このニューラルネットワークは、入力情報の対応する処理を実行可能であり且つ精度要求を満たせるトレーニング済みのネットワークであってよい。例えば、本開示の実施例のニューラルネットワークは、畳み込みニューラルネットワークであってよく、ここで、目標検出、目標認識機能を備えるニューラルネットワークであってよく、それによって受信された画像中の目標対象の検出と認識を実現でき、そのうち、目標対象は、歩行者、顔、車両、動物等のいかなる種類の対象であってもよく、具体的には適用シーンに応じて決定可能である。
ニューラルネットワークによって入力情報の処理を実行する時に、入力情報をニューラルネットワークに入力して、ニューラルネットワークの各ネットワーク層によって対応する演算を実行してよい。ここで、ニューラルネットワークは、少なくとも1層の畳み込み層を含んでよい。
S20:前記ニューラルネットワークによって前記入力情報を処理することであって、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行する場合に、畳み込み層に対する変換行列を用いて畳み込み層の畳み込みカーネルを更新し、更新した畳み込みカーネルで前記畳み込み層の畳み込み処理をなす。
ある可能な実施形態では、入力情報をニューラルネットワークに入力した後、ニューラルネットワークによってこの入力情報に対して演算処理を行ってよく、例えば、入力情報の特徴にベクトル演算又は行列演算、又は加算、減算、乗算、除算等の演算を実行してよく、具体的な演算種類は、ニューラルネットワークの構造によって決定してよい。ある実施例では、ニューラルネットワークは、少なくとも1層の畳み込み層、プーリング層、全結合層、残差ネットワーク、分類器を含んでもよく、又は、他の実施例では、他のネットワーク層を含んでもよく、本開示はこれを限定するものではない。
ニューラルネットワークでの畳み込み処理を実行する時に、本開示の実施例は、ニューラルネットワークの各畳み込み層に対する変換行列によって各畳み込み層の畳み込み演算のための畳み込みカーネルを更新してよい。ここで、各畳み込み層に対して異なる変換行列を配置してもよく、各畳み込み層に対して同じ変換行列を配置してもよく、変換行列は、ニューラルネットワークのトレーニング学習で得られたパラメータ行列であってもよく、具体的には要求や適用シーンに応じて設定可能である。本開示の実施例の変換行列の次元は畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数の積であり、例えば、Cin×Coutであってよく、ただし、Cinは畳み込み層の入力特徴のチャンネル数であり、Coutは畳み込み層の出力特徴のチャンネル数を表し、また、変換行列は二値化行列として構成されてよく、ここで、この二値化行列中の要素は0と1の少なくとも1種を含み、即ち、本開示の実施例の変換行列は0と1の少なくとも1種の要素で構成された行列であってよい。
ある可能な実施形態では、各畳み込み層に対応する変換行列は、ニューラルネットワークをトレーニングして得られる行列であってよく、ここで、ニューラルネットワークをトレーニングする時に、変換行列を導入し、トレーニングサンプルの特徴を基礎とし、トレーニング要求を満たせ且つトレーニングサンプルに適応する変換行列を決定するようにしてよい。即ち、本開示の実施例で各畳み込み層に対する変換行列によって、この畳み込み層の畳み込み方式がトレーニングサンプルのサンプル特徴に適応するようになり、例えば、異なる畳み込み層の異なるグループ化畳み込みを実現することができる。ここで、ニューラルネットワークの使用精度を高くするために、本開示の実施例の入力情報の種類はニューラルネットワークをトレーニングするために使用されるトレーニングサンプルの種類と同じである。
ある可能な実施形態では、受信された配置情報によって各畳み込み層の変換行列を決定してよく、そのうち、配置情報は畳み込み層の変換行列に関連する情報であり、また、各変換行列は設定された、入力情報に適応する変換行列であり、即ち、精確な処理結果を得ることができる変換行列である。ここで、配置情報を受信する手法は、他の装置から伝送された配置情報を受信したり、予め記憶された配置情報を読み取ったりすることを含んでよく、本開示はこれを限定するものではない。
各畳み込み層に対する変換行列が得られた後、配置された変換行列に基づいて新しい畳み込みカーネルを取得してよく、即ち、畳み込み層の畳み込みカーネルの更新を完了する。そのうち、畳み込みカーネルは従来技術における畳み込み処理で使用される畳み込み方式で決定された畳み込みカーネルであり、ニューラルネットワークをトレーニングする時に、トレーニングによってこの更新前の畳み込みカーネルの具体的なパラメータを得ることができる。
S30:前記ニューラルネットワークによって処理された処理結果を出力する。
ニューラルネットワークによって処理された後、ニューラルネットワークによる入力情報の処理結果が得られ、この時に、この処理結果を出力してよい。
ある可能な実施形態では、入力情報は画像情報であってよく、ニューラルネットワークは前記入力情報中の対象の種類を検出するネットワークであってよく、この時に、この処理結果は画像情報に含まれる対象の種類であってよい。又は、ニューラルネットワークは入力情報中の目標種類の対象の所在する位置領域を検出するものであってよく、この時にこの処理結果は画像情報に含まれている目標種類の対象の位置領域であり、処理結果は同様に行列形式であってもよく、本開示はそれについて具体的に限定しない。
以下、本開示の実施例の情報処理方法の各ステップについてそれぞれ詳細に説明し、ここで、各畳み込み層に対する変換行列が得られた後、この配置された変換行列によって対応する畳み込み層の畳み込みカーネルを対応付けて更新してよい。図2は本開示の実施例に係る情報処理方法における畳み込みカーネルの更新のフローチャートを示し、ここで、前記畳み込み層に対する変換行列によって畳み込み層の畳み込みカーネルを更新するステップには、以下のステップを含む。
S21:前記畳み込み層の畳み込みカーネルの空間次元を取得する。
ある可能な実施形態では、各畳み込み層に対する変換行列が得られた後、畳み込みカーネルの更新過程を実行してよく、ここで、各畳み込み層の畳み込みカーネルの空間次元を取得してよい。例えば、ニューラルネットワーク中の各畳み込み層の畳み込みカーネルの次元は、k×k×Cin×Coutで表してよく、ここでk×kは畳み込みカーネルの空間次元であり、kは3又は5等のような1以上の整数であり、具体的にはニューラルネットワーク構造によって決定してよく、Cinは畳み込み層の入力特徴のチャンネル数(第1チャンネル数)であり、Coutは畳み込み層の出力特徴のチャンネル数(第2チャンネル数)を表す。
S22:前記畳み込みカーネルの空間次元に基づいて、畳み込み層に対応する前記変換行列に対してコピー処理を実行し、そのうち、コピー処理の回数が前記畳み込みカーネルの空間次元に依存する。
ある可能な実施形態では、畳み込み層の畳み込みカーネルの空間次元に基づいて、この畳み込み層の変換行列に対してコピー処理を実行してよく、即ち、k×k個の変換行列をコピーし、このコピーされたk×k個の変換行列で新しい行列を形成し、この形成された新しい行列は次元が畳み込みカーネルと同じである。
S23:コピー処理された変換行列と前記畳み込みカーネルに対してドット積処理を実行して、対応する畳み込み層の更新された畳み込みカーネルを得る。
ある可能な実施形態では、コピーされたk×k個の変換行列で形成された新しい行列と畳み込みカーネルのドット積によって、更新後の畳み込みカーネルを得るようにしてよい。
ある可能な実施形態では、本開示によって、更新された畳み込みカーネルを用いて畳み込み処理を実行することは、以下の式で表してよい。
Figure 0007140912000001
ここで、f(i+m,j+n)は畳み込み層の入力特徴Fin中のi+m行目j+n列目の特徴単位を表し、Finの大きさはN×Cin×H×Wで表してよく、Nは畳み込み層の入力特徴のサンプル量を表し、Cinは入力特徴のチャンネル数を表し、HとWはそれぞれ単一のチャンネルの入力特徴の高さと幅を表し、f(i+m,j+n)∈RN×Cinであり、f′i,jは畳み込み層の出力特徴Fout中のi行目j列目の特徴単位を表し、Fout∈RN×Cout×H′×W′であり、Coutは出力特徴のチャンネル数を表し、H′×W′は単一のチャンネルの出力特徴の高さと幅を表し、ωm,nは畳み込み層の畳み込みカーネル中のm行目n列目の畳み込み単位を表し、畳み込みカーネルの空間次元はk行k列であり、Uはこの畳み込み層に対する変換行列(次元が畳み込み単位と同じ)であり、bは選択的なバイアス項を表し、0以上の数値であってよい。
上記形態によれば、各畳み込み層の畳み込みカーネルの更新過程を完了することができ、各畳み込み層に対する変換行列は、異なる形式であってもよいので、任意の畳み込み操作を実現することができる。
従来技術において、ニューラルネットワークで畳み込み処理のグループ化畳み込みを実現する時に、従来のグループ化畳み込みにはやはりいくつかの重要な欠陥が存在する。
(1)畳み込みパラメータを決定するために人間で設計する手法として、適切なグループ化数を探求するように煩雑な実験によって検証する必要があり、実際に応用する時に普及させにくい。
(2)ネットワーク全体の全ての畳み込み層に同じタイプのグループ化畳み込みポリシーを用いている従来の応用において、ネットワーク全体に適合するグループ化畳み込みポリシーを手動で選択することが困難であり、一方、このような操作手法によってニューラルネットワークの性能が最適になるとは限らない。
(3)ただ隣接するチャンネルの畳み込み特徴を同一のグループに分割するグループ化手法があり、このような実現しやすい手法においてそれぞれのチャンネルの特徴情報の関連性が無視されてきた。
本開示の実施例は、各畳み込み層に対して適切な変換行列を配置することで、各畳み込み層の単独したメタ畳み込み(Meta Convolution)処理を可能にするものであり、変換行列がニューラルネットワークのトレーニングで得られたパラメータである場合に、人間で干渉することなく、深層ニューラルネットワークの畳み込み層に対して自分で学習することで任意のグループ化畳み込み仕組みを可能にする。ニューラルネットワークのそれぞれの畳み込み層に対して別々に異なるグループ化ポリシーを配置する。本開示の実施例で提供されるメタ畳み込み方法は、深層ニューラルネットワークの任意の畳み込み層に用いられて、ネットワークの異なる深度の畳み込み層が学習することによって現在特徴表現に適合する最適なチャンネルグループ化仕組みを自動的に択選することを可能にする。本開示の畳み込み処理は多様性を有している。ここで、メタ畳み込み方法は変換行列の形式で表され、既存の隣接グループ化畳み込み技術を表現できるだけでなく、任意のチャンネルグループ化仕組みを切り開くことができ、それぞれのチャンネルの特徴情報の関連性が増加され、畳み込みの冗長性除去技術の先端的な発展を促進した。また、本開示の実施例で提供された畳み込み処理は更に簡便性を有している。ここで、Kronecker(クロネッカー積)演算によってネットワークパラメータを分解して、微分可能なエンドツーエンドトレーニング手法によって、本開示で提案されたメタ畳み込み方法に計算量が小さく、パラメータ量が小さく、実現や応用が容易である等のメリットを持たせる。本開示は更に汎用性を有しており、様々なネットワークモデルと視覚タスクに適用でき、メタ畳み込み方法は各種の畳み込みニューラルネットワークに簡単且つ効果的に応用可能であり、画像分類(CIFAR10、ImageNet)、目標検出と認識(COCO、Kinetics)、画像分割(Cityscapes、ADE2k)等の各種視覚タスクにおいて優れた効果を遂げている。
図3は従来の一般の畳み込み操作の模式図を示す。図4は従来のグループ化畳み込みの畳み込み操作の模式図を示す。ここで、図3に示すように、一般の畳み込み操作にとっては、Cout個のチャンネルの出力特徴の中の各チャンネルは入力特徴のCin個のチャンネルの全てで全体的に畳み込み操作を実施することによって得られるものである。図4に示すように、従来のグループ化畳み込み(Group Convolution)はチャンネル次元上でグループ化して、パラメータ量を減少する目的を達成する。図4はグループ化数が2であるグループ化畳み込み操作を直感的に示すものであり、即ち、Cin/2個のチャンネルごとの入力特徴を1グループとし、次元Cin/2×Cout/2×k×kの重みと畳み込み、Cout/2個のチャンネル数の1グループの出力特徴を得る。この時に、総重み次元が2×Cin/2×Cout/2×k×kであり、一般の畳み込みと比べて、パラメータ量が2倍減少した。一般的にはこの手法のグループ化数(group num)は人間で設定され、且つCinで整除可能である。グループ化数が入力特徴のチャンネル数Cinと等しい時に、各チャンネルの特徴に対してそれぞれ畳み込み操作を実行することに相当する。
本開示の実施例で提供された、変換行列によって畳み込みカーネルを更新して新しい畳み込み手法(メタ畳み込み)を可能にする過程をより明瞭に理解するために、以下、例を挙げて説明する。
上記実施例の通り、変換行列U∈{0,1}Cin×Coutは学習可能な二値化行列であり、そのうちの各要素が0であるか1であり、次元がωm,nと同様である。本開示の実施例において変換行列Uと畳み込み層の畳み込み単位ωm,nのドット積が重みのスパース表現に相当し、異なるUは異なる畳み込み操作方法を表し、例えば、図5は本開示の実施例に係る異なる変換行列の構造模式図を示す。
(1)Uが図5における行列aの形式である時に、Uは全1行列であり、この変換行列を用いて新しい畳み込みカーネルを形成することは畳み込み操作の畳み込みカーネルを変えることに相当し、この時にメタ畳み込みは一般の畳み込み操作を表し、図3における畳み込み手法に対応し、この時にCin=8,Cout=4であり、グループ化数は1である。
(2)Uが図5における行列bの形式である時に、Uはブロック対角行列であり、この変換行列を用いて新しい畳み込みカーネルを形成し、メタ畳み込みはグループ化畳み込み操作を表し、図4における畳み込み手法に対応し、この時にCin=8,Cout=4であり、グループ化数は2である。
(3)Uが図5における行列cの形式である時に、Uはブロック対角行列であり、この変換行列を用いて新しい畳み込みカーネルを形成し、メタ畳み込みはグループ化数が4のグループ化畳み込み操作を表し、同様にCin=8,Cout=4である。
(4)Uが図5における行列dの形式である時に、Uは単位行列であり、この変換行列を用いて新しい畳み込みカーネルを形成し、メタ畳み込みは各チャンネルの特徴をそれぞれ単独して畳み込むグループ化畳み込み操作を表し、この時にCin=8,Cout=4であり、グループ化数は8である。
(5)Uが図5における行列gの行列である時に、メタ畳み込みはそれまではない畳み込み操作手法を表し、各Coutチャンネルの出力特徴は隣接するCinチャンネルの入力特徴を特定することで取得されるというわけでなく、この時に任意のチャンネルグループ化仕組みになる。ここで、行列gは、行列eとfによって得られる行列であってよく、また、図5におけるfは行列gに対応する畳み込み形式を表す。
上記の例示的な説明から分かるように、本開示で提供された、変換行列によって畳み込みカーネルを更新してメタ畳み込みを実現する方法は、畳み込み層の重みのスパース表現を可能にするものであり、既存の畳み込み操作を表現できるだけでなく、それまではない任意のチャンネルグループ化畳み込み仕組みを切り開くことができ、従来の畳み込み技術と比べて豊富な表現能力を有している。また、従来人間でグループ化数を設計する畳み込み方法と異なるのは、メタ畳み込みにおいて現在データに適応する畳み込み仕組みを自分で学習可能であることである。
本開示の実施例で提供されたメタ畳み込み方法は、深層ニューラルネットワークの任意の畳み込み層に用いられる時に、ネットワークの異なる深度の畳み込み層に対して、学習することによって現在特徴表現に適応する最適なチャンネルグループ化仕組みを自動的に選択できる。ここで、各畳み込み層にはそれぞれ対応する二値化ブロック対角行列Uが配置されているので、つまり、L層の隠れ層を有する深層ニューラルネットワークにおいて、メタ畳み込み方法はCin×Cout×L次元の学習パラメータをもたらす。例えば、100層の深度ネットワークにおいて、各層の特徴マップのチャンネル数が1000であれば、百万以上のパラメータ量をもたらすことになる。
ある可能な実施形態では、受信された配置情報によって、配置された変換行列を直接取得してもよく、ニューラルネットワークのトレーニングによって各畳み込み層の変換行列を直接決定してもよい。また、変換行列の最適化難度を更に低くし演算パラメータ量を少なくするために、本開示の実施例は、変換行列を乗算する2つの行列に分割し、つまり、本開示の実施例の変換行列が第1行列と第2行列を含んでもよく、ここで、受信された配置情報によってこの第1行列と第2行列を取得してもよく、又はトレーニングの結果によってこの第1行列と第2行列を取得してもよい。ここで、第1行列が単位行列を連結して形成されるものであり、前記第2行列が複数の部分行列の関数変換の内積によって得られるものである。第1行列と第2行列の積によって変換行列が得られる。
図6は本開示の実施例に係る情報処理方法における変換行列の決定のフローチャートを示す。ここで、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行するステップの前に、畳み込み層に対応する変換行列を決定してよく、このステップは、
畳み込み層に対応する前記変換行列を構成する行列ユニットを決定するステップであって、前記行列ユニットが第2行列を含むか、第1行列と第2行列を含み、ここで、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が異なることに応じて、前記畳み込み層に対応する変換行列が第1行列と第2行列を含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が同じであることに応じて、前記畳み込み層に対応する二値化行列が第2行列を含み、前記第1行列が単位行列を連結して形成されるものであり、前記第2行列が複数の部分行列の関数変換の内積によって得られるものであるS101と、
決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するS102と、を含んでよい。
ある可能な実施形態では、畳み込み層中の入力特徴と出力特徴のチャンネル数が同じであるか異なるかによって、変換行列を構成する行列ユニットを異なる手法で決定してよく、例えば、畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が同じである場合に、畳み込み層の変換行列を構成する行列ユニットが第2行列であり、畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が異なる場合に、畳み込み層の変換行列を構成する行列ユニットが第1行列と第2行列であってよい。
ある可能な実施形態では、受信された配置情報によって変換行列に対応する第1行列と第2行列を取得してもよく、ニューラルネットワークのトレーニングによって第1行列と第2行列の関連パラメータを学習してもよい。
本開示の実施例では、変換行列を構成する第1行列が単位行列を連結して形成されるものであり、畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数が決定された場合に、この第1行列と第2行列の次元が決定可能になる。第1チャンネル数が第2チャンネル数より大きい場合に、第1行列の次元がCin×Coutであり、この時に第2行列の次元がCout×Coutであり、第1チャンネル数が第2チャンネル数より小さい場合に、第1行列の次元がCin×Coutであり、第2行列~Uの次元がCin×Cinである。本開示の実施例では、畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数に基づいて第1行列の次元を決定することができ、この次元に基づいて、連結されてこの第1行列を形成する複数の単位行列を決定することができ、ここで、単位行列が正方行列であるので、第1行列の形式の取得が容易である。
変換行列を形成する第2行列については、本開示の実施例は、得られたゲートパラメータによって第2行列を決定してよい。図7は本開示の実施例に係る情報処理方法における、畳み込み層の変換行列を構成する第2行列を決定する方法のフローチャートを示す。ここで、畳み込み層の変換行列を構成する第2行列を決定するステップには、
各畳み込み層に対するゲートパラメータを取得するS1011と、
前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定するS1012と、
決定された前記部分行列に基づいて前記第2行列を形成するS1013と、を含む。
ある可能な実施形態では、ゲートパラメータは複数の数値を含んでよく、それは0近傍の浮動小数点数、例えばfloat64ビット又は32ビットの小数であってよく、本開示はこれを限定するものではない。上記受信された配置情報にはこの連続した数値を含んでもよく、又は、ニューラルネットワークをトレーニングして学習させてこの連続した数値を決定してもよい。
ある可能な実施形態では、第2行列は、複数の部分行列の内積演算によって得てもよく、ステップS1011で取得されたゲートパラメータによってこの複数の部分行列が形成可能であり、続いてこの複数の部分行列の内積演算結果によって第2行列を得る。
図8は本開示の実施例に係る情報処理方法におけるステップS1012のフローチャートを示し、ここで、前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定するステップには、以下のステップを含んでよい。
S10121:符号関数を用いて前記ゲートパラメータに対して関数処理を行って、二値化ベクトルを得る。
ある可能な実施形態では、ゲートパラメータ中の各パラメータ数値を符号関数に入力してよく、符号関数の処理によって対応する結果を取得可能であり、各ゲートパラメータに対応する符号関数の演算結果に基づいて二値化ベクトルを構成可能である。
ただし、二値化ベクトルを取得することは、以下の式で表してよい。
Figure 0007140912000002
ただし、
Figure 0007140912000003
はゲートパラメータであり、gは二値化ベクトルである。ここで、符号関数f(a)=sign(a)については、aがゼロ以上である時に、sign(a)が1になり、aがゼロより小さい時に、sign(a)が0になる。従って、符号関数処理を行った後、得られた二値化ベクトル中の要素は0と1の少なくとも1種を含んでよく、また、要素の数がゲートパラメータ中の連続数値の数と同じである。
S10122:前記二値化ベクトルに基づいて二値化ゲートベクトルを取得し、前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得る。
ある可能な実施形態では、二値化ベクトルの要素を直接二値化ゲートベクトルとしてよく、即ち、二値化ベクトルに何の処理を実施しなくてもよい。ここで、二値化ゲートベクトルは式
Figure 0007140912000004
で表してよい。ここでは
Figure 0007140912000005
二値化ゲートベクトルを表す。更に、この二値化ゲートベクトル、第1基礎行列及び第2行列によって第2行列を構成する複数の部分行列を形成してよい。ここで、本開示の実施例における第1行列は全1行列であってよく、第2基礎行列は単位行列である。このように決定された第2行列で形成された畳み込みグループ化方式は、任意のグループ化方式、例えば図5におけるgの畳み込み形式であってよい。
別の可能な実施形態では、畳み込み層のブロックグループ化畳み込みの形式を可能にするために、置換行列と二値化ベクトルの積を用いて二値化ゲートベクトルを取得してよく、そのうち、置換行列は、昇順行列であってよく、二値化ベクトルを順序付けることができ、それによって得られる二値化ゲートベクトル中の0が1の前にある。ここで、二値化ゲートベクトルは式
Figure 0007140912000006
で表してよく、Pは置換行列である。更に、この二値化ゲートベクトル、第1基礎行列及び第2行列によって第2行列を構成する複数の部分行列を形成してよい。
ある可能な実施形態では、前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得るステップには、前記二値化ゲートベクトル中の要素が第1数値であることに応じて、全1行列の部分行列を取得するステップと、前記二値化ゲートベクトル中の要素が第2数値であることに応じて、単位行列の部分行列を取得するステップと、を含んでよい。ここで第1数値が1であり、第2数値が0である。つまり、本開示の実施例で得られた各部分行列は、全1行列又は単位行列であってよく、ここで、二値化ゲートベクトル中の要素が1である時に、対応する部分行列が全1行列であり、二値化ゲートベクトル中の要素が0である時に、対応する部分行列が単位行列である。
ある可能な実施形態では、二値化ゲートベクトル中の各要素については対応する部分行列を得てよく、ここで部分行列を取得する手法は、
二値化ゲートベクトル中の要素を第1基礎行列に掛け、第1ベクトルを取得すること、
二値化ゲートベクトル中の要素を第2基礎行列に掛け、第2ベクトルを取得すること
前記第1ベクトルと前記第2基礎行列の加算結果と第2ベクトルの差によって対応する部分行列を取得することを含んでよい。
ただし、前記複数の部分行列を取得することは以下の式で表してよい。
Figure 0007140912000007
ただし、二値化ゲートベクトル
Figure 0007140912000008
中のi番目の要素giを第1基礎行列1に掛けて第1ベクトルを取得し、i番目の要素giを第2基礎行列Iに掛けて第2ベクトルを取得し、第1ベクトルと第2基礎ベクトルに対して加算を行って加算結果を取得し、この加算結果と第2ベクトルの差によってi番目の部分行列
Figure 0007140912000009
を取得するようにしてよい。ただし、iは0より大きく且つK以下の整数であり、Kは二値化ゲートベクトルの要素数である。
本開示の実施例の上記配置によれば、得られたゲートパラメータに基づいて各部分行列を決定して、更に第2行列を決定することができる。ニューラルネットワークトのレーニングによって学習する場合に、C×C次元の第2行列
Figure 0007140912000010
の学習を一連の部分行列
Figure 0007140912000011
の学習に変換することができ、パラメータ量もC×Cから
Figure 0007140912000012
に減少し、iは部分行列の数を表す。例えば、第2行列を3つの2×2の部分行列に分解してkronecker内積演算を行ってよく、即ち以下の通りになる。
Figure 0007140912000013
この時に、パラメータ量は8^2=64から3×2^2=12に減少した。本開示の実施例の方法によって畳み込み処理の演算量が減少可能になることが明らかである。
以上の通り、各部分行列が得られた後、各部分行列の内積演算に基づいて第2行列を決定してよい。ここで、第2行列は以下の式で表す。
Figure 0007140912000014
ただし、
Figure 0007140912000015
は第2行列を表し、
Figure 0007140912000016
は内積演算を表し、
Figure 0007140912000017
はi番目の部分行列を表す。
内積演算は、いずれか2つの行列の行列間演算を表し、以下のように定義してよい。
Figure 0007140912000018
上記配置によれば、本開示の実施例は第2行列を形成する各部分行列を決定することができる。畳み込み層の入力特徴の第1チャンネル数と第2チャンネル数が同じである時に、第2行列を変換行列としてよく、第1チャンネル数と第2チャンネル数が異なる時に、変換行列を第1行列と第2行列によって決定してよく、この時にCin×Cout次元の矩形行列(変換行列)は単位行列を連結してなった第1行列とC×C次元の正方行列
Figure 0007140912000019
(第2行列)で表してよく、ここで、Cは畳み込み層の入力特徴のチャンネル数Cinと出力特徴のチャンネル数Coutのうちの小さい数値であり、即C=min(Cin,Cout)である。
図9は本開示の実施例に係る情報処理方法におけるステップS103のフローチャートを示し、ここで、前記決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するステップには、
各畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数を取得するS1031と、
第1チャンネル数が第2チャンネル数より大きいことに応じて、第1行列と第2行列の積を前記変換行列とするS1032と、
第1チャンネル数が第2チャンネル数より小さいことに応じて、第2行列と第1行列の積を前記変換行列とするS1033と、を含む。
以上の通り、本開示の実施例は変換行列を構成する第1行列と第2行列を取得することができ、ここで、上記実施例で説明したように、受信された配置情報に基づいてこの第1行列と第2行列を取得してもよく、ニューラルネットワークのトレーニングによってこの第1行列と第2行列を取得してもよい。ここで、各畳み込み層に対応する変換行列を形成する時に、まず、畳み込み層中の入力特徴のチャンネル数と出力特徴のチャンネル数によって、第1行列と第2行列を形成する方法を決定してよい。
入力特徴のチャンネル数(第1チャンネル数)が出力特徴のチャンネル数(第2チャンネル数)より大きい時に、変換行列は第1行列に第2行列を掛けた結果である。入力特徴のチャンネル数が出力特徴のチャンネル数より小さい時に、変換行列は第2行列に第1行列を掛けた結果であり、入力特徴と出力特徴のチャンネル数が同じである時に、第1行列に第2行列を掛けるか第2行列に第1行列を掛けることで変換行列を決定してよい。
inとCoutが等しい場合に、本開示の実施例では第2行列を変換行列としてよく、ここで具体的な説明が省略され、以下、CinとCoutが等しくない場合について、変換行列を構成する第1行列と第2行列を決定することを説明する。
inがCoutより大きい時に、変換行列は第1行列
Figure 0007140912000020
に第2行列
Figure 0007140912000021
を掛けたものであり、この時に第1行列
Figure 0007140912000022
の次元はCin×Coutであり、第1行列は式
Figure 0007140912000023
で表し、第2行列
Figure 0007140912000024
の次元はCout×Coutであり、式
Figure 0007140912000025
で表す。第1行列と第2行列はいずれも0と1の少なくとも1種の要素で構成された行列であり、それに対応するように、変換行列Uは式
Figure 0007140912000026
で表す。ここで、第1行列
Figure 0007140912000027
は単位行列Iを連結して形成されるものであり、ここでIの次元がCout×Coutであり、単位行列Iは式I∈{0,1}Cout×Coutで表す。例えば、変換行列が図4におけるgに示すしま模様行列である時に、Cin=8,Cout=4であり、そのように次元が8×4の第1行列
Figure 0007140912000028
及び次元が4×4の第2行列
Figure 0007140912000029
を構成することが可能になる。
inがCoutより小さい時に、変換行列は第2行列
Figure 0007140912000030
に第1行列
Figure 0007140912000031
を掛けたものであり、ここで第1行列
Figure 0007140912000032
の次元はCin×Coutであり、第1行列は式
Figure 0007140912000033
で表し、第2行列
Figure 0007140912000034
の次元はCin×Cinであり、式
Figure 0007140912000035
で表す。第1行列と第2行列はいずれも0と1の少なくとも1種の要素で構成された行列であり、それに対応するように、変換行列Uは式
Figure 0007140912000036
で表す。ここで、第1行列
Figure 0007140912000037
は単位行列Iを連結して形成されるものであり、Iの次元がCin×Cinであり、また、単位行列Iは式I∈{0,1}Cin×Cinで表す。
上記形態によれば、変換行列を構成する第1行列と第2行列を決定することができる。ここで、以上の通り、第1行列は単位行列を連結して形成されるものであり、入力特徴のチャンネル数と出力特徴のチャンネル数が決定されると、第1行列は対応的に決定される。第2行列の次元が取得された場合に、更に第2行列内の要素値を決定してよい。ここで、本開示の実施例における第2行列は、複数の部分行列の関数変換の内積によって得てよい。
ある可能な実施形態では、ニューラルネットワークによってトレーニングする時に、学習することで各畳み込み層のゲートパラメータ
Figure 0007140912000038
を取得してよい。或いは、受信された配置情報には各畳み込み層に対するゲートパラメータを含んでよく、それによって、上記方法によって各畳み込み層に対応する変換行列を決定すると共に、第2行列~Uのパラメータ量を
Figure 0007140912000039
からi個のパラメータしかないように減少することができる。或いは、受信された配置情報には、各畳み込み層に対応するゲートパラメータ
Figure 0007140912000040
のみを含んでよく、更に上記方法によって各部分行列及び第2行列を決定する。
以下、ニューラルネットワークによって本開示の実施例の上記情報処理方法を実現する例について、ニューラルネットワークをトレーニングする具体的なステップを説明する。図10は本開示の実施例に係るニューラルネットワークのトレーニングのフローチャートを示し、ここで前記ニューラルネットワークのトレーニングのステップは、以下のステップを含む。
S41:トレーニングサンプル及び教師となる真の検出結果を取得する。
ある可能な実施形態では、トレーニングサンプルは、上記入力情報種類のサンプルデータ、例えば文字情報、画像情報、映像情報、音声情報の少なくとも1種であってよい。教師となる真の検出結果は予測しようとするトレーニングサンプルの真実結果、例えば画像中の対象種類、対応する対象の位置等であり、本開示はこれを限定するものではない。
S42:前記ニューラルネットワークを用いて前記トレーニングサンプルを処理して、予測結果を得る。
ある可能な実施形態では、トレーニングサンプル中の各サンプルデータをニューラルネットワークに入力して、ニューラルネットワーク中の各ネットワーク層の演算によって対応する予測結果を得るようにしてよい。ここで、ニューラルネットワークの畳み込み処理は、上記情報処理方法に基づいて実行してよく、即ち、予め配置された変換行列を用いて各ネットワーク層の畳み込みカーネルを更新し、且つ新しい畳み込みカーネルを用いて畳み込み操作を実行する。ニューラルネットワークによって得られた処理結果は予測結果となる。
S43:前記予測結果と真の検出結果に対応する損失に基づいて、各ネットワーク層の畳み込みカーネルと変換行列を含む(ゲートパラメータ中の連続値を含む)、前記ニューラルネットワークのネットワークパラメータを、終了条件を満たすまでにフィードバック調整する。
ある可能な実施形態では、予め設定された損失関数によって予測結果と真の検出結果に対応する損失値を取得してよく、この損失値が損失閾値より大きい時に、ニューラルネットワークのネットワークパラメータをフィードバック調整し、パラメータが調整されたニューラルネットワークを用いてサンプルデータに対応する予測結果を再度予測し、予測結果に対応する損失が損失閾値より小さくなると、ニューラルネットワークが精度要求を満たすようになったことを示し、この時にトレーニングを終了してよい。ここで、予め設定された損失関数は、予測結果と真の検出結果との間の減算であってよく、即ち、損失値は予測結果と真の検出結果との間の差であり、他の実施例では、予め設定された損失関数は、他の形式であってもよく、本開示はこれを限定するものではない。
上記形態によれば、ニューラルネットワークのトレーニングを完了することができ、更にニューラルネットワーク中の各畳み込み層に対する変換行列を得ることができ、それによって各畳み込み層のメタ畳み込み演算が完了することができる。
以上の通り、本開示の実施例は入力情報をニューラルネットワークに入力して対応する演算処理を実行するようにしてよく、ここで、ニューラルネットワークの畳み込み層の畳み込み処理を実行する時に、各畳み込み層に対して決定された変換行列に基づいてこの畳み込み層の畳み込みカーネルを更新し、新しい畳み込みカーネルを用いて対応する畳み込み処理をなすようにしてよく、この形態によれば、各畳み込み層に対して対応の変換行列を単独して配置し、対応するグループ化効果を形成することができ、このグループ化は、隣接するチャンネルのグループ化に限定されないのみならず、ニューラルネットワークの演算精度を高めることができる。
また、本開示の実施例の技術的解決手段は、特定のタスクに対して人間でグループ化数を設定する欠陥があった従来技術に比べて、人間で干渉することなく、深層ニューラルネットワークの畳み込み層に対して自分で学習することで任意のグループ化畳み込み仕組みを可能にする。また、本開示の実施例は、既存の隣接グループ化畳み込み技術を表現できるだけでなく、任意のチャンネルグループ化仕組みを切り開くことができ、それぞれのチャンネルの特徴情報の関連性が増加され、畳み込みの冗長性除去技術の先端的な発展を促進した。本開示で提供されたメタ畳み込み方法を深層ニューラルネットワークの任意の畳み込み層に用いれば、ネットワークの異なる深度の畳み込み層に対して、学習することによって現在特徴表現に適応するチャンネルグループ化仕組みを自動的に選択でき、従来ネットワーク全体で単一タイプのグループ化畳み込みポリシーを採用したことに比べて、性能が最適なモデルを得ることができる。また、本開示は、更にKronecker演算によってネットワークパラメータを分解して、微分可能なエンドツーエンドトレーニング手法によって、本開示の実施例で提案されたメタ畳み込み方法に計算量が小さく、パラメータ量が小さく、実現や応用が容易である等のメリットを持たせることができる。
具体的な実施形態の上記方法において、各ステップの記述順序は厳しい実行順序であるというわけではなく、実施プロセスの何の制限にもならなく、各ステップの具体的な実行順序はその機能と可能な内在的論理に依存することが当業者に理解される。
図11は本開示の実施例に係る情報処理装置のブロック図を示し、図11に示すように、前記情報処理装置は、
受信された入力情報をニューラルネットワークに入力するための入力モジュール10と、
前記ニューラルネットワークによって前記入力情報を処理することであって、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行する場合に、畳み込み層に対する変換行列を用いて畳み込み層の畳み込みカーネルを更新し、更新した畳み込みカーネルで前記畳み込み層の畳み込み処理をなすための情報処理モジュール20と、
前記ニューラルネットワークによって処理された処理結果を出力するための出力モジュール30と、を含む。
ある可能な実施形態では、前記情報処理モジュールは、更に、
前記畳み込み層の畳み込みカーネルの空間次元を取得し、
前記畳み込みカーネルの空間次元に基づいて、畳み込み層に対応する前記変換行列に対して、前記畳み込みカーネルの空間次元に依存する回数のコピー処理を実行し、
コピー処理された変換行列と前記畳み込みカーネルに対してドット積処理を実行して、対応する畳み込み層の更新された畳み込みカーネルを得るために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、畳み込み層に対応する前記変換行列を構成する行列ユニットを決定し、決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するために用いられ、ここで、前記行列ユニットは、第1行列と第2行列、又は第2行列のみを含み、ここで、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が異なることに応じて、前記畳み込み層に対応する変換行列が第1行列と第2行列を含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が同じであることに応じて、前記畳み込み層に対応する変換行列が第2行列を含み、前記第1行列が単位行列を連結して形成されるものであり、前記第2行列が複数の部分行列の関数変換の内積によって得られるものである。
ある可能な実施形態では、前記情報処理モジュールは、更に、
各畳み込み層に対するゲートパラメータを取得し、
前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定し、
決定された前記部分行列に基づいて前記第2行列を形成するために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、
受信された配置情報によって、各畳み込み層に対するゲートパラメータを取得し、又は
前記ニューラルネットワークのトレーニング結果に基づいて、畳み込み層に対するゲートパラメータを決定するために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、
各畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数を取得し、
第1チャンネル数が第2チャンネル数より大きいことに応じて、第1行列と第2行列の積を前記変換行列とし、
第1チャンネル数が第2チャンネル数より小さいことに応じて、第2行列と第1行列の積を前記変換行列とするために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、
符号関数を用いて前記ゲートパラメータに対して関数処理を行って、二値化ベクトルを取得し、
前記二値化ベクトルに基づいて二値化ゲートベクトルを取得し、前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得るために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、
前記二値化ベクトルを前記二値化ゲートベクトルとし、又は
置換行列と前記二値化ベクトルの積の結果を前記二値化ゲートベクトルとするために用いられる。
ある可能な実施形態では、前記情報処理モジュールは、更に、
前記二値化ゲートベクトル中の要素が第1数値である場合に、全1行列の部分行列を取得し、
前記二値化ゲートベクトル中の要素が第2数値である場合に、単位行列の部分行列を取得するために用いられる。
ある可能な実施形態では、前記第1基礎行列が全1行列であり、第2基礎行列が単位行列である。
ある可能な実施形態では、前記情報処理モジュールは、更に、複数の前記部分行列に対して内積演算を行って、前記第2行列を得るために用いられる。
ある可能な実施形態では、前記入力情報は、文字情報、画像情報、映像情報、音声情報の少なくとも1種を含む。
ある可能な実施形態では、前記変換行列の次元が第1チャンネル数に第2チャンネル数を掛けたものであり、前記第1チャンネル数が畳み込み層の入力特徴のチャンネル数であり、前記第2チャンネル数が畳み込み層の出力特徴のチャンネル数であり、また、前記変換行列の要素が0と1の少なくとも1つを含む。
ある可能な実施形態では、前記情報処理モジュールは、更に、前記ニューラルネットワークをトレーニングするために用いられ、前記ニューラルネットワークをトレーニングするステップには、
トレーニングサンプル及び教師となる真の検出結果を取得するステップと、
前記ニューラルネットワークを用いて前記トレーニングサンプルを処理して、予測結果を得るステップと、
前記予測結果と真の検出結果に対応する損失に基づいて、各ネットワーク層の畳み込みカーネルと変換行列を含む前記ニューラルネットワークのネットワークパラメータを、終了条件を満たすまでにフィードバック調整するステップと、を含む。
いくつかの実施例では、本開示の実施例で提供された装置に備えた機能又はモジュールは、上記方法実施例に記載の方法を実行するために用いられ、その具体的な実施形態については上記方法実施例の説明を参照してもよく、簡単化するために、ここで重複説明は割愛する。
本開示の実施例は、コンピュータプログラムコマンドが記憶されているコンピュータ読取可能記憶媒体であって、前記コンピュータプログラムコマンドがプロセッサにより実行される時に上記方法が実現されるコンピュータ読取可能記憶媒体を更に提供する。コンピュータ読取可能記憶媒体は、非揮発性コンピュータ読取可能記憶媒体であってよい。
本開示の実施例は、プロセッサと、プロセッサ実行可能コマンドを記憶するためのメモリと、を含み、前記プロセッサが上記方法を実現するように構成される電子機器を更に提供する。
電子機器は、端末、サーバ又は他の形態のデバイスとして提供されてよい。
図12は本開示の実施例に係る電子機器のブロック図である。例えば、電子機器800は携帯電話、コンピュータ、デジタル放送端末、メッセージ送受信装置、ゲームコンソール、タブレット装置、医療機器、フィットネス器具、パーソナル・デジタル・アシスタントなどの端末であってよい。
図12を参照すると、電子機器800は処理コンポーネント802、メモリ804、電源コンポーネント806、マルチメディアコンポーネント808、オーディオコンポーネント810、入力/出力(I/O)インタフェース812、センサコンポーネント814、および通信コンポーネント816の一つ以上を含むことができる。
処理コンポーネント802は通常、電子機器800の全体的な動作、例えば表示、電話の呼び出し、データ通信、カメラ動作および記録動作に関連する動作を制御する。処理コンポーネント802は、上記方法の全てまたは一部のステップを完了するために、一つ以上のプロセッサ820を含んで命令を実行することができる。また、処理コンポーネント802は、他のコンポーネントとの対話のために、一つ以上のモジュールを含むことができる。例えば、処理コンポーネント802は、マルチメディアコンポーネント808との対話のために、マルチメディアモジュールを含むことができる。
メモリ804は電子機器800での動作をサポートするために様々なタイプのデータを記憶するように構成される。これらのデータの例は電子機器800において運用するためのあらゆるアプリケーションプログラムまたは方法の命令、連絡先データ、電話帳データ、メッセージ、ピクチャー、ビデオなどを含む。メモリ804は、例えば静的ランダムアクセスメモリ(SRAM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM)、プログラマブル読み取り専用メモリ(PROM)、読み取り専用メモリ(ROM)、磁気メモリ、フラッシュメモリ、磁気ディスクまたは光ディスクなどの様々なタイプの揮発性または非揮発性記憶機器またはそれらの組み合わせによって実現できる。
電源コンポーネント806は電子機器800の各コンポーネントに電力を供給する。電源コンポーネント806は電源管理システム、一つ以上の電源、および電子機器800のための電力生成、管理および配分に関連する他のコンポーネントを含むことができる。
マルチメディアコンポーネント808は前記電子機器800とユーザとの間で出力インタフェースを提供する画面を含む。いくつかの実施例では、画面は液晶ディスプレイ(LCD)およびタッチパネル(TP)を含むことができる。画面がタッチパネルを含む場合、ユーザからの入力信号を受信するために、タッチ画面として実現してもよい。タッチパネルは、タッチ、スライドおよびタッチパネルでのジェスチャを検知するために、一つ以上のタッチセンサを含む。前記タッチセンサはタッチまたはスライド動きの境界を検知するのみならず、前記タッチまたはスライド操作に関連する持続時間および圧力を検出することもできる。いくつかの実施例では、マルチメディアコンポーネント808は前面カメラおよび/または後面カメラを含む。電子機器800が動作モード、例えば撮影モードまたは撮像モードになる場合、前面カメラおよび/または後面カメラは外部のマルチメディアデータを受信することができる。各前面カメラおよび後面カメラは固定された光学レンズ系または焦点距離および光学ズーム能力を有するものであってもよい。
オーディオコンポーネント810はオーディオ信号を出力および/または入力するように構成される。例えば、オーディオコンポーネント810は、電子機器800が動作モード、例えば呼び出しモード、記録モードおよび音声認識モードになる場合、外部のオーディオ信号を受信するように構成されたマイク(MIC)を含む。受信されたオーディオ信号はさらにメモリ804に記憶されるか、または通信コンポーネント816によって送信されてもよい。いくつかの実施例では、オーディオコンポーネント810はさらに、オーディオ信号を出力するためのスピーカーを含む。
I/Oインタフェース812は処理コンポーネント802と周辺インタフェースモジュールとの間でインタフェースを提供し、上記周辺インタフェースモジュールはキーボード、クリックホイール、ボタンなどであってもよい。これらのボタンはホームボタン、音量ボタン、スタートボタンおよびロックボタンを含むことができるが、これらに限定されない。
センサコンポーネント814は電子機器800に各面での状態評価を提供するための一つ以上のセンサを含む。例えば、センサコンポーネント814は電子機器800のオン/オフ状態、コンポーネントの相対的位置決め、例えば前記コンポーネントが電子機器800の表示装置およびキーパッドであることを検出でき、センサコンポーネント814はさらに、電子機器800または電子機器800のあるコンポーネントの位置の変化、ユーザと電子機器800との接触の有無、電子機器800の方位または加減速および電子機器800の温度変化を検出できる。センサコンポーネント814は、いかなる物理的接触もない場合に近傍の物体の存在を検出するために用いられるように構成された近接センサを含む。センサコンポーネント814はさらに、CMOSまたはCCDイメージセンサのような、イメージングアプリケーションにおいて使用するための光センサを含むことができる。いくつかの実施例では、該センサコンポーネント814はさらに、加速度センサ、ジャイロスコープセンサ、磁気センサ、圧力センサまたは温度センサを含むことができる。
通信コンポーネント816は電子機器800と他の機器との間の有線または無線通信を実現するように配置される。電子機器800は通信規格に基づく無線ネットワーク、例えばWiFi、2Gまたは3G、またはそれらの組み合わせにアクセスできる。一例示的実施例では、通信コンポーネント816は放送チャネルによって外部の放送管理システムの放送信号または放送関連情報を受信する。一例示的実施例では、前記通信コンポーネント816はさらに、近距離通信を促進させるために、近距離無線通信(NFC)モジュールを含む。例えば、NFCモジュールでは無線周波数識別(RFID)技術、赤外線データ協会(IrDA)技術、超広帯域(UWB)技術、ブルートゥース(登録商標/BT)技術および他の技術によって実現できる。
例示的な実施例では、電子機器800は一つ以上の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、コントローラ、マイクロコントローラ、マイクロプロセッサまたは他の電子要素によって実現し、上記方法を実行するために用いることができる。
例示的な実施例では、さらに、非揮発性コンピュータ読み取り可能記憶媒体、例えばコンピュータプログラム命令を含むメモリ804が提供され、上記コンピュータプログラム命令は電子機器800のプロセッサ820によって実行して上記方法を完了することができる。
図13は本開示の実施例に係る電子機器の別のブロック図である。例えば、電子機器1900はサーバとして提供できる。図13を参照すると、電子機器1900は、さらに一つ以上のプロセッサを含む処理コンポーネント1922、および、処理コンポーネント1922によって実行可能な命令、例えばアプリケーションプログラムを記憶するための、メモリ1932を代表とするメモリ資源を含む。メモリ1932に記憶されたアプリケーションプログラムはそれぞれが1グループの命令に対応する一つ以上のモジュールを含むことができる。また、処理コンポーネント1922は命令を実行し、それによって上記方法を実行するように構成される。
電子機器1900はさらに、電子機器1900の電源管理を実行するように構成された電源コンポーネント1926、電子機器1900をネットワークにアクセスするように構成された有線または無線ネットワークインタフェース1950、および入力出力(I/O)インタフェース1958を含むことができる。電子機器1900はメモリ1932に記憶されたオペレーティングシステム、例えばWindows(登録商標) ServerTM、Mac OS XTM、UnixTM、LinuxTM、FreeBSDTMまたは類似するものに基づいて動作できる。
例示的な実施例では、さらに、非揮発性コンピュータ読み取り可能記憶媒体、例えばコンピュータプログラム命令を含むメモリ1932が提供され、上記コンピュータプログラム命令は電子機器1900の処理コンポーネント1922によって実行して上記方法を完了することができる。
本開示はシステム、方法および/またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品はプロセッサに本開示の各態様を実現させるためのコンピュータ読み取り可能プログラム命令がロードされているコンピュータ読み取り可能記憶媒体を含むことができる。
コンピュータ読み取り可能記憶媒体は命令実行機器により使用される命令を保存および記憶可能な有形機器であってもよい。コンピュータ読み取り可能記憶媒体は例えば、電気記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置または上記の任意の適当な組み合わせであってもよいが、これらに限定されない。コンピュータ読み取り可能記憶媒体のさらに具体的な例(非包括的リスト)としては、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、携帯型コンパクトディスク読み取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、機械的符号化装置、例えば命令が記憶されているせん孔カードまたはスロット内突起構造、および上記の任意の適当な組み合わせを含む。ここで使用されるコンピュータ読み取り可能記憶媒体は瞬時信号自体、例えば無線電波または他の自由に伝播される電磁波、導波路または他の伝送媒体を経由して伝播される電磁波(例えば、光ファイバーケーブルを通過するパルス光)、または電線を経由して伝送される電気信号と解釈されるものではない。
ここで記述したコンピュータ読み取り可能プログラム命令はコンピュータ読み取り可能記憶媒体から各計算/処理機器にダウンロードされてもよいし、またはネットワーク、例えばインターネット、ローカルエリアネットワーク、広域ネットワークおよび/または無線ネットワークによって外部のコンピュータまたは外部記憶装置にダウンロードされてもよい。ネットワークは銅伝送ケーブル、光ファイバー伝送、無線伝送、ルーター、ファイアウォール、交換機、ゲートウェイコンピュータおよび/またはエッジサーバを含むことができる。各計算/処理機器内のネットワークアダプタカードまたはネットワークインタフェースはネットワークからコンピュータ読み取り可能プログラム命令を受信し、該コンピュータ読み取り可能プログラム命令を転送し、各計算/処理機器内のコンピュータ読み取り可能記憶媒体に記憶する。
本開示の動作を実行するためのコンピュータプログラム命令はアセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、C++などのオブジェクト指向プログラミング言語、および「C」言語または類似するプログラミング言語などの一般的な手続き型プログラミング言語を含む一つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたは目標コードであってもよい。コンピュータ読み取り可能プログラム命令は、完全にユーザのコンピュータにおいて実行されてもよく、部分的にユーザのコンピュータにおいて実行されてもよく、スタンドアロンソフトウェアパッケージとして実行されてもよく、部分的にユーザのコンピュータにおいてかつ部分的にリモートコンピュータにおいて実行されてもよく、または完全にリモートコンピュータもしくはサーバにおいて実行されてもよい。リモートコンピュータに関与する場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)を含む任意の種類のネットワークを経由してユーザのコンピュータに接続されてもよく、または、(例えばインターネットサービスプロバイダを利用してインターネットを経由して)外部コンピュータに接続されてもよい。いくつかの実施例では、コンピュータ読み取り可能プログラム命令の状態情報を利用して、例えばプログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)またはプログラマブル論理アレイ(PLA)などの電子回路をパーソナライズすることで、該電子回路はコンピュータ読み取り可能プログラム命令を実行し、それにより本開示の各態様を実現できるようになる。
なお、ここで本開示の実施例に係る方法、装置(システム)およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照しながら本開示の各態様を説明しが、フローチャートおよび/またはブロック図の各ブロックおよびフローチャートおよび/またはブロック図の各ブロックの組み合わせは、いずれもコンピュータ読み取り可能プログラム命令によって実現できることを理解すべきである。
これらのコンピュータ読み取り可能プログラム命令は、機械を製造するために、共通コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサへ提供されてもよく、それにより、これらの命令はコンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行され、フローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作を実現する手段を創出する。また、これらのコンピュータ読み取り可能プログラム命令は、コンピュータ読み取り可能記憶媒体に記憶し、それによってコンピュータ、プログラマブルデータ処理装置および/または他の機器を特定の方式で動作させるようにしてもよく、それにより、命令が保存されたコンピュータ読み取り可能記憶媒体は、フローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作の各態様を実現する命令を含む製品を備える。
コンピュータ読み取り可能プログラムはコンピュータ、他のプログラマブルデータ処理装置、または他の機器にロードすることにより、コンピュータ実施プロセスを生成するように、コンピュータ、他のプログラマブルデータ処理装置または他の機器において一連の動作ステップを実行させるようにしてもよく、それにより、コンピュータ、他のプログラマブルデータ処理装置、または他の機器において実行される命令はフローチャートおよび/またはブロック図の一つ以上のブロックにおいて指定された機能/動作を実現する。
図面のうちフローチャートおよびブロック図は本開示の複数の実施例に係るシステム、方法およびコンピュータプログラム製品の実現可能なシステムアーキテクチャ、機能および動作を示す。この点では、フローチャートまたはブロック図における各ブロックは一つのモジュール、プログラムセグメントまたは命令の一部分を代表することができ、前記モジュール、プログラムセグメントまたは命令の一部分は指定された論理機能を実現するための一つ以上の実行可能命令を含む。いくつかの置換としての実現形態では、ブロックに表記される機能は図面に付したものと異なる順序で実現してもよい。例えば、二つの連続的なブロックは実質的に並行に実行してもよく、また、係る機能によって、それらは逆な順序で実行してもよい場合がある。なお、ブロック図および/またはフローチャートにおける各ブロック、およびブロック図および/またはフローチャートにおけるブロックの組み合わせは、指定される機能または動作を実行するハードウェアに基づく専用システムによって実現してもよいし、または専用ハードウェアとコンピュータ命令との組み合わせによって実現してもよいことに注意すべきである。
以上、本開示の各実施例を記述したが、上記説明は例示的なものに過ぎず、網羅的なものではなく、かつ披露された各実施例に限定されるものでもない。当業者にとって、説明された各実施例の範囲および精神から逸脱することなく、様々な修正および変更が自明である。本明細書に選ばれた用語は、各実施例の原理、実際の適用または市場における技術への技術的改善を好適に解釈するか、または他の当業者に本文に披露された各実施例を理解させるためのものである。

Claims (16)

  1. ニューラルネットワークに用いられる、少なくとも1つのプロセッサによる情報処理方法であって、
    受信された入力情報をニューラルネットワークに入力するステップと、
    前記少なくとも1つのプロセッサを用いて前記ニューラルネットワークによって前記入力情報を処理することであって、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行する場合に、前記畳み込み層の畳み込みカーネルの空間次元に基づいて、前記畳み込み層に対応する変換行列に対してコピー処理を実行して、コピー処理された変換行列を用いて対応する前記畳み込み層の畳み込みカーネルを更新し、更新した畳み込みカーネルで前記畳み込み層の畳み込み処理をなすステップと、
    前記ニューラルネットワークによって処理された処理結果を出力するステップと、を含むことを特徴とする情報処理方法。
  2. 前記畳み込み層の畳み込みカーネルの空間次元に基づいて、前記畳み込み層に対応する変換行列に対してコピー処理を実行して、コピー処理された変換行列を用いて対応する前記畳み込み層の畳み込みカーネルを更新するステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    前記畳み込み層の畳み込みカーネルの空間次元を取得するステップと、
    前記畳み込みカーネルの空間次元に基づいて、畳み込み層に対応する前記変換行列に対して、前記畳み込みカーネルの空間次元に依存する回数のコピー処理を実行するステップと、
    コピー処理された変換行列と前記畳み込みカーネルに対してドット積処理を実行して、対応する畳み込み層の更新された畳み込みカーネルを得るステップと、を含むことを特徴とする請求項1に記載の方法。
  3. 前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行するステップの前に、
    前記少なくとも1つのプロセッサを用いるステップと、
    畳み込み層に対応する前記変換行列を構成する行列ユニットを決定するステップであって、前記行列ユニットは、第1行列と第2行列、又は第2行列のみを含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が異なることに応じて、前記畳み込み層に対応する変換行列が第1行列と第2行列を含み、前記畳み込み層の入力特徴のチャンネル数と出力特徴のチャンネル数が同じであることに応じて、前記畳み込み層に対応する変換行列が第2行列を含み、前記第1行列が単位行列を連結して形成されるものであり、前記第2行列が複数の部分行列の関数変換の内積によって得られるものであるステップと、
    決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するステップと、を更に含むことを特徴とする請求項1又は2に記載の方法。
  4. 畳み込み層の変換行列を構成する第2行列を決定するステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    各畳み込み層に対するゲートパラメータを取得するステップと、
    前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定するステップと、
    決定された前記部分行列に基づいて前記第2行列を形成するステップと、を含むことを特徴とする請求項3に記載の方法。
  5. 前記各畳み込み層に対するゲートパラメータを取得するステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    受信された配置情報によって、各畳み込み層に対するゲートパラメータを取得するステップ、又は
    前記ニューラルネットワークのトレーニング結果に基づいて、畳み込み層に対するゲートパラメータを決定するステップを含むことを特徴とする請求項4に記載の方法。
  6. 前記決定された行列ユニットに基づいて前記畳み込み層の変換行列を形成するステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    各畳み込み層の入力特徴の第1チャンネル数と出力特徴の第2チャンネル数を取得するステップと、
    第1チャンネル数が第2チャンネル数より大きいことに応じて、第1行列と第2行列の積を前記変換行列とするステップと、
    第1チャンネル数が第2チャンネル数より小さいことに応じて、第2行列と第1行列の積を前記変換行列とするステップと、を含むことを特徴とする請求項3~5のいずれか一項に記載の方法。
  7. 前記ゲートパラメータに基づいて前記第2行列を構成する部分行列を決定するステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    符号関数を用いて前記ゲートパラメータに対して関数処理を行って、二値化ベクトルを取得するステップと、
    前記二値化ベクトルに基づいて二値化ゲートベクトルを取得し、前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得るステップと、を含むことを特徴とする請求項4又は5に記載の方法。
  8. 前記二値化ベクトルに基づいて二値化ゲートベクトルを取得するステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    前記二値化ベクトルを前記二値化ゲートベクトルとするステップ、又は
    置換行列と前記二値化ベクトルの積の結果を前記二値化ゲートベクトルとするステップを含むことを特徴とする請求項7に記載の方法。
  9. 前記二値化ゲートベクトル、第1基礎行列及び第2基礎行列に基づいて、複数の前記部分行列を得るステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    前記二値化ゲートベクトル中の要素が第1数値であることに応じて、全1行列の部分行列を取得するステップと、
    前記二値化ゲートベクトル中の要素が第2数値であることに応じて、単位行列の部分行列を取得するステップと、を含むことを特徴とする請求項7又は8に記載の方法。
  10. 前記第1基礎行列が全1行列であり、第2基礎行列が単位行列であることを特徴とする請求項7~9のいずれか一項に記載の方法。
  11. 前記変換行列の次元が第1チャンネル数に第2チャンネル数を掛けたものであり、前記第1チャンネル数が畳み込み層の入力特徴のチャンネル数であり、前記第2チャンネル数が畳み込み層の出力特徴のチャンネル数であり、前記変換行列の要素が0と1の少なくとも1つを含むことを特徴とする請求項1~1のいずれか一項に記載の方法。
  12. 前記ニューラルネットワークをトレーニングするステップを更に含み、前記ニューラルネットワークをトレーニングするステップには、
    前記少なくとも1つのプロセッサを用いるステップと、
    トレーニングサンプル及び教師となる真の検出結果を取得するステップと、
    前記ニューラルネットワークを用いて前記トレーニングサンプルを処理して、予測結果を得るステップと、
    前記予測結果と真の検出結果に対応する損失に基づいて、各ネットワーク層の畳み込みカーネルと変換行列を含む前記ニューラルネットワークのネットワークパラメータを、終了条件を満たすまでにフィードバック調整するステップと、を含むことを特徴とする請求項1~1のいずれか一項に記載の方法。
  13. 受信された入力情報をニューラルネットワークに入力するための入力モジュールと、
    前記ニューラルネットワークによって前記入力情報を処理することであって、前記ニューラルネットワークの畳み込み層によって畳み込み処理を実行する場合に、前記畳み込み層の畳み込みカーネルの空間次元に基づいて、前記畳み込み層に対応する変換行列に対してコピー処理を実行して、コピー処理された変換行列を用いて対応する前記畳み込み層に対する変換行列を用いて畳み込み層の畳み込みカーネルを更新し、更新した畳み込みカーネルで前記畳み込み層の畳み込み処理をなすための情報処理モジュールと、
    前記ニューラルネットワークによって処理された処理結果を出力するための出力モジュールと、を含むことを特徴とする情報処理装置。
  14. プロセッサと、
    プロセッサ実行可能コマンドを記憶するためのメモリと、を含み、
    前記プロセッサは、前記メモリに記憶されたコマンドを呼び出して請求項1~12のいずれか一項に記載の方法を実行するように構成されることを特徴とする電子機器。
  15. コンピュータプログラムコマンドが記憶されているコンピュータ読取可能記憶媒体であって、前記コンピュータプログラムコマンドがプロセッサにより実行されると、請求項1~12のいずれか一項に記載の方法が実現されることを特徴とするコンピュータ読取可能記憶媒体。
  16. コンピュータ読取可能コードを含み、前記コンピュータ読取可能コードが電子機器で動作すると、前記電子機器のプロセッサに請求項1~12のいずれか一項に記載の方法を実現するためのコマンドを実行させることを特徴とするコンピュータプログラム。
JP2021515573A 2019-05-21 2019-10-30 情報処理方法及び装置、電子機器、記憶媒体及びコンピュータプログラム Active JP7140912B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910425613.2 2019-05-21
CN201910425613.2A CN110188865B (zh) 2019-05-21 2019-05-21 信息处理方法及装置、电子设备和存储介质
PCT/CN2019/114448 WO2020232976A1 (zh) 2019-05-21 2019-10-30 信息处理方法及装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
JP2022500786A JP2022500786A (ja) 2022-01-04
JP7140912B2 true JP7140912B2 (ja) 2022-09-21

Family

ID=67717183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021515573A Active JP7140912B2 (ja) 2019-05-21 2019-10-30 情報処理方法及び装置、電子機器、記憶媒体及びコンピュータプログラム

Country Status (6)

Country Link
US (1) US20210089913A1 (ja)
JP (1) JP7140912B2 (ja)
CN (1) CN110188865B (ja)
SG (1) SG11202012467QA (ja)
TW (1) TWI738144B (ja)
WO (1) WO2020232976A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110188865B (zh) * 2019-05-21 2022-04-26 深圳市商汤科技有限公司 信息处理方法及装置、电子设备和存储介质
CN113191377A (zh) * 2020-01-14 2021-07-30 北京京东乾石科技有限公司 用于处理图像的方法和装置
CN113032843B (zh) * 2021-03-30 2023-09-15 北京地平线信息技术有限公司 用于获得和处理带数字签名信息的张量数据的方法和装置
CN113762472A (zh) * 2021-08-24 2021-12-07 北京地平线机器人技术研发有限公司 一种神经网络的指令序列生成方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016090520A1 (en) 2014-12-10 2016-06-16 Xiaogang Wang A method and a system for image classification
CN107657314A (zh) 2017-09-26 2018-02-02 济南浪潮高新科技投资发展有限公司 一种基于区间算法的神经网络卷积层设计方法
CN108304923A (zh) 2017-12-06 2018-07-20 腾讯科技(深圳)有限公司 卷积运算处理方法及相关产品
CN108537121A (zh) 2018-03-07 2018-09-14 中国科学院西安光学精密机械研究所 气象环境参数与图像信息融合的自适应遥感场景分类方法
CN109583586A (zh) 2018-12-05 2019-04-05 东软睿驰汽车技术(沈阳)有限公司 一种卷积核处理方法及装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10576603B2 (en) * 2014-04-22 2020-03-03 Kla-Tencor Corporation Patterned wafer geometry measurements for semiconductor process controls
CN106326985A (zh) * 2016-08-18 2017-01-11 北京旷视科技有限公司 神经网络训练方法和装置及数据处理方法和装置
US11210584B2 (en) * 2017-01-31 2021-12-28 International Business Machines Corporation Memory efficient convolution operations in deep learning neural networks
US10699160B2 (en) * 2017-08-23 2020-06-30 Samsung Electronics Co., Ltd. Neural network method and apparatus
CN107633295B (zh) * 2017-09-25 2020-04-28 南京地平线机器人技术有限公司 用于适配神经网络的参数的方法和装置
US10410350B2 (en) * 2017-10-30 2019-09-10 Rakuten, Inc. Skip architecture neural network machine and method for improved semantic segmentation
US11636668B2 (en) * 2017-11-10 2023-04-25 Nvidia Corp. Bilateral convolution layer network for processing point clouds
CN108229679A (zh) * 2017-11-23 2018-06-29 北京市商汤科技开发有限公司 卷积神经网络去冗余方法及装置、电子设备和存储介质
CN107993186B (zh) * 2017-12-14 2021-05-25 中国人民解放军国防科技大学 一种基于Winograd算法的3D CNN加速方法及系统
CN108288088B (zh) * 2018-01-17 2020-02-28 浙江大学 一种基于端到端全卷积神经网络的场景文本检测方法
CN108416427A (zh) * 2018-02-22 2018-08-17 重庆信络威科技有限公司 卷积核堆积数据流、压缩编码以及深度学习算法
CN108537122B (zh) * 2018-03-07 2023-08-22 中国科学院西安光学精密机械研究所 包含气象参数的图像融合采集系统及图像存储方法
CN108734169A (zh) * 2018-05-21 2018-11-02 南京邮电大学 一种基于全卷积网络改进的场景文本提取方法
CN109165723B (zh) * 2018-08-03 2021-03-19 北京字节跳动网络技术有限公司 用于处理数据的方法和装置
CN109460817B (zh) * 2018-09-11 2021-08-03 华中科技大学 一种基于非易失存储器的卷积神经网络片上学习系统
US11449729B2 (en) * 2018-11-08 2022-09-20 Arm Limited Efficient convolutional neural networks
EP3671568A1 (en) * 2018-12-17 2020-06-24 IMEC vzw Binary recurrent neural network inference technique
CN110188865B (zh) * 2019-05-21 2022-04-26 深圳市商汤科技有限公司 信息处理方法及装置、电子设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016090520A1 (en) 2014-12-10 2016-06-16 Xiaogang Wang A method and a system for image classification
CN107657314A (zh) 2017-09-26 2018-02-02 济南浪潮高新科技投资发展有限公司 一种基于区间算法的神经网络卷积层设计方法
CN108304923A (zh) 2017-12-06 2018-07-20 腾讯科技(深圳)有限公司 卷积运算处理方法及相关产品
CN108537121A (zh) 2018-03-07 2018-09-14 中国科学院西安光学精密机械研究所 气象环境参数与图像信息融合的自适应遥感场景分类方法
CN109583586A (zh) 2018-12-05 2019-04-05 东软睿驰汽车技术(沈阳)有限公司 一种卷积核处理方法及装置

Also Published As

Publication number Publication date
WO2020232976A1 (zh) 2020-11-26
US20210089913A1 (en) 2021-03-25
JP2022500786A (ja) 2022-01-04
CN110188865B (zh) 2022-04-26
TWI738144B (zh) 2021-09-01
SG11202012467QA (en) 2021-01-28
CN110188865A (zh) 2019-08-30
TW202044068A (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
JP7140912B2 (ja) 情報処理方法及び装置、電子機器、記憶媒体及びコンピュータプログラム
CN113591755B (zh) 关键点检测方法及装置、电子设备和存储介质
CN110149541B (zh) 视频推荐方法、装置、计算机设备及存储介质
TWI773481B (zh) 圖像處理方法及裝置、電子設備和電腦可讀儲存介質
CN109829433B (zh) 人脸图像识别方法、装置、电子设备及存储介质
CN111581488B (zh) 一种数据处理方法及装置、电子设备和存储介质
TWI769775B (zh) 目標重識別方法、電子設備和電腦可讀儲存介質
TWI772668B (zh) 一種目標對象處理方法、裝置、電子設備及儲存介質
KR20210018850A (ko) 비디오 수복 방법 및 장치, 전자 기기 및 기억 매체
JP6678246B2 (ja) 大域的最適化に基づく意味的セグメント化
US20220392202A1 (en) Imaging processing method and apparatus, electronic device, and storage medium
TWI721603B (zh) 資料處理方法和資料處理裝置、電子設備和電腦可讀儲存媒體
JP2022512023A (ja) バッチ正規化データの処理方法及び装置、電子機器及び記憶媒体
US20210158126A1 (en) Method and device for compressing a neural network model for machine translation and storage medium
CN111242303B (zh) 网络训练方法及装置、图像处理方法及装置
WO2023230936A1 (zh) 图像分割模型的训练方法、图像分割方法和装置
CN104063424B (zh) 网页图片的展现方法和展现装置
CN109635926B (zh) 用于神经网络的注意力特征获取方法、装置及存储介质
US11948090B2 (en) Method and apparatus for video coding
CN112259122A (zh) 音频类型识别方法、装置及存储介质
CN111694768A (zh) 运算方法、装置及相关产品
CN113486978A (zh) 文本分类模型的训练方法、装置、电子设备及存储介质
CN111626398A (zh) 运算方法、装置及相关产品
CN117577097A (zh) 模型训练方法、装置、电子设备和介质
CN116485728A (zh) 抽油杆表面缺陷检测方法及装置、电子设备和存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210319

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220602

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220908

R150 Certificate of patent or registration of utility model

Ref document number: 7140912

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150