(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024102438
(43)【公開日】2024-07-31
(54)【発明の名称】学習支援装置、学習支援方法、および学習支援プログラム
(51)【国際特許分類】
G06F 18/30 20230101AFI20240724BHJP
G06N 3/0895 20230101ALI20240724BHJP
G06F 18/2415 20230101ALI20240724BHJP
G06N 20/00 20190101ALN20240724BHJP
【FI】
G06F18/30
G06N3/0895
G06F18/2415
G06N20/00
【審査請求】未請求
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2023006314
(22)【出願日】2023-01-19
(71)【出願人】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】110000671
【氏名又は名称】IBC一番町弁理士法人
(72)【発明者】
【氏名】寺中 駿人
(57)【要約】 (修正有)
【課題】運用データにデータドリフトが生じた場合であっても、運用データを活用した、迅速かつ妥当な予測結果を取得する学習支援装置、学習支援方法および学習支援プログラムを提供する。
【解決手段】方法は、学習データおよび運用データを取得しS101、学習データの特徴量および運用データの特徴量を、学習データおよび運用データからそれぞれ抽出しS102、運用データの特徴量に基づいて、運用データからの予測結果を算出しS103、学習データの特徴量と、運用データの特徴量とに基づいて、予測結果を補正しS104、補正された予測結果を出力するS105。
【選択図】
図9
【特許請求の範囲】
【請求項1】
学習データおよび運用データを取得する取得部と、
前記学習データの特徴量、および前記運用データの特徴量を、前記学習データおよび前記運用データからそれぞれ抽出する特徴量抽出部と、
前記運用データの特徴量に基づいて、前記運用データからの予測結果を算出する予測結果算出部と、
前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果を補正する補正部と、
補正された前記予測結果を出力する出力部と、
を有する学習支援装置。
【請求項2】
前記補正部は、前記予測結果を劣化させる補正をする、請求項1に記載の学習支援装置。
【請求項3】
前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果の信頼度を算出する信頼度算出部をさらに有し、
前記補正部は、前記信頼度に基づいて、前記予測結果を劣化させる補正をする、請求項2に記載の学習支援装置。
【請求項4】
前記信頼度算出部は、前記学習データの特徴量と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、請求項3に記載の学習支援装置。
【請求項5】
前記運用データの前記予測結果は、所定のクラスの中で尤度が最も高い前記クラスの前記尤度であり、
前記補正部は、前記運用データからの前記予測結果である前記尤度を、前記信頼度に応じて減少させることで、前記運用データからの前記予測結果を劣化させる、請求項3に記載の学習支援装置。
【請求項6】
前記取得部は、複数の前記学習データを学習データ群として取得し、
前記信頼度算出部は、前記学習データ群の各学習データから抽出された複数の特徴量の分布と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、請求項3に記載の学習支援装置。
【請求項7】
前記出力部は、補正前の前記予測結果をさらに出力する、請求項1に記載の学習支援装置。
【請求項8】
前記予測結果は、前記学習データにより学習されたニューラルネットワークにより前記運用データから予測される前記予測結果である、請求項1に記載の学習支援装置。
【請求項9】
前記学習データおよび前記運用データは、画像データまたは文章データであり、
前記予測結果算出部は、前記学習データと、前記学習データに対応する正解ラベルとの組合せを教師データとして教師あり学習された機械学習モデルを用いて前記予測結果を算出する、請求項1に記載の学習支援装置。
【請求項10】
学習データおよび運用データを取得するステップ(a)と、
前記学習データの特徴量、および前記運用データの特徴量を、前記学習データおよび前記運用データからそれぞれ抽出するステップ(b)と、
前記運用データの特徴量に基づいて、前記運用データからの予測結果を算出するステップ(c)と、
前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果を補正するステップ(d)と、
補正された前記予測結果を出力するステップ(e)と、
を有する学習支援方法。
【請求項11】
前記ステップ(d)においては、前記予測結果を劣化させる補正をする、請求項10に記載の学習支援方法。
【請求項12】
前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果の信頼度を算出するステップ(f)をさらに有し、
前記ステップ(d)においては、前記信頼度に基づいて、前記予測結果を劣化させる補正をする、請求項11に記載の学習支援方法。
【請求項13】
前記ステップ(f)においては、前記学習データの特徴量と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、請求項12に記載の学習支援方法。
【請求項14】
前記運用データの前記予測結果は、所定のクラスの中で尤度が最も高い前記クラスの前記尤度であり、
前記ステップ(d)においては、前記運用データからの前記予測結果である前記尤度を、前記信頼度に応じて減少させることで、前記運用データからの前記予測結果を劣化させる、請求項12に記載の学習支援方法。
【請求項15】
前記ステップ(a)においては、複数の前記学習データを学習データ群として取得し、
前記ステップ(f)においては、前記学習データ群の各学習データから抽出された複数の特徴量の分布と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、請求項12に記載の学習支援方法。
【請求項16】
前記ステップ(e)においては、補正前の前記予測結果をさらに出力する、請求項10に記載の学習支援方法。
【請求項17】
前記予測結果は、前記学習データにより学習されたニューラルネットワークにより前記運用データから予測される前記予測結果である、請求項10に記載の学習支援方法。
【請求項18】
前記学習データおよび前記運用データは、画像データまたは文章データであり、
前記ステップ(c)においては、前記学習データと、前記学習データに対応する正解ラベルとの組合せを教師データとして教師あり学習された機械学習モデルを用いて前記予測結果を算出する、請求項10に記載の学習支援方法。
【請求項19】
請求項10~18のいずれか一項に記載の学習支援方法をコンピューターに実行させるための学習支援プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
学習支援装置、学習支援方法、および学習支援プログラムに関する。
【背景技術】
【0002】
近年、機械学習モデルを利用して、データの分類や製品の異常検知等をするシステムの開発が進んでいる。当該システムとしては、例えば、ユーザーからの製品に関するフィードバックレポートを所定のクラスに分類するものや、生産現場において、画像データ等のセンサーデータから製品の異常を検知するものがある。
【0003】
しかし、機械学習モデルの学習に用いられる学習データと、実際の運用現場で機械学習モデルに入力される運用データは異なるデータである。また、時間経過に伴い、運用データの特性が変化することで、学習時の学習データの特性から離れてゆくという、いわゆるデータドリフトにより、機械学習モデルの予測精度が低下することが知られている。データドリフトの具体的な原因としては、例えば、画像における背景の変化、製品に用いられる材料の変更、製品の外観仕様の変更、撮影カメラの経年劣化、レポート作成者の変更等による文章の書きぶり(例えば、使用される用語)の変化、データ形式の変化等が挙げられる。
【0004】
データドリフトによる機械学習モデルの予測精度の低下を防止するための技術に関連し、下記特許文献1には、次の先行技術が開示されている。学習データのデータ項目ごとのデータ値に基づいて、データ項目ごとのデータ値がとり得る値を示す範囲情報を計算し、異常検知の対象となる運用データの中で、データ項目ごとのデータ値が当該範囲情報に含まれる運用データを範囲内データとして記憶し、当該範囲情報に含まれない運用データを範囲外データとして記憶し、範囲内データの傾向と範囲外データの傾向との比較結果に基づいて機械学習モデルの再学習の要否を判定する。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、上述の先行技術は、データドリフトが生じたことで、運用データに基づいて機械学習モデルの再学習が必要になったかどうかについては判断できるが、再学習をするまで機械学習モデルによる妥当な予測結果が得られないという問題がある。
【0007】
本発明はこのような問題を解決するためになされたものである。すなわち、運用データにデータドリフトが生じた場合であっても、運用データを活用した、迅速かつ妥当な予測結果を取得できる、学習支援装置、学習支援方法。および学習支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の上記課題は、以下の手段によって解決される。
【0009】
(1)学習データおよび運用データを取得する取得部と、前記学習データの特徴量、および前記運用データの特徴量を、前記学習データおよび前記運用データからそれぞれ抽出する特徴量抽出部と、前記運用データの特徴量に基づいて、前記運用データからの予測結果を算出する予測結果算出部と、前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果を補正する補正部と、補正された前記予測結果を出力する出力部と、を有する学習支援装置。
【0010】
(2)前記補正部は、前記予測結果を劣化させる補正をする、上記(1)に記載の学習支援装置。
【0011】
(3)前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果の信頼度を算出する信頼度算出部をさらに有し、前記補正部は、前記信頼度に基づいて、前記予測結果を劣化させる補正をする、上記(2)に記載の学習支援装置。
【0012】
(4)前記信頼度算出部は、前記学習データの特徴量と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、上記(3)に記載の学習支援装置。
【0013】
(5)前記運用データの前記予測結果は、所定のクラスの中で尤度が最も高い前記クラスの前記尤度であり、前記補正部は、前記運用データからの前記予測結果である前記尤度を、前記信頼度に応じて減少させることで、前記運用データからの前記予測結果を劣化させる、上記(3)に記載の学習支援装置。
【0014】
(6)前記取得部は、複数の前記学習データを学習データ群として取得し、前記信頼度算出部は、前記学習データ群の各学習データから抽出された複数の特徴量の分布と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、上記(3)に記載の学習支援装置。
【0015】
(7)前記出力部は、補正前の前記予測結果をさらに出力する、上記(1)に記載の学習支援装置。
【0016】
(8)前記予測結果は、前記学習データにより学習されたニューラルネットワークにより前記運用データから予測される前記予測結果である、上記(1)に記載の学習支援装置。
【0017】
(9)前記学習データおよび前記運用データは、画像データまたは文章データであり、
前記予測結果算出部は、前記学習データと、前記学習データに対応する正解ラベルとの組合せを教師データとして教師あり学習された機械学習モデルを用いて前記予測結果を算出する、上記(1)に記載の学習支援装置。
【0018】
(10)学習データおよび運用データを取得するステップ(a)と、前記学習データの特徴量、および前記運用データの特徴量を、前記学習データおよび前記運用データからそれぞれ抽出するステップ(b)と、前記運用データの特徴量に基づいて、前記運用データからの予測結果を算出するステップ(c)と、前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果を補正するステップ(d)と、補正された前記予測結果を出力するステップ(e)と、を有する学習支援方法。
【0019】
(11)前記ステップ(d)においては、前記予測結果を劣化させる補正をする、上記(10)に記載の学習支援方法。
【0020】
(12)前記学習データの特徴量と、前記運用データの特徴量とに基づいて、前記予測結果の信頼度を算出するステップ(f)をさらに有し、前記ステップ(d)においては、前記信頼度に基づいて、前記予測結果を劣化させる補正をする、上記(11)に記載の学習支援方法。
【0021】
(13)前記ステップ(f)においては、前記学習データの特徴量と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、上記(12)に記載の学習支援方法。
【0022】
(14)前記運用データの前記予測結果は、所定のクラスの中で尤度が最も高い前記クラスの前記尤度であり、前記ステップ(d)においては、前記運用データからの前記予測結果である前記尤度を、前記信頼度に応じて減少させることで、前記運用データからの前記予測結果を劣化させる、上記(12)に記載の学習支援方法。
【0023】
(15)前記ステップ(a)においては、複数の前記学習データを学習データ群として取得し、前記ステップ(f)においては、前記学習データ群の各学習データから抽出された複数の特徴量の分布と、前記運用データの特徴量との距離に基づいて、前記信頼度を算出する、上記(12)に記載の学習支援方法。
【0024】
(16)前記ステップ(e)においては、補正前の前記予測結果をさらに出力する、上記(10)に記載の学習支援方法。
【0025】
(17)前記予測結果は、前記学習データにより学習されたニューラルネットワークにより前記運用データから予測される前記予測結果である、上記(10)に記載の学習支援方法。
【0026】
(18)前記学習データおよび前記運用データは、画像データまたは文章データであり、前記ステップ(c)においては、前記学習データと、前記学習データに対応する正解ラベルとの組合せを教師データとして教師あり学習された機械学習モデルを用いて前記予測結果を算出する、上記(10)に記載の学習支援方法。
【0027】
(19)請求項10~18のいずれか一項に記載の学習支援方法をコンピューターに実行させるための学習支援プログラム。
【発明の効果】
【0028】
学習データの特徴量、および運用データの特徴量を抽出し、運用データの特徴量に基づいて運用データから予測される予測結果を算出し、学習データの特徴量と、運用データの特徴量とに基づいて、予測結果を補正して出力する。これにより、運用データにデータドリフトが生じた場合であっても、運用データを活用した、迅速かつ妥当な予測結果を取得できる。
【図面の簡単な説明】
【0029】
【
図1】情報処理システムの概略構成を示す図である。
【
図2】情報処理装置のハードウェア構成を示すブロック図である。
【
図3】学習データを用いた学習時の制御部の機能について説明するための説明図である。
【
図4】学習データから特徴量を抽出する制御部の機能について説明するための説明図である。
【
図5】運用データから特徴量を抽出して予測結果を算出し、予測結果を補正する制御部の機能について説明するための説明図である。
【
図6】運用データから予測される予測結果の信頼度の算出方法について説明するための説明図である。
【
図8】信頼度に基づく予測結果の補正について説明するための説明図である。
【
図9】情報処理装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0030】
以下、図面を参照して、本発明の実施形態に係る、学習支援装置、学習支援方法、および学習支援プログラムについて説明する。なお、図面において、同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0031】
本明細書においては、機械学習において学習時に用いる学習データ、および運用時(予測時)において予測の対象となる運用データには、画像データおよび/または文章データが含まれる。文章データは、例えば、文章のテキストデータであり得る。学習データおよび運用データには、音声データ、温度データ、および臭いデータ等の、画像データおよび文章データ以外のデータも含まれる。
【0032】
図1は、実施形態に係る情報処理システム10の概略構成を示す図である。
【0033】
情報処理システム10は、情報処理装置100、および撮影装置200を含む。情報処理装置100と撮影装置200は、ネットワーク等により相互に通信可能に接続される。情報処理装置100は学習支援装置を構成する。撮影装置200は、学習データおよび運用データが画像データである場合に用いられ得る。学習データおよび運用データが文章データである場合は、撮影装置200は、用紙をスキャンして用紙上の文字を読み込むスキャナー等に代替され得る。学習データおよび運用データが、音声データ、温度データ、または臭いデータである場合は、撮影装置200は、それぞれ、音声をテキストデータに変換する音声認識装置、温度センサー、または臭いセンサーに代替され得る。
【0034】
撮影装置200は、製品(部品を含む)等の検査対象の画像を撮影し、画像データとして出力する。製品には、例えば、ボルト、平板、半導体チップ、半導体ウエハ、および車体が含まれる。撮影装置200がスキャナーで代替される場合は、スキャナーは、例えば、書類(紙)等をスキャンして、例えばテキストデータに変換し、文章データとして出力する。書類には、例えば、ユーザーからの製品に関するフィードバックレポート、故障レポート、および介護記録が含まれる。なお、書類がデータ(電子データ)である場合は、スキャナーは省略でき、データである書類が、文章データとして情報処理装置100に直接入力され得る。
【0035】
撮影装置200は、例えば、可視光カメラにより構成される。撮影装置200は、検査対象である製品等の大きさや位置等に応じて、適当な撮影範囲および撮影方向となるように、例えば生産現場(工場)に設置される。
【0036】
画像データは、例えば静止画像であるが、動画像であってもよい。
【0037】
撮影装置200は、学習データとして用いる画像データと、運用データである画像データとを得るために用いられ得る。学習データとして用いる画像データは、撮影装置200以外の撮影装置により撮影された画像データであってもよい。
【0038】
撮影装置200は、画像データを情報処理装置100へ送信する。
【0039】
情報処理装置100は、撮影装置200から画像データを受信する。学習データおよび運用データが文章データである場合は、情報処理装置100は、スキャナーから文章データを受信し得る。
【0040】
情報処理装置100は、機械学習により、学習データの特徴量、および運用データの特徴量を、それぞれ学習データおよび運用データから抽出する。情報処理装置100は、運用データの特徴量に基づいて、機械学習により、運用データからの予測結果を算出する。情報処理装置100は、算出した予測結果を、学習データの特徴量と、運用データの特徴量とに基づいて補正する。情報処理装置100は、補正した運用データを出力する。予測結果には、所定のクラスの尤度が含まれる。具体的には、予測結果は、例えば、所定のクラスの中で尤度が最も高いクラスの尤度である。所定のクラスには、例えば、製品の不良クラスや、書類の分類クラスが含まれる。製品の不良クラスには、例えば、傷、欠け、割れ、汚れ、および良品が含まれる。書類等の分類クラスには、例えば、ユーザー起因の故障、装置起因の故障、および故障無、が含まれる。
【0041】
情報処理装置100の機能についてさらに説明する。以下、説明を簡単にするために、画像データは製品画像のデータであり、文章データは故障レポートのデータである場合を例に説明する。
【0042】
図2は、情報処理装置100のハードウェア構成を示すブロック図である。
【0043】
情報処理装置100は、制御部110、記憶部120、表示部130、入力部140、および通信部150を有する。これらの構成要素は、バスを介して相互に接続される。情報処理装置100は、コンピューターにより構成され得る。
【0044】
制御部110は、CPU(Central Processing Unit)により構成され、プログラムに従って情報処理装置100の各部の制御および演算処理を行う。制御部110の機能の詳細については後述する。
【0045】
記憶部120は、例えばRAM(Random Access Memory)、ROM(Read Only Memory)、およびSSD(Solid State Drive)により構成され得る。RAMは、制御部110の作業領域として一時的にプログラムやデータを記憶する。ROMは、あらかじめ各種プログラムや各種データを格納する。SSDは、オペレーションシステムを含む各種プログラムおよび各種データを格納する。
【0046】
表示部130は、例えば液晶ディスプレイであり、各種情報を表示する。
【0047】
入力部140は、例えばタッチパネルや各種キーにより構成される。入力部140は、各種操作、入力のために使用される。
【0048】
通信部150は、外部機器と通信するためのインターフェースである。通信には、イーサネット(登録商標)、SATA、PCI Express、USB、IEEE1394などの規格によるネットワークインターフェースが用いられ得る。その他、通信には、Bluetooth(登録商標)、IEEE802.11、4G等の無線通信インターフェースが用いられ得る。
【0049】
情報処理装置100の制御部110の機能の詳細について説明する。なお、以下説明する制御部110の機能は、記憶部120に記憶されたプログラムが、記憶部120に記憶された各種パラメーター(例えば、学習モデルの重み付けパラメーター)等を用いて実行されることで実現される。
【0050】
図3は、学習データを用いた学習時の制御部110の機能について説明するための説明図である。
図4は、学習データから特徴量を抽出する制御部110の機能について説明するための説明図である。
図5は、運用データから特徴量を抽出して予測結果を算出し、予測結果を補正する制御部110の機能について説明するための説明図である。
【0051】
(学習時の制御部110の機能)
図3に示すように、制御部110は、学習時に、特徴量抽出器111a、分類器112a、および学習部113として機能する。特徴量抽出器111aおよび分類器112aは学習モデルを構成する。
【0052】
特徴量抽出器111aは、撮影装置200等から受信され、記憶部120に記憶された学習データを記憶部120から読み出すこと等により取得する。特徴量抽出器111aは、複数の学習データ(以下、「学習データ群」とも称する)の各学習データから、特徴量を抽出する。特徴量抽出器111aは、学習データが画像データである場合、CNN(畳み込みニューラルネットワーク)を用いて、学習データ群の各学習データから特徴量を抽出し得る。特徴量抽出器111aは、学習データが文章データである場合、BERT(Bidirectional Encoder Representations from Transformers)等の自然言語処理モデルを用いて、学習データ群の各学習データからそれぞれ特徴量を抽出し得る。
【0053】
分類器112aは、各学習データの特徴量を、それぞれ所定のクラスのいずれかに分類して予測結果として出力する。具体的には、例えば、分類器112aは、学習データの特徴量に対して、所定のクラスごとの尤度を算出して出力する。これにより、各学習データの特徴量が、尤度が最も大きいクラスに分類されることで、各学習データが所定のクラスのいずれかに分類される。分類器112aには、例えば、ニューラルネットワークの全結合層が用いられる。
【0054】
学習部113は、学習データ群の各学習データに正解付けされた正解ラベルと、分類器112aから出力される予測結果との差が小さくなるように、バックプロパゲーションにより特徴量抽出器111aと分類器112aとを学習し得る。正解ラベルは、ユーザーにより各学習データと対応付けられて、入力部140において入力され、記憶部120に記憶され得る。正解ラベルは、分類器112aによる予測結果の正解である所定のクラスであり得る。正解ラベルは、予測結果の正解であるクラスの尤度を1、その他のクラスの尤度を0とした、所定のクラスごとの尤度であってもよい。
【0055】
(学習データ群からの特徴量抽出時の制御部110の機能)
図4に示すように、制御部110は、学習データ群の各学習データから特徴量を抽出する際、特徴量抽出器111として機能する。特徴量抽出器111には、
図3に示す学習により学習された後の学習済みのCNNまたはBERTのモデルが用いられ得る。特徴量抽出器111には、学習済みの特徴量抽出器111aの全部ではなく一部が用いられてもよい。この場合、特徴量抽出器111により抽出される特徴量の抽象度の程度は、特徴量抽出器111aにより抽出される特徴量の抽象度の程度より低くなり得る。以下、説明を簡単にするために、特徴量抽出器111は、
図3に示す学習により学習された後の学習済みのCNNまたはBERTのモデルが用いられるものとして説明する。すなわち、特徴量抽出器111として、学習後の特徴量抽出器111aを用いるものとして説明する。特徴量抽出器111および分類器112は学習モデルを構成する。
【0056】
特徴量抽出器111は、学習データ群の各学習データから、特徴量を抽出する。特徴量抽出器111は、学習データ群の各学習データから抽出した複数の特徴量(以下、「特徴量群」とも称する)を記憶部120に記憶する。特徴量群は、特徴空間における特徴量の分布のデータとして記憶部120に記憶されてもよい。
【0057】
(運用時の制御部110の機能)
図5に示すように、制御部110は、運用時に、特徴量抽出器111、分類器112、信頼度算出部114、および補正部115として機能する。特徴量抽出器111および分類器112には、学習データ群を用いて学習された後の学習済モデルが用いられ得る。特徴量抽出器111は取得部および特徴量抽出部を構成する。分類器112は予測結果算出部を構成する。補正部115は信頼度算出部114とともに補正部および出力部を構成する。
【0058】
特徴量抽出器111は、撮影装置200等から受信することで運用データを取得する。特徴量抽出器111は、撮影装置200等から受信され、記憶部120に記憶された運用データを記憶部120から読み出すことにより取得してもよい。特徴量抽出器111は、運用データから特徴量を抽出する。
【0059】
分類器112は、運用データを、それぞれ所定のクラスのいずれかに分類して、運用データから予測される予測結果として出力する。具体的には、分類器112は、運用データに対して、所定のクラスの中で尤度が最も大きいクラスおよびその尤度を算出して予測結果として出力する。分類器112は、運用データに対して、所定のクラスごとの尤度を算出して予測結果として出力してもよい。運用データが、尤度が最も大きいクラスに分類されることで、運用データが所定のクラスのいずれかに分類される。
【0060】
信頼度算出部114は、学習データ群(学習データ)の特徴量と、運用データの特徴量とに基づいて、予測結果の信頼度(以下、単に「信頼度」とも称する)を算出する。
【0061】
図6は、運用データから予測される予測結果の信頼度の算出方法について説明するための説明図である。
図7は、信頼度の算出結果を示す図である。
【0062】
図6は、特徴空間における、学習データ群の特徴量の分布と、運用データとの関係を示している。黒丸は学習データ群の特徴量を示し、白丸は運用データの特徴量を示している。特徴量抽出器111によって抽出される特徴量の数(種類)は比較的多数であり、特徴量の特徴空間は多次元となる。
図6の例においては、説明を簡単にするために、第1特徴量および第2特徴量の2つの特徴量の関係を示す2次元の特徴空間において、学習データ群の特徴量と、運用データの特徴量とを示している。
【0063】
図6においては、学習データ群の各学習データは、同じ正解ラベルが対応付けされた学習データである。このため、各学習データから抽出された複数の特徴量(特徴量群)は、特徴空間において、破線で示す、比較的限定された範囲に限定されている。運用データも、各学習データに対応付けされた正解ラベルのクラスが予測結果として予測された(所定のクラスの中で当該正解ラベルのクラスの尤度が最も大きく算出された)運用データである。
【0064】
学習データ群の特徴量の分布に距離(より詳細には、特徴空間における距離)が近い特徴量の運用データについては、データドリフトの程度が比較的小さいと考えられる。データドリフトの程度が比較的小さい運用データから予測される予測結果は精度が比較的高いと考えられる。一方、学習データ群の特徴量の分布から距離が遠い特徴量の運用データについては、データドリフトの程度が比較的大きいと考えられる。データドリフトの程度が比較的大きい運用データから予測される予測結果は精度が比較的低いと考えられる。これは、運用データから予測結果を算出する特徴量抽出器111および分類器112が、データドリフトが生じる前の学習データにより学習されており、データドリフトが生じた後のデータにより学習されていないからである。
図6において特徴空間に特徴量が示された運用データは、学習データ群の特徴量の分布から特徴量が比較的離れた距離にあるため、予測結果の精度が比較的低くなると考えられる。
【0065】
上述したように、運用データの特徴量が、学習データ群の特徴量の分布に近いほど、運用データから予測される予測結果の精度が高くなる。従って、学習データ群の特徴量の分布と運用データの特徴量との距離に基づいて、予測結果の信頼度を算出できる。予測結果の信頼度は、例えばマハラノビス距離を用いて算出し得る。予測結果の信頼度は、例えば、学習データ群の特徴量と運用データの特徴量とのマハラノビス距離の逆数として算出され得る。予測結果の信頼度は1以下の数値であり得る。以下、学習データ群の特徴量の分布と運用データの特徴量との距離を、単に「学習データ群との距離」とも称する。
【0066】
図7に示す例においては、
図6に示す運用データの信頼度が、学習データ群の特徴量と運用データの特徴量とのマハラノビス距離の逆数として算出されている。
図7に示すように、
図6に示す運用データの特徴量の信頼度は、0.01(信頼度の最大値は1)である。このため、当該運用データから予測される予測結果の精度は低いと考えられる。
【0067】
補正部115は、予測結果の信頼度に基づいて予測結果を補正する。信頼度は、学習データ群の各学習データの特徴量と、運用データの特徴量とに基づいて算出されるため、予測結果の補正は、学習データの特徴量と、運用データの特徴量とに基づいて行われると言える。
【0068】
図8は、信頼度に基づく予測結果の補正について説明するための説明図である。
図8に示す、各運用データからの予測結果、距離に応じた信頼度の算出結果、および補正後の予測結果の各テーブルは、記憶部120に記憶され得る。
【0069】
各運用データからの予測結果のテーブルにおいては、「運用データ1」から予測された予測結果が「クラスAで尤度が0.98」であり、「運用データ2」から予測された予測結果が「クラスCで尤度が0.80」であり、「運用データ3」から予測された予測結果が「クラスCで尤度が0.66」である。
【0070】
距離に応じた信頼度のテーブルにおいては、「運用データ1」については、「クラスA」の正解ラベルがそれぞれ対応付けされた学習データ群との距離に基づいて信頼度が「0.95」と算出されている。「運用データ2」については、「クラスC」の正解ラベルがそれぞれ対応付けされた学習データ群との距離に基づいて信頼度が「0.40」と算出されている。「運用データ3」については、「クラスC」の正解ラベルがそれぞれ対応付けされた学習データ群との距離に基づいて信頼度が「0.80」と算出されている。
【0071】
上述したように、学習データ群の特徴量の分布と運用データの特徴量との距離に基づいて、予測結果の信頼度を算出できる。しかし、1つの学習データの特徴量と運用データの特徴量との距離に基づいて、予測結果の信頼度を算出してもよい。
【0072】
予測結果の補正は、運用データからの予測結果である尤度(所定のクラスの中で尤度が最も大きいクラスの尤度)と、その信頼度との積を算出することでなされる。すなわち、補正後の予測結果は、運用データからの予測結果である、尤度が最も大きいクラスの尤度と、その信頼度との積である。
【0073】
予測結果が信頼度に基づいて補正されることで、特徴空間における学習データ群の分布から距離が離れた運用データは予測結果の信頼度が低くなる。予測結果である、尤度が最も大きいクラスの尤度が、1以下の数値である信頼度を乗算する補正計算により補正されることで、予測結果を劣化する補正がされる。これにより、機械学習モデルによる予測結果が適切に補正される。
【0074】
補正後の予測結果のテーブルにおいては、「運用データ1」については、予測結果である「クラスAで尤度が0.98」に対し、尤度に信頼度「0.95」が乗算されることで、補正後の予測結果が「クラスAで尤度が0.931」となっている。「運用データ2」については、予測結果である「クラスCで尤度が0.80」に対し、尤度に信頼度「0.40」が乗算されることで、補正後の予測結果が「クラスAで尤度が0.320」となっている。「運用データ3」については、予測結果である「クラスCで尤度が0.66」に対し、尤度に信頼度「0.80」が乗算されることで、補正後の予測結果が「クラスAで尤度が0.931」となっている。
【0075】
なお、運用データから予測される予測結果が、所定のクラスごとの尤度である場合(所定のクラスのそれぞれに対する尤度である場合)は、クラスごとに信頼度を算出し、信頼度をクラスごとの尤度にそれぞれ乗算することで、予測結果を補正してもよい。
【0076】
補正部115は、補正された予測結果を出力する。出力には、通信部150により他の装置への送信や、表示部130への表示等が含まれる。補正部115は、補正された予測結果とともに補正前の予測結果を出力してもよい。
【0077】
情報処理装置100の動作について説明する。
【0078】
図9は、情報処理装置100の動作を示すフローチャートである。本フローチャートは、記憶部120に記憶されたプログラムに従い、制御部110により実行される。
【0079】
制御部110は、学習データ群および運用データを取得する(S101)。制御部110は、学習データ群を記憶部120から読み出すことで取得し得る。制御部110は、運用データを記憶部120から読み出すことにより、または、撮影装置200等から受信することで取得し得る。
【0080】
制御部110は、学習データ群の各学習データの特徴量と、運用データの特徴量とを、それぞれ、学習データ群および運用データから抽出する(S102)。制御部110は、学習データ群の各学習データから複数の特徴量の分布を抽出する処理を事前に行い、記憶部120に記憶させておき、この特徴量の分布を用いてもよい。
【0081】
制御部110は、運用データから予測結果を算出する(S103)。
【0082】
制御部110は、学習データ群の各学習データから抽出された複数の特徴量の分布と、運用データの特徴量とに基づいて、予測結果の信頼度を算出する(S104)。
【0083】
制御部110は、信頼度に基づいて予測結果を補正して、補正後の予測結果を出力する(S105)。
【0084】
本実施形態は以下の効果を奏する。
【0085】
学習データの特徴量、および運用データの特徴量を抽出し、運用データの特徴量に基づいて運用データから予測される予測結果を算出し、学習データの特徴量と、運用データの特徴量とに基づいて、予測結果を補正して出力する。これにより、運用データにデータドリフトが生じた場合であっても、運用データを活用した、迅速かつ妥当な予測結果を取得できる。
【0086】
また、学習データの特徴量と、運用データの特徴量とに基づく、予測結果の補正は、予測結果を劣化させる補正である。これによりデータドリフトに応じた妥当な予測結果を取得できる。
【0087】
さらに、学習データの特徴量と、運用データの特徴量とに基づいて、予測結果の信頼度を算出し、信頼度に基づいて、予測結果を劣化させる補正をする。これにより、より妥当性の高い予測結果を取得できる。
【0088】
さらに、学習データの特徴量と、運用データの特徴量との距離に基づいて信頼度を算出する。これにより、簡単に、より妥当性の高い予測結果を取得できる。
【0089】
さらに、運用データの予測結果を、所定のクラスの中で尤度が最も高いクラスの尤度とし、運用データからの予測結果である尤度を、信頼度に応じて減少させることで、運用データからの予測結果を劣化させる。これにより、予測結果の妥当性を向上できる。
【0090】
さらに、複数の学習データを学習データ群として取得し、学習データ群の各学習データから抽出された複数の特徴量の分布と、運用データの特徴量との距離に基づいて、信頼度を算出する。これにより、簡単に予測結果の妥当性をさらに向上できる。
【0091】
さらに、補正前の予測結果も出力する。これにより、補正後の予測結果の妥当性を確認できる。
【0092】
さらに、予測結果を、学習データにより学習されたニューラルネットワークにより運用データから予測される予測結果とする。これにより、より簡単かつ柔軟に妥当性の高い予測結果を取得できる。
【0093】
さらに、学習データおよび運用データを、画像データまたは文章データとし、学習データと、学習データに対応する正解ラベルとの組合せを教師データとして教師あり学習された機械学習モデルを用いて予測結果を算出する。これにより、運用データの対象範囲を適切に拡大しつつ、妥当な予測結果を得ることができる。
【0094】
以上に説明した情報処理システム10の構成は、上述の実施形態の特徴を説明するにあたって主要構成を説明したのであって、上述の構成に限られず、特許請求の範囲内において、種々改変することができる。また、一般的な情報処理システムが備える構成を排除するものではない。
【0095】
例えば、情報処理装置100は複数の装置により構成されてもよい。
【0096】
また、上述したフローチャートは、一部のステップを省略してもよく、他のステップが追加されてもよい。また各ステップの一部は同時に実行されてもよく、一つのステップが複数のステップに分割されて実行されてもよい。
【0097】
また、上述した情報処理システム10における各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピューターのいずれによっても実現することが可能である。上記プログラムは、例えば、USBメモリやDVD(Digital Versatile Disc)-ROM等のコンピューター読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピューター読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送され記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、一機能としてその検出部等の装置のソフトウエアに組み込まれてもよい。
【符号の説明】
【0098】
10 情報処置システム、
100 情報処理装置、
110 制御部、
111a、111 特徴量抽出器、
112a、112 分類器、
113 学習部、
114 信頼度算出部、
115 補正部、
120 記憶部、
130 表示部、
140 入力部、
150 通信部、
200 撮影装置。