(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-19
(45)【発行日】2024-07-29
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20240722BHJP
【FI】
G06N20/00 130
(21)【出願番号】P 2020095403
(22)【出願日】2020-06-01
【審査請求日】2023-05-17
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】佐藤 慶尚
【審査官】新井 則和
(56)【参考文献】
【文献】特開2013-114596(JP,A)
【文献】特開2006-189915(JP,A)
【文献】国際公開第2014/136327(WO,A1)
【文献】国際公開第2016/084336(WO,A1)
【文献】特開2020-009300(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
アノテーションの対象となる対象データ
の入力に基づいて推定され、複数種類のラベルのうちどのラベルが前記対象データへ付加されるかを示す確からしさ
のスコア
を取得する取得手段と、
前記複数種類のラベルそれぞれを軸とした第1特徴量空間に、前記取得手段により取得された前記スコアに基づいて配置されたラベル付与済みデータから、前記第1特徴量空間から分割された複数の第1象限それぞれについて第1候補データを決定する決定手段と、
前記決定手段により決定された
複数の前記
第1候補データを出力する出力手段と、
前記出力手段によって出力された前記第1候補データに基づいて、前記対象データへ付与する候補ラベルを受け付ける受付手段と、
を備える、情報処理装置。
【請求項2】
前記決定手段は、一連のラベル付与済みデータが分布する領域を、複数の前記候補ラベル
の少なくとも一部について当該一連のラベル付与済みデータそれぞれの前記スコアの最大値と最小値と間の中間値に基づき、複数の象限に分割する、請求項1に記載の情報処理装置。
【請求項3】
前記受付手段は、複数の前記第1候補データから第2候補データの指定を受け付け、
前記決定手段は、指定された前記
第2候補データを基点として規定される
第2特徴量空間が分割された複数の第2象限ごとに第3候補データを決定し、
前記受付手段は、前記決定手段によって決定された前記
第3候補データに基づいて、前記対象データへ付与する候補ラベルを受け付ける、
請求項1または2に記載の情報処理装置。
【請求項4】
前記決定手段が、
前記受付手段が指定を受け付けた前記第2候補データを基点として規定される
第2特徴量空間を複数の
第2象限に分割し、当該複数の
第2象限それぞれについて当該
第2象限に含まれる前記ラベル付与済みデータ
に基づく前記第3候補データを決定する処理と、
前記出力手段が、前記
複数の第2象限それぞれについて決定された
前記第3候補データを出力する処理と、
が逐次実行される、
請求項3に記載の情報処理装置。
【請求項5】
前記
第2特徴量空間は、従前に複数の
第1象限に分割された領域よりも広さが制限されるように規定され
、前記複数の第2象限に分割される、請求項
4に記載の情報処理装置。
【請求項6】
逐次指定される前記
第2候補データそれぞれについて算出された、前記対象データとの間の前記
第1特徴量空間における距離が、所定回数以上、従前に指定された前記第2候補データについて算出された前記距離に対して伸び続けている場合に、所定の出力先に報知情報を報知させる報知手段を備える、請求項3~5のいずれか1項に記載の情報処理装置。
【請求項7】
前記決定手段は、指定された前記対象データと、前記複数の
第1象限それぞれと、の間の前記
第1特徴量空間における距離に応じて、当該複数の
第1象限それぞれについて決定する前記
第1候補データの数を制御する、請求項1~6のいずれか1項に記載の情報処理装置。
【請求項8】
前記決定手段は、指定された前記対象データとの間の前記
第1特徴量空間における距離がより近い前記
第1象限ほど、当該
第1象限について決定する前記
第1候補データの数がより多くなるように制御する、請求項7に記載の情報処理装置。
【請求項9】
情報処理装置が実行する情報処理方法であって、
アノテーションの対象となる対象データ
の入力に基づいて推定され、複数種類のラベルのうちどのラベルが前記対象データへ付加されるかを示す確からしさ
のスコア
を取得する取得ステップと、
前記複数種類のラベルそれぞれを軸とした第1特徴量空間に、前記取得ステップにおいて取得された前記スコアに基づいて配置されたラベル付与済みデータから、前記第1特徴量空間から分割された複数の第1象限それぞれについて第1候補データを決定する決定ステップと、
前記決定ステップにおいて決定された
複数の前記
第1候補データを出力する出力ステップと、
前記出力ステップにおいて出力された前記第1候補データに基づいて、前記対象データへ付与する候補ラベルを受け付ける受付ステップと、
を含む、情報処理方法。
【請求項10】
コンピュータを、請求項1~8のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
機械学習に用いられる学習データを作成するためのプログラムとして、対象となるデータに対して学習すべき正解情報(正解ラベル)を付与するアノテーションツールが利用されている。アノテーションツールには、例えば、学習データの作成に係るユーザへの作業負荷を低減するための機能群(すなわち、ユーザ補助のための機能群)が用意されている場合がある。
【0003】
例えば、より高性能な機械学習モデルを作成するためには、学習データに対して付与される正解情報の精度がより高く、かつ学習データの数がより多いことが望ましい。そのため、アノテーションツールには、対象となるデータに対してより精度の高い正解情報をより効率的に付与することが可能となるように、ユーザを補助する機能が用意されている場合がある。例えば、特許文献1には、正解情報が付与されているデータを当該正解情報に応じて分類したうえで参考情報として提示することで、ユーザが対象となるデータに対してどの正解情報を付与すべきかを判断する際に、当該判断を補助する機能の一例が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方で、正解情報が付与されたデータの数がより多くなることで、参考情報の提示に利用されるデータの候補の数もより増大することとなる。このような状況下では、ユーザが全てのデータを確認することが実質的に困難となる状況も想定される。また、ランダムに一部のデータが抽出されて参考情報の提示に利用されたとしても、抽出結果に応じて提示される情報が、必ずしもユーザが対象となるデータに対してどの正解情報を付与すべきかを判断する際の参考となるとは限らない。
【0006】
本発明は上記の問題を鑑み、アノテーションとして付加されるラベルのユーザによる選択をより好適な態様で支援することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る情報処理装置は、アノテーションの対象となる対象データの入力に基づいて推定され、複数種類のラベルのうちどのラベルが前記対象データへ付加されるかを示す確からしさのスコアを取得する取得手段と、前記複数種類のラベルそれぞれを軸とした第1特徴量空間に、前記取得手段により取得された前記スコアに基づいて配置されたラベル付与済みデータから、前記第1特徴量空間から分割された複数の第1象限それぞれについて第1候補データを決定する決定手段と、前記決定手段により決定された複数の前記第1候補データを出力する出力手段と、前記出力手段によって出力された前記第1候補データに基づいて、前記対象データへ付与する候補ラベルを受け付ける受付手段と、を備える。
【発明の効果】
【0008】
本発明によれば、アノテーションとして付加されるラベルのユーザによる選択をより好適な態様で支援することが可能となる。
【図面の簡単な説明】
【0009】
【
図1】情報処理装置のハードウェア構成の一例を示した図である。
【
図2】情報処理装置の機能構成の一例を示したブロック図である。
【
図3】ラベル付与済みデータの管理に係るデータ構造の一例を示した図である。
【
図4】スコアの推定結果の管理に係るデータ構造の一例を示した図である。
【
図5】情報処理装置の処理の一例を示したフローチャートである。
【
図6】ラベル候補の指定を受け付けるための操作画面の一例を示した図である。
【
図7】候補データに応じた情報の提示に係る出力画面の一例を示した図である。
【
図8】情報処理装置の処理の一例を示したフローチャートである。
【
図9】点群データの領域を複数の象限に分割する処理について示した図である。
【
図10】情報処理装置の処理の一例を示したフローチャートである。
【
図11】情報処理装置の機能構成の他の一例を示したブロック図である。
【
図12】情報処理装置の処理の他の一例を示したフローチャートである。
【
図13】情報処理装置の処理の他の一例を示したフローチャートである。
【
図14】情報処理装置の機能構成の他の一例を示したブロック図である。
【
図15】情報処理装置の処理の他の一例を示したフローチャートである。
【
図16】報知情報の提示に係るダイアログの一例を示した図である。
【発明を実施するための形態】
【0010】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0011】
<アノテーションの概要>
所謂機械学習に基づき機械学習モデルの訓練(換言すると、機械学習モデルの構築)を行う手法の一例として、教師あり学習が挙げられる。教師あり学習では、学習モデルへの入力となるデータと、当該データから予測すべき正解ラベルと、を関連付けた学習データが含まれるデータセットが、機械学習モデルの構築に使用される。機械学習モデルの構築に際して、このようなデータセットが存在しない或いは足りない場合には、例えば、入力となるデータを収集した後に、当該データに対してアノテーションとして正解ラベルを付与するアノテーション作業によりデータセットの構築が行われる。このようなアノテーション作業においてユーザがより容易に作業を行えるようにすることを目的として、データに対して正解ラベルを付与する作業を支援する機能を有したアノテーションツールが用いられる場合がある。
【0012】
アノテーションツールは、アノテーションの対象となる画像や文書等のようなデータ(以下、「対象データ」とも称する)をユーザに対して提示したうえで、ユーザから当該対象データに対してアノテーションとして付与する正解ラベルの指定を受け付ける。そして、アノテーションツールは、上記対象データに対して、ユーザから指定された上記正解ラベルをアノテーションとして付与することで、データセットに含める学習データを生成する。
各種のアノテーションツールの中には、上述した対象データに対して正解ラベルを付与するラベル付け作業を効率化するために、事前の機械学習に基づき構築された機械学習モデル(以降では、「学習済みモデル」とも称する)を利用するツールがある。具体的な一例として、学習済みモデルを利用するツールは、当該学習済みモデルに対象データを解析させることで、当該対象データにアノテーションとして付与されるラベルの候補を抽出させ、抽出された当該ラベルの候補をユーザに提示する。これにより、ユーザは、アノテーションツールから提示されたラベルの候補の中から、対象データに対して正解ラベルとして付与する候補を選択することが可能となる。
【0013】
また、より高性能な機械学習モデルを作成するためには、学習データに対して付与される正解情報の精度がより高く、かつ学習データの数がより多いことが望ましい。そのため、アノテーションツールには、対象となるデータに対してより精度の高い正解情報をより効率的に付与することが可能となるように、ユーザを補助する機能が用意されている場合がある。
【0014】
上記に例示したアノテーションツールによる、ユーザを補助する機能としては、例えば、正解情報が付与されているデータを当該正解情報に応じて分類したうえで参考情報として提示する機能等が提案されている。
【0015】
一方で、正解情報が付与されたデータの数がより多くなることで、参考情報の提示に利用されるデータの候補の数もより増大することとなる。このような状況下では、ユーザが全てのデータを確認することが実質的に困難となる状況も想定される。また、ランダムに一部のデータを抽出して参考情報の提示に利用されたとしても、当該抽出の条件が適切であるとは限らない。そのため、抽出結果に応じて提示される情報が、必ずしもユーザが対象となるデータに対してどの正解情報を付与すべきかを判断する際の参考となるとは限らない。
【0016】
そこで、本開示では、ユーザが対象データに対してアノテーションとして付与するラベルを選択する作業を、より好適な態様で支援することが可能なアノテーションツールに関する技術を提案する。
【0017】
なお、以降では、既存の学習済みの機械学習モデルを事前学習モデルとも称し、アノテーション対象に付与される正解情報の候補であるラベルを候補ラベルとも称する。また、アノテーション作業の対象となるデータを対象データとも称し、正解情報がアノテーションとして既に付与されているデータをラベル付与済みデータとも称する。
【0018】
<ハードウェア構成>
図1を参照して、本実施形態に係る情報処理装置100のハードウェア構成の一例について説明する。
図1に示すように、本実施形態に係る情報処理装置100は、CPU(Central Processing Unit)111と、ROM(Read Only Memory)112と、RAM(Random Access Memory)113とを含む。また、情報処理装置100は、補助記憶装置114と、出力装置115と、入力装置116と、通信I/F117とを含む。CPU111と、ROM112と、RAM113と、補助記憶装置114と、出力装置115と、入力装置116と、通信I/F117とは、バス218を介して相互に接続されている。
【0019】
CPU111は、情報処理装置100の各種動作を制御する中央演算装置である。例えば、CPU111は、情報処理装置100全体の動作を制御してもよい。ROM112は、CPU111で実行可能な制御プログラムやブートプログラムなどを記憶する。RAM113は、CPU111の主記憶メモリであり、ワークエリア又は各種プログラムを展開するための一時記憶領域として用いられる。
【0020】
補助記憶装置114は、各種データや各種プログラムを記憶する。補助記憶装置114は、HDD(Hard Disk Drive)や、SSD(Solid State Drive)に代表される不揮発性メモリ等のような、各種データを一時的または持続的に記憶可能な記憶デバイスにより実現される。
【0021】
出力装置115は、各種情報を出力する装置であり、ユーザに対する各種情報の提示に利用される。本実施形態では、出力装置115は、ディスプレイ等の表示デバイスにより実現される。出力装置115は、各種表示情報を表示させることで、ユーザに対して情報を提示する。ただし、他の例として、出力装置115は、音声や電子音等の音を出力する音響出力デバイスにより実現されてもよい。この場合には、出力装置115は、音声や電信等の音を出力することで、ユーザに対して情報を提示する。また、出力装置115として適用されるデバイスは、ユーザに対して情報を提示するために利用する媒体に応じて適宜変更されてもよい。
【0022】
入力装置116は、ユーザからの各種指示の受け付けに利用される。本実施形態では、入力装置116は、マウス、キーボード、タッチパネル等の入力デバイスを含む。ただし、他の例として、入力装置116は、マイクロフォン等の集音デバイスを含み、ユーザが発話した音声を集音してもよい。この場合には、集音された音声に対して音響解析や自然言語処理等の各種解析処理が施されることで、この音声が示す内容がユーザからの指示として認識される。また、入力装置116として適用されるデバイスは、ユーザからの指示を認識する方法に応じて適宜変更されてもよい。また、入力装置116として複数種類のデバイスが適用されてもよい。
【0023】
通信I/F117は、外部の装置とのネットワークを介した通信に利用される。なお、通信I/F117として適用されるデバイスは、通信経路の種別や適用される通信方式に応じて適宜変更されてもよい。
【0024】
CPU111が、ROM112又は補助記憶装置114に記憶されたプログラムをRAM113に展開し、このプログラムを実行することで、
図2、
図11、及び
図14に示す機能構成が実現される。また、上記プログラムが実行されることで、
図5、
図8、
図10、
図12、
図13、及び
図15に示すフローチャートで示された処理が実現される。
上記プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、及び光磁気ディスク等を利用することが可能である。また、記憶媒体の他の一例として、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、ROM、DVD等を利用することも可能である。
また、上記プログラムは、コンピュータにより直接実行されてもよいし、コンピュータ上で動作するOS(Operating System)等のような基盤となるソフトウェアによる管理の元で実行されてもよい。
また、記憶媒体から読み出されたプログラムが、コンピュータに装着された機能拡張ボードや、コンピュータに接続された機能拡張ユニット等によって処理されてもよい。
【0025】
<第1の実施形態>
以下に、本開示の第1の実施形態について説明する。なお、以降では、本実施形態に係る情報処理装置を、他の実施形態に係る情報処理装置と区別するために、便宜上「情報処理装置200」と称する場合がある。
また、本実施形態と、後述する他の実施形態とにおいては、本開示に係る技術の特徴をよりわかりやすくするために、アノテーションとして正解情報(ラベル)が付与されるデータが画像データである場合に着目して各種説明を行う場合がある。ただし、当該画像データはあくまで一例であり、本開示に係る技術の適用対象となる情報処理装置が、正解情報の付与の対象とするデータの種別を限定するものではない。すなわち、本開示に係る技術の基本思想を逸脱しない範囲で、正解情報の付与の対象とするデータの種別が適宜変更されてもよい。
【0026】
(機能構成)
まず、
図2を参照して、本実施形態に係る情報処理装置200の機能構成の一例について説明する。情報処理装置200は、事前学習モデル読み出し部201と、ラベル付与済みデータ管理部202と、スコア推定部203と、推定結果管理部204と、候補データ決定部206と、候補データ抽出部207とを含む。また、情報処理装置200は、ラベル候補入力部205と、候補データ出力部208と、候補データ入力部209とを含む。
【0027】
事前学習モデル読み出し部201は、事前の学習により構築された学習モデル(事前学習モデル)の読み出しを行う。なお、事前学習モデルの読み出し元については、事前学習モデル読み出し部201が参照可能であれば特に限定はされない。事前学習モデル読み出し部201は、読みだした事前学習モデルを情報処理装置200のメモリ上に展開してもよい。
【0028】
ラベル付与済みデータ管理部202は、ラベル付与済みデータ(例えば、ラベルが付与された画像データ)の管理を行う。例えば、ラベル付与済みデータ管理部202は、複数のラベル付与済みデータそれぞれを個別に読み出し可能に記憶してもよい。ラベル付与済みデータ管理部202は、ラベル付与済みデータの管理にデータベース等を利用してもよい。
例えば、
図3は、ラベル付与済みデータの管理に係るデータ構造の一例を示している。
図3に示す例では、各ラベル付与済みデータに対してIDが割り当てられ、当該IDに対して、当該ラベル付与済みデータに付与されたラベルに関する情報と、当該ラベル付与済みデータのパスに関する情報と、が関連付けられている。具体的な一例として、IDとして「1」が割り当てられたラベル付与済みデータは、「ラベルA」がラベルとして付与されており、「AAA¥BBB¥CCC」で示される位置に記憶されている。
なお、
図3に示す例では、ラベル付与済みデータがファイルとして管理しているが、当該データを管理することが可能であればその方法は特に限定はされない。具体的な一例として、ラベル付与済みデータ管理部202は、ラベル付与済みデータを、BASE64形式のデータとして管理してもよい。この場合には、ラベル付与済みデータ管理部202は、必要に応じて、ラベル付与済みデータのファイルをBASE64形式のデータに変換してもよい。
【0029】
スコア推定部203は、読み出された事前学習モデルに基づき、アノテーションの対象となる対象データに対して付与され得る正解情報(ラベル)と、当該対象データが当該正解情報が示すものであることの確からしさを示すスコアと、を推定する。具体的には、スコア推定部203は、事前学習モデル読み出し部201により読み出された事前学習モデルを利用して、対象データを示すラベルの推定と、当該対象データが当該ラベルが示すものであることの確からしさを示すスコアと、を推定してもよい。なお、上記スコアは、例えば、ラベルが対象データを示している確率(換言すると、対象データがラベルにより示される物である確率)の形式で表現される。
【0030】
推定結果管理部204は、スコア推定部203により推定された、対象データに対して付与され得る正解情報(ラベル)と、当該正解情報のスコアと、を管理する。
例えば、
図4は、対象データごとに、当該対象データに付与され得るラベルと、当該ラベルのスコアと、の推定結果の管理に係るデータ構造の一例を示している。
図4に示す例では、各ラベル付与済みデータに割り当てられたIDに対して、ラベルごとのスコアの推定結果に応じた情報が関連付けられている。なお、
図4に示す例では、当該IDに対して、「ラベルA」、「ラベルB」、「ラベルC」、「ラベルD」それぞれについてのスコアの推定結果が関連付けられている。具体的な一例として、IDとして「1」が割り当てられたラベル付与済みデータは、「ラベルA」のスコアが「0.7」、「ラベルB」のスコアが「0.4」、「ラベルC」のスコアが「0.2」、「ラベルD」のスコアが「0.1」となっている。
【0031】
ラベル候補入力部205は、アノテーション作業を行うユーザから、対象データに対してアノテーションとして付与するラベルの候補(以下、「候補ラベル」とも称する)の指定を受け付ける。具体的な一例として、ユーザが、対象データに対していずれのラベルを付与すべきかを迷っている状況下において、ラベル候補入力部205は、当該ラベルの候補を情報処理装置200に入力するためのインタフェースの役割を担う。
【0032】
候補データ決定部206は、アノテーション作業を行うユーザに対して、参考として情報を提示する際に利用するラベル付与済みデータを、候補データとして決定する。具体的には、候補データ決定部206は、ラベル候補入力部205を介して入力された1以上の候補ラベルと、推定結果管理部204により管理されている情報と、に基づき、上記候補データを決定する。なお、候補データ決定部206の処理については、詳細を別途後述する。
【0033】
候補データ抽出部207は、ラベル付与済みデータ管理部202から所望の条件に合致するラベル付与済みデータを読み出す。例えば、候補データ抽出部207は、候補データ決定部206により候補データとして決定されたラベル付与済みデータを、ラベル付与済みデータ管理部202が管理するデータの中から抽出してもよい。
【0034】
候補データ出力部208は、候補データ抽出部207により抽出された候補データ(ラベル付与済みデータ)に応じた情報を所定の出力先に出力する。これにより、候補データ出力部208は、当該候補データに応じた情報を、ユーザが対象データに対してどの正解情報を付与すべきかを判断する際の参考情報として、当該ユーザに提示することが可能となる。
【0035】
候補データ入力部209は、ユーザに対して情報が提示された候補データのうち、対象データと意味的により近い候補データの指定をユーザから受け付ける。具体的な一例として、候補データ入力部209は、候補データ出力部208によりユーザに提示された一連の候補データのうち、対象データにより近い候補データの指定をユーザから受け付けてもよい。
【0036】
(処理)
次いで、本実施形態に係る情報処理装置200の処理の一例について以下に説明する。
まず、
図5を参照して、対象データに対してラベルを付与するための参考情報の提示に係る一連の処理の流れの一例について説明する。
【0037】
S501において、ラベル候補入力部205は、対象データに対してアノテーションとして付与されるラベルの候補の指定をユーザから受け付ける。例えば、
図6は、ラベル候補の指定をユーザから受け付ける操作画面(ユーザインタフェース)の一例を示している。
【0038】
操作画面600は、画像表示領域610と、ラベル候補提示領域620と、決定ボタン601と、見本画像表示ボタン602とを含む。画像表示領域610は、アノテーションの対象となる画像データ(対象データ)に応じた画像611が表示される領域である。ラベル候補提示領域620は、対象データに対してアノテーションとして付与されるラベルの候補として1以上の候補ラベルが提示され、当該1以上の候補ラベルのうち少なくとも一部の候補ラベルの指定をユーザから受け付ける領域である。決定ボタン601は、ラベル候補提示領域620において指定された候補ラベルを、対象データに対して付与するラベルとして確定させるための指示をユーザから受け付けるボタンである。見本画像表示ボタン602は、見本画像の表示に係る指示をユーザから受け付けるためのボタンである。
【0039】
図6に示す例では、画像表示領域610に表示されている画像611に対して、アノテーションとしてラベル付与の対象となる対象領域612が指定されている。対象領域612は、例えば、ポインタ630を利用したユーザからの指定に基づき設定される。ポインタ630の操作には、例えば、情報処理装置200に接続されたポインティングデバイス等の入力装置116が用いられる。具体的な一例として、ポインタ630により画像611上に指定された4点を四隅とした領域が、対象領域612として設定されてもよい。もちろん、当該操作方法はあくまで一例であり、画像611の少なくとも一部の領域を指定することが可能であれば、対象領域612の設定に係る操作方法は特に限定されない。
【0040】
また、
図6に示す例では、ラベル候補提示領域620に対して、「ラベルA」~「ラベルD」それぞれの候補ラベルに対応付けられた候補ボタン621~624が提示されている。候補ボタン621~624のそれぞれは、対応付けられた候補ラベルの指定をユーザから受け付けるボタンである。
なお、
図6に示す例はあくまで一例であり、候補ラベルの指定の受け付けに係る情報の提示態様は必ずしも
図6に示す例には限定されない。例えば、ラベル候補提示領域620に提示されるボタンの数は4つには限られず、候補ラベルの数に応じて提示されるボタンの数が変更されてもよい。また、選択可能な候補ラベルがアノテーションの対象に応じて変更されてもよい。具体的な一例として、指定された対象領域612に含まれる部分画像を対象とした、事前学習モデルに基づく推定結果に応じて、選択可能な候補ラベルが決定されてもよい。また、この場合には、推定結果として得られる一連のラベルのうち、スコアがより高い所定数(例えば、4つ)のラベルが、候補ラベルとして決定されてもよい。
【0041】
ラベル候補入力部205は、対象領域612が指定されたうえで候補ボタン621~624のうち少なくもいずれかが押下された後に、見本画像表示ボタン602が押下された場合に、押下された候補ボタンに対応付けられたラベルを候補ラベルとして取得する。候補ボタン621~624のそれぞれや見本画像表示ボタン602の押下については、例えば、ポインティングデバイス等を利用したポインタ630の操作により実現される。
【0042】
ここで、改めて
図5を参照する。S502において、候補データ決定部206は、推定結果管理部204が管理する情報と、S501において取得された候補ラベルと、に基づき、対象データが候補ラベルが示すものであることの確からしさを示すスコアを軸とした特徴量空間を設定する。なお、特徴量空間の設定に係る処理については、
図8を参照して詳細を別途後述する。
S503において、候補データ決定部206は、S502において設定した特徴量空間を利用して、ユーザへの情報提示の対象とする候補データ(例えば、候補画像)を決定する。なお、ユーザへの情報提示の対象とする候補データの決定に係る処理については、
図10を参照して詳細を別途後述する。
S504において、候補データ抽出部207は、S503における決定結果に応じた候補データをラベル付与済みデータ管理部202が管理する一連のデータの中から抽出する。
S505において、候補データ出力部208は、S504において抽出された候補データに応じた情報を所定の出力先に出力することで、当該情報をユーザに提示する。具体的な一例として、候補データ出力部208は、候補データとして抽出された画像データに応じた画像をディスプレイ等の表示装置に表示させることで、当該画像をユーザに提示してもよい。例えば、
図7は、候補データに応じた情報をユーザに提示するための出力画面(ユーザインタフェース)の一例を示しており、特に、候補データとして抽出された画像データに応じた画像をユーザに提示するための画面の一例を示している。
【0043】
出力画面700は、候補画像表示領域710と、終了ボタン701と、再検索ボタン702とを含む。候補画像表示領域710は、候補データとして抽出された画像データに応じた画像(以下、「候補画像」とも称する)が表示される領域である。
図7に示す例では、候補画像表示領域710に対して、候補データとして抽出された画像データに応じた画像として、候補画像711~714が表示されている。また、候補画像711~714のそれぞれの近傍には、各候補画像に付与されたラベルを示す情報が表示されている。終了ボタン701は、候補画像の表示の終了に係る指示をユーザから受け付けるボタンである。再検索ボタン702は、候補画像の再検索に係る指示をユーザから受け付けるボタンである。
なお、
図7に示す例はあくまで一例であり、候補データに応じた情報の提示態様は必ずしも
図7に示す例には限定されない。例えば、候補画像表示領域710に表示される候補画像の数は4つには限られず、より多い数の画像が表示されてもよいし、より少ない数の画像が表示されてもよい。なお、表示対象となる一連の候補画像を候補画像表示領域710内に表示させることが困難な場合には、スクロールバー等を利用したスクロール操作により候補画像表示領域710をスクロール可能に構成することで、候補画像の表示領域が拡張されてもよい。
【0044】
ここで、改めて
図5を参照する。S506において、候補データ決定部206は、候補データの抽出に係る処理の終了が指示されたか否かを判定する。例えば、候補データ決定部206は、
図7に示す出力画面700において終了ボタン701が押下された場合に、候補データの抽出に係る処理の終了が指示されたと判定してもよい。
【0045】
候補データ決定部206は、S506において、候補データの抽出に係る処理の終了が指示されていないと判定した場合には、処理をS507に進める。S507において、候補データ入力部209は、S505においてユーザに情報が提示された一連の候補データのうちの少なくともいずれかの指定をユーザから受け付ける。また、候補データ決定部206は、候補データ入力部209がユーザからの指定を受け付けた候補データを、当該候補データ入力部209から取得する。
具体的な一例として、候補データ入力部209は、
図7に示す出力画面700の候補画像表示領域710に表示された候補画像711~714のうちいずれかの指定を受け付ける。そして、候補データ入力部209は、候補画像711~714のうちいずれかが指定された状態で再検索ボタン702が押下された場合に、指定された候補画像に対応する候補データ(画像データ)を取得し、候補データ決定部206に出力する。そして、候補データ決定部206は、当該候補データの取得結果に基づき、S502以降の処理を改めて実行する。
【0046】
一方で、候補データ決定部206は、S506において、候補データの抽出に係る処理の終了が指示されたと判定した場合には、
図5に示す一連の処理を終了する。
【0047】
次いで、
図8を参照して、
図5においてS502の処理として示した、特徴量空間の設定に係る処理の一例について説明する。
S801において、候補データ決定部206は、S501において取得された各候補ラベルを軸とした特徴量空間を設定する。
S802において、候補データ決定部206は、推定結果管理部204が管理している一連の情報(スコア推定部203による推定結果に応じた情報)に基づき、一連のラベル付与済みデータを、S801において設定された特徴量空間にプロットする。これにより、特徴量空間上に、上記一連のラベル付与済みデータに対応する点群データが規定されることとなる。
S803において、候補データ決定部206は、
図5のS507の処理により取得される候補データ(例えば、指定された候補画像に対応する画像データ)の入力の有無を判定する。
【0048】
候補データ決定部206は、S803において候補データの入力無しと判定した場合には、処理をS804に進める。S804において、候補データ決定部206は、S802で規定した点群データが占める特徴量空間上の範囲について、当該特徴量空間の各軸を規定している候補ラベルそれぞれのスコアの最大値及び最小値を取得する。
S805において、候補データ決定部206は、特徴量空間の設定に係る軸ごと(換言すると、候補ラベルごと)に、S804において取得した最大値及び最小値の中間値を算出する。
S806において、候補データ決定部206は、特徴量空間の設定に係る軸ごとに取得または算出した上記最大値、上記最小値、及び上記中間値に基づき、当該特徴量空間のうち少なくとも上記点群データが存在する(各点が分布する)領域を複数の象限に分割する。これにより、特徴量空間のうち少なくとも上記点群データが存在する領域に複数の象限が設定されることとなる。
【0049】
例えば、
図9は、特徴量空間のうちの上記点群データが存在する領域を分割することで複数の象限を設定する処理について説明するための説明図である。
図9に示す例では、本実施形態に係る技術の特徴をわかりやすくするために、便宜上、特徴量空間900が、ラベルAのスコアを横軸901とし、ラベルBのスコアを縦軸902とした2次元的な空間として設定されている。
具体的には、
図9(a)は、S801の処理により設定される特徴量空間900に対して、S802の処理により一連のラベル付与済みデータそれぞれに対応する点903がプロットされた状態を模式的に示している。
図9(b)は、S804の処理により各軸について取得された最大値及び最小値に基づき規定される、点群データが存在する領域910を模式的に示している。
図9(c)は、S805の処理における中間値の算出結果に基づき、特徴量空間のうち点群データが存在する領域910が複数の象限911~914に分割された状態を模式的に示している。具体的には、
図9(c)に示す例では、ラベルAのスコアの中間値を通り横軸901と垂直に交わる直線と、ラベルBのスコアの中間値を通り縦軸902と垂直に交わる直線と、により、領域910が複数の象限911~914に分割されている。
【0050】
なお、
図9に示す例では、説明を簡単にするために候補ラベルが2つの場合について示したが、特徴量空間の設定に利用される候補ラベルの数が3つ以上であってもよい。この場合には、S801において設定される特徴量空間は、三次元以上の特徴量空間となる。
【0051】
ここで、改めて
図8を参照する。候補データ決定部206は、S803において候補データの入力有りと判定した場合には、処理をS807に進める。S807において、候補データ決定部206は、特徴量空間上に設定された点群データのうち、S507の処理において取得された候補データ(ユーザにより指定された候補データ)に対応する点を特定する。そして、候補データ決定部206は、特定した点903の、特徴量空間上における座標を取得する。
S808において、候補データ決定部206は、S807において取得した座標を中心として、従前のS806において設定した4つの象限をあわせた領域の各辺の長さを半分にした新たな領域を設定する。
次いで、S806において、候補データ決定部206は、前述したS806の処理と同様の思想に基づき、S808において設定した新たな領域を複数の新たな象限に分割する。
【0052】
ここで、改めて
図9を参照する。
図9(d)は、S807の処理により、S507において取得された候補データに対応する点915が特定された状態を模式的に示している。
図9(e)は、点915を中心として、4つの象限911~914をあわせた領域(すなわち、領域910)の各辺の長さを半分にした新たな領域920が設定された状態を模式的に示している。このように、ユーザにより指定された候補データに対応する点915を基点として、新たな領域920が設定されることとなる。
図9(f)は、S807及びS806の処理が実行された後のS806の処理において、特徴量空間に設定された新たな領域920が新たな複数の象限921~924に分割された状態を模式的に示している。
【0053】
なお、
図9に示す例では、各軸における最大値及び最小値に基づき設定される領域を、当該最大値及び当該最小値の中間に基づき複数の象限に分割する場合について示したが、必ずしも各象限の設定方法を限定するものではない。具体的な一例として、S802において設定された点群データのクラスタリングが行われたうえで、当該クラスタリングにより設定される各クラスタが象限として設定されてもよい。
【0054】
次いで、
図10を参照して、
図5においてS503の処理として示した、候補データの決定に係る処理の一例について説明する。
S1001において、候補データ決定部206は、
図8におけるS806の処理において設定された各象限の中心点の位置(座標)を算出する。
S1002において、候補データ決定部206は、S1001において各象限について算出した中心点の位置と、
図8におけるS802の処理において設定された点群データに含まれる各点の位置と、の間の特徴量空間上における距離を算出する。
S1003において、候補データ決定部206は、S1002において算出した、各象限の中心点と、点群データに含まれる各点と、の間の距離の算出結果に基づき、各象限について、当該象限の中心点のより近くに位置する点を特定する。また、候補データ決定部206は、各象限について特定した点に対応するラベル付与済みデータを、当該象限に対応する候補データとして決定する。そして、候補データ抽出部207は、候補データ決定部206により候補データとして決定されたラベル付与済みデータを、ラベル付与済みデータ管理部202が管理する一連のラベル付与済みデータの中から抽出する。
【0055】
以上のような制御により、参考情報として提示される一連の候補データの中から、より確からしいものがユーザにより逐次指定される(例えば、選択される)ことで、参考情報としての提示対象となる候補データの特徴量空間における範囲が逐次制限される。そのため、互いに異なる複数のラベルそれぞれの信頼度に大きな差が無いような状況下でも、ユーザは、提示された候補データの中からより確からしいものを逐次指定することで、情報が提示される候補データの意味的な範囲を効率的に絞り込むことが可能となる。
これにより、ユーザは、膨大な数の候補データ(ラベル付与済みデータ)の確認を伴わずに、より簡便な操作により、対象データに対して付与することが望ましいラベルを選択することが可能となる。すなわち、本実施形態に係る技術に依れば、互いに異なる対象を示すラベルの信頼度に大きな差がなく、ユーザが注意してラベル付けを行うことが望ましい状況においても、当該ユーザによるラベル付けの作業を、より好適な態様で補助する効果が期待できる。
【0056】
<第2の実施形態>
以下に、本開示の第2の実施形態について説明する。なお、以降では、本実施形態に係る情報処理装置を、他の実施形態に係る情報処理装置と区別するために、便宜上「情報処理装置1100」と称する場合がある。
前述した第1の実施形態では、設定された特徴量空間を複数の象限に区切り、各象限から1つずつ候補データの抽出を行っていた。本実施形態では、アノテーションの対象となる対象データが各候補ラベルが示すものであることの確からしさを示すスコアに基づき、各象限から抽出される候補データの個数を変動させる。そこで、以降では、本実施形態に係る技術の特徴について、特に第1の実施形態と異なる部分に着目して説明し、第1の実施形態と実質的に同様の部分については詳細な説明は省略するものとする。
【0057】
(機能構成)
まず、
図11を参照して、本実施形態に係る情報処理装置1100の機能構成の一例について説明する。本実施形態に係る情報処理装置1100は、対象データ入力部1101を含む点で、
図2に示す情報処理装置200とは異なる。
【0058】
対象データ入力部1101は、アノテーションの対象となる対象データの入力を受け付ける。本実施形態に係る情報処理装置1100では、事前学習モデルに基づき、対象データ入力部1101が入力を受け付けた対象データに対して付与され得るラベルとそのスコアとを推定し、当該推定結果を候補データの決定に利用する。なお、同処理の詳細については、本実施形態に係る情報処理装置1100の処理の説明とあわせて別途後述する。
【0059】
(処理)
次いで、本実施形態に係る情報処理装置1100の処理の一例について以下に説明する。
まず、
図12を参照して、対象データに対してラベルを付与するための参考情報の提示に係る一連の処理の流れの一例について説明する。
図12に示す例は、S1201及びS1202の処理が追加されており、S503の処理の一部が変更されている点で、
図5に示す例とは異なる。
【0060】
S1201において、対象データ入力部1101は、アノテーションの対象となる対象データの入力を受け付ける。対象データの入力の受け付けについては、例えば、
図6を参照して説明した操作画面(ユーザインタフェース)が利用されてもよい。
具体的な一例として、画像表示領域610において対象領域612が指定された後に見本画像表示ボタン602が押下された場合に、画像表示領域610に表示された画像のうち対象領域612に相当する部分画像の画像データが対象データとして取得されてもよい。
【0061】
S1202において、スコア推定部203は、S1201において取得された対象データに対して付与され得るラベルと、当該対象データが当該ラベルが示すものであることの確からしさを示すスコアと、を推定する。
その後、S501及びS502の処理が実行されたのちに、S503において候補データの決定に係る処理が実行される。
【0062】
ここで、
図13を参照して、
図12に示す例におけるS503の処理の一例について説明する。
図13に示す例は、S1003の処理に変えて、S1301及びS1303の処理が含まれる点で、
図10に示す例とは異なる。
【0063】
S1301において、候補データ決定部206は、S1202において対象データについて推定された各ラベルのスコアに基づき、S502において設定した特徴量空間上に当該対象データを配置する。
S1302において、候補データ決定部206は、S1301で配置した対象データの特徴量空間上における位置と、S1001で設定した各象限の中心点との間の距離を算出する。そのうえで、候補データ決定部206は、対象データの位置と距離がより近い象限からより多くの候補データが決定されるように、各象限から対象データを決定する数を制御する。
具体的な一例として、候補データ決定部206は、対象データの位置に最も近い象限からは、当該象限の中心点との距離がより近い3つの候補データを決定してもよい。また、この場合には、候補データ決定部206は、対象データの位置に最も近い象限と辺を共有する象限からは、当該象限の中心点との距離がより近い2つの候補データを決定してもよい。また、候補データ決定部206は、対象データの位置に最も近い象限と点を共有する象限からは、当該象限の中心点との距離がより近い1つの候補データを決定してもよい。
そして、
図5に示す例と同様に、
図12に示すS504~S507の処理が実行されることとなる。
【0064】
なお、上述した例では、各象限から抽出される候補データの数が、対象データの位置との間の距離の近さに応じて固定で設定されていたが、必ずしも本実施形態に係る情報処理装置の動作を限定するものではない。
具体的な一例として、対象データの位置との間の距離の近さに応じて各象限から抽出される候補データの数が、ユーザからの指定に基づき変更されてもよい。また、他の一例として、対象データの位置と各象限の中心点との間の距離に応じて、当該象限から抽出される候補データの数が変動してもよい。また、上記では、各象限の代表点として中心点が利用されているが、中心点以外の他の点が利用されてもよい。
【0065】
<第3の実施形態>
以下に、本開示の第3の実施形態について説明する。なお、以降では、本実施形態に係る情報処理装置を、他の実施形態に係る情報処理装置と区別するために、便宜上「情報処理装置1400」と称する場合がある。
前述した第2の実施形態では、アノテーションの対象となる対象データが各候補ラベルが示すものであることの確からしさを示すスコアに基づき、各象限から抽出される候補データの個数を変動させていた。本実施形態では、対象データが各候補ラベルが示すものであることの確からしさを示すスコアに基づき、ユーザにより選択された候補データと対象データとの間の特徴量空間上における距離が所定の回数以上伸び続けた場合に、ユーザに対して所定の情報を報知する。そこで、以降では、本実施形態に係る技術の特徴について、特に第2の実施形態と異なる部分に着目して説明し、第2の実施形態と実質的に同様の部分については詳細な説明は省略するものとする。
【0066】
(機能構成)
まず、
図14を参照して、本実施形態に係る情報処理装置1400の機能構成の一例について説明する。本実施形態に係る情報処理装置1400は、報知部1401を含む点で、
図11に示す情報処理装置1100とは異なる。
【0067】
報知部1401は、所定の条件に応じて、所定の出力部に報知情報を報知させることで、当該報知情報をユーザに提示する。具体的な一例として、報知部1401は、ユーザにより選択された候補データと、対象データと、の間の特徴量空間上における距離が所定の回数以上伸びた場合に、当該ユーザに対して警告を示す報知情報を提示してもよい。
【0068】
(処理)
次いで、
図15を参照して、本実施形態に係る情報処理装置1400の処理の一例について、特に対象データに対してラベルを付与するための参考情報の提示に係る一連の処理の流れに着目して以下に説明する。
図15に示す例は、S507以降の処理として、S1501~S1504の処理が追加されている点で、
図12に示す例とは異なる。
【0069】
S1501において、候補データ決定部206は、S502において設定した特徴量空間上において、S1201において配置した対象データの位置と、S507において指定された候補データとの位置と、の間の距離を算出する。
S1502において、候補データ決定部206は、S507の処理が複数回にわたって逐次実行された状況下において、S1501において算出した距離が所定回数以上連続で伸び続けたか否かを判定する。具体的な一例として、候補データ決定部206は、S1501において算出した距離が連続で3回以上伸び続けたか否かを判定してもよい。
候補データ決定部206は、S1502において、S1501において算出した距離が所定回数以上連続で伸び続けていないと判定した場合には、処理をS503に進める。この場合には、改めてS503以降の処理が実行されることとなる。
【0070】
一方で、候補データ決定部206は、S1502において、S1501において算出した距離が所定回数以上連続で伸び続けたと判定した場合には、処理をS1503に進める。S1503において、報知部1501は、所定の出力部に報知情報(例えば、警告を示す報知情報)を報知させることで、当該報知情報をユーザに提示する。
【0071】
例えば、
図16は、所定の報知情報を表示情報としてユーザに提示するためのダイアログ(ユーザインタフェース)の一例を示している。ダイアログ1600は、警告を示す報知情報(例えば、文字情報)を表示することで、当該報知情報をユーザに提示する。ダイアログ1600は、OKボタン1601と、やり直しボタン1602と、閉じるボタン1603とを含む。
OKボタン1601は、現在実行中の処理の継続に係る指示をユーザから受け付けるボタンである。やり直しボタン1602は、現在実行中の処理を中断したうえで、候補データの決定に係る処理を最初からやり直す(特徴量空間の設定から改めて実行する)ための指示をユーザから受け付けるボタンである。閉じるボタン1603は、ダイアログ1600を閉じるための指示をユーザから受け付けるボタンである。なお、本実施形態では、閉じるボタン1603が押下された場合には、OKボタン1601が押下された場合と同様の処理が適用されるものとする。
【0072】
S1504において、候補データ決定部206は、処理のやり直しが選択されたか否かを判定する。具体的な一例として、候補データ決定部206は、
図16に示すダイアログ1600において、やり直しボタン1602が押下されたことを検知した場合に、処理のやり直しが選択されたものと判定してもよい。これに対して、候補データ決定部206は、ダイアログ1600において、OKボタン1601または閉じるボタン1603が押下されたことを検知した場合には、処理のやり直しが選択されていないものと判定してもよい。
候補データ決定部206は、S1504において処理のやり直しが選択されたと判定した場合には、処理をS502に進める。この場合には、S502の処理として示した特徴量空間の設定から改めて実行されることとなる。
一方で、候補データ決定部206は、S1504において処理のやり直しが選択されていないと判定した場合には、処理をS503に進める。この場合には、S503の処理として示した候補データの決定から改めて実行されることとなる。
【0073】
なお、上記では、対象データと、選択された候補データと、の間の距離が所定回数以上連続で伸び続けた場合に、報知情報(例えば、警告)が報知される場合の一例について説明したが、必ずしも本実施形態に係る情報処理装置の処理を限定するものではない。
具体的な一例として、対象データと、選択された候補データと、の間が所定距離以上離間しているか否かに応じて、報知情報が報知されてもよい。また、他の一例として、候補データが選択されるごとに、対象データと当該候補データとの間の距離を累積し、当該距離の累積値が閾値を超えた場合に、報知情報が報知されてもよい。また、上述した回数、距離、及び距離の累積値等の判定に係る閾値については、固定値であってもよいし、ユーザからの指示に基づき変更されてもよい。
【0074】
また、上述した例では、S1504の判定では、処理を続けるか、特徴量空間の設定から処理をやり直すかの二択となっていたが、同判定においてユーザが選択し得る選択肢は必ずしもこの例のみには限定されない。
具体的な一例として、前回の候補データの選択時の状態から改めて処理を再開するような選択肢が設けられていてもよい。なお、この場合には、前回の候補データの選択時における特徴量空間の状況を保存しておく処理が追加されてもよい。また、この場合には、
図16に示すダイアログに対して、前回の候補データの選択時の状態から改めて処理を再開する旨の指示をユーザから受け付けるためのインタフェース(例えば、ボタン等)が設けられていてもよい。
【0075】
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記録媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0076】
また、上述した内容はあくまで一例であり、本開示に係る技術の趣旨を逸脱しない範囲で、種々の変形及び変更が行われてもよい。
例えば、本実施形態に係る情報処理装置の各機能が、複数の装置が協働することで実現されてもよい。具体的な一例として、
図2、
図11、及び
図14それぞれに示す情報処理装置の構成要素のうち一部の構成要素が当該情報処理装置とは異なる外部の装置に設けられていてもよい。また、
図2、
図11、及び
図14それぞれに示す情報処理装置の構成要素のうち少なくとも一部の構成要素の処理に係る負荷が複数の装置に分散されてもよい。
また、上記では、主にアノテーションとしてラベルが付与されるデータが画像データの場合に着目して説明したが、前述したように当該データの種別は必ずしも画像データのみには限定されない。また、アノテーションとしてラベルが付与されるデータの種別に応じて、関連する情報の提示方法や、対象となるデータの指定をユーザから受け付ける方法が適宜変更されてもよい。
【符号の説明】
【0077】
200 情報処理装置
202 データ管理部
203 スコア推定部
205 ラベル候補入力部
206 候補データ決定部
208 候補データ出力部