JP7483631B2 - 情報処理方法及びプログラム - Google Patents

情報処理方法及びプログラム Download PDF

Info

Publication number
JP7483631B2
JP7483631B2 JP2020563863A JP2020563863A JP7483631B2 JP 7483631 B2 JP7483631 B2 JP 7483631B2 JP 2020563863 A JP2020563863 A JP 2020563863A JP 2020563863 A JP2020563863 A JP 2020563863A JP 7483631 B2 JP7483631 B2 JP 7483631B2
Authority
JP
Japan
Prior art keywords
classification
threshold
unit
classes
transformation
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
JP2020563863A
Other languages
English (en)
Other versions
JPWO2020141587A1 (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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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 Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Publication of JPWO2020141587A1 publication Critical patent/JPWO2020141587A1/ja
Application granted granted Critical
Publication of JP7483631B2 publication Critical patent/JP7483631B2/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2431Multiple classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • 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/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Probability & Statistics with Applications (AREA)
  • Databases & Information Systems (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本開示は、情報処理装置、情報処理方法及びプログラムに関する。
画像認識などの分野において、画像中の物体を認識する認識モデル(以下、分類モデルともいう)として、多層ニューラルネットワーク(Deep Neural Network:DNN)が使用されている。DNNは、例えば、画像を入力とし、当該画像に含まれる物体のクラス分類の確率値(物体クラスに対する尤度ともいう。)を出力する。このとき、DNNの出力層では、Softmax関数が使用される(例えば、特許文献1参照)。
国際公開第2017/149722号
しかしながら、Softmax関数は指数演算を含むため、分類モデルを計算リソースが限られる組み込み装置に実装する場合に、計算リソースがひっ迫するおそれがある。
そこで、本開示は、物体のクラス分類のための演算量を低減することができる情報処理装置、情報処理方法及びプログラムを提供する。
上記課題を解決するため、本開示の一態様に係る情報処理装置は、プロセッサを備える情報処理装置であって、前記プロセッサは、データを複数のクラスの少なくとも1つに分類するための第1分類閾値を取得し、訓練済みの分類モデルの出力と前記第1分類閾値とに基づいて前記データを前記複数のクラスの少なくとも1つに分類した分類結果を出力し、前記第1分類閾値は、第2分類閾値の、第1変換に対する逆変換である第2変換により得られ、前記第1変換は、前記訓練済みの分類モデルの出力から前記複数のクラスを構成する複数の単体クラスの分類確率値への変換であり、前記第2分類閾値は、前記複数の単体クラスの分類確率値に基づいて設定され、前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラである
また、本開示の一態様に係る情報処理方法は、コンピュータにより実行される情報処理方法であって、訓練済みの分類モデルの出力から複数の単体クラスの分類確率値への第1変換を実行し、前記複数の単体クラスの前記分類確率値に基づいて第2分類閾値を設定し、前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、前記第1分類閾値を出力し、前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラであり、前記第1変換は、逆変換可能な確率関数による演算に対応したデータベースを用いた変換であり、前記第2変換は、前記確率関数の逆関数による演算に対応したデータベースを用いた変換であるあるいは、本開示の一態様に係る情報処理方法は、コンピュータにより実行される情報処理方法であって、データセットを取得し、前記データセットを訓練済みの分類モデルに入力し、前記訓練済みの分類モデルの出力から前記データセットに含まれるデータそれぞれについて複数の単体クラスの分類確率値への第1変換を実行し、前記複数の単体クラスの分類確率値それぞれに対して第2分類閾値を用いた分類結果に基づいて前記第2分類閾値を設定し、前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、前記第1分類閾値を出力し、前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラである。
また、本開示の一態様に係るプログラムは、訓練済みの分類モデルの出力から複数の単体クラスの分類確率値への第1変換を実行し、前記複数の単体クラスの前記分類確率値に基づいて第2分類閾値を設定し、前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、前記第1分類閾値を出力し、前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラであり、前記第1変換は、逆変換可能な確率関数による演算に対応したデータベースを用いた変換であり、前記第2変換は、前記確率関数の逆関数による演算に対応したデータベースを用いた変換である、情報処理方法をコンピュータに実行させる。あるいは、本開示の一態様に係るプログラムは、データセットを取得し、前記データセットを訓練済みの分類モデルに入力し、前記訓練済みの分類モデルの出力から前記データセットに含まれるデータそれぞれについて複数の単体クラスの分類確率値への第1変換を実行し、前記複数の単体クラスの分類確率値それぞれに対して第2分類閾値を用いた分類結果に基づいて前記第2分類閾値を設定し、前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、前記第1分類閾値を出力し、前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラである、情報処理方法をコンピュータに実行させる。あるいは、本開示の一態様は、当該プログラムを格納したコンピュータ読み取り可能な非一時的な記録媒体として実現することもできる。
本開示によれば、物体のクラス分類のための演算量を低減することができる。
図1は、実施の形態1における情報処理システムの構成の一例を示すブロック図である。 図2は、実施の形態1における閾値算出装置の動作の一例を示すフローチャートである。 図3は、実施の形態1に係る情報処理装置の動作の一例を示すフローチャートである。 図4は、実施の形態1の変形例に係る情報処理装置の構成の一例を示すブロック図である。 図5は、実施の形態1の変形例における閾値算出部の動作の一例を示すフローチャートである。 図6は、実施の形態1の変形例における情報処理部の動作の一例を示すフローチャートである。 図7は、実施の形態2における情報処理システムの構成の一例を示すブロック図である。 図8は、実施の形態2における閾値算出装置の動作の一例を示すフローチャートである。 図9は、実施の形態2の変形例に係る情報処理装置の構成の一例を示すブロック図である。 図10は、実施の形態2の変形例における閾値算出部の動作の一例を示すフローチャートである。
(本開示に至った知見)
従来、組み込み機器のような計算リソースに制限がある演算装置に搭載された多層ニューラルネットワーク(Deep Neural Network:DNN)では、隠れ層のユニット数を増やすことができないため、パターン認識性能が低下するという課題がある。この課題に対して、特許文献1に記載の従来技術は、DNNの層毎に、スカラ量子化を実施するか否かの判断を行い、スカラ量子化を実施した層の次の層では、スカラ量子化されたベクトルと重みベクトルとの乗算を行う。これにより、スカラ量子化されていないベクトルと重みベクトルとの乗算を行う場合に比べて、演算量を低減することができるため、隠れ層のユニット数を増やすことができる。しかしながら、スカラ量子化された出力ベクトルを用いて尤度ベクトルを算出するため、スカラ量子化されていない出力ベクトルを用いて尤度ベクトルを算出する場合に比べて値が粗くなる。そのため、認識精度が低下する可能性がある。
また、特許文献1に記載の従来技術では、DNNの出力層の1つ前の層でスカラ量子化が実施されていない場合、出力層においてSoftmax関数を適用して複数のクラスに対する尤度ベクトル(以下、分類確率値)を算出する。Softmax関数は、指数関数の演算を含むため、組み込みシステムへの実装時に指数関数の演算量が問題となる。さらに、Softmax関数は、入力に対して総和が1になるように調整するため、逆変換しても元の値に戻すことができない。言い換えると、Softmax関数は、入力に対して非可逆的な演算を行うため、Softmax関数に入力して得られた出力値を逆変換して、正規化されていない値を得ることができない。そのため、特許文献1に記載の従来技術では、例えば、入力画像中の物体を識別するために、入力画像中の物体の複数のクラスそれぞれに対する分類確率値を算出する必要がある。このような入力画像中の物体の分類確率値を算出する処理は、組み込み機器のような計算リソースに制限がある演算装置の演算量を増加させるため、演算装置に搭載されるDNNの識別精度を低下させる場合がある。したがって、特許文献1に記載の従来技術は、物体のクラス分類のための演算量を低減できているとは言い難い。
そこで、本願発明者は、上記課題を鑑み鋭意検討した結果、複数のクラスそれぞれの閾値を決定する処理において、DNNの出力層で可逆的な変換を行うことにより、算出した閾値を逆変換して正規化されていない閾値が得られることを見出した。これにより、例えば入力画像中の物体のクラス分類処理において、正規化されていない閾値を用いることができるため、物体のクラス分類のための演算量を低減することができる情報処理装置に想到した。
本開示の一態様の概要は、以下の通りである。
本開示の一態様に係る情報処理装置は、プロセッサを備える情報処理装置であって、前記プロセッサは、データを複数のクラスの少なくとも1つに分類するための第1分類閾値を取得し、訓練済みの分類モデルの出力と前記第1分類閾値とに基づいて前記データを前記複数のクラスの少なくとも1つに分類した分類結果を出力し、前記第1分類閾値は、第2分類閾値の、第1変換に対する逆変換である第2変換により得られ、前記第1変換は、前記訓練済みの分類モデルの出力から前記複数のクラスを構成する複数の単体クラスの分類確率値への変換であり、前記第2分類閾値は、前記複数の単体クラスの分類確率値に基づいて設定される。
上記構成によれば、分類モデルの出力から複数の単体クラスの分類確率値に変換する第1変換において、逆変換可能な関数が使用される。そのため、第2分類閾値に対して、第1変換に対する逆変換である第2変換を実行することにより得られる第1分類閾値を、物体のクラス分類の処理に使用すると、例えば画像を入力とする分類モデルの出力を複数の単体クラスの分類確率値に変換する必要がなくなる。したがって、本開示の一態様に係る情報処理装置によれば、物体のクラス分類のための演算量を低減することができる。
具体的には、本開示の一態様に係る情報処理装置では、前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであってもよい。
また、本開示の一態様に係る情報処理方法は、コンピュータにより実行される情報処理方法であって、訓練済みの分類モデルの出力から複数の単体クラスの分類確率値への第1変換を実行し、前記複数の単体クラスの前記分類確率値に基づいて第2分類閾値を設定し、前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、第1変換に対する逆変換である第2変換を実行し、前記第1分類閾値を出力する。
上記方法によれば、分類モデルの出力から複数の単体クラスの分類確率値に変換する第1変換において、逆変換可能な関数が使用される。そのため、第2分類閾値に対して、第1変換に対する逆変換である第2変換を実行することにより、正規化されていない閾値である第1分類閾値が得られる。例えば、第1分類閾値を、物体のクラス分類の処理に使用すると、分類モデルの出力を複数の単体クラスの分類確率値に変換する必要がなくなる。したがって、本開示の一態様に係る情報処理方法によれば、正規化されていない閾値である第1分類閾値が得られるため、物体のクラス分類のための演算量を低減することができる。
例えば、本開示の一態様に係る情報処理方法は、前記第1変換は、逆変換可能な確率関数による演算であり、前記第2変換は、前記確率関数の逆関数による演算であってもよい。
これにより、複数の単体クラスの分類確率値を逆変換することにより、変換前の値、つまり、訓練済みの分類モデルの出力を導出することができる。
例えば、本開示の一態様に係る情報処理方法では、前記第1変換は、逆変換可能な確率関数による演算に対応したデータベースであり、前記第2変換は、前記確率関数の逆関数による演算に対応したデータベースであってもよい。
これにより、関数演算よりも計算量がさらに低減される。
例えば、本開示の一態様に係る情報処理方法では、データセットを取得し、前記データセットを前記訓練済みの分類モデルに入力して前記データセットに含まれるデータそれぞれについて前記複数の単体クラスの分類確率値を取得し、取得された前記複数の単体クラスの分類確率値それぞれに対して前記第2分類閾値を用いた分類結果に基づいて前記第2分類閾値を決定してもよい。
これにより、評価用データセットに含まれる正解データを参照して、複数の単体クラスの分類確率値に対する分類確率値の閾値、つまり第2分類閾値の値をずらして、目標精度を満たす第2分類閾値を選択することにより決定する。したがって、本開示の一態様に係る情報処理方法によれば、所望の分類精度が得られる閾値を決定することができる。
また、本開示の一態様に係るプログラムは、データを複数のクラスの少なくとも1つに分類するための第1分類閾値を取得し、訓練済みの分類モデルの出力と前記第1分類閾値とに基づいて前記データを前記複数のクラスの少なくとも1つに分類した分類結果を出力し、前記第1分類閾値は、第2分類閾値の、第1変換に対する逆変換である第2変換により得られ、前記第1変換は、前記訓練済みの分類モデルの出力から複数の単体クラスの分類確率値への変換であり、前記第2分類閾値は、前記複数の単体クラスの分類確率値に基づいて設定される、情報処理方法をコンピュータに実行させる。
上記プログラムによれば、分類モデルの出力から複数の単体クラスの分類確率値に変換する第1変換において、逆変換可能な関数が使用される。そのため、第2分類閾値に対して、第1変換に対する逆変換である第2変換を実行することにより得られる第1分類閾値を、物体のクラス分類の処理に使用すると、例えば画像を入力とする分類モデルの出力を複数の単体クラスの分類確率値に変換する必要がなくなる。したがって、本開示の一態様に係るプログラムによれば、物体のクラス分類のための演算量を低減することができる。
以下では、実施の形態について、図面を参照しながら具体的に説明する。
なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する趣旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
また、各図は、模式図であり、必ずしも厳密に図示されたものではない。したがって、例えば、各図において縮尺などは必ずしも一致しない。また、各図において、実質的に同一の構成については同一の符号を付しており、重複する説明は省略又は簡略化する。
また、本明細書において、水平又は垂直などの要素間の関係性を示す用語、並びに、数値範囲は、厳密な意味のみを表す表現ではなく、実質的に同等な範囲、例えば数%程度の差異を含むことを意味する表現である。
(実施の形態1)
[情報処理システムの概要]
まず、実施の形態1に係る情報処理装置を備える情報処理システムの概要について、図面を参照しながら説明する。図1は、実施の形態1における情報処理システム300aの構成の一例を示すブロック図である。
情報処理システム300aは、センサが取得したデータを複数のクラスの少なくとも1つに分類し、分類結果を出力するシステムである。情報処理システム300aは、データを複数のクラスの少なくとも1つに分類するための第1分類閾値を算出する閾値算出装置200aと、訓練済みの分類モデルの出力と第1分類閾値とに基づいて、データを複数のクラスの少なくとも1つに分類した分類結果を出力する情報処理装置100aと、を備える。
センサは、例えば、マイクなどの音センサ、イメージセンサ、距離センサ、ジャイロセンサ、又は、圧力センサなどである。複数のセンサを用いて取得されたデータを、例えば、SfM(Structure from Motion)などの3次元再構成技術を用いて取得してもよい。センサが取得したデータは、例えば、音声、画像、動画像、三次元点群(three-Dimensional point cloud)データ、又は、ベクトルデータである。
情報処理システム300aでは、データの種類、及び、データの用途などに応じて、データを分類する複数のクラスが設定されてもよい。例えば、データが音声である場合、特定の人物の声、特定の機械の動作音、又は、特定の動物の鳴き声などのクラスが設定されてもよい。また、データが画像である場合、例えば監視カメラシステムなどにおいては、特定の人物などのクラスが設定されてもよく、車載カメラシステムなどにおいては、歩行者、自動車、バイク、自転車、及び、背景などのクラスが設定されてもよい。また、データが三次元点群データである場合、例えば、構造物又は地形などの三次元形状から、構造物又は地形の凹凸、亀裂、又は、特定の構造などのクラスが設定されてもよい。また、データがベクトルデータである場合、例えば、橋桁又は防音壁などの構造物の複数の部位における動きベクトルなどのクラスが設定されてもよい。
以下、情報処理システム300aの各構成について説明する。
[閾値算出装置]
閾値算出装置200aは、データを複数のクラスの少なくとも1つに分類するための第1分類閾値を算出する装置である。
図1に示されるように、閾値算出装置200aは、記憶部201と、第1演算部202と、分類確率演算部203と、分類閾値決定部204と、閾値変換部205と、第1出力部206と、を備える。
記憶部201は、第2分類閾値の評価用データセットを格納している。評価用データセットは、第1演算部202に入力する入力データと、入力データに対応する正解データとのセットを含む。正解データは、入力データの複数のクラスそれぞれに対する分類確率値である。以下では、複数のクラスそれぞれに対する分類確率値を、複数の単体クラスの分類確率値ともいう。なお、単体クラスは、複数のクラスを構成する各クラスを指す。複数の単体クラスの分類確率値は、分類確率演算部203において、第1演算部202の出力を第1変換することにより得られる正規化された確率値である。第2分類閾値は、複数の単体クラスの分類確率値に基づいて設定される。
第1演算部202は、データの特徴量を抽出する特徴量抽出器であり、例えば、機械学習モデルである。例えば、第1演算部202は、訓練済みの分類モデルである。当該分類モデルは、多層ニューラルネットワーク(DNN)である。第1演算部202は、評価用データセットを取得する。例えば、第1演算部202は、記憶部201から評価用データセットを読み出す。評価用データセットの入力データは、第1演算部202に入力される。第1演算部202は、当該入力データの複数のクラスに対応する複数のスカラを出力する。各スカラは、入力データの各クラスに対応する特徴量である。第1演算部202の出力は、正規化されていない値である。
なお、第1演算部202は、DNNに限られない。例えば、第1演算部202は、エッジ抽出法、主成分分析法、ブロックマッチング法、サンプリングモアレ法などの手法を用いる、DNN以外の他の特徴量抽出器であってもよい。
なお、第1演算部202は、通信を介して、他の装置から評価用データセットを取得してもよい。例えば、インターネットを介して、サーバ又はストレージから評価用データセットが取得されてもよい。
分類確率演算部203は、第1演算部202の出力から複数の単体クラスの分類確率値への変換である第1変換を実行する。より具体的には、分類確率演算部203は、第1変換において、可逆的な変換を用いて、第1演算部202の出力から複数の単体クラスの分類確率値を算出する。例えば、分類確率演算部203は、入力データの複数のクラスに対応する複数のスカラ(特徴量)を逆変換可能な確率関数を用いて正規化することにより、入力データの複数のクラスに対応する分類確率値を導出する。このように、可逆的な変換により正規化を行うことにより、評価用データセットに基づいて適切な閾値(後述する第2分類閾値)を決定した後に、適切な閾値を逆変換して正規化されていない閾値を導出することができる。
分類確率演算部203は、例えば、複数の単体クラスの確率演算部から構成されている。複数のクラスに対応する複数スカラは、それぞれ、複数のクラスの各クラスに対応する単体クラスの確率演算部に入力される。複数の単体クラスの確率演算部は、それぞれ、逆変換可能な関数である。これらの関数は、それぞれ異なっていてもよく、同じであってもよい。逆変換可能な関数は、微分可能な関数であってもよく、例えば、シグモイド関数、又は双曲線正接関数(Tanh:Tangent Hyperbolic Function)などである。なお、第1変換は、逆変換可能な確率関数による演算であってもよく、逆変換可能な確率関数による演算に対応したデータベースを用いた変換であってもよい。データベースは、例えば、Lookupテーブルのように、入力と出力(変換後の値)とが対応付けられたテーブルあってもよい。
分類閾値決定部204は、分類確率演算部203で算出された複数の単体クラスの分類確率値に基づいて、第2分類閾値を決定する。より具体的には、分類閾値決定部204は、複数の単体クラスの分類確率値を取得し、取得した複数の単体クラスの分類確率値それぞれに対して第2分類閾値を用いた分類結果に基づいて第2分類閾値を決定する。例えば、分類閾値決定部204は、記憶部201から評価用データセットを読み出し、評価用データセットの正解データと、分類確率演算部203で算出された複数の単体クラスの分類確率値とに基づいて、第2分類閾値を決定する。つまり、分類閾値決定部204では、評価用データセットに基づいて、最適な第2分類閾値を決定する。例えば、分類閾値決定部204は、複数の単体クラスの分類確率値それぞれについて、評価用データセットに対するFP(False Positive)/FN(False Negative)の割合に応じて第2分類閾値を決定する。
なお、第2分類閾値は、予め決められた値を設定してもよく、ユーザが設定した目標精度に応じて決定されてもよい。第2分類閾値が目標精度に応じて決定される場合、分類閾値決定部204は、複数の単体クラスの分類確率値に対して第2分類閾値を適用することで得られる結果が目標閾値を満たすように第2分類閾値を決定してもよい。なお、目標精度は、クラス毎に設定されてもよく、全クラス共通で設定されてもよい。当該方法の詳細については、閾値算出装置の動作の項にて後述する。
なお、第2分類閾値は、複数の単体クラスそれぞれにおいて異なる値であってもよく、複数の単体クラスの全てにおいて同じ値であってもよい。
閾値変換部205は、第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値の変換であって、第1変換に対する逆変換である第2変換を実行する。言い換えると、閾値変換部205は、第2分類閾値を逆変換することにより、正規化されていない閾値(つまり、第1分類閾値)に変換する。閾値変換部205は、分類確率演算部203を構成する関数(例えば、逆変換可能な確率関数)の逆関数であってもよく、逆変換可能な確率関数の逆関数による演算に対応したデータベースであってもよい。データベースは、例えば、Lookupテーブルのように、入力と出力(逆変換後の値)とが対応付けられたテーブルあってもよい。
第1分類閾値は、情報処理装置100aにおいて、データを複数のクラスの少なくとも1つに分類するために使用される。情報処理装置100aは、正規化されていない閾値(第1分類閾値)を用いてデータのクラス分類処理を実行することができる。そのため、情報処理装置100aでは、データから抽出した特徴量に基づいて分類処理を実行できるため、正規化の処理が不要となり、演算量を低減することができる。
なお、第1分類閾値は、複数のクラスのそれぞれにおいて異なる値が設定されてもよく、複数のクラスの全てのクラスで共通の値が設定されてもよい。
第1出力部206は、第1分類閾値を出力する。より具体的には、第1出力部206は、通信を介して、第1分類閾値を情報処理装置100aの第1取得部103に出力する。通信は、例えばWi-Fi(登録商標)又はBluetooth(登録商標)などの無線通信であってもよく、Ethernet(登録商標)などの有線通信であってもよい。
なお、閾値算出装置200aは、機械学習モデルを訓練するための訓練部(不図示)を備えてもよい。訓練部は、訓練用データセットを保持する記憶部(不図示)を備えてもよい。訓練用データセットは、予め格納された入力データと正解データとのセットを含む。訓練部は、インターネットなどの通信ネットワークを介して接続されるサーバ上に配置されたデータベースから新規の訓練用データを取得して、訓練用データセットを更新してもよい。また、訓練部は、第1演算部202と同じ分類モデルを保持する保持部(不図示)を備えてもよく、保持部は、さらに、分類確率演算部203と同じN個の単クラスの分類確率演算部を保持してもよい。訓練部は、訓練用データセットを用いて、第1演算部202と同じ分類モデルを訓練する。さらに、訓練部は、分類確率演算部203が備えるN個の単クラスの分類確率演算部を有するネットワークを訓練してもよい。訓練部は、当該分類モデル及び当該ネットワークの訓練が終了すると、訓練済みの分類モデルを第1演算部202に出力し、第1演算部202を訓練済みの分類モデルに更新してもよい。同様に、訓練部は、訓練済みのN個の単クラスの分類確率演算部を有するネットワークを分類確率演算部203に出力し、分類確率演算部203を訓練済みのネットワークに更新してもよい。
[情報処理装置]
続いて、情報処理装置100aについて説明する。情報処理装置100aは、例えばセンサが取得したデータを複数のクラスの少なくとも1つに分類して、分類結果を出力する装置である。以下、データが画像である例について説明する。なお、データ及びデータを取得するセンサについては、情報処理システム300aの概要にて説明したため、ここでの説明を省略する。
図1に示されるように、情報処理装置100aは、第1取得部103と、第2取得部101と、第2演算部102と、閾値処理部104と、第2出力部105と、を備える。
第1取得部103は、通信を介して、閾値算出装置200aの第1出力部206から出力された第1分類閾値を取得し、取得した第1分類閾値を閾値処理部104に出力する。通信に関しては、上述したため、ここでの説明を省略する。なお、第1分類閾値は、情報処理装置100aが備える記憶部に予め記憶されていてもよい。
第2取得部101は、センサから、通信を介して、データを取得する。ここで、センサはイメージセンサであり、データは画像である。第2取得部101は、取得したデータを第2演算部102に出力する。なお、通信は、無線通信であってもよく、有線通信であってもよい。なお、センサは1つに限られず、例えば、2以上のセンサを同期してデータを取得してもよい。また、第2取得部101は、脱着可能なメモリを介してデータを取得してもよい。脱着可能なメモリは、例えば、USB(Universal Serial Bus)メモリである。
第2演算部102は、データの特徴量を抽出する特徴量抽出器であり、例えば、機械学習モデルである。例えば、第2演算部102は、訓練済みの分類モデルである。当該分類モデルは、多層ニューラルネットワーク(DNN)である。第1取得部103が取得したデータは、第2演算部102に入力される。第2演算部102は、当該データの複数のクラスに対応する複数のスカラを出力する。各スカラは、データの各クラスに対応する特徴量である。第2演算部102の出力は、正規化されていない値である。
なお、第2演算部102は、DNNに限られない。例えば、第2演算部102は、特徴点抽出法(例えば、エッジ抽出)、主成分分析法、ブロックマッチング法、サンプリングモアレ法などの手法を用いる、DNN以外の他の特徴量抽出器であってもよい。
閾値処理部104は、第1取得部103から出力された第1分類閾値を取得し、第2演算部102の出力と、第1分類閾値とに基づいて、データを複数のクラスの少なくとも1つに分類する。より具体的には、閾値処理部104は、第2演算部102から出力された複数のクラスそれぞれに対する確率値が第1分類閾値以上であるか否かを判定することにより、データを複数のクラスの少なくとも1つに分類する。第1分類閾値は、複数のクラスそれぞれにおいて異なる値が設定されてもよく、複数のクラスの全てに共通な値が設定されてもよい。なお、閾値処理部104のより具体的な動作については、後述する。
第2出力部105は、データの分類結果を出力する。第2出力部105は、データの分類結果を提示部(不図示)に出力してもよく、情報処理装置100a以外の他の装置に出力してもよい。例えば、第2出力部105は、入力部(不図示)に入力されたユーザの操作に基づいて、分類結果に基づく情報を提示部に提示させる。入力部は、例えば、キーボード、マウス、タッチパネル、ボタン、又は、マイクなどである。提示部は、例えば、ディスプレイ又はスピーカーなどである。なお、情報処理装置100aは、入力部及び提示部を備えていてもよく、備えていなくてもよい。入力部及び提示部は、例えば、情報処理装置100a以外の他の装置が備えていてもよい。情報処理装置100a以外の他の装置は、例えば、スマートフォン、タブレット、又は、コンピュータなどの情報端末であってもよい。また、情報処理装置100aは、コンピュータを例に挙げたが、インターネットなどの通信ネットワークを介して接続されるサーバ上に設けられてもよい。
なお、情報処理装置100aは、閾値算出装置200aと同様に、機械学習モデルを訓練するための訓練部(不図示)を備えてもよい。訓練部の詳細については、閾値算出装置200aで説明した訓練部の説明において、分類確率演算部203のネットワークの訓練を含まず、かつ、第1演算部202を第2演算部102に読み替えてもよい。
なお、情報処理システム300aは、閾値算出装置200aと、情報処理装置100aと共通した訓練部(不図示)を備え、当該訓練部が第1演算部202の分類モデル、分類確率演算部203のネットワーク、第2演算部102の分類モデルを訓練してもよい。
[閾値算出装置の動作]
続いて、閾値算出装置200aの動作について図2を参照しながら説明する。図2は、実施の形態1における閾値算出装置200aの動作の一例を示すフローチャートである。
第1演算部202は、記憶部201から評価用データセットの入力データを読み出し、当該入力データの複数のクラスに対応する複数のスカラを出力する(ステップS1001)。入力データの複数のクラスに対応する複数のスカラは、入力データの複数のクラスそれぞれに対する特徴量である。例えば、入力データが画像であり、当該画像に自動車及びバイクが映っているとする。複数のクラスは、例えば、歩行者、自動車、バイク、自転車、及び、背景であるとする。このとき、第1演算部202は、例えば、入力データの複数のクラスに対応する複数のスカラを有するベクトル(歩行者、自動車、バイク、自転車、背景)=(0.1、90、60、0.01、0.001)を出力する。
次いで、分類確率演算部203は、第1演算部202の出力から複数の単体クラスの分類確率値への変換である第1変換を実行する(ステップS1002)。上述したとおり、分類確率演算部203は、複数の単体クラスの分類確率演算部を備える。各単体クラスの分類確率演算部は、逆変換可能な確率関数である。各単体クラスの分類確率演算部は、それぞれ異なる関数であってもよく、同じ関数であってもよい。また、各単体クラスの分類確率演算部は、それぞれ逆変換可能な確率関数による演算に対応したデータベースであってもよい。各単体クラスの閾値演算部は、複数のクラスの各クラスに対するスカラを、可逆的な変換により、0~1の範囲の値に変換する(つまり、正規化する)。例えば、第1演算部202の出力である(歩行者、自動車、バイク、自転車、背景)=(0.1、90、60、0.01、0.001)の各スカラが、各クラスに対応する単体クラスの分類確率演算部に入力されると、各単体クラスの分類確率演算部において、各スカラは、0~1の範囲の値に変換される。分類確率演算部203は、複数の単体クラスの分類確率値である(歩行者、自動車、バイク、自転車、背景)=(0.3、1.0、1.0、0.1、0)を出力する。ここで、正規化とは、複数のスカラ値を足して1になるように調整することではなく、各スカラ値の大きさに応じて各スカラ値を0~1の範囲の値に変換することをいう。このとき、変換係数は、各クラスの分類精度に応じて調整されてもよい。
次いで、分類閾値決定部204は、ステップS1002で導出された複数の単体クラスの分類確率値に基づいて第2分類閾値を設定する(ステップS1003)。より具体的には、分類閾値決定部204は、複数の単体クラスの分類確率値を取得し、取得した複数の単体クラスの分類確率値それぞれに対して第2分類閾値を用いた分類結果に基づいて第2分類閾値を決定する。例えば、分類閾値決定部204は、記憶部201から評価用データセットを読み出し、評価用データセットの正解データと、複数の単体クラスの分類確率値とに基づいて、第2分類閾値を決定する。例えば、分類閾値決定部204は、複数の単体クラスの分類確率値のそれぞれについて、評価用データセットに対するFP(False Positive)/FN(False Negative)の割合に応じて第2分類閾値を決定してもよい。また、例えば、複数の単体クラスの出力(つまり、分類確率値)に対して第2分類閾値を適用することで得られる結果が目標精度を満たすように第2分類閾値を決定してもよい。より具体的には、目標精度を設けて、複数の単体クラスの分類確率値の閾値(第2分類閾値)をずらした場合の分類精度を算出して、算出した分類精度が目標精度に最も近い閾値を選択し、当該閾値を第2分類閾値として決定してもよい。また、例えば、算出した分類精度が目標精度に最も近い閾値でなく、算出した分類精度が目標精度を初めて超えた閾値を第2分類閾値として決定してもよい。目標精度は、例えば、クラス毎に設定されてもよく、全クラス共通で設定されてもよい。なお、第2分類閾値は、複数の単体クラスそれぞれにおいて異なる値であってもよく、複数の単体クラスの全てのクラスにおいて同じ値であってもよい。
次いで、閾値変換部205は、分類閾値決定部204で設定された第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、第1変換に対する逆変換である第2変換を実行する(ステップS1004)。これにより、正規化された閾値(ここでは、第2分類閾値)から正規化されていない閾値(ここでは、第1分類閾値)を得ることができる。第1分類閾値は、データを複数のクラスの少なくとも1つに分類するための閾値である。第1分類閾値は、クラス毎に異なる値が設定されてもよく、複数のクラス全体に共通の値が設定されてもよい。例えば、閾値変換部205が分類確率演算部203を構成する関数(例えば、逆変換可能な確率関数)の逆関数である場合、閾値変換部205は、ステップS1003で導出された第2分類閾値を入力し、第2分類閾値が逆変換された第1分類閾値を算出する。また、閾値変換部205が、分類確率演算部203を構成する関数の逆関数による演算に対応したデータベース(例えば、Lookupテーブルのように入力と出力とが対応付けられたテーブル)である場合、第2分類閾値が閾値変換部205に入力されると、入力に対応付けられた第1分類閾値が出力される。
次いで、第1出力部206は、ステップS1004で導出された第1分類閾値を情報処理装置100aに出力する(ステップS1005)。このとき、第1出力部206は、情報処理装置100aと通信可能に接続されてもよい。通信方式については、上述したため、ここでの説明を省略する。
[情報処理装置の動作]
続いて、情報処理装置100aの動作について図3を参照しながら説明する。図3は、実施の形態1に係る情報処理装置100aの動作の一例を示すフローチャートである。
第2取得部101は、例えばイメージセンサなどのセンサ(不図示)からデータを取得する(ステップS2001)。ここでは、データは画像である例について説明する。画像は、動画像であってもよく、静止画像(単に、画像ともよぶ)であってもよい。第2取得部101は、センサと通信可能に接続されてもよく、脱着可能なメモリ、例えば、USB(Universal Serial Bus)メモリを介して、センサから複数の画像を取得してもよい。通信方式については上述したため、ここでの説明を省略する。
第2演算部102は、ステップS2001で取得したデータの複数のクラスに対応する複数のスカラを出力する(ステップS2002)。データは、例えば、車載カメラで撮像された動画像であってもよく、画像あってもよい。動画像である場合は、動画像を構成する複数の画像それぞれについて、以下の動作を実行する。閾値算出装置200aの第1演算部202の動作と同様に、第2演算部102は、取得したデータから、複数のスカラ(特徴量)を出力する。以下、第2演算部102の出力は、(歩行者、自動車、バイク、自転車、背景)=(70、90、0.5、60、0.001)である場合について説明する。
第1取得部103は、閾値算出装置200aから出力された第1分類閾値を取得する(ステップS2003)。このとき、第1取得部103は、通信を介して閾値算出装置200aから第1分類閾値を取得する。第1分類閾値及び通信方式については、上述したためここでの説明を省略する。ここでは、第1分類閾値は、(歩行者、自動車、バイク、自転車、背景)=(60、60、60、60、60)であるとする。
閾値処理部104は、第2演算部102の出力と、第1取得部103が取得した第1分類閾値と、に基づいて、第2取得部101が取得したデータを複数のクラスの少なくとも1つに分類する(ステップS2004)。より具体的には、ステップS2004では、閾値処理部104は、データの複数のクラスに対応する複数のスカラが、それそれ、第1分類閾値以上であるか否かを判定することにより、データを複数のクラスの少なくとも1つに分類する。
例えば、第2演算部102の出力が(歩行者、自動車、バイク、自転車、背景)=(70、90、0.5、60、0.001)であり、各クラスの第1分類閾値が(歩行者、自動車、バイク、自転車、背景)=(60、60、60、60、60)である場合、3つのクラスに対するスカラ値が第1分類閾値以上である。このとき、閾値処理部104は、当該画像を歩行者、自動車、自転車の3つのクラスに分類してもよく、1つのクラスに分類してもよい。後者の場合、閾値処理部104は、当該画像の3つのクラスに対する確率値のうち、最も大きいスカラ値を示すクラスを選択して、当該画像を1つのクラスに分類してもよい。この場合、上記の3つのクラスに対するスカラ値のうち、自動車クラスに対する確率値が最大であるため、閾値処理部104は、当該画像を自動車クラスに分類する。なお、閾値処理部104は、3つのクラスに対するスカラ値のうち、第1分類閾値との差分が大きいスカラ値を示すクラスを選択して、当該画像を1つのクラスに分類してもよい。この場合、閾値処理部104は、当該画像を自動車クラスに分類してもよい。以上のように、データの分類方法については、データの種類及び分類目的などに応じて、適宜設定されてもよい。
第2出力部105は、ステップS2004で得られた分類結果を出力する(ステップS2005)。第2出力部105は、分類結果を提示部(不図示)に出力してもよく、情報処理装置100a以外の他の装置に出力してもよい。例えば、第2出力部105は、入力部(不図示)に入力されたユーザの操作に基づいて、分類結果に基づく情報を提示部に提示させる。入力部、提示部、及び、他の装置などについては、上述したため、ここでの説明を省略する。
分類結果に基づく情報は、入力部に入力された設定に基づき、様々な形式の分類結果が提示されてもよい。例えば、データが車載カメラで撮像された画像である場合、分類結果に基づく情報は、情報処理装置100aで検出された物体クラスの種類及び検出回数、物体クラス毎の識別精度、各物体クラスに関する天候又は時間帯による識別精度の変化、識別精度が低い画像の傾向、又は、危険回避のためのアドバイスなどであってもよい。情報処理装置100aは、例えば、インターネットを介して接続されるサーバ上に配置されたデータベースに分析結果を送信して、分析結果に基づく情報を取得してもよい。
(変形例)
続いて、実施の形態1の変形例に係る情報処理装置について説明する。以下では、実施の形態1との相違点を中心に説明し、共通点の説明を省略又は簡略化する。
[情報処理装置の概要]
図4は、実施の形態1の変形例に係る情報処理装置100bの構成の一例を示すブロック図である。情報処理装置100bは、閾値算出部20aと、記憶部201aと、情報処理部10と、を備える。
実施の形態1では、情報処理装置100aは、閾値算出装置200aから第1分類閾値を取得し、取得した第1分類閾値を用いてデータを複数のクラスの少なくとも1つに分類する例について説明した。情報処理装置100bと、実施の形態1に係る情報処理装置100aとの間の主な相違点は、閾値算出部20aを備える点である。なお、図1及び図4において、実質的に同一の構成には同一の符号を付している。
実施の形態1では、図1に示されるように、閾値算出装置200aは、閾値変換部205で導出された第1分類閾値を第1出力部206に出力し、第1出力部206を介して第1分類閾値を情報処理装置100aに出力する。本変形例では、図4に示されるように、閾値算出部20aは、閾値変換部205で導出された第1分類閾値を記憶部201aに格納する。そして、情報処理部10は、記憶部201aに格納された第1分類閾値を読み出す。
図1及び図4に示されるように、図4の取得部101aは、図1の第2取得部101に対応し、図4の出力部105aは、図1の第2出力部105に対応する。つまり、取得部101aは、第2取得部101と同様に、イメージセンサなどのセンサからデータを取得する。また、出力部105aは、第2出力部105と同様に、取得部101aが取得したデータを複数のクラスの少なくとも1つに分類した分類結果を出力する。
[閾値算出部の動作]
図5は、実施の形態1の変形例における閾値算出部20aの動作の一例を示すフローチャートである。図5のステップS3001~ステップS3004は、それぞれ、図2のステップ1001~ステップS1004に対応するため、ここでの説明を簡略化する。なお、変形例に係る閾値算出部20aの動作は、実施の形態1に係る閾値算出装置200aの動作と、第1分類閾値を記憶部201aに格納する点で異なる。
第1演算部202は、記憶部201から評価用データセットの入力データを読み出し、当該入力データの複数のクラスに対応する複数のスカラを出力する(ステップS3001)。
次いで、分類確率演算部203は、第1演算部202の出力から複数の単体クラスの分類確率値への変換である第1変換を実行する(ステップS3002)。
次いで、分類閾値決定部204は、ステップS3002で導出された複数の単体クラスの分類確率値に基づいて第2分類閾値を設定する(ステップS3003)。
次いで、閾値変換部205は、分類閾値決定部204で設定された第2分類閾値に対して、第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって第1変換に対する逆変換である第2変換を実行する(ステップS3004)。
次いで、閾値変換部205は、第1分類閾値を記憶部201aに格納する(ステップS3005)。
[情報処理部の動作]
図6は、実施の形態1の変形例における情報処理部10の動作の一例を示すフローチャートである。図6のステップS4001とステップS4002とは、図3のステップS2001とステップS2002とに対応するため、ここでの説明を簡略化する。
取得部101aは、例えばイメージセンサなどのセンサからデータを取得する(ステップS4001)。次いで、第2演算部102は、ステップS4001で取得したデータの複数のクラスに対応する複数のスカラ(確率値)を出力する(ステップS4002)。
続いて、データの複数のクラスそれぞれについて、クラス毎のループ処理を開始する。
閾値処理部104は、記憶部201aに格納されている第1分類閾値を読み出す(ステップS4003)。ここでは、閾値処理部104は、複数のクラスそれぞれの第1分類閾値を、各クラスの分類処理毎に読み出す例を説明するが、閾値処理部104は、複数のクラスの全ての第1分類閾値を一時に読み出してもよい。なお、第1分類閾値は、複数のクラスのそれぞれに対して異なる値であってもよく、同じ値であってもよい。
閾値処理部104は、第2演算部102の出力と、記憶部201aから読み出した第1分類閾値と、に基づいて、第2取得部101が取得したデータを複数のクラスの少なくとも1つに分類する。まず、閾値処理部104は、記憶部201aから複数のクラスのうちの1つのクラス(例えば、歩行者のクラス)の第1分類閾値を読み出し(ステップS4003)、当該クラスのスカラ値が記憶部201aから読み出した第1分類閾値以上であるか否かを判定する(ステップS4004)。当該クラスのスカラ値が第1分類閾値以上である場合(ステップS4004でYes)、閾値処理部104は、記憶部201aに当該クラスのスカラ値と当該クラスを示す番号とを紐づけて保存する(ステップS4005)。
一方、当該クラスのスカラ値が第1分類閾値よりも小さい場合(ステップS4004でNo)、閾値処理部104は、記憶部201aから複数のクラスのうちの他の1つのクラス(例えば、自動車のクラス)の第1分類閾値を読み出す(ステップS4003)。閾値処理部104は、当該クラスのスカラ値が記憶部201aから読み出した第1分類閾値以上であるか否かを判定する(ステップS4004)。当該クラスのスカラ値が第1分類閾値以上である場合(ステップS4004でYes)、閾値処理部104は、記憶部201aに当該クラスのスカラ値と当該クラスを示す番号とを紐づけて格納する(ステップS4005)。
一方、当該クラスのスカラ値が第1分類閾値よりも小さい場合(ステップS4004でNo)、閾値処理部104は、記憶部201aから複数のクラスのうちの他の1つのクラス(例えば、バイクのクラス)を読み出して(ステップS4003)、ステップS4004の判定処理を実行する。このように、同様の処理を繰り返すことにより、データの複数のクラスに対応する複数のスカラについて、クラス毎の分類処理を実行する。クラス毎のループ処理が終了すると、閾値処理部104は、記憶部201aに格納されたクラスの数が1以上であるか否かを判定する(ステップS4006)。記憶部201aに格納されたクラスの数が1以上である場合(ステップS4006でYes)、閾値処理部104は、出力部105aに、スカラ値が最大のクラス番号を出力する(ステップS4007)。これにより、出力部105aは、当該クラス番号に基づき、データを複数のクラスの少なくとも1つに分類した分類結果(例えば、データは自動車である)を出力する(不図示)。
一方、記憶部201aに格納されたクラスの数がゼロである場合(ステップS4006でNo)、閾値処理部104は、出力部105aに、その他を示す番号を出力する(ステップS4008)。その他とは、該当するクラスが無いことを示す。このとき、出力部105aから出力される分類結果は、例えば、データはその他のクラスである、又は、データは背景クラスである、であってもよい。
(実施の形態2)
続いて、実施の形態2における情報処理システムについて説明する。以下では、実施の形態1との相違点を中心に説明し、共通点の説明を省略又は簡略化する。
[情報処理システムの概要]
図7は、実施の形態2における情報処理システム300bの構成の一例を示すブロック図である。情報処理システム300bは、閾値算出装置200bと、情報処理装置100aと、を備える。実施の形態2に係る閾値算出装置200bと、実施の形態1に係る閾値算出装置200aとの間の主な相違点は、ユーザが設定した第2分類閾値から第1分類閾値を導出する点である。
[閾値算出装置の構成]
続いて、閾値算出装置200bの構成について説明する。
図7に示されるように、閾値算出装置200bは、入力部207と、閾値変換部205と、第1出力部206と、を備える。ここでは、閾値算出装置200bは、入力部207を備える例について説明するが、これに限られない。例えば、入力部は、閾値算出装置200b以外の他の装置に備えられてもよい。他の装置は、例えば、タブレット端末、スマートフォン、又は、コンピュータなどである。
入力部207は、ユーザからの操作信号を閾値変換部205に入力する。入力部207は、例えば、タッチパネル、キーボード、マウス、ボタン、又は、スピーカーなどである。操作信号は、例えば、複数のクラスそれぞれの第2分類閾値を示す信号である。ユーザは、入力部207を介して第2分類閾値を閾値変換部205に入力する。なお、第2分類閾値は、予め設定された値であってもよい。
閾値変換部205は、取得した第2分類閾値に対して、第1変換に対する逆変換である第2変換を実行し、第1分類閾値を導出する。第1出力部206は、第1分類閾値を情報処理装置100aに出力する。
なお、情報処理装置100aについては、実施の形態1に係る情報処理装置100aと同様であるため、ここでの説明を省略する。
[閾値算出装置の動作]
続いて、閾値算出装置200bの動作について説明する。図8は、実施の形態2における閾値算出装置200bの動作の一例を示すフローチャートである。
図示していないが、ユーザは、入力部207を介して閾値変換部205に複数のクラスそれぞれの第2分類閾値を入力する。
図8に示されるように、閾値変換部205は、入力部207を介して入力された複数のクラスの第2分類閾値を取得する(ステップS5001)。次いで、閾値変換部205は、取得した第2分類閾値に対して、第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、第1変換に対する逆変換である第2変換を実行する(ステップS5002)。
第1出力部206は、第1分類閾値を情報処理装置100aに出力する(ステップS5003)。
なお、情報処理装置100aの動作については、実施の形態1で説明した例と同様であるため、ここでの説明を省略する。
(変形例)
続いて、実施の形態2の変形例に係る情報処理装置について説明する。以下では、実施の形態2との相違点を中心に説明し、共通点の説明を省略又は簡略化する。
[情報処理装置の概要]
図9は、実施の形態2の変形例に係る情報処理装置100cの構成の一例を示すブロック図である。情報処理装置100bは、閾値算出部20bと、記憶部201bと、情報処理部10と、を備える。
実施の形態2では、情報処理装置100aは、閾値算出装置200bから第1分類閾値を取得し、取得した第1分類閾値を用いてデータを複数のクラスの少なくとも1つに分類する例について説明した。本変形例に係る情報処理装置100cと、実施の形態2に係る情報処理装置100aとの間の主な相違点は、情報処理装置100cが閾値算出部20bを備える点である。また、本変形例に係る閾値算出部20bと、実施の形態2に係る閾値算出装置200bとの間の主な相違点は、閾値算出部20bが分類閾値決定部204を備える点である。なお、図7及び図9において、実質的に同一の構成には同一の符号を付している。
実施の形態2では、図7に示されるように、閾値算出装置200bは、ユーザが入力部207を介して閾値変換部205に入力した第2分類閾値を、閾値変換部205で逆変換し、第1分類閾値を導出する。そして、閾値算出装置200bは、導出した第1分類閾値を、第1出力部206から情報処理装置100に出力する。本変形例では、図9に示されるように、閾値算出部20bは、閾値変換部205で導出された第1分類閾値を記憶部201bに格納する。そして、情報処理部10は、記憶部201bに格納された第1分類閾値を読み出して、データを複数のクラスの少なくとも1つに分類する。
図7及び図9に示されるように、図9の取得部101aは、図7の第2取得部101に対応し、図9の出力部105aは、図7の第2出力部105に対応する。つまり、取得部101aは、第2取得部101と同様に、イメージセンサなどのセンサからデータを取得する。また、出力部105aは、第2出力部105と同様に、取得部101aが取得したデータを複数のクラスの少なくとも1つに分類した分類結果を出力する。
また、図1及び図9に示されるように、図9の分類閾値決定部204は、図1の分類閾値決定部204に対応する。分類閾値決定部204は、例えば、記憶部201又は記憶部201bに格納された評価用データセットを参照して、適切な第2分類閾値を決定する。
実施の形態2に係る閾値算出装置200bでは、ユーザが入力した第2分類閾値から第1分類閾値を導出したが、本変形例に係る閾値算出部20bでは、ユーザが入力した第2分類閾値と、記憶部201bに格納された評価用データとに基づいて、第2分類閾値を決定する。決定処理の詳細については、動作の項にて説明する。
なお、情報処理部10については、実施の形態1の変形例に係る情報処理部10と同様であるため、ここでの説明を省略する。
[閾値算出部の動作]
図10は、実施の形態2の変形例における閾値算出部20bの動作の一例を示すフローチャートである。
図示していないが、ユーザは、入力部207を介して分類閾値決定部204に複数のクラスそれぞれの第2分類閾値を入力する。これにより、図10に示されるように、分類閾値決定部204は、入力された第2分類閾値を取得する(ステップS6001)。
次いで、分類閾値決定部204は、記憶部201bから評価用データを読み出す(ステップS6002)。分類閾値決定部204は、評価用データセットに基づいて、ステップS6001で取得した第2分類閾値が適切であるか否か、より具体的には、評価用データセットの複数の単体クラスの分類確率値に対して第2分類閾値を適用することで得られる結果が目標精度を満たすか否かを判定する(ステップS6003)。第2分類閾値が適切であると判定された場合(ステップS6003でYes)、分類閾値決定部204は、当該第2分類閾値を閾値変換部205に出力する。閾値変換部205は、取得した第2分類閾値に対して、第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、第1変換に対する逆変換である第2変換を実行する(ステップS6004)。閾値変換部205は、導出した第1分類閾値を記憶部201bに格納する(ステップS6005)。
一方、第2分類閾値が適切でないと判定された場合(ステップS6003でNo)、分類閾値決定部204は、提示部(不図示)に、第2分類閾値が適切でない旨を提示させる(ステップS6006)。このとき、分類閾値決定部204は、評価用データセットの複数の単体クラスの分類確率値に対して第2分類閾値を適用することで得られる結果が目標精度を満たす第2分類閾値を提示部に提示させてもよい。
なお、情報処理部10の動作については、実施の形態1の変形例における情報処理部10と同様であるため、ここでの説明を省略する。
(他の実施の形態)
以上、1つ又は複数の態様に係る情報処理装置及び情報処理方法について、実施の形態に基づいて説明したが、本開示は、これらの実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、及び、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の範囲に含まれる。
例えば、上記の実施の形態において説明した処理は、単一の装置(システム)を用いて集中処理することによって実現してもよく、又は、複数の装置を用いて分散処理することによって実現してもよい。また、上記プログラムを実行するプロセッサは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、又は、分散処理を行ってもよい。
また、上記の各実施の形態は、請求の範囲又はその均等の範囲において種々の変更、書き換え、付加、及び、省略などを行うことができる。
本開示は、物体のクラス分類のための演算量を低減することができる情報処理装置、情報処理方法及びプログラムなどとして有用である。
10 情報処理部
20a、20b 閾値算出部
100a、100b、100c 情報処理装置
101 第2取得部
101a 取得部
102 第2演算部
103 第1取得部
104 閾値処理部
105 第2出力部
105a 出力部
200a、200b 閾値算出装置
201、201a、201b 記憶部
202 第1演算部
203 分類確率演算部
204 分類閾値決定部
205 閾値変換部
206 第1出力部
207 入力部
300a、300b 情報処理システム

Claims (4)

  1. コンピュータにより実行される情報処理方法であって、
    訓練済みの分類モデルの出力から複数の単体クラスの分類確率値への第1変換を実行し、
    前記複数の単体クラスの前記分類確率値に基づいて第2分類閾値を設定し、
    前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、
    前記第1分類閾値を出力し、
    前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラであ
    前記第1変換は、逆変換可能な確率関数による演算に対応したデータベースを用いた変換であり、
    前記第2変換は、前記確率関数の逆関数による演算に対応したデータベースを用いた変換である、
    情報処理方法。
  2. コンピュータにより実行される情報処理方法であって、
    データセットを取得し、
    前記データセットを訓練済みの分類モデルに入力し
    前記訓練済みの分類モデルの出力から前記データセットに含まれるデータそれぞれについて複数の単体クラスの分類確率値への第1変換を実行し、
    記複数の単体クラスの分類確率値それぞれに対して第2分類閾値を用いた分類結果に基づいて前記第2分類閾値を設定し
    前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、
    前記第1分類閾値を出力し、
    前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラである、
    報処理方法。
  3. 訓練済みの分類モデルの出力から複数の単体クラスの分類確率値への第1変換を実行し、
    前記複数の単体クラスの前記分類確率値に基づいて第2分類閾値を設定し、
    前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、
    前記第1分類閾値を出力し、
    前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラであ
    前記第1変換は、逆変換可能な確率関数による演算に対応したデータベースを用いた変換であり、
    前記第2変換は、前記確率関数の逆関数による演算に対応したデータベースを用いた変換である、
    情報処理方法をコンピュータに実行させるためのプログラム。
  4. データセットを取得し、
    前記データセットを訓練済みの分類モデルに入力し、
    前記訓練済みの分類モデルの出力から前記データセットに含まれるデータそれぞれについて複数の単体クラスの分類確率値への第1変換を実行し、
    前記複数の単体クラスの分類確率値それぞれに対して第2分類閾値を用いた分類結果に基づいて前記第2分類閾値を設定し、
    前記第2分類閾値からデータを複数のクラスの少なくとも1つに分類するための第1分類閾値への変換であって、前記第1変換に対する逆変換である第2変換を実行し、
    前記第1分類閾値を出力し、
    前記訓練済みの分類モデルの出力は、前記複数のクラスに対応する複数のスカラであり、前記分類確率値に変換されていない複数のスカラである、
    情報処理方法をコンピュータに実行させるためのプログラム。
JP2020563863A 2019-01-02 2019-12-10 情報処理方法及びプログラム Active JP7483631B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962787576P 2019-01-02 2019-01-02
US62/787,576 2019-01-02
JP2019107878 2019-06-10
JP2019107878 2019-06-10
PCT/JP2019/048321 WO2020141587A1 (ja) 2019-01-02 2019-12-10 情報処理装置、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2020141587A1 JPWO2020141587A1 (ja) 2021-11-11
JP7483631B2 true JP7483631B2 (ja) 2024-05-15

Family

ID=71406879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020563863A Active JP7483631B2 (ja) 2019-01-02 2019-12-10 情報処理方法及びプログラム

Country Status (5)

Country Link
US (1) US20210166139A1 (ja)
EP (1) EP3907670A4 (ja)
JP (1) JP7483631B2 (ja)
CN (1) CN112513891A (ja)
WO (1) WO2020141587A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7156195B2 (ja) * 2019-07-17 2022-10-19 トヨタ自動車株式会社 物体認識装置
EP3882823A1 (en) * 2020-03-17 2021-09-22 Samsung Electronics Co., Ltd. Method and apparatus with softmax approximation
US20230195851A1 (en) * 2020-05-28 2023-06-22 Nec Corporation Data classification system, data classification method, and recording medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004212598A (ja) 2002-12-27 2004-07-29 Sharp Corp 変換装置、補正回路、駆動装置、表示装置、検査装置および表示方法
JP2015521483A (ja) 2012-06-22 2015-07-30 エイチティージー モレキュラー ダイアグノスティクス, インコーポレイテッド メラニン細胞性病変における分子悪性度
JP2018077765A (ja) 2016-11-11 2018-05-17 ヤフー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
WO2018105194A1 (en) 2016-12-07 2018-06-14 Mitsubishi Electric Corporation Method and system for generating multi-relevant label

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8687893B2 (en) * 2011-03-31 2014-04-01 Microsoft Corporation Classification algorithm optimization
JP5994515B2 (ja) * 2012-09-20 2016-09-21 富士通株式会社 最適値計算装置、最適値計算システム、最適値計算方法及びプログラム
CN107045506A (zh) * 2016-02-05 2017-08-15 阿里巴巴集团控股有限公司 评估指标获取方法及装置
WO2017149722A1 (ja) 2016-03-03 2017-09-08 三菱電機株式会社 演算装置および演算方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004212598A (ja) 2002-12-27 2004-07-29 Sharp Corp 変換装置、補正回路、駆動装置、表示装置、検査装置および表示方法
JP2015521483A (ja) 2012-06-22 2015-07-30 エイチティージー モレキュラー ダイアグノスティクス, インコーポレイテッド メラニン細胞性病変における分子悪性度
JP2018077765A (ja) 2016-11-11 2018-05-17 ヤフー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
WO2018105194A1 (en) 2016-12-07 2018-06-14 Mitsubishi Electric Corporation Method and system for generating multi-relevant label

Also Published As

Publication number Publication date
EP3907670A4 (en) 2022-03-02
US20210166139A1 (en) 2021-06-03
CN112513891A (zh) 2021-03-16
EP3907670A1 (en) 2021-11-10
WO2020141587A1 (ja) 2020-07-09
JPWO2020141587A1 (ja) 2021-11-11

Similar Documents

Publication Publication Date Title
EP3520045B1 (en) Image-based vehicle loss assessment method, apparatus, and system, and electronic device
JP7483631B2 (ja) 情報処理方法及びプログラム
US10789786B2 (en) Picture-based vehicle loss assessment
US10817956B2 (en) Image-based vehicle damage determining method and apparatus, and electronic device
CN110647893B (zh) 目标对象识别方法、装置、存储介质和设备
EP3329424B1 (en) Object detection with neural network
EP2905722B1 (en) Method and apparatus for detecting salient region of image
US20180218256A1 (en) Deep convolution neural network behavior generator
JP2016110635A (ja) 画像署名をフィッシャーベクトルとマッチングするための適応型語彙
KR102159052B1 (ko) 영상 분류 방법 및 장치
CN112528961A (zh) 一种基于Jetson Nano的视频分析方法
CN115376559A (zh) 基于音视频的情绪识别方法、装置及设备
Sapijaszko et al. Traffic sign recognition based on multilayer perceptron using DWT and DCT
KR20190018274A (ko) 이미지에 포함된 특징 포인트의 시간 또는 공간의 움직임에 기초하여 이미지에 존재하는 피사체를 인식하는 장치 및 방법
US20180285643A1 (en) Object recognition device and object recognition method
KR101334858B1 (ko) 나비종 자동분류 시스템 및 방법, 이를 이용한 나비종 자동분류 기능이 구비된 휴대 단말기
KR20210048271A (ko) 복수 객체에 대한 자동 오디오 포커싱 방법 및 장치
CN110892423B (zh) 人工神经网络
CN112214626A (zh) 图像识别方法、装置、可读存储介质及电子设备
CN112613341A (zh) 训练方法及装置、指纹识别方法及装置、电子设备
Joshi et al. Multi-Modal Information Fusion for Localization of Emergency Vehicles
Pashentsev et al. The Effectiveness Research of Different Methods of a user Identification in the Noisy Channel Case
CN114937189A (zh) 模型的训练方法和装置、目标识别方法、设备、介质
KR20210060986A (ko) 사용자 동작 인식 방법 및 이를 위한 시스템
WO2020044646A1 (ja) 画像処理装置、画像処理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240318

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240501

R150 Certificate of patent or registration of utility model

Ref document number: 7483631

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150