[go: up one dir, main page]

JP7235125B2 - 認識システム、モデル処理装置、モデル処理方法、及び、プログラム - Google Patents

認識システム、モデル処理装置、モデル処理方法、及び、プログラム Download PDF

Info

Publication number
JP7235125B2
JP7235125B2 JP2021541407A JP2021541407A JP7235125B2 JP 7235125 B2 JP7235125 B2 JP 7235125B2 JP 2021541407 A JP2021541407 A JP 2021541407A JP 2021541407 A JP2021541407 A JP 2021541407A JP 7235125 B2 JP7235125 B2 JP 7235125B2
Authority
JP
Japan
Prior art keywords
model
unit
learning
edge
information
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
JP2021541407A
Other languages
English (en)
Other versions
JPWO2021033288A5 (ja
JPWO2021033288A1 (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JPWO2021033288A1 publication Critical patent/JPWO2021033288A1/ja
Publication of JPWO2021033288A5 publication Critical patent/JPWO2021033288A5/ja
Application granted granted Critical
Publication of JP7235125B2 publication Critical patent/JP7235125B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/098Distributed learning, e.g. federated learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)

Description

本発明は、画像に含まれる物体を認識する技術に関する。
多くのパターンデータを用いて学習を行うことで、認識器の性能を向上できることが知られている。基礎となる認識器から各環境に適合させた認識器にチューニングすることも行われている。また、異なる環境に応じて認識精度を向上させる方法も各種提案されている。例えば、特許文献1は、複数の端末装置において学習された学習済判別器を用いて判別性能を向上させる学習支援装置を開示している。具体的に、この学習支援装置は、複数の端末において学習された学習済判別器を構成するニューラルネットワークのパラメータを収集し、最も正解率の高い学習済判別器を新たな学習用判別器として各端末装置に配信する。
特開2019-61578号公報
特許文献1の手法では、学習支援装置は、複数の端末装置における学習済判別器のうち、最も正解率の高い学習済判別器を選択して各端末装置に配信するので、選択されなかった学習済判別器の特性を有効に活用することはできない。
本発明の1つの目的は、さまざまな現場環境で学習した複数のモデルを最適に統合して、高精度のモデルを生成することが可能な認識システムを提供することにある。
上記の課題を解決するため、本発明の一つの観点は、
複数の端末装置と、サーバ装置とを備える認識システムであって、
前記端末装置は、
認識処理に使用するモデルを規定するモデル情報を前記サーバ装置に送信する端末側送信手段と、
前記サーバ装置により生成された更新後のモデルを規定するモデル情報を受信する端末側受信手段と、
を備え、
前記サーバ装置は、
前記複数の端末装置から前記モデル情報を受信するサーバ側受信手段と、
前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成するモデル統合手段と、
モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して前記更新後のモデルを生成するモデル更新手段と、
前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信するサーバ側送信手段と、
を備える。
本発明の他の観点では、複数の端末装置と通信可能なモデル処理装置は、
前記複数の端末装置から、認識処理に使用するモデルを規定するモデル情報を受信する受信手段と、
前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成するモデル統合手段と、
モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して更新後のモデルを生成するモデル更新手段と、
前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信する送信手段と、
を備える。
本発明のさらに他の観点では、モデル処理方法は、
複数の端末装置から、認識処理に使用するモデルを規定するモデル情報を受信し、
前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成し、
モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して更新後のモデルを生成し、
前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信する。
本発明によれば、さまざまな現場環境で学習した複数のモデルを最適に統合して、高精度のモデルを生成することが可能な認識システムを提供することが可能となる。
第1実施形態に係る物体認識システムの構成を示すブロック図である。 エッジ装置及びサーバ装置のハードウェア構成を示すブロック図である。 物体認識システムの機能構成を示すブロック図である。 物体認識処理、学習処理及びモデル蓄積処理のフローチャートである。 モデル更新処理のフローチャートである。 モデル更新部の第1実施例の機能構成を示すブロック図である。 アンカーボックスの概念を説明する図である。 モデル更新部の第1実施例によるモデル更新処理のフローチャートである。 モデル更新部の第2実施例の機能構成を示すブロック図である。 モデル更新部の第2実施例によるモデル更新処理のフローチャートである。 モデル更新部の第3実施例の機能構成を示すブロック図である。 第2実施形態に係る物体認識システムの構成を示すブロック図である。
以下、図面を参照して、本発明の好適な実施形態について説明する。
<第1実施形態>
[全体構成]
図1は、第1実施形態に係る物体認識システムの構成を示すブロック図である。物体認識システム1は、例えば映像監視システムなどに用いられ、図示のように、複数のエッジ装置100と、サーバ装置200とを備える。複数のエッジ装置100と、サーバ装置200とは通信可能に構成される。エッジ装置100は、物体認識を行う場所に設置される端末装置であり、カメラなどにより撮影された画像データから物体認識を行う。通常、複数のエッジ装置100は、それぞれ異なる場所に設置され、その場所(以下、「現場」とも呼ぶ。)で撮影された画像データに対して物体認識を行う。具体的に、エッジ装置100は、学習用の画像データに基づいて、内部に有する物体認識のためのモデル(以下、「エッジモデル」とも呼ぶ。)を学習する。そして、学習により得られたモデル(以下、「学習済エッジモデル」と呼ぶ。)を用いて、実際に現場で撮影された画像データから物体認識を行う。また、エッジ装置100は、内部の学習済エッジモデルを規定するモデル情報をサーバ装置200へ送信する。なお、エッジ装置100は、本発明の端末装置の一例である。
サーバ装置200は、複数のエッジ装置100からエッジモデルのモデル情報を受信し、それらを統合して物体認識のための大規模モデルを生成する。また、サーバ装置200は、生成した大規模モデルを用いて個々のエッジ装置100のエッジモデルを学習し、新たなエッジモデルを生成する。このように、サーバ装置200の大規模モデルを用いて新たなエッジモデルを生成することを「エッジモデルを更新する」と言い、生成された新たなエッジモデルを「更新後エッジモデル」と呼ぶ。サーバ装置200は、更新後エッジモデルのモデル情報を個々のエッジ装置100に送信する。
[ハードウェア構成]
(エッジ装置)
図2(A)は、エッジ装置100のハードウェア構成を示すブロック図である。図示のように、エッジ装置100は、通信部102と、プロセッサ103と、メモリ104と、記録媒体105と、データベース(DB)106と、表示部107と、を備える。
通信部102は、有線又は無線のネットワークによりサーバ装置200と通信する。具体的に、通信部102は、エッジ装置100が設置された現場で取得された画像データや、エッジ装置100の内部で学習された学習済エッジモデルを示すモデル情報をサーバ装置200へ送信する。また、通信部102は、サーバ装置200において生成された更新後エッジモデルを示すモデル情報をサーバ装置200から受信する。
プロセッサ103は、CPU(Central Processing Unit)、又はCPUとGPU(Graphics Processing Uit)などのコンピュータであり、予め用意されたプログラムを実行することにより、エッジ装置100の全体を制御する。具体的に、プロセッサ103は、後述する物体認識処理、学習処理及びモデル更新処理を実行する。
メモリ104は、ROM(Read Only Memory)、RAM(Random Access Memory)などにより構成される。メモリ104は、エッジ装置100が使用する物体認識のためのモデルを示すモデル情報を記憶する。メモリ104は、プロセッサ103により実行される各種のプログラムを記憶する。また、メモリ104は、プロセッサ103による各種の処理の実行中に作業メモリとしても使用される。
記録媒体105は、ディスク状記録媒体、半導体メモリなどの不揮発性で非一時的な記録媒体であり、エッジ装置100に対して着脱可能に構成される。記録媒体105は、プロセッサ103が実行する各種のプログラムを記録している。エッジ装置100が各種の処理を実行する際には、記録媒体105に記録されているプログラムがメモリ104にロードされ、プロセッサ103により実行される。
データベース106は、エッジ装置100の学習処理において使用される、学習用の画像データを記憶する。学習用の画像データは正解ラベルを含む。また、データベース106は、現場で取得された画像データ、即ち、実際の物体認識処理の対象となる画像データを記憶する。表示部107は、例えば液晶表示装置などであり、物体認識処理の結果を表示する。なお、上記に加えて、エッジ装置100は、ユーザが指示や入力を行うためのキーボード、マウスなどの入力機器を備えていても良い。
(サーバ装置)
図2(B)は、サーバ装置200のハードウェア構成を示すブロック図である。図示のように、サーバ装置200は、通信部202と、プロセッサ203と、メモリ204と、記録媒体205と、データベース(DB)206と、を備える。
通信部202は、有線又は無線のネットワークにより、複数のエッジ装置100と通信する。具体的に、通信部202は、エッジ装置100が設置された現場で取得された画像データや、エッジ装置100の内部で学習された学習済エッジモデルを示すモデル情報をエッジ装置100から受信する。また、通信部202は、サーバ装置200が生成した更新後エッジモデルを示すモデル情報をエッジ装置100へ送信する。
プロセッサ203は、CPU、又はCPUとGPUなどのコンピュータであり、予め用意されたプログラムを実行することにより、サーバ装置200の全体を制御する。具体的に、プロセッサ203は、後述するモデル蓄積処理及びモデル更新処理を実行する。
メモリ204は、ROM、RAMなどにより構成される。メモリ204は、複数のエッジ装置100から送信されたエッジモデルを示すモデル情報を記憶する。メモリ204は、プロセッサ203により実行される各種のプログラムを記憶する。また、メモリ204は、プロセッサ203による各種の処理の実行中に作業メモリとしても使用される。
記録媒体205は、ディスク状記録媒体、半導体メモリなどの不揮発性で非一時的な記録媒体であり、サーバ装置200に対して着脱可能に構成される。記録媒体205は、プロセッサ203が実行する各種のプログラムを記録している。サーバ装置200が各種の処理を実行する際には、記録媒体205に記録されているプログラムがメモリ204にロードされ、プロセッサ203により実行される。
データベース206は、モデル更新処理において使用される、学習用の画像データを記憶する。学習用の画像データは正解ラベルを含む。また、データベース206は、エッジモデルのモデル更新処理において使用される、各エッジ装置100の現場で取得された画像データを記憶する。なお、上記に加えて、サーバ装置200は、キーボード、マウスなどの入力機器や、表示装置などを備えていても良い。
[機能構成]
次に、物体認識システム1の機能構成について説明する。図3は、物体認識システム1の機能構成を示すブロック図である。エッジ装置100は、認識部111と、モデル記憶部112と、モデル学習部113と、モデル情報受信部114と、モデル情報送信部115と、認識結果提示部116とを備える。サーバ装置200は、モデル情報送信部211と、モデル情報受信部212と、モデル蓄積部213と、モデル更新部250と、を備える。
エッジ装置100において、モデル記憶部112には、画像データから物体認識を行うためのエッジモデルが記憶される。エッジ装置100の運用当初には、必要なレベルの学習を行った学習済エッジモデルがモデル記憶部112に記憶される。その後、モデル学習部113は、現場で得られた画像データを用いて定期的にエッジモデルの学習を行う。認識部111は、モデル記憶部112に記憶されているエッジモデルを用いて、エッジ装置100が設置された現場で得られた画像データから物体認識を行い、認識結果を出力する。認識結果は、認識結果提示部116により、図2(A)に示す表示部107などに表示される。
モデル情報送信部115は、エッジモデルを更新するため、モデル記憶部112に記憶されているエッジモデルのモデル情報をサーバ装置200へ送信する。ここで、「モデル情報」は、そのモデルの構造(以下、「モデル構造」と呼ぶ。)と、そのモデルに設定されるパラメータの集合(以下、「パラメータセット」)とを含む。例えば、ニューラルネットワークを用いた物体認識のためのモデルの場合、モデル構造はそのニューラルネットワークの構造であり、パラメータセットはそのニューラルネットワークにおける各層の結合部に設定されるパラメータの集合である。モデル情報受信部114は、サーバ装置200により生成された更新後エッジモデルのモデル情報をサーバ装置200から受信し、モデル記憶部112に記憶する。なお、モデル情報受信部114は本発明の端末側受信部の一例であり、モデル情報送信部115は本発明の端末側送信部の一例である。
サーバ装置200において、モデル情報受信部212は、複数のエッジ装置100からエッジモデルのモデル情報を受信し、モデル蓄積部213に記憶する。これにより、複数のエッジ装置100において学習され、使用されているエッジモデルがモデル蓄積部213に蓄積される。モデル更新部250は、モデル蓄積部213に蓄積されている複数のエッジモデルを統合して大規模モデルを生成する。大規模モデルは、本発明の統合モデルの一例である。
また、サーバ装置200は、エッジ装置100から、そのエッジ装置100が設置された現場で得られた画像データの一部を一時的画像データ214として受信する。そして、モデル更新部250は、大規模モデルと一時的画像データ214とを用いてエッジモデルを更新し、更新後エッジモデルをモデル蓄積部213に蓄積する。モデル情報送信部211は、更新後エッジモデルを示すモデル情報を、そのエッジモデルの送信元のエッジ装置100に送信する。なお、モデル情報送信部211は本発明のサーバ側送信部の一例であり、モデル情報受信部212は本発明のサーバ側受信部の一例であり、モデル更新部250は本発明のモデル統合部及びモデル更新部の一例である。
[動作]
次に、物体認識システム1の動作について説明する。エッジ装置100は、物体認識処理と、学習処理と、モデル更新処理とを行う。また、サーバ装置200は、モデル蓄積処理と、モデル更新処理とを行う。
まず、エッジ装置100における物体認識処理について説明する。物体認識処理は、エッジ装置100が画像データから物体を認識する処理であり、基本的にエッジ装置100において常時実行されている。図4(A)は物体認識処理のフローチャートである。現場で得られた画像データが入力されると、認識部111は、モデル記憶部112に記憶されているエッジモデルを用いて画像データから物体を認識し、認識結果を出力する(ステップS101)。そして、認識部111は、対象となる画像データが終了したか否かを判定する。画像データが終了していない場合(ステップS102:No)、認識部111は、次の画像データから物体を認識する(ステップS101)。一方、画像データが終了した場合(ステップS102:Yes)、物体認識処理は終了する。
次に、エッジ装置100における学習処理について説明する。学習処理は、エッジ装置100の内部でエッジモデルを学習する処理である。学習処理は、例えば、予め決められた日時に行ったり、予め決められた時間間隔で定期的に行ったり、ユーザが指定したときに行ったりすることができる。図4(B)は学習処理のフローチャートである。モデル学習部113は、現場で得られた画像データを用いて、モデル記憶部112に記憶されているエッジモデルを学習する(ステップS111)。学習が終了すると、モデル情報送信部115は、学習済エッジモデルのモデル情報をモデル記憶部112に記憶するとともに、サーバ装置200へ送信する(ステップS112)。そして、学習処理は終了する。
次に、サーバ装置200におけるモデル蓄積処理について説明する。モデル蓄積処理は、各エッジ装置100から送信されたエッジモデルをサーバ装置200内に蓄積する処理である。図4(C)はモデル蓄積処理のフローチャートである。上記のように、エッジ装置100は、内部での学習処理が終了すると、学習済エッジモデルのモデル情報をサーバ装置200へ送信する。サーバ装置200では、モデル情報受信部212が学習済エッジモデルのモデル情報を受信し、(ステップS121)、モデル蓄積部213に蓄積する(ステップS122)。そして、モデル蓄積処理は終了する。こうして、各エッジ装置100において学習処理が実行されるたびに、学習済エッジモデルのモデル情報がサーバ装置200に蓄積される。
次に、モデル更新処理について説明する。モデル更新処理は、エッジ装置100とサーバ装置200が協力して行う。図5は、モデル更新処理のフローチャートである。いま、一例として、エッジ装置100がモデル更新処理を開始させるものとする。エッジ装置100は、例えば、学習処理によりエッジモデルを学習したときや、現場で所定量の新たな画像データが得られたときなどに、モデル更新処理を開始する。モデル更新処理を開始する際、エッジ装置100は、サーバ装置200へモデル更新リクエストを送信する(ステップS131)。この際、エッジ装置100は、現場で得られた所定量の画像データを、一時的画像データ214としてサーバ装置200へ送信する。
サーバ装置200は、エッジ装置100から一時的画像データ214を受信する(ステップS132)。次に、モデル更新部250は、複数のエッジモデルを用いて生成された大規模モデルと、一時的画像データ214とを用いて、モデル更新リクエストを送信したエッジ装置100のエッジモデルを更新する(ステップS133)。具体的に、モデル更新部250は、対象となるエッジ装置100の最新のエッジモデルをモデル蓄積部213から取得し、その更新を行い、更新後エッジモデルをモデル蓄積部213に保存する。そして、モデル情報送信部211は、更新後エッジモデルのモデル情報をエッジ装置100へ送信する(ステップS134)。さらに、サーバ装置200は、ステップS132でエッジ装置100から受信した一時的画像データ214を消去する(ステップS135)。
エッジ装置100では、モデル情報受信部114が、更新後エッジモデルのモデル情報をサーバ装置200から受信し(ステップS136)、モデル記憶部112に記憶する(ステップS137)。そして、モデル更新処理は終了する。その後、エッジ装置100は、基本的にサーバ装置200により更新されたエッジモデルを用いて認識処理を実行することになる。
このように、モデル更新処理によれば、サーバ装置200は複数のエッジモデルを用いて生成した大規模モデルを使用してエッジモデルを更新するので、複数のエッジモデルの特性を統合してエッジモデルを更新することができる。また、サーバ装置200は、更新の対象となるエッジ装置100の現場で得られた一時的画像データを用いてエッジモデルを更新するので、そのエッジ装置100の現場に適した更新後エッジモデルを生成することができる。なお、一時的画像データは、現場で得られた画像データの一部に過ぎず、かつ、エッジモデルの更新が完了すると消去されるので、秘匿性を有する画像データの取扱いが問題になることはない。
なお、上記の例では、エッジ装置100がモデル更新リクエストを送信してモデル更新処理を開始しているが、その代わりに、サーバ装置200がモデル更新処理を開始するようにしてもよい。例えば、サーバ装置200は、エッジ装置100から学習済エッジモデルが送られてきたときに、モデル更新処理を開始してもよい。その場合、サーバ装置200は、エッジ装置100に対して一時的画像データの送信を要求してもよい。
[応用例]
上記の実施形態については、以下の応用例を適用することができる。
(応用例1)
上記の実施形態では、モデル更新処理が行われると、エッジ装置100は、モデル更新処理を行う前のエッジモデル(以下、「更新前エッジモデル」と呼ぶ。)を、サーバ装置200から受信した更新後エッジモデルで置き換え、その後の物体認識処理に使用している。その代わりに、エッジ装置100は、いったん更新前エッジモデルと更新後エッジモデルの両方を保持し、そのうちの1つを選択してその後の物体認識処理に使用することとしてもよい。この場合、例えば、エッジ装置100の認識結果提示部116は、更新前エッジモデルと更新後エッジモデルによる認識結果をユーザに提示し、ユーザが選択した方のモデルをその後の物体認識処理に使用することとしてもよい。その場合には、エッジ装置100は、2つのエッジモデルによる認識結果を、例えば特定の比較用テスト画像データに対する認識結果、具体的には、比較用テスト画像データ上に認識された物体を示す枠及び認識の信頼度を表示した画像により表示してもよい。その代わりに、エッジ装置100は、比較用テスト画像データに対して認識された物体の種類及び数を示すリストを表示してもよい。また、比較用テスト画像データに対して正解データが用意されている場合には、エッジ装置100は、各エッジモデルによる認識精度を示す数値を表示することとしてもよい。さらに、このように正解データに基づいて2つのエッジモデルの認識結果を算出できる場合には、ユーザに選択させるのではなく、数値化された認識結果に基づいてエッジ装置100がより性能の良い方のモデルを自動的に選択するようにしてもよい。
(応用例2)
上記の実施形態では、エッジ装置100とサーバ装置200の間で、物体を認識するためのモデルにおいて使用するクラスコードを統一する必要がある。よって、複数のエッジ装置100で使用しているエッジモデル間でクラスコードの体系が異なっている場合には、サーバ装置200は、クラスコードの体系を統一してから大規模モデルを生成し、モデル更新処理を行う。
いま、仮に認識対象物のクラスとして「人」、「自動車」、「信号機」があるものとする。あるエッジ装置Xのクラスコード体系は「人=1」、「自動車=2」、「信号=3」であり、別のエッジ装置Yのクラスコード体系は「人=A」、「自動車=B」、「信号=C」であるとする。この場合、サーバ装置200は、このままでは2つのエッジ装置X、Yのエッジモデルを統合することができない。そこで、各エッジ装置X、Yは、学習済エッジモデルのモデル情報をサーバ装置200に送信する際に、それぞれのクラスコード体系を示す情報もモデル情報に含めてサーバ装置200へ送信する。こうすると、サーバ装置200は、受信したクラスコード体系を示す情報に基づいて、各エッジモデルが示す認識対象物のクラスコードを統一することが可能となる。なお、エッジ装置100は、いったんクラスコード体系を示す情報をサーバ装置200へ送信した後は、変更がない限り、エッジモデルに関するモデル情報を送信する際に毎回クラスコード体系を送信する必要はない。
なお、上記の方法は、各エッジ装置100のクラスコード体系が異なる場合に、サーバ装置200側でクラスコード体系を統一する方法である。その代わりに、サーバ装置200が使用するクラスコード体系を標準クラスコード体系とし、全てのエッジ装置100がこの標準クラスコード体系を使用するようにしてもよい。この場合、各エッジ装置100は、エッジモデルのモデル情報をサーバ装置200へ送信する際に、自身の内部で使用しているクラスコード体系から標準クラスコード体系へ変換してから、モデル情報をサーバ装置200へ送信する。
[モデル更新部の実施例]
次に、サーバ装置200のモデル更新部250の実施例について詳しく説明する。
(第1実施例)
図6は、モデル更新部250の第1実施例の機能構成を示すブロック図である。モデル更新部250は、まず複数の物体認識部を含む大規模モデルを学習するステップ(以下、「大規模モデル学習ステップ」と呼ぶ。)を実行し、次に学習済みの大規模モデルを用いて、更新後エッジモデルに相当するターゲットモデルを学習するステップ(以下、「ターゲットモデル学習ステップ」と呼ぶ。)を実行する。なお、物体認識部はエッジ装置100で使用されるエッジモデルを用いて物体を認識するユニットである。
図示のように、モデル更新部250は、大別して、大規模モデル部220と、ターゲットモデル部230とを備える。大規模モデル部220は、画像入力部221と、重み算出部222と、第1の物体認識部223と、第2の物体認識部224と、積和部225と、パラメータ修正部226と、ロス算出部227と、正解ラベル記憶部228とを備える。また、ターゲットモデル部230は、ターゲットモデル物体認識部231と、ロス算出部232と、パラメータ修正部233とを備える。
ここで、「ターゲットモデル」とは、モデル更新の対象となるエッジ装置(以下、「更新対象エッジ装置」と呼ぶ。)100のエッジモデル(以下、「更新対象エッジモデル」と呼ぶ。)を指す。また、第1の物体認識部223及び第2の物体認識部224は、それぞれ更新対象エッジ装置100とは別のエッジ装置100により学習されたエッジモデルにより物体を認識する。よって、第1の物体認識部223及び第2の物体認識部224は、事前に各エッジ装置100において学習済みのエッジモデルを使用するものであり、以下に説明する処理において学習は行わない。上記の構成において、画像入力部221は図2(B)に示す通信部202により実現され、正解ラベル記憶部228は図2(B)に示すデータベース206により実現され、その他の構成要素は図2(B)に示すプロセッサ203により実現される。
画像入力部221には、学習用の画像データが入力される。ここでは、学習用の画像データとして、更新対象エッジ装置100が設置された場所で撮影された一時的画像データ214が使用される。学習用の画像データに対しては、その画像に含まれる物体を示す正解ラベルが予め用意されている。
第1の物体認識部223は、例えばSSD(Single Shot Multibox Detector)、RetinaNet、Faster-RCNN(Regional Convolutional Neural Network)などのディープラーニングによる物体検知用のニューラルネットワークに類似する構成を有する。但し、第1の物体認識部223は、NMS(Non Maximum Suppression)処理前のアンカーボックス毎に算出された認識対象物体のスコア情報および座標情報をそのまま出力する。ここでは、認識対象物体の有無を検証する、すべての部分領域のことを「アンカーボックス」と呼ぶ。
図7は、アンカーボックスの概念を説明する図である。図示のように、CNN(Convolutional Neural Network)の畳み込みにより得られた特徴マップ上に、スライディングウィンドウ(sliding window)が設定される。図3の例では、1つのスライディングウィンドウに対してk通りの大きさの異なるアンカーボックス(以下、単に「アンカー」とも呼ぶ。)が設定され、各アンカーに対して認識対象物体の有無が検証される。即ち、各アンカーは、すべてのスライディングウィンドウに対してk通りずつ設定される部分領域を指す。
第2の物体認識部224は、第1の物体認識部223と同様であり、モデルの構造も同一とする。ただし、第1の物体認識部223と第2の物体認識部224とは、異なるエッジ装置100において学習されたエッジモデルを使用しているので、内部に所持するネットワークのパラメータは一致しておらず、認識特性も異なる。
重み算出部222は、内部に有する重み算出のためのパラメータ(以下、「重み算出パラメータ」と呼ぶ。)を最適化する。重み算出部222は、ResNetなどの回帰問題に適用可能なディープニューラルネットワークなどによって構成される。重み算出部222は、画像入力部221に入力された画像データに基づいて、第1の物体認識部223と第2の物体認識部224が出力するスコア情報および座標情報を融合する際の重みを決定し、それぞれの重みを示す情報を積和部225へ出力する。基本的に、重みの次元数は用いる物体認識部の数に等しい。この場合、重み算出部222は、第1の物体認識部223に対する重みと第2の物体認識部224に対する重みの総和が「1」になるように重みを算出することが好ましい。例えば、重み算出部222は、第1の物体認識部223に対する重みを「α」とし、第2の物体認識部224に対する重みを「1-α」とすればよい。これにより、積和部225における平均値算出処理を簡略化することができる。
積和部225は、第1の物体認識部223および第2の物体認識部224が出力するスコア情報および座標情報を、それぞれ対応するアンカー同士で、重み算出部222が出力する重みに基づき積和した後に平均値を求める。なお、座標情報の積和演算は、正解ラベルに認識対象物体の存在が示されているアンカーに対してのみ行い、それ以外のアンカーに対しては計算不要である。平均値はアンカー毎かつ認識対象物体毎に算出される。
正解ラベル記憶部228は、学習用の画像データに対する正解ラベルを記憶している。具体的に、正解ラベル記憶部228は、正解ラベルとして、各アンカーに存在する認識対象物体のスコア情報、および、座標情報をアンカー毎に配列状に記憶する。正解ラベル記憶部228は、認識対象物体が存在しないアンカーに対応する記憶エリアには、認識対象物体が存在しない旨を示すスコア情報、および座標情報を記憶する。なお、学習用の画像データに対するもともとの正解情報は、入力画像に写っている認識対象物体の種類とその矩形領域を示すテキスト情報である場合が多いが、正解ラベル記憶部228に記憶されている正解ラベルは、その正解情報をアンカー毎のスコア情報および座標情報に変換したデータとなっている。
例えば、正解ラベル記憶部228は、ある物体が写っている矩形領域とあらかじめ定めた閾値以上の重複を有するアンカーについては、当該物体のスコアを表す正解ラベルの位置に、スコア情報として当該物体のスコアを示す値1.0を格納し、座標情報として当該アンカーの標準矩形位置に対する当該物体が写っている矩形領域の位置の相対量(左端x座標のずれ量、上端y座標のずれ量、幅のずれ量、高さのずれ量)を格納する。また、正解ラベル記憶部228は、他の物体のスコアを表す正解ラベルの位置には物体が存在しない旨を示す値を格納する。また、ある物体が写っている矩形領域とあらかじめ定めた閾値以上の重複を有さないアンカーに対しては、正解ラベル記憶部228は、物体のスコアおよび座標情報を格納する正解ラベルの位置に物体が存在しない旨を示す値を格納する。
ロス算出部227は、積和部225が出力するスコア情報および座標情報と、正解ラベル記憶部228に記憶されている正解ラベルとを照合してロスを算出する。具体的には、ロス算出部227は、スコア情報に関する識別ロス、および、座標情報に関する回帰ロス(Regression loss)を算出する。積和部225が出力する平均値は、第1の物体認識部223がアンカー毎かつ認識対象物体毎に出力するスコア情報および座標情報と同義である。したがって、ロス算出部227は、第1の物体認識部223の出力に対する識別ロスの算出方法と全く等しい方法で識別ロスの値を算出することができる。ロス算出部227は、すべてのアンカーに対するスコア情報の差分を累積して識別ロスを算出する。また、回帰ロスについては、ロス算出部227は、いずれかの物体が存在するアンカーに対してのみ座標情報の差分を累積し、いずれの物体も存在しないアンカーに対しては座標情報の差分を考慮しない。
なお、識別ロスと回帰ロスを用いたディープニューラルネットワークの学習については以下の文献に記載されており、これを参考文献として取り込む。
”Learning Efficient Object Detection Models with Knowledge Distillation”,NeurIPS2017
以下、ロス算出部227が算出するロスを「大規模モデルロス」とも呼ぶ。
パラメータ修正部226は、ロス算出部227が算出した大規模モデルロスを減少させるように、重み算出部222に内在するネットワークのパラメータを修正する。この時、パラメータ修正部226は、第1の物体認識部223および第2の物体認識部224のネットワークのパラメータを固定し、重み算出部222のパラメータのみを修正する。パラメータ修正部226は、パラメータの修正量を通常の誤差逆伝搬法により求めることができる。
重み算出部222は、入力画像に対する各物体認識部の得手・不得手を予測して重みを最適化し、積和部225は、その重みを各物体認識部の出力に乗じて平均する。よって、単体の物体認識部に比べて高精度な最終判定を行うことができる。例えば、第1の物体認識部223は単独で歩く歩行者の検知を得意とし、第2の物体認識部224は集団で歩く歩行者の検知を得意としている場合、入力画像にたまたま単独で歩く人が映っていたならば、重み算出部222は第1の物体認識部223により大きな重みを割り当てる。また、パラメータ修正部226は、学習用の画像データの認識を得意とする物体認識部に対して重み算出部222が大きな重みを算出するように、重み算出部222のパラメータを修正する。このようにして重み算出部222のパラメータを学習することで、第1の物体認識部223および第2の物体認識部224の出力を最適に積和し、総合的に判定を行うことができる大規模モデルを構築することが可能となる。
ターゲットモデル物体認識部231は、更新の対象となるエッジモデルの物体認識部である。ターゲットモデル物体認識部231は、第1の物体認識部223および第2の物体認識部224と同一の、物体検知用のニューラルネットワークに類似した構成を有する。ターゲットモデル物体認識部231は、画像入力部221に入力された学習用の画像データに基づいて、認識対象物体のスコア情報および座標情報をロス算出部232に出力する。
ロス算出部232は、ターゲットモデル物体認識部231が出力したスコア情報および座標情報を、ロス算出部227と同様に、正解ラベル記憶部228に記憶されている正解ラベルと照合して識別ロスおよび回帰ロスを算出する。さらに、ロス算出部232は、ターゲットモデル物体認識部231が出力したスコア情報および座標情報を、積和部225が出力するスコア情報および座標情報と照合して識別ロスおよび回帰ロスを算出する。積和部225が出力するスコア情報および座標情報は、大規模モデルによるスコア情報および座標情報に相当する。そして、ロス算出部232は、算出したロスをパラメータ修正部233に供給する。
なお、学習用の画像データは、正解ラベルを有しない画像データ(「ラベルなし画像データ」と呼ぶ。)を含んでいてもよい。ラベルなし画像データについては、ロス算出部232は、ターゲットモデル物体認識部231が出力したスコア情報および座標情報を、積和部225が出力するスコア情報および座標情報と照合して生成した識別ロスおよび回帰ロスのみをパラメータ修正部233に出力すればよい。以下、ロス算出部232が算出するロスを「ターゲットモデルロス」とも呼ぶ。
パラメータ修正部233は、ロス算出部232が算出したロスを減少させるように、ターゲットモデル物体認識部231に内在するネットワークのパラメータを修正する。パラメータ修正部233は、パラメータの修正量を通常の誤差逆伝搬法により求めることができる。
次に、モデル更新部250の動作について説明する。図8は、モデル更新部250によるモデル更新処理のフローチャートである。この処理は、図2(B)に示すプロセッサ203が予め用意されたプログラムを実行することにより実現される。図8において、ステップS11~S18は大規模モデル学習ステップに相当し、ステップS19~S24はターゲットモデル学習ステップに相当する。なお、大規模モデル学習ステップの実行中には、ターゲットモデル物体認識部231、ロス算出部232およびパラメータ修正部233は動作しない。
まず、画像入力部221に学習用の画像データが入力される(ステップS11)。第1の物体認識部223は、画像データを用いて物体認識を行い、画像中の認識対象物体のスコア情報と座標情報をアンカー毎かつ認識対象物体毎に出力する(ステップS12)。同様に、第2の物体認識部224は、画像データを用いて物体認識を行い、画像中の認識対象物体のスコア情報と座標情報をアンカー毎かつ認識対象物体毎に出力する(ステップS13)。また、重み算出部222は、画像データを読み込み、第1の物体認識部223および第2の物体認識部224の出力それぞれに対する重みを算出する(ステップS14)。
次に、積和部225は、アンカー毎に、第1の物体認識部223が出力した認識対象物体のスコア情報と座標情報、並びに、第2の物体認識部224が出力した認識対象物体のスコア情報と座標情報に、重み算出部222が算出したそれぞれに対する重みを掛け合わせて加算し、それらの平均値を出力する(ステップS15)。次に、ロス算出部227は、得られた平均値と正解ラベルとの差を照合し、大規模モデルロスを算出する(ステップS16)。そして、パラメータ修正部226は、大規模モデルロスの値が減少するように、重み算出部222に内在する重み算出パラメータを修正する(ステップS17)。
モデル更新部250は、上記のステップS11~S17を所定の条件の間だけ繰返し、処理を終了する。なお、「所定の条件」とは、繰返しの回数やロスの値の変化度合いなどに関する条件であり、多くのディープラーニングの学習手順として採用されている方法のいずれかを使用することができる。こうして、大規模モデルが構築される。
こうして、大規模モデル学習ステップが終了すると(ステップS18:Yes)、次に、ターゲットモデル学習ステップが行われる。ターゲットモデル学習ステップでは、重み算出部222の内部パラメータは、大規模モデル学習ステップで学習された値に固定される。なお、第1の物体認識部223および第2の物体認識部224の内部パラメータも事前に学習済みの値に固定されている。
画像入力部221に学習用の画像データが入力されると(ステップS19)、大規模モデル部220は、入力された画像データを用いて物体認識を行い、画像中の認識対象物体のスコア情報と座標情報をアンカー毎かつ認識対象物体毎にロス算出部232に出力する(ステップS20)。また、ターゲットモデル物体認識部231は、入力された画像データを用いて物体認識を行い、画像中の認識対象物体のスコア情報と座標情報をアンカー毎かつ認識対象物体毎にロス算出部232に出力する(ステップS21)。次に、ロス算出部232は、ターゲットモデル物体認識部231が出力したスコア情報および座標情報を、正解ラベル記憶部228に記憶されている正解ラベル並びに大規模モデル部220が出力したスコア情報および座標情報と比較してターゲットモデルロスを算出する(ステップS22)。そして、パラメータ修正部233は、ターゲットモデルロスの値が減少するように、ターゲットモデル物体認識部231に内在するパラメータを修正する(ステップS23)。モデル更新部250は、上記のステップS19~S24を所定の条件の間だけ繰返し、処理を終了する。
以上のように、モデル更新部250の第1実施例によれば、まず、複数の学習済みの物体認識部を用いて大規模モデルを学習し、次に、その大規模モデルを用いて更新対象エッジモデルを学習する。よって、更新対象エッジモデルを、更新対象エッジ装置100が設置された場所の環境に適した小規模で高精度なモデルに更新することが可能となる。
(変形例1)
上記のモデル更新部250の第1実施例については、以下の変形例を適用することができる。
(1)上記の第1実施例では、各物体認識部が出力するスコア情報および座標情報を用いて学習を行っているが、座標情報は用いず、スコア情報のみを用いて学習を行うこととしてもよい。
(2)上記の第1実施例では、第1の物体認識部223および第2の物体認識部224の2つの物体認識部を用いたが、物体認識部は原理上3つ以上でも全く問題ない。その場合は、重み算出部222が出力する重みの次元数(数)を、物体認識部の数と等しくすればよい。
(3)第1の物体認識部223および第2の物体認識部224を構成する具体的なアルゴリズムとしては、物体検知のためのディープラーニング手法であれば何を用いてもよい。また、重み算出部222としては、回帰問題向けのディープラーニングに限らず、誤差逆伝搬法で学習できる関数、いいかえると、重みを算出する関数のパラメータで誤差関数を偏微分可能な関数、であれば何を用いても構わない。
(4)また、上記の第1実施例では、第1の物体認識部223と第2の物体認識部224とはモデルの構造の等しいものを用いるものとしているが、異なるモデルを用いてもよい。ただし、その場合は、積和部225にて、略等しい位置に対応する双方のアンカーの対応づけを工夫する必要がある。これは、異なるモデル間のアンカーは、完全一致しないためである。現実的な実装としては、第2の物体認識部224で設定される各アンカーを第1の物体認識部223で設定されるアンカーのいずれか1つに対応させ、第1の物体認識部223で設定されるアンカー毎に重み付け平均を計算し、第1の物体認識部223で設定されるアンカー毎かつ認識対象物体毎のスコア情報および座標情報を出力するようにすればよい。アンカーの対応の決め方としては、アンカーに対応する画像領域(物体が存在する矩形領域)を求め、その画像領域がもっとも過不足なく重複するアンカー同士を対応付ければよい。
(5)第1実施例の重み算出部222は画像全体に対して1通りの重みを設定しているが、その代わりに、重み算出部222が画像のアンカー毎、即ち部分領域毎に、各物体認識部の出力に対する重みを算出することとしても良い。
(6)重み算出部222が、例えばRetinaNetのように各物体認識部がクラス毎に異なるバイナリ識別器を持っているならば、アンカー毎ではなくクラス毎に重みを変えられるようにしてもよい。この場合は、重み算出部222がクラス毎に重みを算出し、パラメータ修正部226がクラス毎にパラメータを修正すればよい。
(第2実施例)
次に、モデル更新部250の第2実施例について説明する。第1実施例では、まず、大規模モデルを学習し、その後に大規模モデルを用いてターゲットモデルを学習している。これに対し、第2実施例では、大規模モデルの学習とターゲットモデルの学習を同時に行う。
図9は、第2実施例に係るモデル更新部250xの機能構成を示すブロック図である。図示のように、第2実施例のモデル更新部250xでは、ロス算出部232の出力がパラメータ修正部226にも供給されている。この点以外は、第2実施例のモデル更新部250xは、図7に示す第1実施例のモデル更新部250と同一であり、各要素は基本的に第1実施例と同様に動作する。
第2実施例では、ロス算出部232は、ターゲットモデルロスをパラメータ修正部233のみならず、パラメータ修正部226にも供給する。パラメータ修正部226は、ターゲットモデルロスも考慮して、重み算出部222の重み算出パラメータを修正する。具体的には、パラメータ修正部226は、大規模モデルロス及びターゲットモデルロスが減少するように、重み算出パラメータを修正する。
次に、第2実施例によるモデル更新処理について説明する。図10は、第2実施例によるモデル更新処理のフローチャートである。図10に示す学習処理において、ステップS41~S46は、図8に示す第1実施例のモデル更新部250による学習処理のステップS11~S16と同様であるので説明を省略する。
ステップS46でロス算出部227が大規模モデルロスを算出すると、ターゲットモデル物体認識部231は、入力された画像データを用いて物体検知を行い、画像中の認識対象物体のスコア情報と座標情報をアンカー毎かつ認識対象物体毎に出力する(ステップS47)。次に、ロス算出部232は、ターゲットモデル物体認識部231が出力したスコア情報および座標情報を、正解ラベル並びに大規模モデル部220が出力したスコア情報および座標情報と比較してターゲットモデルロスを算出し、パラメータ修正部226及びパラメータ修正部233に供給する(ステップS48)。
パラメータ修正部226は、大規模モデルロスおよびターゲットモデルロスが減少するように、重み算出部222の重み算出パラメータを修正する(ステップS49)。また、パラメータ修正部233は、ターゲットモデルロスが減少するように、ターゲットモデル物体認識部231に内在するパラメータを修正する(ステップS50)。モデル更新部250xは、上記のステップS41~S50を所定の条件の間だけ繰返し、処理を終了する。
以上のように、モデル更新部250の第2実施例によれば、大規模モデルの学習ステップと、ターゲットモデルの学習ステップを同時に実行することができる。よって、新たな現場の環境に適したターゲットモデルを効率的に構築することが可能となる。
(第3実施例)
次に、モデル更新部250の第3実施例について説明する。第3実施例は、画像データの撮影環境情報を用いて、各物体認識部に対する重み付けを行うものである。
図11は、第3実施例に係るモデル更新部250yの機能構成を示すブロック図である。図示のように、モデル更新部250yは、図6に示すモデル更新部250における重み算出部222の代わりに重み算出/環境予測部222yを備え、さらに予測ロス算出部229を追加した構成を有する。これ以外は、第3実施例のモデル更新部250yは、第1実施例のモデル更新部250と同一である。
予測ロス算出部229には、撮影環境情報が入力される。撮影環境情報は、学習用の画像データが撮影された環境、即ち、更新対象エッジ装置100の設置された環境を示す情報である。例えば、撮影環境情報は、(a)画像データを撮影したカメラの設置位置の屋内外の別(屋内または屋外)、(b)その時の天候(晴天、曇天、雨または雪)、(c)時刻(昼または夜)、(d)カメラの俯角(0~30度、30~60度または60~90度)などである。
重み算出/環境予測部222yは、重み算出パラメータを用いて第1の物体認識部223および第2の物体認識部224に対する重みを算出すると同時に、撮影環境を予測するためのパラメータ(以下、「撮影環境予測パラメータ」と呼ぶ。)を用いて、入力された画像データの撮影環境を予測して予測環境情報を生成し、予測ロス算出部229に出力する。例えば、撮影環境情報として上記(a)~(d)の4種類のものを用いるとすれば、重み算出/環境予測部222yは、各種類の情報の属性値を1次元で表し、予測環境情報として4次元の値を出力する。重み算出/環境予測部222yは、重みと予測環境情報を算出するにあたり、計算の一部を共通化する。例えば、ディープニューラルネットワークで算出する場合、重み算出/環境予測部222yは、ネットワークの下位層を共通化し、上位層のみを重みおよび予測環境情報の算出に特化させる。即ち、重み算出/環境予測部222yはいわゆるマルチタスク学習を行う。これにより、重み算出パラメータと環境予測パラメータは、その一部が共通することとなる。
予測ロス算出部229は、撮影環境情報と、重み算出/環境予測部222yが算出した予測環境との差異を計算し、予測ロスとしてパラメータ修正部226に出力する。パラメータ修正部226は、ロス算出部227が算出したロスおよび予測ロス算出部229が算出した予測ロスを減少させるように、重み算出/環境予測部222yに内在するネットワークのパラメータを修正する。
第3実施例では、重み算出/環境予測部222yにおいて、重みの算出と予測環境情報の算出に一部のネットワークを共有しているので、類似した撮影環境のモデル同士は類似した重みをもちやすくなる。その結果、重み算出/環境予測部222yにおける学習を安定させる効果が得られる。
<第2実施形態>
図12は、第2実施形態に係る物体認識システムの構成を示すブロック図である。第2実施形態の物体認識システムは、複数の端末装置170と、サーバ装置270とを備える。端末装置170は、端末側送信部171と、端末側受信部172と、を備える。また、サーバ装置270は、サーバ側受信部271と、モデル統合部272と、モデル更新部273と、サーバ側送信部274とを備える。
端末側送信部171は、認識処理に使用するモデルを規定するモデル情報をサーバ装置270に送信する。サーバ側受信部271は、複数の端末装置170からモデル情報を受信する。モデル統合部272は、複数の端末装置170から受信したモデル情報を統合して統合モデルを生成する。モデル更新部273は、モデル更新の対象となる端末装置170から受信したモデル情報が規定するモデルを、統合モデルを用いて学習することにより更新して更新後のモデルを生成する。サーバ側送信部274は、更新後のモデルを示すモデル情報を、モデル更新の対象となる端末装置170に送信する。端末側受信部172は、サーバ装置270により生成された更新後のモデルを規定するモデル情報を受信する。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
複数の端末装置と、サーバ装置とを備える認識システムであって、
前記端末装置は、
認識処理に使用するモデルを規定するモデル情報を前記サーバ装置に送信する端末側送信部と、
前記サーバ装置により生成された更新後のモデルを規定するモデル情報を受信する端末側受信部と、
を備え、
前記サーバ装置は、
前記複数の端末装置から前記モデル情報を受信するサーバ側受信部と、
前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成するモデル統合部と、
モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して前記更新後のモデルを生成するモデル更新部と、
前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信するサーバ側送信部と、
を備える認識システム。
(付記2)
前記モデル統合部は、前記複数の端末装置から受信したモデル情報が規定するモデルによる認識結果を重み付け加算して、前記統合モデルを生成する付記1に記載の認識システム。
(付記3)
前記モデル情報は、モデルの構造を示すモデル構造と、当該モデル構造に対して設定されるパラメータのセットとを含み、
前記モデル更新部は、前記モデル更新の対象となる端末装置から受信したモデル情報に含まれるパラメータのセットを更新する付記1又は2に記載の認識システム。
(付記4)
前記モデル更新の対象となる端末装置の前記端末側送信部は、当該端末装置が設置された場所で得られた画像データを前記サーバ装置へ送信し、
前記サーバ側受信部は、前記画像データを受信し、
前記モデル統合部は、前記画像データを用いて前記統合モデルを生成し、
前記モデル更新部は、前記画像データを用いて前記モデルを更新する付記1乃至3のいずれか一項に記載の認識システム。
(付記5)
前記サーバ装置は、前記モデル更新部が前記モデルを更新した後、前記画像データを消去する付記4に記載の認識システム。
(付記6)
前記端末側送信部は、前記画像データの撮影環境情報を前記サーバ装置へ送信し、
前記モデル統合部は、前記撮影環境情報も使用して前記統合モデルを生成する付記4又は5に記載の認識システム。
(付記7)
前記端末装置は、当該端末装置が設置された場所で得られた画像データを用いてモデルを学習する学習部を備え、
前記端末側送信部は、前記学習部による学習が終わるたびに、学習後のモデルに対応するモデル情報を前記サーバ装置へ送信する付記1乃至6のいずれか一項に記載の認識システム。
(付記8)
前記端末装置は、前記サーバ装置による更新前のモデル及び前記サーバ装置による更新後のモデルによる認識結果を提示する認識結果提示部を備える付記1乃至7のいずれか一項に記載の認識システム。
(付記9)
前記端末側送信部は、前記モデルによる認識対象物と、当該認識対象物のクラスコードとの対応関係を示すコード体系情報を前記サーバ装置へ送信し、
前記モデル統合部は、前記コード体系情報に基づいて、複数の端末装置におけるモデルによるクラスコードを統一し、前記統合モデルを生成する付記1乃至8のいずれか一項に記載の認識システム。
(付記10)
前記端末側送信部は、標準コード体系に従って各認識対象物に対してクラスコードを付与したモデル情報を前記サーバ装置へ送信し、
前記標準コード体系は、前記モデルによる認識対象物と、当該認識対象物のクラスコードとの対応関係を示すコード体系であって、前記複数の端末装置及び前記サーバ装置が統一的に使用するコード体系である付記1乃至8のいずれか一項に記載の認識システム。
(付記11)
複数の端末装置と通信可能なモデル処理装置であって、
前記複数の端末装置から、認識処理に使用するモデルを規定するモデル情報を受信する受信部と、
前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成するモデル統合部と、
モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して更新後のモデルを生成するモデル更新部と、
前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信する送信部と、
を備えるモデル処理装置。
(付記12)
複数の端末装置から、認識処理に使用するモデルを規定するモデル情報を受信し、
前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成し、
モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して更新後のモデルを生成し、
前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信するモデル処理方法。
(付記13)
複数の端末装置から、認識処理に使用するモデルを規定するモデル情報を受信し、
前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成し、
モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して更新後のモデルを生成し、
前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信する処理をコンピュータに実行させるプログラムを記録した記録媒体。
以上、実施形態及び実施例を参照して本発明を説明したが、本発明は上記実施形態及び実施例に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
1 物体認識システム
100 エッジ装置
103 プロセッサ
111 認識部
112 モデル記憶部
113 モデル学習部
114 モデル情報受信部
115 モデル情報送信部
116 認識結果提示部
170 端末装置
200、270 サーバ装置
211 モデル情報送信部
212 モデル情報受信部
213 モデル蓄積部
214 一時的画像データ
250 モデル更新部

Claims (10)

  1. 複数の端末装置と、サーバ装置とを備える認識システムであって、
    前記端末装置は、
    認識処理に使用するモデルを規定するモデル情報を前記サーバ装置に送信する端末側送信手段と、
    前記サーバ装置により生成された更新後のモデルを規定するモデル情報を受信する端末側受信手段と、
    を備え、
    前記サーバ装置は、
    前記複数の端末装置から前記モデル情報を受信するサーバ側受信手段と、
    前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成するモデル統合手段と、
    モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して前記更新後のモデルを生成するモデル更新手段と、
    前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信するサーバ側送信手段と、
    を備える認識システム。
  2. 前記モデル統合手段は、前記複数の端末装置から受信したモデル情報が規定するモデルによる認識結果を重み付け加算して、前記統合モデルを生成する請求項1に記載の認識システム。
  3. 前記モデル情報は、モデルの構造を示すモデル構造と、当該モデル構造に対して設定されるパラメータのセットとを含み、
    前記モデル更新手段は、前記モデル更新の対象となる端末装置から受信したモデル情報に含まれるパラメータのセットを更新する請求項1又は2に記載の認識システム。
  4. 前記モデル更新の対象となる端末装置の前記端末側送信手段は、当該端末装置が設置された場所で得られた画像データを前記サーバ装置へ送信し、
    前記サーバ側受信手段は、前記画像データを受信し、
    前記モデル統合手段は、前記画像データを用いて前記統合モデルを生成し、
    前記モデル更新手段は、前記画像データを用いて前記モデルを更新する請求項1乃至3のいずれか一項に記載の認識システム。
  5. 前記サーバ装置は、前記モデル更新手段が前記モデルを更新した後、前記画像データを消去する請求項4に記載の認識システム。
  6. 前記端末側送信手段は、前記画像データの撮影環境情報を前記サーバ装置へ送信し、
    前記モデル統合手段は、前記撮影環境情報も使用して前記統合モデルを生成する請求項4又は5に記載の認識システム。
  7. 前記端末装置は、当該端末装置が設置された場所で得られた画像データを用いてモデルを学習する学習手段を備え、
    前記端末側送信手段は、前記学習手段による学習が終わるたびに、学習後のモデルに対応するモデル情報を前記サーバ装置へ送信する請求項1乃至6のいずれか一項に記載の認識システム。
  8. 複数の端末装置と通信可能なモデル処理装置であって、
    前記複数の端末装置から、認識処理に使用するモデルを規定するモデル情報を受信する受信手段と、
    前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成するモデル統合手段と、
    モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して更新後のモデルを生成するモデル更新手段と、
    前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信する送信手段と、
    を備えるモデル処理装置。
  9. 複数の端末装置から、認識処理に使用するモデルを規定するモデル情報を受信し、
    前記複数の端末装置から受信したモデル情報を統合して統合モデルを生成し、
    モデル更新の対象となる端末装置から受信したモデル情報が規定するモデルを、前記統合モデルを用いて学習することにより更新して更新後のモデルを生成し、
    前記更新後のモデルを示すモデル情報を、前記モデル更新の対象となる端末装置に送信するモデル処理方法。
  10. 請求項9に記載のモデル処理方法をコンピュータに実行させるプログラム。
JP2021541407A 2019-08-21 2019-08-21 認識システム、モデル処理装置、モデル処理方法、及び、プログラム Active JP7235125B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/032612 WO2021033288A1 (ja) 2019-08-21 2019-08-21 認識システム、モデル処理装置、モデル処理方法、及び、記録媒体

Publications (3)

Publication Number Publication Date
JPWO2021033288A1 JPWO2021033288A1 (ja) 2021-02-25
JPWO2021033288A5 JPWO2021033288A5 (ja) 2022-04-05
JP7235125B2 true JP7235125B2 (ja) 2023-03-08

Family

ID=74660711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541407A Active JP7235125B2 (ja) 2019-08-21 2019-08-21 認識システム、モデル処理装置、モデル処理方法、及び、プログラム

Country Status (3)

Country Link
US (1) US20220292397A1 (ja)
JP (1) JP7235125B2 (ja)
WO (1) WO2021033288A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7509719B2 (ja) 2021-06-11 2024-07-02 株式会社日立ソリューションズ Ai品質監視システム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12374092B2 (en) * 2021-03-01 2025-07-29 Robert Bosch Gmbh Image analysis model comprising an integer coupling layer
JP7281595B1 (ja) 2022-12-26 2023-05-25 株式会社野村総合研究所 セルフ給油システム
WO2024247055A1 (ja) * 2023-05-29 2024-12-05 日本電気株式会社 画像処理装置および画像処理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010282556A (ja) 2009-06-08 2010-12-16 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP2018510399A (ja) 2015-01-22 2018-04-12 株式会社Preferred Networks 異種環境におけるエッジデバイスのためのモデルフィルタリングおよびモデルミキシングによる機械学習
WO2019131527A1 (ja) 2017-12-26 2019-07-04 株式会社エイシング 汎用学習済モデルの生成方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9269054B1 (en) * 2011-11-09 2016-02-23 BigML, Inc. Methods for building regression trees in a distributed computing environment
US9390376B2 (en) * 2013-10-15 2016-07-12 Lockheed Martin Corporation Distributed machine learning intelligence development systems
CN109716346A (zh) * 2016-07-18 2019-05-03 河谷生物组学有限责任公司 分布式机器学习系统、装置和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010282556A (ja) 2009-06-08 2010-12-16 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP2018510399A (ja) 2015-01-22 2018-04-12 株式会社Preferred Networks 異種環境におけるエッジデバイスのためのモデルフィルタリングおよびモデルミキシングによる機械学習
WO2019131527A1 (ja) 2017-12-26 2019-07-04 株式会社エイシング 汎用学習済モデルの生成方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7509719B2 (ja) 2021-06-11 2024-07-02 株式会社日立ソリューションズ Ai品質監視システム

Also Published As

Publication number Publication date
WO2021033288A1 (ja) 2021-02-25
JPWO2021033288A1 (ja) 2021-02-25
US20220292397A1 (en) 2022-09-15

Similar Documents

Publication Publication Date Title
JP7235125B2 (ja) 認識システム、モデル処理装置、モデル処理方法、及び、プログラム
US12039445B2 (en) Method and system for on-the-fly object labeling via cross modality validation in autonomous driving vehicles
US12307347B2 (en) Method and system for distributed learning and adaptation in autonomous driving vehicles
US20220350340A1 (en) Method and system for object centric stereo in autonomous driving vehicles
US11132608B2 (en) Learning-based service migration in mobile edge computing
CN106997466B (zh) 用于检测道路的方法和装置
US20210235543A1 (en) Split predictions for iot devices
KR20180110891A (ko) 입력 영상에 포함된 객체를 인식하는 디바이스 및 방법
JPWO2011151999A1 (ja) 動線検出システム、動線検出方法および動線検出プログラム
US20210110140A1 (en) Environment specific model delivery
CN118968038A (zh) 目标检测方法、装置、设备、存储介质及产品
CN111723730B (zh) 对目标对象的数量进行预测的方法及相关设备
US20210064941A1 (en) Method for adaptive context length control for on-line edge learning
WO2021090473A1 (ja) 物体検知装置、学習方法、及び、記録媒体
JP7164048B2 (ja) 物体検知装置、学習方法、及び、プログラム
WO2021005776A1 (ja) 物体検知装置、学習方法、及び、記録媒体
US20220180744A1 (en) System and method for task control based on bayesian meta-reinforcement learning
WO2022024211A1 (ja) 学習活用システム、活用装置、学習装置、プログラム及び学習活用方法
CN114942031A (zh) 视觉定位方法、视觉定位与建图方法、装置、设备及介质
CN114997495A (zh) 一种atm机交易量预测方法和相关装置
JP7380902B2 (ja) 物体検知装置、学習済みモデル生成方法、及び、プログラム
US20220115148A1 (en) Self-assessment of machine learning
US20230177794A1 (en) Electronic device and method of inferring object in image
KR102819246B1 (ko) 전주기 심층 능동학습 기반 데이터 라벨링 시스템 및 방법
US20250239044A1 (en) Apparatus, method and readable storage medium for image processing model training

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220118

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220118

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: 20230124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230206

R151 Written notification of patent or utility model registration

Ref document number: 7235125

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151