IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特開2022-159036意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供
<>
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図1
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図2
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図3
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図4
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図5
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図6A
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図6B
  • 特開-意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022159036
(43)【公開日】2022-10-17
(54)【発明の名称】意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供
(51)【国際特許分類】
   G06N 3/08 20060101AFI20221006BHJP
   G06T 7/00 20170101ALI20221006BHJP
【FI】
G06N3/08
G06T7/00 350C
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2022045358
(22)【出願日】2022-03-22
(31)【優先権主張番号】17/301362
(32)【優先日】2021-03-31
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ZIGBEE
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】サハ・リポン ケイ
(72)【発明者】
【氏名】プラサド・ムクル アール
(72)【発明者】
【氏名】ゴーシュ・インドラディープ
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096GA30
5L096HA11
5L096JA22
5L096KA04
5L096KA15
5L096MA07
(57)【要約】
【課題】意志決定のためのDNN予測に関するセマンティックフィードバックの提供を開示する。
【解決手段】実施形態の態様に従って、動作は、予め訓練されたDNNによって、第1データセットの第1データポイントについて第1クラスを予測することを含む。第1データポイントに関連した第1クラスに基づき、第1データポイントについて、第1の特徴スコアの組が決定される。第1クラス及び第1データポイントの所定のクラスに基づき、DNNに関連した混同クラスペアの組が識別される。第1データセットは、第1データセット内の各データポイントについての第1の特徴スコアの組、第1クラス、及び混同クラスペアの組に基づき、セマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化される。各セマンティッククラスは、そのセマンティッククラスにクラスタ化されたデータセットの予測精度を示す。クラスタ化された第1データセット、第1の特徴スコアの組、及びセマンティッククラスの組に基づき、分類器が訓練される。
【選択図】図3
【特許請求の範囲】
【請求項1】
プロセッサが実行する方法であって、
実時間アプリケーションに関連した第1データセットを受け取ることと、
前記実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)によって、前記受け取られた第1データセットの第1データポイントに関連した第1クラスを予測することと、
前記第1データポイントに関連した前記予測された第1クラスに基づき、前記第1データポイントの第1の特徴スコアの組を決定することと、
前記予測された第1クラスと、前記第1データポイントに関連した所定のクラスとに基づき、前記DNNに関連した混同クラスペアの組を識別することと、
前記受け取られた第1データセット内の各データポイントについての前記決定された第1の特徴スコアの組と、前記予測された第1クラスと、前記識別された混同クラスペアの組とに基づき、前記受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化することであり、前記セマンティッククラスの組の中の各セマンティッククラスが、前記セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示す、ことと、
前記クラスタ化された第1データセットと、前記決定された第1の特徴スコアの組と、前記セマンティッククラスの組とに基づき、分類器を訓練することと
を有する方法。
【請求項2】
前記実時間アプリケーションに関連した第2データポイントを受け取ることと、
前記DNNによって、前記受け取られた第2データポイントに関連した第2クラスを予測することと、
前記受け取られた第2データポイントに関連した前記予測された第2クラスに基づき、前記第2データポイントの第2の特徴スコアの組を決定することと、
前記決定された第2の特徴スコアの組及び前記予測された第2クラスに基づき、前記訓練された分類器を前記第2データポイントに適用することと、
前記第2データポイントに対する前記訓練された分類器の適用に基づき、前記第2データポイントを前記セマンティッククラスの組の中の1つのセマンティッククラスに分類することと
を更に有する、請求項1に記載の方法。
【請求項3】
前記セマンティッククラスの組の中の、前記第2データポイントについての前記分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定することと、
前記決定された少なくとも1つのアクションをレンダリングすることと
を更に有する、請求項2に記載の方法。
【請求項4】
前記セマンティッククラスの組は、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを有する、
請求項1に記載の方法。
【請求項5】
前記第1の特徴スコアの組は、前記第1データポイントについての、尤度に基づいたサプライズアデクシー(LSA)スコア、距離に基づいたサプライズアデクシー(DSA)スコア、信頼スコア、ロジットスコア、又はロバスト性ダイバーシティスコアのうちの少なくとも1つの情報を有する、
請求項1に記載の方法。
【請求項6】
前記LSAスコアは、前記第1データポイントが前記第1データセットによる分布内にあるかどうかを示す、
請求項5に記載の方法。
【請求項7】
前記DSAスコアは、前記第1データポイントが、前記DNNに関連したハイパースペースにおいて前記予測された第1クラスに隣接する他のクラスよりも前記予測された第1クラスに近いかどうかを示す、
請求項5に記載の方法。
【請求項8】
前記信頼スコアは、前記第1データポイントに関連した前記第1クラスの予測についての前記DNNの確率スコアに対応する、
請求項5に記載の方法。
【請求項9】
前記ロジットスコアは、前記第1データポイントに関連した前記第1クラスの予測についての前記DNNのpre-softmaxレイヤからのスコアに対応する、
請求項5に記載の方法。
【請求項10】
前記ロバスト性ダイバーシティスコアは、前記第1データポイントに対応する1つ以上のバリエーションについての前記DNNによる予測の安定性の程度を示す、
請求項5に記載の方法。
【請求項11】
前記混同クラスペアの組の識別は、
前記第1データポイントに関連した前記所定のクラスを、前記第1データポイントに関連した前記予測された第1クラスと比較することと、
前記比較に基づいて、前記予測された第1クラス及び前記所定のクラスを含む第1クラスペアに関連した誤分類の第1インスタンスを識別することと、
前記識別された誤分類の第1インスタンスに基づき、前記第1クラスペアに関連した誤分類のインスタンスのカウントを決定することと、
前記誤分類のインスタンスのカウント及び閾値に基づき、前記混同クラスペアの組の中の混同クラスペアとして前記第1クラスペアを識別することと
を有する、
請求項1に記載の方法。
【請求項12】
前記受け取られた第1データセットを、クラスタ化されるべき現在のサンプルとして選択することと、
前記受け取られた第1データセットのクラスタ化のための動作の組を制御することであり、前記動作の組は、
前記選択された現在のサンプル内の各データポイントの第3の特徴スコアの組に基づき、第1精度グループ又は第2精度グループのうちの1つに前記選択された現在のサンプルをクラスタ化することと、
前記第1精度グループ内の第1のデータポイントの組の各データポイントについて前記DNNによって予測されたクラスに基づき、かつ、前記第1のデータポイントの組の中の対応するデータポイントに関連した所定のクラスに基づき、前記第1精度グループに関連した精度スコアを決定することと、
前記第2精度グループ内の第2のデータポイントの組のデータポイント数及び最小グループサイズ閾値に基づき、前記第2のデータポイントの組を後入れ先出し(LIFO)データ構造に格納することと、
前記第1精度グループに関連した前記決定された精度スコアを、前記セマンティッククラスの組の各セマンティッククラスに関連した精度閾値と比較することと、
前記比較に基づき、前記第1精度グループ内の前記第1のデータポイントの組を前記セマンティッククラスの組の中の1つのセマンティッククラスに割り当てることと、
前記LIFOデータ構造が空であるかどうかを決定することと、
前記LIFOデータ構造が空ではないとの決定に基づき、前記LIFOデータ構造から第3のデータポイントの組を読み出すことと、
前記読み出された第3のデータポイントの組を、クラスタ化されるべき前記現在のサンプルとして選択し直すことと
を有する、前記制御することと、
前記LIFOデータ構造が空であるとの決定に基づき、前記動作の組の反復制御に基づいて前記クラスタ化された第1データセットを取得することと
を更に有する、請求項1に記載の方法。
【請求項13】
前記動作の組は、前記比較、前記第1のデータポイントの組のデータポイント数、及び前記最小グループサイズ閾値に基づき、前記第1精度グループの前記第1のデータポイントの組を前記LIFOデータ構造に格納することを更に有する、
請求項12に記載の方法。
【請求項14】
前記識別された混同クラスペアの組と、前記受け取られた第1データセット内の各データポイントについての前記予測された第1クラスとに基づき、前記クラスタ化された第1データセットを前記セマンティッククラスの組に再クラスタ化することと、
前記再クラスタ化された第1データセット、前記決定された第1の特徴スコアの組、及び前記セマンティッククラスの組に基づき、前記分類器を訓練することと
を更に有する、請求項1に記載の方法。
【請求項15】
前記選択された現在のサンプルは、k平均法アルゴリズムに基づきクラスタ化される、
請求項12に記載の方法。
【請求項16】
前記分類器は、K近傍分類器に対応する、
請求項1に記載の方法。
【請求項17】
前記第1データポイントは、イメージデータ、オーディオデータ、又はテキストデータのうちの1つに対応し、
前記実時間アプリケーションは、イメージ分類、スピーチ認識、又はテキスト認識のうちの1つを有する、
請求項1に記載の方法。
【請求項18】
プロセッサが実行する方法であって、
実時間アプリケーションに関連したデータポイントを受け取ることと、
前記実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)によって、前記データポイントに関連したクラスを予測することと、
前記受け取られたデータポイントに関連した前記予測されたクラスに基づき、前記受け取られたデータポイントの特徴スコアの組を決定することと、
前記決定された特徴スコアの組及び前記予測されたクラスに基づき、予め訓練された分類器を前記受け取られたデータポイントに適用することであり、前記分類器は、セマンティッククラスの組の中の1つのセマンティッククラスにデータポイントを分類するよう予め訓練されており、前記セマンティッククラスの組の各セマンティッククラスは、前記セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示す、ことと、
前記受け取られたデータポイントに対する前記予め訓練された分類器の適用に基づき、前記受け取られたデータポイントを前記セマンティッククラスの組の中の1つのセマンティッククラスに分類することと、
前記セマンティッククラスの組の中の、前記受け取られたデータポイントについての前記分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定することと、
前記決定された少なくとも1つのアクションをレンダリングすることと
を有する方法。
【請求項19】
前記セマンティッククラスの組は、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを有する、
請求項18に記載の方法。
【請求項20】
命令を記憶しているメモリと、
実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)と、
前記メモリ及び前記DNNへ結合され、前記命令を実行して、
前記実時間アプリケーションに関連した第1データセットを受け取ることと、
前記DNNによって、前記受け取られた第1データセットの第1データポイントに関連した第1クラスを予測することと、
前記第1データポイントに関連した前記予測された第1クラスに基づき、前記第1データポイントの第1の特徴スコアの組を決定することと、
前記予測された第1クラスと、前記第1データポイントに関連した所定のクラスとに基づき、前記DNNに関連した混同クラスペアの組を識別することと、
前記受け取られた第1データセット内の各データポイントについての前記決定された第1の特徴スコアの組と、前記予測された第1クラスと、前記識別された混同クラスペアの組とに基づき、前記受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化することであり、前記セマンティッククラスの組の中の各セマンティッククラスが、前記セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示す、ことと、
前記クラスタ化された第1データセットと、前記決定された第1の特徴スコアの組と、前記セマンティッククラスの組とに基づき、分類器を訓練することと
を有するプロセスを実行するプロセッサと
を有する電子デバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本開示で議論されている実施形態は、意志決定(decision making)のためのディープニューラルネットワーク(Deep Neural Network,DNN)予測に関するセマンティックフィードバックの提供に関係がある。
【背景技術】
【0002】
ニューラルネットワークの分野における最近の進歩は、様々な実時間アプリケーションに関連し得るデータの分類のための様々な技術の開発をもたらしてきた。例えば、訓練されたディープニューラルネットワーク(DNN)が、異なるデータポイント(すなわち、イメージ)の分類又は検出といった様々な分類タスクのための異なるアプリケーションで利用され得る。
【0003】
本開示で請求されている対象は、上記のような環境でのみ動作する実施形態又はあらゆる欠点を解消する実施形態に限定されない。むしろ、この背景は、本開示で記載されているいくつかの実施形態が実施され得る技術的範囲の一例を説明するためにのみ与えられている。
【発明の概要】
【0004】
実施形態の態様に従って、デバイスによる動作は、実時間アプリケーションに関連した第1データセットを受け取ることを含んでよい。動作は、実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)によって、受け取られた第1データセットの第1データポイントに関連した第1クラスを予測することを更に含んでよい。動作は、第1データポイントに関連した予測された第1クラスに基づき、第1データポイントの第1の特徴スコアの組を決定することを更に含んでよい。動作は、予測された第1クラスと、第1データポイントに関連した所定のクラスとに基づき、DNNに関連した混同クラスペアの組を識別することを更に含んでよい。動作は、受け取られた第1データセット内の各データポイントについての決定された第1の特徴スコアの組、予測された第1クラス、及び識別された混同クラスペアの組に基づき、受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化することを更に含んでよい。セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。動作は、クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき分類器を訓練することを更に含んでよい。
【0005】
実施形態の目的及び利点は、少なくとも、特許請求の範囲で特に指し示されている要素、特徴、及び組み合わせによって、実現及び達成される。
【0006】
上記の概要及び以下の詳細な説明は両方とも、例として与えられており、請求されている発明の説明であって限定ではない。
【0007】
例となる実施形態は、添付の図面の使用を通じて、更なる特定及び詳細をもって記載及び説明される。
【図面の簡単な説明】
【0008】
図1】意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供に関連した環境の例を表す図である。
図2】意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供のためのシステムの例のブロック図である。
図3】意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供のための方法の例のフローチャートである。
図4】予め訓練された分類器に基づきディープニューラルネットワーク(DNN)の予測結果に関するセマンティックフィードバックを提供する方法の例のフローチャートである。
図5】ディープニューラルネットワーク(DNN)に関連した混同クラスの組の識別のための方法の例のフローチャートである。
図6A】分類器の訓練のためのセマンティッククラスの組の中の1つのセマンティッククラスへの受け取られた第1データセットのクラスタ化の方法の例のフローチャートを表す。
図6B】分類器の訓練のためのセマンティッククラスの組の中の1つのセマンティッククラスへの受け取られた第1データセットのクラスタ化の方法の例のフローチャートを表す。
図7】セマンティッククラスの組の中の1つのセマンティッククラスへの受け取られた第1データセットのクラスタ化のアルゴリズムのプログラムコードの例示的なシナリオである。
【発明を実施するための形態】
【0009】
図面に表されている全ての図は、本開示で記載されている少なくとも1つの実施形態に従う。
【0010】
ディープニューラルネットワーク(DNN)は、様々な分類タスクにおいて優れた分類精度を達成しているが、特定のアプリケーション、例えば、自動運転又は医療診断などでは、不正確な決定又は誤分類が(ごく一部の場合でも)、経済的又は物理的な損失を引き起こす可能性がある。これは、DNNの予測結果の信頼性に関して、及びDNNの予測結果に基づいてとられ得る決定又はアクションに関して、重要な懸案事項を生じさせる可能性がある。説明可能な人工知能(eXplainable Artificial Intelligence,XAI)の分野における従来の解決法は、DNNの予測された出力を生成するために使用され得る特徴の組に関してDNNの予測出力の解釈を提供し得る。他の従来技術は、DNNの予測出力の信頼性を定量化するために、DNNに関連した生得的信頼の使用を伴い得る。しかし、生得的信頼スコアは、エンドユーザ(例えば、非技術者)には容易に解釈することができないことがあり、ユーザがDNNの予測結果(すなわち、信頼スコア)に関連した適切な決定又はアクションをとることできないことがある。
【0011】
本開示で記載されるいくつかの実施形態は、意志決定のためにディープニューラルネットワーク(DNN)の予測結果に関するセマンティックフィードバックを有効に提供する方法及びシステムに関する。本開示において、データセットは、データセット内の各データポイントについての第1の特徴スコアの組、DNNによって予測されたクラス、及び混同クラスペアの組に基づき、セマンティッククラスの組にクラスタ化され得る。各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。分類器は、クラスタ化されたデータセット、第1の特徴スコアの組、及びセマンティッククラスの組に基づき、訓練され得る。動作フェーズにおいて、訓練された分類器は、新しいデータポイントについて決定された第2の特徴スコアの組と、その新しいデータポイントについてDNNによって予測されたクラスとに基づき、新しいデータポイントをセマンティッククラスの組の中の1つのセマンティッククラスに分類するために使用され得る。セマンティッククラスに関連した(つまり、新しいデータポイントについて決定された)アクションが更に決定され、決定されたアクションは、新しいデータポイントについての分類されたセマンティッククラスに基づき適切な意志決定においてユーザを助けるようユーザのためにレンダリングされ得る。
【0012】
本開示の1つ以上の実施形態に従って、DNNによる分類の技術的分野は、コンピューティングシステムが、エンドユーザ(例えば、非技術者)によって理解可能であってかつエンドユーザによって適切な意志決定のために使用され得るDNNの予測結果に関してセマンティックフィードバックを有効に提供することができるように、コンピューティングシステムを構成することによって、改善され得る。コンピューティングシステムは、DNN予測結果に関してユーザが解釈可能なフィードバックを提供し得ない他の従来システムと比較して、DNNに供給されたデータポイントを、セマンティッククラスにクラスタ化されたデータポイントの予測精度を示すセマンティッククラスにクラスタ化するよう訓練され得る分類器を含み得る。
【0013】
システムは、実時間アプリケーションに関連した第1データセットを受け取るよう構成されてよい。第1データセット内のデータポイントの例は、実時間アプリケーションに関連したイメージデータ、スピーチデータ、オーディオデータ、テキストデータ、又は他の形式のデジタル信号を含み得るが、これらに限られない。システムは更に、受け取られた第1データセットの第1データポイントに関連した第1クラスを予測するようにDNNを制御するよう更に構成されてよく、DNNは、実時間アプリケーションに関連した分類タスクのために予め訓練されてよい。例えば、分類タスクは、イメージ分類タスクであってよく、第1データポイントは、動物(例えば、猫)の入力イメージを含んでもよい。システムは、受け取られた第1データポイント(例えば、猫の入力イメージ)に基づき第1クラス(例えば、猫のラベル)を予測するようにDNNを制御するよう構成されてよい。
【0014】
システムは更に、第1データポイントに関連した予測された第1クラスに基づき、第1データポイントの第1の特徴スコアの組を決定するよう構成されてよい。第1の特徴スコアの組の例は、第1データポイントについての、尤度に基づいたサプライズアデクシー(Likelihood-based Surprise Adequacy,LSA)スコア、距離に基づいたサプライズアデクシー(Distance-based Surprise Adequacy,DSA)スコア、信頼スコア(confidence score)、ロジットスコア(logit score)、又はロバスト性ダイバーシティスコア(robustness diversity score)のうちの少なくとも1つの情報を含み得るが、これらに限られない。LSAスコアは、第1データポイントが第1データセットによる分布内にあるかどうかを示し得る。DSAスコアは、第1データポイントが、DNNに関連したハイパースペースにおいて、予測された第1クラスに隣接する他のクラスよりも、予測された第1クラスに近いかどうかを示し得る。信頼スコアは、第1データポイントに関連した第1クラスの予測についてのDNNの確率スコアに対応する。ロジットスコアは、第1データポイントに関連した第1クラスの予測についてのDNNのpre-softmaxレイヤからのスコアに対応し得る。ロバスト性ダイバーシティスコアは、第1データポイントに対応する1つ以上のバリエーションについてのDNNによる予測の安定性の程度を示し得る。
【0015】
システムは更に、予測された第1クラスと、第1データポイントに関連した所定のクラスとに基づき、DNNに関連した混同クラスペア(confusing class pairs)の組を識別するよう構成されてよい。システムは更に、受け取られた第1データセット内の各データポイントについての決定された第1の特徴スコアの組、予測された第1クラス、及び識別された混同クラスペアの組に基づき、受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化するよう構成されてよい。セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。セマンティッククラスの組の例は、正しい可能性のある(likely-correct)(又は確実に正しい(reliably correct))セマンティッククラス、2つのうちの1つの(one-of-two)セマンティッククラス、正しくない可能性のある(likely incorrect)セマンティッククラス、又は知らない(do-not-know)セマンティッククラス、のうちの少なくとも1つを含み得るが、これらに限られない。システムは更に、クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき、分類器を訓練するよう構成されてよい。分類器の例は、K近傍(K-Nearest Neighbor,K-NN)分類器を含み得るが、これに限られない。
【0016】
例えば、動作フェーズにおいて、システムは、実時間アプリケーションに関連した第2データポイント(例えば、新しいデータポイント)を受け取るよう構成されてよい。システムは更に、第2データポイントに関連した第2クラスを予測するようにDNNを制御するよう構成されてよく、DNNは、実時間アプリケーションの分類タスクのために予め訓練されてよい。システムは更に、受け取られた第2データポイントに関連した予測された第2クラスに基づき、第2データポイントの第2の特徴スコアの組を決定するよう構成されてよい。第2の特徴スコアの組は、第1の特徴スコアの組に類似し得る。
【0017】
システムは更に、決定された第2の特徴スコアの組及び予測された第2クラスに基づき、予め訓練された分類器を、受け取られた第2データセットに適用するよう構成されてよい。分類器は、セマンティッククラスの組のうちの1つのセマンティッククラスにデータポイントを分類するよう予め訓練されてよい。システムは更に、第2データポイントに対する予め訓練された分類器の適用に基づき、第2データポイントをセマンティッククラスの組の中の1つのセマンティッククラスに分類するよう構成されてよい。システムは更に、セマンティッククラスの組の中の、第2データポイントについての分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定するよう構成されてよい。システムは更に、決定された少なくとも1つのアクションをエンドユーザのためにレンダリングするよう構成されてよい。
【0018】
通常、従来システムは、エンドユーザが容易に理解することができない可能性があるDNNの予測結果の解釈を提供することがある。言い換えると、従来システムによる解釈は、ユーザが解釈に基づいて決定又はアクションを行うのに直感的でないことがある。開示されているシステムは、他方で、人が理解することできる様々なセマンティッククラスにDNNの入力空間をパーティション化し得る。セマンティッククラスは、そのセマンティッククラスにクラスタ化されたデータポイントの予測精度を示し得る。特定のセマンティッククラスにおけるデータポイントのクラスタ化は、データポイントの分類におけるDNNの信頼性に関して、ユーザに定性的なフィードバックを提供するために使用されてよく、更には、ユーザが定性的なフィードバックに基づいて、DNNの予測出力を使用する又は使用しない方法のような、情報に基づく決定を行うことを可能にし得る。
【0019】
本開示の実施形態は、添付の図面を参照して説明される。
【0020】
図1は、本開示で記載される少なくとも1つの実施形態に従って配置される、意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供に関連した環境の例を表す図である。図1を参照して、環境100が示されている。環境100は、電子デバイス102を含んでよい。電子デバイス102は、ディープニューラルネットワーク(DNN)104及び分類器106を更に含んでよい。環境100は、データベース108、ユーザエンドデバイス110、及び通信ネットワーク112を含んでよい。電子デバイス102、データベース108、及びユーザエンドデバイス110は、通信ネットワーク112を介して、互いに通信可能に結合され得る。図1には、ユーザエンドデバイス110を操作することができる、又はそれに関連し得るユーザ114が更に示されている。
【0021】
電子デバイス102は、意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供のための1つ以上の動作を実行するよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを含んでよい。1つ以上の実施形態において、電子デバイス102は、通信ネットワーク112を介して、第1データセット(データベース108に記憶されてよい。)を受け取るよう構成されてよい。いくつかの実施形態において、電子デバイス102は、電子デバイス102のメモリ(図1には図示せず。)に第1データセットを記憶するよう構成されてもよい。第1データセット内のデータポイントは、イメージデータ、オーディオデータ、スピーチデータ、又はテキストデータに対応してよいが、これらに限られない。データセットは、DNN104が特定の分類タスクを実行し得る実時間アプリケーションに対応してよい。実時間アプリケーションの例は、イメージ認識、分類アプリケーション、スピーチ認識アプリケーション、テキスト認識アプリケーション、マルウェア検出アプリケーション、自律型車両アプリケーション、異常検出アプリケーション、機械翻訳アプリケーション、例えば、電気生体信号、動きデータ、及びデプスデータなど、しかしこれらに限られない異なるデジタル信号からのパターン認識を含み得るが、これらに限られない。
【0022】
電子デバイス102は、受け取られた第1データセットの第1データポイントに関連した第1クラス(例えば、ラベル)を予測するように、予め訓練されたDNN104を制御するよう構成されてよい。例えば、DNN104がイメージ分類のために予め訓練されており、第1データポイントがイメージである場合に、DNN104は、動物(例えば、猫)などのイメージ内の対象を第1クラスと予測するよう制御され得る。いくつかの実施形態において、電子デバイス102は、受け取られた第1データセットに関連した第1クラスの予測を示し得る第1信頼スコア(すなわち、確率値としての生得的信頼スコア)を生成するようDNN104を制御し得る。同様に、電子デバイス102は、第1データセット内の各データポイントに関連した第1クラスを予測するように、予め訓練されたDNN104を制御するよう構成されてもよい。
【0023】
電子デバイス102は、第1データポイントに関連した予測された第1クラスに基づき、第1データポイントの第1の特徴スコアの組を決定するよう更に構成されてもよい。第1の特徴スコアの組の例は、第1データポイントについての、尤度に基づいたサプライズアデクシー(LSA)スコア、距離に基づいたサプライズアデクシー(DSA)スコア、信頼スコア、ロジットスコア、又はロバスト性ダイバーシティスコアのうちの少なくとも1つの情報を含み得るが、これらに限られない。第1の特徴スコアの組の詳細は、例えば、図3で、与えられている。
【0024】
電子デバイス102は、予測された第1クラスと、第1データポイントに関連した所定のクラスとに基づき、DNN104に関連した混同クラスペアの組を識別するよう更に構成されてもよい。同様に、電子デバイス102は、第1データセット内の各データポイントについて混同クラスペアの組を識別するよう構成されてもよい。データポイントについての混同クラスペアの組の識別は、例えば、図5で、更に記載される。
【0025】
電子デバイス102は、受け取られた第1データセット内の各データポイントについての決定された第1の特徴スコアの組、予測された第1クラス、及び識別された混同クラスペアの組に基づき、受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化するよう構成されてよい。セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。セマンティッククラスの組の例は、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを含み得るが、これらに限られない。セマンティッククラスの組の詳細は、例えば、図3図4図6A図6B、及び図7で、与えられている。電子デバイス102は更に、クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき、分類器(例えば、分類器106)の訓練を制御するよう構成されてもよい。セマンティッククラスの組の中の1つのセマンティッククラスへのデータポイント(すなわち、予め訓練されたDNN(例えば、DNN104)の入力)の分類のための分類器(例えば、分類器106)の訓練は、例えば、図3図6A図6B、及び図7で、更に記載される。
【0026】
電子デバイス102は、通信ネットワーク112を介して、実時間アプリケーションに関連した第2データポイントを受け取るよう構成されてよい。第2データポイントは、データベース108又はユーザエンドデバイス110に記憶されてよい。電子デバイス102は更に、第2データポイントに関連した第2クラス(すなわち、ラベル)を予測するように、予め訓練されたDNN104を制御するよう構成されてもよい。電子デバイス102は更に、受け取られた第2データポイントに関連した予測された第2クラスに基づき、第2データポイントの第2の特徴スコアの組を決定するよう構成されてもよい。
【0027】
電子デバイス102は更に、決定された第2の特徴スコアの組及び予測された第2クラスに基づき、予め訓練された分類器(例えば、分類器106)を、受け取られた第2データポイントに適用するよう構成されてもよい。分類器106は、セマンティッククラスの組の中の1つのセマンティッククラスにデータポイントを分類するよう予め訓練されてよい。電子デバイス102は更に、第2データポイントに対する予め訓練された分類器106の適用に基づき、セマンティッククラスの組の中の1つのセマンティッククラスに第2データポイントを分類するよう構成されてもよい。電子デバイス102は更に、セマンティッククラスの組の中の、第2データポイントについての分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定するよう構成されてもよい。電子デバイス102は更に、決定された少なくとも1つのアクションをユーザ114のためにレンダリングするよう構成されてもよい。予め訓練された分類器に基づいたセマンティッククラスの組の中の1つのセマンティッククラスへのデータポイントの分類は、例えば、図4で、更に記載される。
【0028】
電子デバイス102の例には、対象検出エンジン、認識エンジン、モバイルデバイス、デスクトップコンピュータ、ラップトップ、コンピュータワークステーション、訓練デバイス、コンピューティングデバイス、メインフレームマシン、クラウドサーバなどのサーバ、及びサーバのグループが含まれ得るが、これらに限られない。1つ以上の実施形態において、電子デバイス102は、ユーザエンドの端末デバイスと、ユーザエンドの端末デバイスへ通信可能に結合されたサーバとを含んでもよい。ユーザエンドの端末デバイスの例には、モバイルデバイス、デスクトップコンピュータ、ラップトップ、及びコンピュータワークステーションが含まれ得るが、これらに限られない。電子デバイス102は、プロセッサ、マイクロプロセッサ(例えば、1つ以上の動作を実行したり又はその動作を制御したりするためのもの)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、又は特定用途向け集積回路(ASIC)を含むハードウェアを用いて実装されてもよい。いくつかの他の事例では、電子デバイス102は、ハードウェアとソフトウェアとの組み合わせを用いて実装されてもよい。
【0029】
図1では、分類器106及び予め訓練されたDNN104が電子デバイス102の部分として示されているが、いくつかの実施形態において、分類器106及び予め訓練されたDNN104は、本開示の範囲からの逸脱なしに、単一のデバイスとして一体化されてもよい。代替的に、分類器106及び予め訓練されたDNN104は、本開示の範囲からの逸脱なしに、別個のデバイス内で実装されてもよい。
【0030】
DNN104は、特定の実時間アプリケーションのための出力結果を生成するよう入力データポイントを分類又は認識するよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを有してよい。例えば、予め訓練されたDNN104は、入力イメージ内の種々の対象を認識してよく、入力イメージ内の対象ごとに一意のラベルを供給してよい。一意のラベルは、種々の生物(例えば、人間、動物、植物)又は非生物(例えば、車両、建物、コンピュータブック等、しかしこれらに限られない)エンティティに対応してよい。他の例では、スピーチ認識のアプリケーションに関係がある予め訓練されたDNN104は、オーディオサンプルのソース(人間の話者)を識別するよう種々の入力オーディオサンプルを認識してもよい。実施形態において、出力される一意のラベルは、入力データポイントについてのDNN104の予測結果に対応してよい。DNN104は、DNN104の出力される予測結果の確率(0から1の間)を示し得る(生得的信頼スコアとしての)第1信頼スコアを出力するよう構成されてよい。例えば、動物(例えば、猫)として入力データポイントについては、訓練されたDNN104は、動物(例えば、猫)としての一意のラベルで入力データポイントを予測するよう、より高い第1信頼スコア(例えば、1.0に近い0.95)を生成してよい。DNN104は、プロセッサ、マイクロプロセッサ(例えば、1つ以上の動作を実行したり又はその動作を制御したりするためのもの)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、又は特定用途向け集積回路(ASIC)を含むハードウェアを用いて実装されてもよい。いくつかの他の事例では、DNN104は、コード、プログラム、又はソフトウェア命令の組であってもよい。DNN104は、ハードウェアとソフトウェアとの組み合わせを用いて実装されてもよい。
【0031】
いくつかの実施形態において、DNN104は、入力データポイントの認識のための複数の認識レイヤ(図示せず。)に対応してもよく、夫々の連続したレイヤは、入力として、前のレイヤの出力を使用してよい。例えば、複数の認識レイヤは、入力レイヤ、1つ以上の隠しレイヤ、及び出力レイヤを含んでもよい。各認識レイヤは、複数のニューロンと関連付けられてもよく、各ニューロンは更に、複数の重みと関連付けられてもよい。DNN104の訓練中、複数の認識レイヤ及び各レイヤ内の複数のニューロンは、DNN104のハイパーパラメータから決定されてよい。そのようなハイパーパラメータは、訓練データセットに関してDNN104を訓練する前又はその最中にセットされてよい。DNN104は、入力データポイント及びDNN104の出力結果(すなわち、グラウンドトゥルース)に基づき異なるレイヤで複数の重みを調整するよう訓練されてもよい。
【0032】
DNN104の各ニューロン又はノードは、DNN104の入力としての第1データポイント(例えば、イメージデータ)とDNN104の出力としての予測結果又はクラスとの間の関係についてDNN104を訓練するよう調整可能なパラメータの組を有する数式(例えば、シグモイド関数又は正規化線形ユニット)に対応し得る。パラメータの組には、例えば、重みパラメータ、正則化パラメータ、などが含まれ得る。各ニューロンは、数式を使用して、DNN104の他のレイヤ(例えば、前のレイヤ)内のニューロンからの1つ以上の入力に基づき出力を計算し得る。DNN104のニューロンの全部又は一部は、同じ又は異なる数式に対応してもよい。
【0033】
DNN104の訓練において、DNN104の各ニューロンの1つ以上のパラメータは、(訓練データセットからの)所与の入力についての最終レイヤの出力がDNN104の損失関数に基づいた正しい結果と一致するかどうかに基づき、更新され得る。この更新プロセスは、損失関数の最小値が達成され得かつ訓練エラーが最小限にされ得るまで、同じ又は異なる入力について繰り返されてよい。DNNを訓練するためのいくつかの方法、例えば、最急降下法(gradient descent)、確率的勾配降下法(stochastic gradient descent)、バッチ最急降下法(batch gradient descent)、勾配ブースティング(gradient boost)、メタヒューリスティクス(meta-heuristics)などが、当該技術で知られている。DNN104は、電子デバイスのようなコンピューティングデバイスが、1つ以上の出力(すなわち、クラスラベル)への1つ以上のデータ入力(すなわち、例えば、イメージデータ)の分類のための1つ以上の動作を実行することを可能にするよう構成されたコード及びルーチンを含んでもよい。
【0034】
DNN104の例には、回帰型ニューラルネットワーク(Recurrent Neural Network,RNN)、人工ニューラルネットワーク(Artificial Neural Network,ANN)、畳み込みニューラルネットワーク(Convolutional Neural Network,CNN)、CNN-回帰型ニューラルネットワーク(CNN-RNN)、R-CNN、Fast R-CNN、Faster R-CNN、長・短期記憶(Long Short-Term Memory,LSTM)ネットワークベースのRNN、CNN-ANN、LSTM+ANN、ゲート付き回帰型ユニット(Gated Recurrent Unit、GRU)に基づいたRNN、ディープベイジアン(deep Bayesian)ニューラルネットワーク、敵対的生成ネットワーク(Generative Adversarial Network,GAN)、及び/又はそのようなネットワークの組み合わせが含まれ得るが、これらに限られない。
【0035】
分類器106は、入力データポイントをセマンティッククラスの組の中の1つのセマンティッククラスに分類するよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを有してよい。セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。セマンティッククラスの組の例は、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを含み得るが、これらに限られない。分類器106は、電子デバイス102によって、実時間アプリケーションに関する第1データセット内の各データポイントについてのクラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づいて、予め訓練されてよい。分類器106の訓練は、例えば、図3図6A図6B、及び図7で、記載される。分類器106の組の例には、K近傍(K-NN)分類器、決定木分類器、サポートベクトルマシン(Support Vector Machine,SVM)分類器、単純ベイス分類器、又はロジスティック回帰分類器が含まれ得るが、これらに限られない。
【0036】
データベース108は、実時間アプリケーションに関する複数のデータポイントを含むデータセット(例えば、第1データセット)を記憶するよう構成され得る適切な回路、ロジック、インターフェース、及び/又はコードを有してよい。電子デバイス102は、データベース108から第1データセットを受け取ってよい。更に、第1データセット内の複数のデータポイントは、DNN104及び/又は分類器106を訓練するために使用され得る訓練データポイントの組(つまり、訓練データセット)であってもよい。複数のデータポイントは、DNN104を試験するか又は分類器106を試験するために使用され得るテストデータポイントの組(つまり、テストデータセット)を更に含んでもよい。データベース108は、訓練データセット又はテストデータセットを含む関係又は非関係データベースであってよい。また、いくつかの場合に、データベース108は、クラウドサーバのようなサーバに記憶されてもよく、あるいは、電子デバイス102にキャッシュされて記憶されてもよい。データベース108のサーバは、通信ネットワーク112を介して、電子デバイス102から、データセット(例えば、第1データセット)又は新しいデータポイント(例えば、第2データポイント)を供給するためのリクエストを受け取るよう構成され得る。これに応えて、データベース108のサーバは、受け取られたリクエストに基づき、要求されているデータセット又は特定のデータポイントを読み出して電子デバイス102へ通信ネットワーク112を介して供給するよう構成され得る。いくつかの実施形態で、データベース108は、分類器106を記憶するよう構成されてもよい。いくつかの実施形態において、データベース108は、特定の実時間アプリケーションのための予め訓練されたDNN104を記憶するよう構成されてもよい。追加的に、又は代替的に、データベース108は、プロセッサ、マイクロプロセッサ(例えば、1つ以上の動作を実行したり又はその動作を制御したりするためのもの)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、又は特定用途向け集積回路(ASIC)を含むハードウェアを用いて実装されてよい。いくつかの他の事例では、データベース108は、ハードウェアとソフトウェアとの組み合わせを用いて実装されてもよい。
【0037】
ユーザエンドデバイス110は、特定の分類タスク(すなわち、DNN104及び分類器106が訓練されるためのもの)が実行され得る実時間アプリケーションを記憶するよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを有してよい。いくつかの実施形態において、ユーザエンドデバイス110は、予め訓練されたDNN104及び分類器106をデプロイして、デプロイされた予め訓練されたDNN104の予測結果に関するセマンティックフィードバックを提供し得る。ユーザエンドデバイス110は、デプロイされたDNN104を利用して、実時間アプリケーションの分類又は検出タスクを実行し、分類器106を訓練し、そして、デプロイされたDNN104によって生成された予測又は分類結果に関するセマンティックフィードバック(すなわち、セマンティッククラスの組)の決定のために、デプロイされた分類器106を利用し得る。例えば、ユーザエンドデバイス110は、内蔵カメラ又はサーバから入力イメージを受け取ってよく、そして、ユーザエンドデバイス110にデプロイされている訓練されたDNN104に基づき、入力イメージに対してイメージ分類又は認識を実行してよい。ユーザエンドデバイス110は、分類器106を訓練し、デプロイされている訓練された分類器106を更に使用して、DNN104によって実行された(すなわち、ユーザエンドデバイス110にデプロイされた)イメージの分類(すなわち、予測されたイメージクラス)の信頼性に関するセマンティックフィードバックを決定し得る。他の例では、ユーザエンドデバイス110は、周囲から実時間イメージを受け取り、内蔵の訓練されたDNN104によりイメージ内で捕捉された種々の対象を検出し得る自律型車両であってもよい。そのようなシナリオでは、ユーザエンドデバイス110は、予め訓練された分類器106を使用して、DNN104の予測出力に関するセマンティックフィードバック(すなわち、セマンティッククラスの組)を決定し、そして、自律型車両のDNN104によって実行された潜在的な誤った判断又は不正確な検出に関して、自律型車両に関連したユーザに指示又は警告し得る。いくつかの実施形態において、ユーザエンドデバイス110は、自律型車両にデプロイされているDNN104によって実行された不正確な検出及び誤った判断に基づき適切なアクション(例えば、自律型車両のステアリングの制御又はブレーキの適用)をとることができる。
【0038】
他の例では、ユーザエンドデバイス110は、種々のスピーチデータサンプルに関して訓練されたDNN104によって実行されたスピーチ認識に基づきユーザ認証を実行し得るオーディオセキュリティシステムであってもよい。同様に、ユーザエンドデバイス110は、セマンティッククラスの組を用いて、認証の精度を検証するための訓練された分類器106の使用によって、DNN104によって実行されたユーザの認証を検証してもよい。ここで留意されるべきは、上記の例は、本開示に対する限定として解釈されるべきではなく、DNN104は、簡潔さのために述べられていない多くの可能なアプリケーションで使用されてもよいことである。ユーザエンドデバイス110の例には、モバイルデバイス、デスクトップコンピュータ、ラップトップ、コンピュータワークステーション、コンピューティングデバイス、メインフレームマシン、クラウドサーバなどのサーバ、及びサーバのグループが含まれ得るが、これらに限られない。
【0039】
通信ネットワーク112は通信媒体を含んでよく、これを通じて、電子デバイス102は、データベース108及びユーザエンドデバイス110と通信し得る。通信ネットワーク112の例には、インターネット、クラウドネットワーク、ワイヤレス・フィデリティ(Wi-Fi)ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、及び/又はメトロポリタン・エリア・ネットワーク(MAN)が含まれ得るが、これらに限られない。環境100内の様々なデバイスは、様々な有線及び無線通信プロトコルに従って通信ネットワーク112へ接続するよう構成されてよい。そのような有線及び無線通信プロトコルの例には、伝送制御プロトコル及びインターネットプロトコル(Transmission Control Protocol and Internet Protocol,TCP/IP)、ユーザ・データグラム・プロトコル(User Datagram Protocol,UDP)、ハイパーテキスト転送プロトコル(Hypertext Transfer Protocol,HTTP)、ファイル転送プロトコル(File Transfer Protocol,FTP)、ZigBee、EDGE、IEEE802.11、ライト・フィデリティ(Light Fidelity,Li-Fi)、802.16、IEEE802.11s、IEEE802.11g、マルチホップ通信、ワイヤレス・アクセス・ポイント(Access Point,AP)、デバイス間(device-to-device)通信、セルラー通信プロトコル、及び/又はBluetooth(登録商標)(BT)通信プロトコル、あるいは、それらの組み合わせが含まれ得るが、これらに限られない。
【0040】
本開示の範囲から逸脱せずに、図1に対して変更、追加、又は削除が行われてよい。例えば、環境100は、本開示で図示及び記載されているものよりも多い又は少ない要素を含んでもよい。例えば、いくつかの実施形態で、環境100は、電子デバイス102を含むが、データベース108及びユーザエンドデバイス110を含まなくてもよい。その上、いくつかの実施形態で、データベース108及びユーザエンドデバイス110の夫々の機能性は、本開示の範囲からの逸脱せずに、電子デバイス102に組み込まれてもよい。
【0041】
図2は、本開示で記載される少なくとも1つの実施形態に従って配置される、意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供のためのシステムの例のブロック図である。図2は、図1からの要素とともに説明される。図2を参照して、例となるシステム202のブロック図200が示されている。例となるシステム202は、電子デバイス102、DNN104、及び分類器106を含んでよい。電子デバイス102は、プロセッサ204、メモリ206、永続性データストレージ208、入出力(I/O)デバイス210、及びネットワークインターフェース212を含んでよい。I/Oデバイス210は、表示スクリーン210Aを更に含んでもよい。
【0042】
プロセッサ204は、電子デバイス102によって実行される種々の動作に関連したプログラム命令を実行するよう構成され得る適切なロジック、回路、及び/又はインターフェースを含んでよい。例えば、動作のいくつかは、第1データセットの受け取りと、受け取られた第1データセット内の第1データポイントに関連した第1クラスの予測のためのDNN104の制御と、第1データポイントの第1の特徴スコアの組の決定と、混同クラスペアの組の識別と、受け取られた第1データセットのクラスタ化と、分類器106の訓練とを含んでよい。1つ以上の動作は、第2データポイントの受け取りと、第2データポイントに関連した第2クラスの予測のためのDNN104の制御と、第2データポイントの第2の特徴スコアの組の決定と、第2データポイントに対する訓練された分類器106の適用と、セマンティッククラスの組の中の1つのセマンティッククラスへの第2データポイントの分類とを更に含んでもよい。プロセッサ204は、様々なコンピュータハードウェア又はソフトウェアモジュールを含む如何なる適切な専用又は汎用コンピュータ、コンピューティングエンティティ又は処理デバイスも含んでよく、如何なる適用可能なコンピュータ可読記憶媒体にも記憶された命令を実行するよう構成されてよい。例えば、プロセッサ204は、マイクロプロセッサ、マイクロコントローラ、デジタル・シグナル・プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、あるいは、プログラム命令を解釈及び/又は実行するよう及び/又はデータを処理するよう構成されたあらゆる他のデジタル又はアナログ回路を含んでよい。図2では、単一のプロセッサとして表されているが、プロセッサ204は、本開示で記載されている電子デバイス102の動作をいくつでも個別的に又は集合的に実行するよう又はその実行を指示するよう構成されたプロセッサをいくつでも含んでよい。更に、プロセッサの1つ以上は、異なるサーバのような、1つ以上の異なる電子デバイスに存在してもよい。
【0043】
いくつかの実施形態で、プロセッサ204は、メモリ206及び/又は永続性データストレージ208に記憶されているプログラム命令を解釈及び/又は実行するよう及び/又は記憶されているデータを処理するよう構成されてよい。いくつかの実施形態で、プロセッサ204は、永続性データストレージ208からプログラム命令をフェッチし、プログラム命令をメモリ206にロードしてよい。プログラム命令がメモリ206にロードされた後、プロセッサ204はプログラム命令を実行してよい。プロセッサ204の例のいくつかは、GPU、CPU、RISCプロセッサ、ASICプロセッサ、CISCプロセッサ、コプロセッサ、及び/又はそれらの組み合わせであってよい。
【0044】
メモリ206は、プロセッサ204によって実行可能なプログラム命令を記憶するよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを含んでよい。特定の実施形態で、メモリ206は、オペレーティングシステム及び関連するアプリケーション特有情報を記憶するよう構成されてよい。メモリ206は、コンピュータ実行可能命令又はデータ構造を搬送又は記憶するためのコンピュータ可読記憶媒体を含んでもよい。そのようなコンピュータ可読記憶媒体は、プロセッサ204のような汎用又は専用コンピュータによってアクセスされ得る如何なる利用可能な媒体も含んでよい。例として、限定としてではなく、そのようなコンピュータ可読記憶媒体は、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、電気的消去可能なプログラム可能リード・オンリー・メモリ(EEPROM)、コンパクトディスク型リード・オンリー・メモリ(CD-ROM)若しくは他の光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気記憶デバイス、フラッシュメモリデバイス(例えば、固体状態メモリデバイス)、あるいは、コンピュータ実行可能命令又はデータ構造の形で特定のプログラムコードを搬送又は記憶するために使用されてよくかつ汎用又は専用コンピュータによってアクセスされてよいあらゆる他の記憶媒体を含む有形な又は非一時的なコンピュータ可読記憶媒体を含んでよい。上記の組み合わせも、コンピュータ可読記録媒体の範囲内に含まれてよい。コンピュータ実行可能命令は、例えば、プロセッサ204に電子デバイス102に関連した特定の動作又は動作のグループを実行させるよう構成された命令及びデータを含んでよい。
【0045】
永続性データストレージ208は、プロセッサ204によって実行可能なプログラム命令、オペレーティングシステム、及び/又はログ及びアプリケーション特有データベースのようなアプリケーション特有情報を記憶するよう構成され得る適切なロジック、回路、及び/又はインターフェースを含んでよい。永続性データストレージ208は、コンピュータ実行可能命令又はデータ構造を搬送又は記憶するためのコンピュータ可読記憶媒体を含んでもよい。そのようなコンピュータ可読記録媒体は、プロセッサ204のような汎用又は専用コンピュータによってアクセスされ得る如何なる利用可能な媒体も含んでよい。
【0046】
例として、限定としてではなく、そのようなコンピュータ可読記憶媒体は、コンパクトディスク型リード・オンリー・メモリ(CD-ROM)若しくは他の光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気記憶デバイス(例えば、ハード・ディスク・ドライブ(HDD))、フラッシュメモリデバイス(例えば、固体状態ドライブ(SSD)、セキュア・デジタル(SD)カード、他の固体状態メモリデバイス)、あるいは、コンピュータ実行可能命令又はデータ構造の形で特定のプログラムコードを搬送又は記憶するために使用されてよくかつ汎用又は専用コンピュータによってアクセスされてよいあらゆる他の記憶媒体を含む有形な又は非一時的なコンピュータ可読記憶媒体を含んでよい。上記の組み合わせも、コンピュータ可読記録媒体の範囲内に含まれてよい。コンピュータ実行可能命令は、例えば、プロセッサ204に、電子デバイス102に関連した特定の動作又は動作のグループを実行させるよう構成された命令及びデータを含んでよい。
【0047】
いくつかの実施形態で、メモリ206若しくは永続性データストレージ208のどちらか一方、又はそれらの組み合わせは、分類器106及びDNN104をソフトウェア命令として記憶してもよい。プロセッサ204は、開示されている電子デバイス102の種々の動作を実行するよう、分類器106及びDNN104に関するソフトウェア命令をフェッチしてよい。いくつかの実施形態において、メモリ206若しくは永続性データストレージ208のどちらか一方、又はそれらの組み合わせは、第1データセット、第2データポイント、訓練/テストデータセット、第1の特徴スコアの組、予測された第1クラス、及び/又はセマンティッククラスの組にクラスタ化されたデータポイントの組を記憶してもよい。
【0048】
I/Oデバイス210は、ユーザ入力を受けるよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを含んでよい。I/Oデバイス210は、ユーザ入力に応答して出力を供給するよう更に構成されてもよい。例えば、I/Oデバイス210は、(例えば、ユーザインターフェースを通じて)コマンド、ボイス命令、又は手書きのテキストをユーザからのユーザ入力として受け取ってもよく、受け取られたユーザ入力は、DNN104の訓練や分類器106の訓練を開始するために、又は訓練されたDNN104の予測結果に関するセマンティックフィードバック(すなわち、セマンティッククラスの組の中の1つのセマンティッククラス)を供給するために使用されてよい。I/Oデバイス210は、プロセッサ204及び他のコンポーネント、例えば、ネットワークインターフェース212と通信するよう構成され得る様々な入力デバイス及び出力デバイスを含んでよい。I/Oデバイス210は、入力デバイス又は出力デバイスを含んでもよい。入力デバイスの例には、タッチスクリーン(例えば、表示スクリーン210A)、キーボード、マウス、ジョイスティック、及び/又はマイクロホンが含まれ得るが、これらに限られない。出力デバイスの例には、ディスプレイ(例えば、表示スクリーン212A)及びスピーカが含まれ得るが、これらに限られない。
【0049】
表示スクリーン210Aは、データポイントが分類器106によって分類され得るセマンティッククラスを表示するよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを有してよい。更に、表示スクリーン210Aは、分類された1つのセマンティッククラスに関連したアクションをレンダリングするよう構成されてもよい。表示スクリーン210Aは、ユーザ114からユーザ入力を受けるよう構成されてもよい。そのような場合に、表示スクリーン210Aは、ユーザ入力を受けるタッチスクリーンであってもよい。表示スクリーン210Aは、液晶表示(LCD)ディスプレイ、発光ダイオード(LED)ディスプレイ、プラズマディスプレイ、及び/又は有機LED(OLED)ディスプレイ技術、及び/又は他のディスプレイ技術のような、しかし、これらに限られないいくつかの既知の技術を通じて、実現されてよい。
【0050】
ネットワークインターフェース212は、通信ネットワーク112を介した、電子デバイス102と、データベース108と、ユーザエンドデバイス110との間の通信を確立するよう構成され得る適切なロジック、回路、インターフェース、及び/又はコードを有してよい。ネットワークインターフェース211は、通信ネットワーク112を介した電子デバイス102の有線又は無線通信を支援するために様々な既知の技術の使用によって実装されてよい。ネットワークインターフェース212は、アンテナ、無線周波数(RF)トランシーバ、1つ以上の増幅器、チューナ、1つ以上の発振器、デジタル・シグナル・プロセッサ、コーダ-デコーダ(CODEC)チップセット、加入者識別モジュール(SIM)カード、及び/又はローカルバッファを含んでよいが、これらに限られない。
【0051】
ネットワークインターフェース212は、インターネット、イントラネット、及び/又は無線ネットワーク、例えば、セルラー電話ネットワーク、無線ローカル・エリア・ネットワーク(LAN)、及び/又はメトロポリタン・エリア・ネットワーク(MAN)などのネットワークと無線通信により通信し得る。無線通信は、GSM(Global System for Mobile Communications)、EDGE(Enhanced Data GSM Environment)、W-CDMA(Wideband Code Division Multiple Access)、LTE(Long Term Evolution)、CDMA(Code Division Multiple Access)、TDMA(Time Division Multiple Access)、Bluetooth(登録商標)、Wi-Fi(Wireless Fidelity)(例えば、IEEE802.11a、IEEE802.11b、IEEE802.11g、及び/又はIEEE802.11n)、VoIP(Voice over Internet Protocol)、Li-Fi(Light Fidelity)、又はWi-MAXなどの複数の通信標準規格、プロトコル、及び技術のうちのいずれかを使用してよい。
【0052】
本開示の範囲から逸脱せずに、例となるシステム202に対して変更、追加、又は削除が行われてよい。例えば、いくつかの実施形態で、例となるシステム202は、簡潔さのために明示的に図示又は記載されていないことがある他のコンポーネントをいくつでも含んでもよい。例において、DNN104及び分類器106は、図1に示されるように電子デバイス102に組み込まれてもよい。
【0053】
図3は、本開示で記載される少なくとも1つの実施形態に従って、意志決定のためのディープニューラルネットワーク(DNN)予測に関するセマンティックフィードバックの提供のための方法の例のフローチャートである。図3は、図1及び図2からの要素とともに説明される。図3を参照して、フローチャート300が示されている。フローチャート300に表されている方法は302から開始してよく、図1の例となる電子デバイス102又は図2の例となるシステム202のような如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。例えば、電子デバイス102又は予め訓練されたDNN104のうちの1つ以上は、方法300に関連した動作の1つ以上を実行してよい。別個のブロックで表されているが、方法300のブロックの1つ以上に関連したステップ及び動作は、特定の実施に応じて、更なるブロックに分割されても、より少ないブロックにまとめられても、又は削除されてもよい。
【0054】
ブロック302で、第1データセットが受け取られてよい。第1データセットは、実時間アプリケーションに関連してよい。第1データセットは、第1データポイントを含む複数のデータポイントを含んでよい。例えば、第1データポイントは、イメージ、オーディオ/スピーチサンプル、テキスト文字、ソフトウェア命令、又は例えば、電気生体信号、動きデータ、若しくはデプスデータのような、しかしこれらに限られない他の形式のデジタル信号を含んでよいが、これらに限られない。実時間アプリケーションの例には、イメージ認識アプリケーション、イメージ分類アプリケーション、スピーチ認識アプリケーション、テキスト認識アプリケーション、マルウェア検出アプリケーション、自律型車両アプリケーション、異常検出アプリケーション、機械翻訳アプリケーション、デジタル信号/データからのパターン認識アプリケーションを含み得るが、これらに限られない。
【0055】
いくつかの実施形態において、プロセッサ204は、メモリ206、永続性データストレージ208、又はデータベース108のいずれか又は組み合わせに記憶され得る第1データセット(例えば、イメージの組)を受け取るよう構成されてよい。第1データセットの第1データポイント(例えば、イメージ)は、特定のクラスラベルへの分類又は予測のために受け取られてよく、分類又は予測は、予め訓練されたDNN104によって実行されてよい。
【0056】
ブロック304で、受け取られた第1データセットの第1データポイントに関連した第1クラスが予測されてよい。予め訓練されたDNN104が、受け取られた第1データポイントに関連した第1クラスを予測するよう制御されてよい。1つ以上の実施形態において、プロセッサ204は、受け取られた第1データポイントについて第1クラスを予測するように、予め訓練されたDNN104を制御するよう構成されてよい。例えば、DNN104がイメージ分類タスクのために予め訓練されており、第1データポイントがイメージである場合に、予め訓練されたDNN104は、イメージについて第1クラスを生物オブジェクト(例えば、動物、植物、又は人間)又は非生物オブジェクト(例えば、建物、車両、街路、標識記号、又はその他の対象)として予測してよい。万一、DNN104へ入力されたイメージが犬のイメージである場合には、DNN104は、犬ラベルへのイメージの分類を示し得る一意のクラスラベルを出力し得る。出力されたクラスラベルは、DNN104の予測結果と見なされてよい。
【0057】
DNN104は、DNN104の生得的信頼スコアとしての第1信頼スコアを生成するよう構成されてよい。第1信頼スコアは、DNN104の予測結果を示すよう確率値(例えば、0から1の間)を示し得る。言い換えると、DNN104によって生成された第1信頼スコアは、受け取られた入力イメージ(又はデータポイント)についての第1クラス(すなわち、クラスラベル)の予測を示し得る。同様に、プロセッサ204は、受け取られた第1データセット内の各データポイントに関連した第1クラスを予測するよう、予め訓練されたDNN104を制御してよい。
【0058】
ブロック306で、第1の特徴スコアの組が、第1データポイントに関連した予測された第1クラスに基づき、第1データポイントについて決定されてよい。1つ以上の実施形態において、プロセッサ204は、第1データポイントに関連した予測された第1クラスに基づき、第1データポイントの第1の特徴スコアの組を決定するよう更に構成されてよい。第1の特徴スコアの組の例は、第1データポイントについての、尤度に基づいたサプライズアデクシー(LSA)スコア、距離に基づいたサプライズアデクシー(DSA)スコア、信頼スコア、ロジットスコア、又はロバスト性ダイバーシティスコアのうちの少なくとも1つの情報を含み得るが、これらに限られない。サプライズアデクシーに基づいたスコアの決定が次に記載される。例えば、N={n1,n2,・・・}を、DNN104に関連したニューロンの組とし、X={x1,x2,・・・}を、受け取られた第1データセット内のデータポイントの組とする。データポイントx(例えば、第1データポイント)に関するニューロンnの活性化値(activation value)は、α(x)と表され得る。活性化値のベクトルは、ニューロンの順序部分集合(すなわち、N⊆N)について、α(x)と表され得る。項α(x)は、ここでは、Nに含まれているニューロンにわたるx(すなわち、第1データポイント)の活性化トレース(Activation Trace,AT)と呼ばれる。同様に、データポイントXの組(すなわち、受け取られた第1データセット)について、Nに含まれるニューロンにわたって観測され得る活性化トレースの組は、A(X)={α(x)|x∈X}と表され得る。DNN104の訓練データセット(例えば、データセットT)については、プロセッサ204は、訓練データセットTに含まれる各データポイントについて、Nに含まれる全てのニューロンにわたる活性化トレースの組を決定し得る。訓練データセットについてのそのような決定された活性化トレースの組は、A(T)によって表され得る。新しいデータポイントx(例えば、第1データポイント)については、プロセッサ204は、その新しいデータポイントx(すなわち、第1データポイント)についてのα(x)と訓練データセットTについてのA(T)との比較に基づき、訓練データセット(すなわち、データセットT)に対する新しいデータポイントx(すなわち、第1データポイント)に関連したサプライズの程度(degree of surprise)を決定し得る。サプライズの程度は、ここでは、サプライズアデクシースコアと呼ばれる。本開示で、訓練データセットは、第1データセットそれ自体に対応してよく、第1データポイントはその一部であってよい。このようにして、プロセッサ204は、第1データポイントについてのα(x)と第1データセットについてのA(X)との比較に基づき、第1データセット(X(x∈X)と表され得る。)に対する第1データポイント(xと表され得る。)のサプライズアデクシースコアを決定し得る。
【0059】
尤度に基づいたサプライズアデクシー(LSA)スコアは、第1データポイントが第1データセットによる分布内にあるかどうかを示し得る。例において、LSAスコアは、推定された確率密度関数がランダム変数の特定の値の相対尤度の推定を可能にし得るように、ランダム変数の確率密度関数を推定し得るカーネル密度推定(Kernel Density Estimation,KDE)技術に基づいて、決定され得る。例えば、KDE技術は、A(X)内の各活性化値の確率密度の推定と、推定された確率密度に対する第1データポイントのサプライズの程度(すなわち、サプライズアデクシースコア)の決定とによって、第1データポイントに関連したLSAスコアを決定するために使用されてよい。
【0060】
距離に基づいたサプライズアデクシー(DSA)スコアは、第1データポイントが、DNN104に関連したハイパースペースにおいて、予測された第1クラスに隣接する他のクラスよりも、予測された第1クラスに近いかどうかを示し得る。例えば、第1データポイントに関連したDSAスコアは、活性化トレース(AT)間の距離に基づいて、サプライズの程度(すなわち、サプライズアデクシースコア)として決定されてよい。第1データポイントに関連したDSAスコアは、第1データポイントの活性化トレース(AT)と、第1データセット内の各データポイントに関連した活性化トレース(AT)との間のユークリッド距離に基づいて、決定されてもよい。例として、Cを、DNN104に関連したクラスの組を表すとし、A(X)を、第1データセットに関連した活性化トレースの組を表すとし、xを、第1データポイントを表すとし、c(ただし、c∈C)を、第1データポイントxに関連した予測された第1クラスを表すとする。プロセッサ204は、第1データセット内の参照データポイント(例えば、x)を決定してよい。参照データポイントは、第1データポイント(すなわち、x)の最近傍であってよく、かつ、同じ第1クラスcに関連してよい。ここで、参照データポイント(すなわち、x)の活性化トレース(例えば、α(x))は、第1クラス(すなわち、c)に関連し得る第1データセット内の他のデータポイントよりも、第1データポイント(すなわち、x)の活性化トレース(例えば、α(x))に最も近いユークリッド距離を有してよい。参照データポイント(すなわち、x)の活性化トレース(例えば、α(x))と第1データポイント(すなわち、x)の活性化トレース(例えば、α(x))との間のユークリッド距離は、distによって表され得るとする。プロセッサ204は、参照データポイント(すなわち、x)の最近傍であってよくかつ第1クラス(すなわち、c)以外のクラスに関連してよいデータポイント(例えば、x)を更に決定してもよい。プロセッサ204は、参照データポイント(すなわち、x)の活性化トレース(例えば、α(x))とデータポイントxの活性化トレース(例えば、α(x))との間のユークリッド距離(例えば、dist)を決定してもよい。例において、プロセッサ204は、distとdistとの比、つまり、dist/distに基づき、第1データポイントに関連したDSAスコアを決定してよい。
【0061】
信頼スコアは、第1データポイントに関連した第1クラスの予測についてのDNN104の確率スコアに対応してよい。言い換えると、信頼スコアは、第1データポイントについてDNN104によって予測された第1クラスが正しいとDNN104によって決定される確率であってよい。ロジットスコアは、第1データポイントに関連した第1クラスの予測についてのDNN104のpre-softmaxレイヤからのスコアに対応してよい。ロジットスコアは、pre-softmaxレイヤから取得され得るDNN104の予測出力に関連した非正規化スコアであってよい。第1データポイントに関連した第1クラスについてのより高いロジットスコアは、第1データポイントについてのDNN104の予測が正しいことを示し得る。
【0062】
ロバスト性ダイバーシティスコアは、第1データポイントに対応する1つ以上のバリエーションについてのDNN104による予測の安定性の程度を示し得る。実施形態において、プロセッサ204は、第1データポイントに対する1つ以上の変形の適用に基づいて、第1データポイントのバリエーションの組を決定してよい。ロバスト性ダイバーシティスコアは、バリエーションの組に含まれるバリエーションの総数に対する、DNN104によって正確に予測され得るバリエーションの数の比に基づいて、決定されてよい。例えば、第1データポイントが猫のイメージである場合に、プロセッサ204は、第1データポイントに対する1つ以上の回転変形の適用に基づいて、バリエーションの組を決定してもよい。1つ以上の回転変形の適用によって、猫が異なる角度で回転され得る1つ以上の第1イメージが取得され得る。同様に、プロセッサ204は、1つ以上の第2イメージ及び/又は1つ以上の第3イメージを夫々取得するよう、第1データポイントに対して1つ以上の並行移動変形及び/又は1つ以上のスケーリング変形を適用してもよい。第1データポイントのバリエーションの組は、1つ以上の第1イメージ、1つ以上の第2イメージ、及び1つ以上の第3イメージの集合として取得され得る。同様に、プロセッサ204は、第1データセットの第1データポイントについての異なるデータポイントを決定するよう、ズーム変化、輝度変化、コントラスト変化、色変化、フリップ変化、シャープネス変化、又はせん断変化といった種々のバリエーションを決定してもよい。実施形態において、プロセッサ204は、第1データポイントのバリエーションの組の夫々に関連したクラスを予測するようDNN104を更に制御してよい。その後に、プロセッサ204は、バリエーションの組の中のバリエーションの総数に対する、第1クラスが正確に予測されるバリエーションの数の比を決定してよい。ロバスト性ダイバーシティスコアは、バリエーションの組の中のバリエーションの総数に対する正確に予測されたバリエーション(すなわち、第1クラスがDNN104によって正しく予測されるバリエーション)の比に基づいて、決定され得る。このようにして、比に基づいて、ロバスト性ダイバーシティスコアは、第1データポイントに適用された種々の変形についてのDNN104による予測の安定性の程度を示し得る。同様に、プロセッサ204は、第1データセット内の各データポイントについて第1の特徴スコアの組(すなわち、LSAスコア、DSAスコア、信頼スコア、ロジットスコア、及びロバスト性ダイバーシティスコア)を決定するよう構成されてよい。
【0063】
ブロック308で、DNN104に関連した混同クラスペアの組が、予測された第1クラスと、第1データポイントに関連した所定のクラスとに基づき、識別されてよい。1つ以上の実施形態において、プロセッサ204は、予測された第1クラスと、第1データポイントに関連した所定のクラスとに基づき、DNN104に関連した混同クラスペアの組を識別するよう構成されてよい。所定のクラスは、第1データポイントのグラウンドトゥルース又は期待されるクラスに対応してよい。同様に、電子デバイス102は、第1データセット内の各データポイントについて混同クラスペアの組を識別するよう構成されてもよい。データポイントについての混同クラスペアの組の識別は、例えば、図5で、更に記載される。
【0064】
ブロック310で、受け取られた第1データセットが、受け取られた第1データセット内の各データポイントについての決定された第1の特徴スコアの組、予測された第1クラス、及び識別された混同クラスペアの組に基づき、セマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化されてよい。セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。セマンティッククラスの組に関連した予測精度は、例えば、図6A図6B、及び図7で、更に記載される。1つ以上の実施形態において、プロセッサ204は、受け取られた第1データセット内の各データポイントについての決定された第1の特徴スコアの組、予測された第1クラス、及び識別された混同クラスペアの組に基づき、受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化するよう構成されてよい。セマンティッククラスの組の例は、正しい可能性のある(又は確実に正しい)セマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを含み得るが、これらに限られない。セマンティッククラスの組の中の1つのセマンティッククラスへの受け取られた第1データセットのクラスタ化は、例えば、図6A図6B、及び図7で、更に記載される。
【0065】
ブロック312で、分類器106が、クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき、訓練されてよい。1つ以上の実施形態において、プロセッサ204は、クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき、分類器(例えば、分類器106又はメタ分類器)の訓練を制御するよう構成されてよい。分類器106の例には、決定木分類器、サポートベクトルマシン(SVM)分類器、単純ベイス分類器、ロジスティック回帰分類器、K近傍(K-NN)分類器が含まれ得るが、これらに限られない。例において、分類器106は、K=5個の最近傍によるK-NN分類器として構築及び訓練されてよい。例として、サイキット・ラーン(Scikit-Learn)ライブラリが、K-NN分類器を構築及び訓練するために使用されてもよい。K-NN分類器(例えば、分類器106)の訓練に基づき、K-NN分類器は、DNN104に関連した混同クラスペアの組を出力し得る。
【0066】
実施形態において、プロセッサ204は、第1データセット内の各データポイントに関連した第1の特徴スコアの組と、第1データセット内の各データポイントがクラスタ化され得るセマンティッククラスの組の中のセマンティッククラスとの間の関係に基づき、分類器106の訓練を制御してよい。例において、正しい可能性のある(likely-correct)セマンティッククラスは、訓練データ(すなわち、第1データセット)による分布内にあり得るデータポイントを含むセマンティッククラスであってよい。更に、正しい可能性のあるセマンティッククラスでは、関連するデータポイントについてのDNN104による予測に関連した信頼度(confidence)が高く、そのようなデータポイントについての予測は混同しない可能性が高い。その上、そのようなデータポイントについてのDNN104による予測は、正しい可能性のあるセマンティッククラスにクラスタ化されたデータポイントのばらつきに対してロバストであることができる。他の例では、2つのうちの1つの(one-of-two)セマンティッククラスは、クラスタ化されたデータポイントについてのDNN104による予測が、同様の信頼度を有する2つの等しくありそうなクラスを有し得るような、クラスタ化されたデータポイントを含むセマンティッククラスであってよい。更に、そのようなデータポイントについてのDNN104による予測は、ロバストでなくてもよい。更なる他の例では、正しくない可能性のある(likely-incorrect)セマンティッククラスは、訓練データ(すなわち、第1データセット)による分布から大きく外れている可能性があるクラスタ化されたデータポイントを含むセマンティッククラスであってよい。更に、そのようなデータポイントについてのDNN104による予測に関連した信頼度は低くなる。その上、そのようなデータポイントについてのDNN104による予測は、正しくない可能性のあるセマンティッククラスにクラスタ化されたデータポイントのばらつきに対してロバストであり得ない。他の例では、知らない(do-not-know)セマンティッククラスは、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、及び正しくない可能性のあるセマンティッククラスへの第1データセットのクラスタ化の後に残る可能性がある第1データセットの中のデータポイントを含み得るセマンティッククラスであってよい。セマンティッククラスの組の中の1つのセマンティッククラスへのデータポイント(すなわち、予め訓練されたDNN(例えば、DNN104)への入力)の分類のための分類器(例えば、分類器106)の訓練は、例えば、図6A図6B、及び図7で、更に記載される。制御は終了に移ってよい。
【0067】
フローチャート300は、302、304、306、308、310、及び312などの別個の動作として表されているが、特定の実施形態では、このような別個の動作は、開示されている実施形態の本質から外れずに、特定の実施に応じて、追加の動作に分けられても、より少ない動作にまとめられても、あるいは、削除されてもよい。
【0068】
図4は、本開示で記載される少なくとも1つの実施形態に従って、予め訓練された分類器に基づいてディープニューラルネットワーク(DNN)の予測結果に関するセマンティックフィードバックを提供するための方法の例のフローチャートである。図4は、図1図2、及び図3からの要素とともに説明される。図4を参照して、フローチャート400が示されている。フローチャート400に表されている方法は402から開始してよく、図1の例となる電子デバイス102又は図2の例となるシステム202のような如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。例えば、電子デバイス102又は分類器(例えば、分類器106)のうちの1つ以上は、方法400に関連した動作の1つ以上を実行してよい。別個のブロックで表されているが、方法400のブロックの1つ以上に関連したステップ及び動作は、特定の実施に応じて、更なるブロックに分割されても、より少ないブロックにまとめられても、又は削除されてもよい。
【0069】
ブロック402で、第2データポイントが受け取られてよい。第2データポイントは、実時間アプリケーションに関連してよい。例えば、第2データポイントは、イメージ、オーディオ/スピーチサンプル、テキスト文字、ソフトウェア命令、又は例えば、電気生体信号、動きデータ、若しくはデプスデータなどの、しかしこれらに限られない他の形式のデジタル信号を含み得るが、これらに限られない。実時間アプリケーションの例には、イメージ認識アプリケーション、イメージ分類アプリケーション、スピーチ認識アプリケーション、テキスト認識アプリケーション、マルウェア検出アプリケーション、自律型車両アプリケーション、異常検出アプリケーション、機械翻訳アプリケーション、デジタル信号/データからのパターン認識アプリケーションを含み得るが、これらに限られない。
【0070】
いくつかの実施形態において、プロセッサ204は、メモリ206、永続性データストレージ208、又はデータベース108のいずれか又は組み合わせに記憶され得る第2データポイント(例えば、イメージ)を受け取るよう構成されてよい。第2データポイント(例えば、イメージ)は、特定のクラスラベルへの分類又は予測のために受け取られてよく、分類又は予測は、予め訓練されたDNN104によって実行されてよい。実施形態において、第2データポイントは、訓練されたDNN104の訓練データセット(すなわち、第1データセット)に含まれていなくてもよい新しいデータポイントであってもよい。
【0071】
ブロック404で、受け取られた第2データポイントに関連した第2クラスが予測されてよい。予め訓練されたDNN104は、受け取られた第2データポイントに関連した第2クラスを予測するよう制御されてよい。1つ以上の実施形態において、プロセッサ204は、受け取られた第2データポイントについて第2クラスを予測するように、予め訓練されたDNN104を制御するよう構成されてよい。例えば、DNN104がイメージ分類タスクのために予め訓練されており、第1データポイントがイメージである場合に、予め訓練されたDNN104は、イメージについて第2クラスを生物オブジェクト(例えば、動物、植物、又は人間)又は非生物オブジェクト(例えば、建物、車両、街路、標識記号、又はその他の対象)として予測してよい。万一、DNN104へ入力されたイメージが犬のイメージである場合には、DNN104は、犬ラベルへのイメージの分類を示し得る一意のクラスラベルを出力し得る。出力されたクラスラベルは、DNN104の予測結果と見なされてよい。DNN104は、DNN104の生得的信頼スコアとしての第2信頼スコアを生成するよう構成されてよい。第2信頼スコアは、DNN104の予測結果を示すよう確率値(例えば、0から1の間)を示し得る。言い換えると、DNN104によって生成された第2信頼スコアは、受け取られた入力イメージ(又はデータポイント)についての第2クラス(すなわち、クラスラベル)の予測を示し得る。
【0072】
ブロック406で、第2の特徴スコアの組が、第2データポイントに関連した予測された第2クラスに基づき、第2データポイントについて決定されてよい。1つ以上の実施形態において、プロセッサ204は、第2データポイントに関連した予測された第2クラスに基づき、第2データポイントの第2の特徴スコアの組を決定するよう構成されてよい。第2の特徴スコアの組の例は、第2データポイントについての、尤度に基づいたサプライズアデクシー(LSA)スコア、距離に基づいたサプライズアデクシー(DSA)スコア、信頼スコア、ロジットスコア、又はロバスト性ダイバーシティスコアのうちの少なくとも1つの情報を含み得るが、これらに限られない。第2の特徴スコアの組の決定は、例えば、図3(ブロック306)で更に記載されている第1の特徴スコアの組の決定と同様であってよい。
【0073】
ブロック408で、予め訓練された分類器(例えば、分類器106)が、決定された第2の特徴スコアの組と、第2のデータポイントについての予測された第2クラスとに基づき、受け取られた第2データポイントに適用されてよい。分類器106(又はメタ分類器)は、セマンティッククラスの組の中の1つのセマンティッククラスへデータポイントを分類するよう予め訓練されてよい。ここで、セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。セマンティッククラスの組に関連した予測精度は、例えば、図6A図6B、及び図7で、更に記載される。1つ以上の実施形態において、プロセッサ204は、決定された第2の特徴スコアの組と、第2データポイントについての予測された第2クラスとに基づき、受け取られた第2データポイントに分類器106(すなわち、図3のブロック312で並びに図6A、6B、及び7で訓練された分類器)を適用するよう構成されてよい。例えば、予め訓練されたK-NN分類器が、決定された第2の特徴スコアの組と、第2データポイントについての予測された第2クラスとに基づき、第2データポイントに適用されてよい。例において、K-NN分類器は、N=5の最近傍分類器であってよい。
【0074】
ブロック410で、第2データポイントが、第2データポイントに対する予め訓練された分類器(例えば、分類器106)の適用に基づき、セマンティッククラスの組の中の1つのセマンティッククラスに分類されてよい。1つ以上の実施形態において、プロセッサ204は、第2データポイントに対する予め訓練された分類器106の適用に基づき、セマンティッククラスの組の中の1つのセマンティッククラスに第2データポイントを分類するよう構成されてよい。セマンティッククラスの組の例は、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを含み得るが、これらに限られない。予め訓練された分類器106はまた、第2データポイントが2つのうちの1つのセマンティッククラスに分類される場合に、第2クラスに関連した混同クラスペアを出力してもよい。セマンティッククラスの組の各セマンティッククラスは、DNN104によって供給された信頼スコア又は予測スコアと比較して、エンドユーザ(例えば、ユーザ114)によって容易に理解可能又は解釈可能であることができる。セマンティッククラスの組は、エンドユーザが、更なるアクションにおいてDNN104の出力を使用する又は使用しない方法に関して、より情報に基づく決定を行うことを可能にし得る。
【0075】
ブロック412で、セマンティッククラスの組の中の、第2データポイントについての分類された1つのセマンティッククラスに関連した少なくとも1つのアクションが、決定されてよい。1つ以上の実施形態において、プロセッサ204は、セマンティッククラスの組の中の、第2データポイントについての分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定するよう構成されてよい。例えば、第2データポイントが正しい可能性のあるセマンティッククラスに分類される場合に、プロセッサ204は、ユーザ114によって又はユーザエンドデバイス110によって、高い信頼度で、クラスラベル(すなわち、第2データポイントについてのDNN104による出力)をそのまま確実に使用するように、アクションを決定してもよい。他の例では、第2データポイントが正しくない可能性のあるセマンティッククラスに分類される場合に、プロセッサ204は、第2データポイントについてDNN104によって出力されたクラスラベルの拒絶としてアクションを決定してもよく、更には、第2データポイントの予測のための決定を行うためにユーザ114による人間の判断を用いることを提案してもよい。更に、第2データポイントのセマンティッククラスが2つのうちの1つのセマンティッククラスと決定される場合に、プロセッサ204は、ユーザ114によるタイブレーク(tie-breaker)ソリューションの使用としてアクションを決定してもよい。タイブレークソリューションは、手動による又は自動化されたソリューションであってよい。例えば、自動化されたソリューションは、DNN104によって予測された第2クラスに関連した混同クラスペアに基づき第2データポイントの正確なクラスを具体的に予測するためのローカル分類器の訓練及び使用を含んでよい。ローカル分類器は、混同クラスペアに含まれ得るクラスを正確に予測するためにのみ訓練され得る。例えば、DNN104は、手書きの番号を含む入力イメージ(すなわち、第2データポイント)に基づき数字(“0”から“9”)を予測するよう訓練されている場合を考える。そのような場合に、数字“1”及び“7”のクラスラベルは、混同クラスペアと見なされて、DNN104によって及び/又は分類器106によって2つのうちの1つのセマンティッククラスにクラスタ化される可能性がある。よって、タイブレークソリューションは、ユーザエンドデバイス110又はユーザ114によるより良い予測及び意志決定のために“1”及び“7”の数字イメージを正確に分類するためにのみ訓練されている別個の又はローカルの分類器を使用するアクションを提案し得る。更に、第2データポイントのセマンティッククラスが知らないセマンティッククラスと決定される場合に、プロセッサ204は、ユーザ114による多数決(majority-vote)ソリューションの使用としてアクションを決定してもよい。多数決ソリューションは、手動による又は自動化されたソリューションであってよい。例えば、自動化されたソリューションは、実時間アプリケーションの分類タスクのために複数のDNNを訓練及び使用することを含んでよい。第2データポイントは、各DNNへ供給されてよく、それらのDNNの予測結果は比較されてよい。DNNの大多数によって予測されたクラスラベルが、多数決ソリューションに従って、第2データポイントのクラスラベルとして選択され得る。
【0076】
ブロック414で、決定された少なくとも1つのアクションがレンダリングされてよい。1つ以上の実施形態において、プロセッサ204は、決定された少なくとも1つのアクションをレンダリングするよう構成されてよい。例において、プロセッサ204は、第2データポイントに関連した決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスを出力情報としてレンダリングしてもよい。実施形態において、出力情報は、表示スクリーン210Aでの決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスの表示、ログファイルにおける決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスの記憶、あるいは、決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスに基づいた通知/警報に対応し得るが、これらに限られない。例えば、ユーザエンドデバイス110(又は電子デバイス102)は、第2データポイントに関連した決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスを表示してよい。他の例では、ユーザエンドデバイス110(又は電子デバイス102)は、第2データポイントに関連した決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスをメモリ(例えば、メモリ206)内のログファイルに記憶してもよい。例えば、ログファイルは、実時間動作で(例えば、自律型車両において)DNN104の精度を決定するために、何回DNN104が正確に予測したか(しなかったか)を示し得る。あるシナリオでは、決定されたアクション及び/又は決定されたセマンティッククラスは、決定されたセマンティッククラスに基づいた予測された第2クラスとともにログファイルに記憶されてもよい。例えば、決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスは、セマンティッククラスが正しい可能性のあるセマンティッククラス以外である場合に、ログファイルに記憶され得る。他の例では、出力情報は、決定されたアクション、予測された第2クラス、及び/又は決定されたセマンティッククラスに基づき、ユーザエンドデバイス110(又は電子デバイス102)のユーザへの通知(例えば、警告又は警報)として示されてもよい。例えば、ユーザエンドデバイス110が自律型車両であって、セマンティッククラスが2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラスのうちの1つである場合に、ユーザエンドデバイス110(すなわち、自律型車両)は、ユーザ(例えば、自律型車両の乗客)に通知してもよい。通知は、ユーザエンドデバイス110にデプロイされているDNN104によって実行された第2クラスの予測が誤っている可能性があること(例えば、障害物である可能性がある対象の誤った分類又は誤った識別)により、ユーザが自律型車両の制御を行うための警告又は警報を含んでよい。いくつかの実施形態において、電子デバイス102によって生成された出力情報は、例えば、DNN104の誤った予測が、正しい可能性のあるセマンティッククラス以外であり得る(第2データポイントについて)セマンティッククラスとして分類器106によって検出される場合に、とられるべき特定の自動アクションに対応してよい。例えば、受け取られた第2データポイントについてDNN104によって行われた誤分類又は誤った予測が自律型車両において検出される場合に、ユーザエンドデバイス110又は電子デバイス102は、自律型車両のブレーキ、ステアリング制御、又は十分な減速を自動適用するよう出力情報を生成してもよい。制御は終了に移ってよい。
【0077】
フローチャート400は、402、404、406、408、410、412、及び414などの別個の動作として表されているが、特定の実施形態では、このような別個の動作は、開示されている実施形態の本質から外れずに、特定の実施に応じて、追加の動作に分けられても、より少ない動作にまとめられても、あるいは、削除されてもよい。
【0078】
図5は、本開示で記載される少なくとも1つの実施形態に従って、ディープニューラルネットワーク(DNN)に関連した混同クラスペアの組の識別のための方法の例のフローチャートである。図5は、図1図2図3、及び図4からの要素とともに説明される。図5を参照して、フローチャート500が示されている。フローチャート500に表されている方法は502から開始してよく、図1の例となる電子デバイス102又は図2の例となるシステム202のような如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。別個のブロックで表されているが、方法500のブロックの1つ以上に関連したステップ及び動作は、特定の実施に応じて、更なるブロックに分割されても、より少ないブロックにまとめられても、又は削除されてもよい。
【0079】
ブロック502で、第1データポイントに関連した所定のクラスが、第1データポイントに関連した予測された第1クラスと比較されてよい。1つ以上の実施形態において、プロセッサ204は、第1データポイントに関連した所定のクラスを、第1データポイントに関連した予測された第1クラスと比較するよう構成されてよい。第1クラスの予測は、例えば、図3のブロック304で、記載されている。例えば、プロセッサ204は、第1データポイントの予め決定された又は予め定義されたクラスのクラスラベル(例えば、犬クラスラベル)を、予測された第1クラスのクラスラベル(例えば、猫クラスラベル)と比較し、更には、比較に基づいて、予め決定されたクラスが予測された第1クラスと異なることを決定してよい。言い換えると、プロセッサ204は、期待された又はグラウンドトゥルースクラス(つまり、所定のクラス)を、DNN104によって予測された第1データポイントの実際のクラスと比較し得る。
【0080】
ブロック504で、比較に基づいて、第1クラスペアに関連した誤分類の第1インスタンスが、識別されてよい。第1クラスペアは、第1データポイントに関連した予測された第1クラスと、第1データポイントに関連した所定のクラスとを含んでよい。1つ以上の実施形態において、プロセッサ204は、予測された第1クラス及び所定のクラスを含む第1クラスペアに関連した誤分類の第1インスタンスを識別するよう構成されてよい。例えば、第1データポイントに関連した予測された第1クラスが猫クラスであり、第1データポイントに関連した所定のクラスが犬クラスである場合に、プロセッサ204は、第1データポイントが誤分類されていることを決定し得る。そのような場合に、第1データポイントについての第1クラスペアに関連した誤分類の第1インスタンスが識別され得る。ここで、第1クラスペアは、第1データポイントについての猫クラス(すなわち、予測された第1クラス)及び犬クラス(すなわち、所定のクラス)を含み得る。
【0081】
ブロック506で、第1クラスペアに関連した誤分類のインスタンスのカウントが、識別された誤分類の第1インスタンスに基づき、決定されてよい。1つ以上の実施形態において、プロセッサ204は、識別された誤分類の第1インスタンスに基づいて、第1クラスペアに関連した誤分類のインスタンスのカウントを決定するよう構成されてよい。DNN104による第1データポイントに関連した第1クラスの予測と同様に、プロセッサ204は、受け取られた第1データセット内の各データポイントに関連した第1クラスを予測するようDNN104を制御してよい(図3のブロック304を参照。)。ブロック502で記載されている比較と同様に、プロセッサ204は、受け取られた第1データセット内の各データポイントに関連した予測された第1クラスを、受け取られた第1データセット内の対応するデータポイントに関連した所定のクラスと比較してよい。更に、第1データポイントについての第1クラスペアに関連した誤分類の第1インスタンスの識別(ブロック504を参照。)と同様に、プロセッサ204は、第1データセット内の全てのデータポイントについての第1クラスペア(例えば、犬クラスと猫クラス)又は他のクラスペアに関連した誤分類の他のインスタンスを識別してもよい。プロセッサ204は、対応するクラスペアが第1データセット内の特定のデータポイントの誤分類に基づき識別されるときにはいつでも、異なるクラスペアについての誤分類のインスタンスのカウントを増やしてよい。プロセッサ204は更に、第1データポイントについての誤分類の第1インスタンス及び第1データポイント以外の第1データセット内のデータポイントについての誤分類の他のインスタンスの識別に基づき、第1クラスペア(例えば、犬クラスと猫クラス)又は他のクラスペア(例えば、DNN104が訓練され得る所定の又は予測されたクラスを含む。)に関連した誤分類のインスタンスのカウントを決定してもよい。実施形態において、プロセッサ204は、第1データセット内の異なる誤分類又は誤って予測されたデータポイントについて識別された全ての異なるクラスペア(すなわち、所定のクラスと予測されたクラスとの異なるペアを含む。)を混同クラスペアの組に含めてもよい。
【0082】
ブロック508で、第1クラスペアが、第1クラスペアについての誤分類のインスタンスのカウントと、閾値とに基づき、混同クラスペアの組の中の混同クラスペアとして識別されてよい。1つ以上の実施形態において、プロセッサ204は、第1クラスペアについての誤分類のインスタンスのカウントと、閾値とに基づき、第1クラスペアを混同クラスペアの組の中の混同クラスペアとして識別するよう構成されてよい。例えば、閾値が100であり、異なるデータポイントについての第1クラスペア(例えば、犬クラスと猫クラス)に関連した誤分類のインスタンスのカウントが120である場合に、第1クラスペアについての誤分類のインスタンスのカウントが閾値よりも多いということで、第1クラスペアは、混同クラスペアの組の中の混同クラスペアとして識別され得る。ある実施形態では、プロセッサ204は、降順で、各クラスペアの誤分類のインスタンスのカウントに基づき、クラスペア(第1クラスペアを含む。)の組をソートするよう構成されてよい。更に、プロセッサ204は、混同クラスペアの組の中の全ての異なるクラスペアを選択するのではなく、ソートされた順序における最初のN個のクラスペア(すなわち、上位N個のクラスペア)を混同クラスペアの組として選択又は識別するよう構成されてもよい。その上、プロセッサ204はまた、閾値に基づき、混同クラスペアとして、クラスペアの組から1つ以上のクラスペアを選択してもよい。例えば、予め定義された閾値よりも高い誤分類のインスタンスの対応するカウントを有している全てのクラスペアが、DNN104によって予測された第1データセットについての最も混同するクラスペア(すなわち、識別された混同クラスペアの組)として見なされ得る。例えば、第1データセットの各データポイントの予測に基づいて、犬クラスと猫クラスとを含むクラスペアは、第1データセットの予測において識別された他のクラスペアと比べて誤分類の可能性が最も高い。他の例では、数字“1”のクラスラベル及び数字“7”のクラスラベルを含むクラスペアは、数字“1”及び“7”の両方が手書きのデータポイントについて類似した特徴を有している可能性があるということで、データセットについて誤分類される可能性が最も高い。制御は終了に移ってよい。
【0083】
フローチャート500は、502、504、506、及び508などの別個の動作として表されているが、特定の実施形態では、このような別個の動作は、開示されている実施形態の本質から外れずに、特定の実施に応じて、追加の動作に分けられても、より少ない動作にまとめられても、あるいは、削除されてもよい。
【0084】
図6A及び図6Bは、本開示で記載される少なくとも1つの実施形態に従って、分類器の訓練のためにセマンティッククラスの組の中の1つのセマンティッククラスへ受け取られた第1データセットをクラスタ化するための方法の例のフローチャートである。図6A及び図6Bは、図1図2図3図4、及び図5からの要素とともに説明される。図6A及び図6Bを参照して、フローチャート600が示されている。フローチャート600に表されている方法は602から開始してよく、図1の例となる電子デバイス102又は図2の例となるシステム202のような如何なる適切なシステム、装置、又はデバイスによっても実行されてよい。別個のブロックで表されているが、方法600のブロックの1つ以上に関連したステップ及び動作は、特定の実施に応じて、更なるブロックに分割されても、より少ないブロックにまとめられても、又は削除されてもよい。
【0085】
図7は、本開示で記載される少なくとも1つの実施形態に従って配置されている、セマンティッククラスの組の中の1つのセマンティッククラスへ受け取られた第1データセットをクラスタ化するためのアルゴリズムのプログラムコードの例示的なシナリオを表す。図7を参照して、例となるシナリオ700が示されている。例となるシナリオ700は、受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化する関数702を含むプログラムコードを含んでよい。実施形態において、関数702を含むプログラムコードは、メモリ206、永続性データストレージ208、又はデータベース108のいずれか又は組み合わせに記憶されてもよい。関数702は、初期化ステートメント704と、クラスタリングコード706と、条件付きコード708と、条件付きコード7082含まれる第1再帰呼び出し(recursive call)710と、第2再帰呼び出し712と、リターンステートメント714とを含んでよい。プロセッサ204は、受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスに繰り返しクラスタ化するように関数702を実行するよう構成されてもよい。フローチャート600は、これより、関数702の例となるシナリオ700とともに記載される。
【0086】
図6Aを参照して、ブロック602で、受け取られた第1データセットが、クラスタ化されるべき現在のサンプルとして選択されてよい。1つ以上の実施形態において、プロセッサ204は、受け取られた第1データセットを、クラスタ化されるべき現在のサンプルとして選択するよう構成されてよい。図7を参照して、関数702(すなわち、関数「train(T)」)は、第1ステートメントとして初期化ステートメント704を含んでよい。プロセッサ204は、変数セットのグループに値を割り当てるよう初期化ステートメント704を実行してよい。例えば、変数セットのグループは、「R」セット(正しい可能性のあるセマンティッククラスのような、信頼できる(Reliable)セマンティッククラスを表す。)、「U」セット(正しくない可能性のあるセマンティッククラスのような、信頼できない(Unreliable)セマンティッククラスを表す。)、及び「C」セット(2つのうちの1つのセマンティッククラスのような、混同(Confusing)クラスを表す。)を含んでよい。変数セットのグループは、知らないセマンティッククラスのような、非グループ(No group)セマンティックを表し得る「N」セットを更に含んでもよい。図7に示されるように、セット「R」、「U」及び「C」は、空のセットとして初期化されてよく、セット「N」は、訓練データ「T」で初期化されてよい。図6A及び図7を参照して、第1データセットは、再帰関数702の最初の繰り返しにおいて、現在のサンプル(すなわち、訓練データ「T」)として選択されてよい。ここで、最初に、第1データセットの全体は、第1データセットの全体が知られていない可能性があるということで、セット「N」(すなわち、知らないセマンティッククラス)に割り当てられてよい。604から620までの動作の組は、次に記載されるように、受け取られた第1データセットのクラスタ化のために制御されてよい。
【0087】
図6Aを参照して、ブロック604で、選択された現在のサンプルは、選択された現在のサンプル内の各データポイントの第3の特徴スコアの組に基づき、第1精度グループ又は第2精度グループのうちの1つにクラスタ化されてよい。1つ以上の実施形態において、プロセッサ204は、選択された現在のサンプル内の各データポイントの第3の特徴スコアの組に基づき、選択された現在のサンプルを第1精度グループ又は第2精度グループのうちの1つにクラスタ化するよう構成されてよい。選択された現在のサンプルをクラスタ化するために、プロセッサ204は、選択された現在のサンプル内の各データポイントについて第3の特徴スコアの組を決定してよい。データポイントの第3の特徴スコアの組は、各データポイントについてのLSAスコア、DSAスコア、信頼スコア、ロジットスコア、及びロバスト性ダイバーシティスコアを含み得るが、これらに限られない。第3の特徴スコアの組の決定は、例えば、図3(ブロック306)で、更に記載されるように、第1の特徴スコアの組の決定と同様であってよい。選択された現在のサンプルは、k平均法(k-means clustering)アルゴリズム、又は何らかの教師なしクラスタリングアルゴリズム、のうちの少なくとも1つ、しかし、これらに限られないアルゴリズムに基づき、第1精度グループ又は第2精度グループのうちの1つにクラスタ化されてよい。実施形態において、第1精度グループは、第2精度グループよりも高い予測精度を有してもよい。
【0088】
例えば、図7を参照して、プロセッサ204は、選択された現在のサンプル(すなわち、第1データセットとして初期化されるセット「N」)を第1精度グループ又は第2精度グループのうちの1つにクラスタ化するようにクラスタリングコード706を実行するよう構成されてよい。セット「H」は、第1精度グループを表してよく、セット「L」は、第2精度グループを表してよい。クラスタリング(例えば、k平均法)に基づいて、セット「H」は、第1精度グループに関連したデータポイントを割り当てられてよく、セット「L」は、第2精度グループに関連したデータポイントを割り当てられてよい。例において、ここで、最小クラスタサイズ(すなわち、nで表記され得る最小グループサイズ閾値)は2であってよい(すなわち、n=2)。図7に示されるように、セット「H」及び「L」は、正確さによってソートされてよい。第1精度グループ(すなわち、セット「H」)又は第2精度グループ(すなわち、セット「L」)の夫々にクラスタ化されたデータポイントに関連した正確さは、対応するデータポイントについてDNN104によって予測されたクラスと、その対応するデータポイントに関連した所定のクラスとに基づき、決定されてよい。
【0089】
図6Aを参照して、ブロック606で、第1精度グループに関連した精度スコアが、第1精度グループ内の第1のデータポイントの組の中の各データポイントについてDNN104によって予測されたクラスに基づき、かつ、第1のデータポイントの組の中の対応するデータポイントに関連した所定のクラスに基づき、決定されてよい。1つ以上の実施形態において、プロセッサ204は、第1精度グループに関連した精度スコアを決定するよう構成されてよい。第1精度グループに関連した精度スコアは、第1精度グループ内の第1のデータポイントの組の中の各データポイントについてDNN104によって予測されたクラスに基づき、かつ、第1のデータポイントの組の中の対応するデータポイントに関連した所定のクラスに基づき、決定されてよい。第1のデータポイントの組の中の各データポイントについて、プロセッサ204は、対応するデータポイントに関連したクラスを予測するようDNN104を制御してよい。プロセッサ204は次いで、各データポイントの予測されたクラスを、対応するデータポイントに関連した所定のクラスと比較して、そのデータポイントの予測が正しいか否かを決定してよい。第1精度グループの精度スコアは、第1精度グループ内のデータポイントの総数に対する、正確に分類される第1精度グループ(すなわち、セット「H」)内のデータポイントの数の比として、決定されてもよい。
【0090】
ブロック608で、第2精度グループ内の第2のデータポイントの組が、第2のデータポイントの組のデータポイント数及び最小グループサイズ閾値(すなわち、n)に基づき、後入れ先出し(Last-In-First-Out,LIFO)データ構造に格納されてよい。1つ以上の実施形態において、プロセッサ204は、第2精度グループ内の第2のデータポイントの組を、第2のデータポイントの組のデータポイント数及び最小グループサイズ閾値(すなわち、n)に基づき、後入れ先出し(Last-In-First-Out,LIFO)データ構造に格納するよう構成されてよい。プロセッサ204は、第2のデータポイントの組のデータポイント数を最小グループサイズ閾値(すなわち、n)と比較してよい。第2のデータポイントの組のデータポイント数が最小グループサイズ閾値(例えば、n=2)よりも多いと決定される場合に、プロセッサ204は、第2のデータポイントの組をLIFOデータ構造に格納してよい。例において、LIFOデータ構造は、Sで表記され得るスタックデータ構造であってよい。例えば、プロセッサ204は、第2精度グループの第2のデータポイントの組をスタックデータ構造「S」においてプッシュしてもよい。LIFOデータ構造は、メモリ206、永続性データストレージ208、又はデータベース108のうちの1つ以上に格納してもよいが、これらに限られない。
【0091】
例えば、図7を参照して、関数702内の第2再帰呼び出し712は、第2精度グループ内の第2のデータポイントの組を関数の引数として用いて関数702を再帰的に呼び出すために使用されてもよい。例えば、第2再帰呼び出し712のプログラムコード「train(L)」は、セット「L」を関数の引数として用いてtrain()関数(すなわち、関数702)を再帰的に呼び出してよい。上述されたように、セット「L」は、第2精度グループ内の第2のデータポイントの組を含んでよい。
【0092】
図6Aを参照して、ブロック610で、第1精度グループに関連した決定された精度スコアが、セマンティッククラスの組の各セマンティッククラスに関連した精度閾値と比較されてよい。1つ以上の実施形態において、プロセッサ204は、第1精度グループに関連した決定された精度スコアを、セマンティッククラスの組の各セマンティッククラスに関連した精度閾値と比較するよう構成されてよい。例えば、図7を参照して、プロセッサ204は、第1精度グループに関連した決定された精度スコアを、セマンティッククラスの組の各セマンティッククラスに関連した精度閾値と比較するように、条件付きコード708を実行するよう構成されてよい。例えば、条件付きコード708内のプログラムコード「if(accuracy(H,R))>r_a」は、第1精度グループ(セット「H」内のデータポイントを含む。)に関連した決定された精度スコアを、正しい可能性のあるセマンティッククラス(セット「R」内のデータポイントを含む。)に関連した精度閾値(例えば、「r_a」)と比較するために、使用されてよい。例において、正しい可能性のあるセマンティッククラスに関連した精度閾値は、97%又は0.97であってよい。更に、条件付きコード708内のプログラムコード「if(accuracy(H,C))>c_a+/-r」は、第1精度グループに関連した決定された精度スコアを、2つのうちの1つのセマンティッククラス(セット「C」内のデータポイントを含む。)に関連した精度閾値(例えば、「c_a+/-r」)と比較するために、使用されてよい。言い換えると、第1精度グループに関連した精度スコアは、精度閾値(すなわち、「c_a」)及び閾範囲(例えば、「r」)に基づき決定された精度閾値の範囲と比較され得る。例において、2つのうちの1つのセマンティッククラスに関連した精度閾値の範囲は、50%±5%(すなわち、45%から55%、又は0.45から0.55)であってよい。更に、条件付きコード708内のプログラムコード「if(accuracy(H,C))>u_a」は、第1精度グループに関連した決定された精度スコアを、正しくない可能性のあるセマンティッククラス(セット「U」内のデータポイントを含む。)に関連した精度閾値(例えば、「u_a」)と比較するために、使用されてよい。例において、正しくない可能性のあるセマンティッククラスに関連した精度閾値は、35%又は0.35であってよい。実施形態において、正しい可能性のあるセマンティッククラスに関連した精度閾値(例えば、「r_a」)、2つのうちの1つのセマンティッククラスに関連した精度閾値の範囲(例えば、「c_a+/-r」)、及び正しくない可能性のあるセマンティッククラスに関連した精度閾値(例えば、「u_a」)は、対応するセマンティッククラスにクラスタ化された(すなわち、図3のブロック310を参照。)データポイントの組に関連した予測精度を示し得る。
【0093】
図6Aを参照して、ブロック612で、第1精度グループ内の第1のデータポイントの組は、比較に基づいて、セマンティッククラスの組の中の1つのセマンティッククラスに割り当てられてよい。1つ以上の実施形態において、ブロック610での比較に基づき、プロセッサ204は、第1精度グループ内の第1のデータポイントの組をセマンティッククラスの組の中の1つのセマンティッククラスに割り当てるよう構成されてよい。例えば、図7を参照して、第1精度グループに関連した精度スコアが、正しい可能性のあるセマンティッククラスに関連した精度閾値(すなわち、「r_a」)よりも高いと決定される場合に、プロセッサ204は、第1精度グループ内の第1のデータポイントの組をセット「R」に割り当ててよい。例えば、プログラムコード「R=merge(H,R)」は、第1のデータポイントの組を、セット「R」に既に存在しているデータポイントとマージし、それによって、第1のデータポイントの組をセット「R」に割り当てるために使用されてよい。上述されたように、セット「R」は、正しい可能性のあるセマンティッククラスに関連し得るデータポイントを含み得る。さもなければ、第1精度グループに関連した精度スコアが、2つのうちの1つのセマンティッククラスに関連した精度閾値の範囲(すなわち、「c_a+/-r」)内にあると決定される場合に、プロセッサ204は、第1精度グループ内の第1のデータポイントの組をセット「C」に割り当ててよい。例えば、プログラムコード「C=merge(H,C)」は、第1のデータポイントの組を、セット「C」に既に存在しているデータポイントとマージし、それによって、第1のデータポイントの組をセット「C」に割り当てるために使用されてよい。上述されたように、セット「C」は、2つのうちの1つのセマンティッククラスに関連し得るデータポイントを含み得る。第1精度グループに関連した精度スコアが、正しくない可能性のあるセマンティッククラスに関連した精度閾値(すなわち、「u_a」)よりも低いと決定される他のシナリオでは、プロセッサ204は、第1精度グループ内の第1のデータポイントの組をセット「U」に割り当ててよい。例えば、プログラムコード「U=merge(H,U)」は、第1のデータポイントの組を、セット「U」に既に存在しているデータポイントとマージし、それによって、第1のデータポイントの組をセット「U」に割り当てるために使用されてよい。上述されたように、セット「U」は、正しくない可能性のあるセマンティッククラスに関連し得るデータポイントを含み得る。
【0094】
図6Aを参照して、ブロック614で、第1精度グループ内の第1のデータポイントの組が、比較、第1のデータポイントの組のデータポイント数、及び最小グループサイズ閾値(すなわち、n)に基づき、LIFOデータ構造に格納されてよい。1つ以上の実施形態において、プロセッサ204は、(ブロック610での)比較、第1のデータポイントの組のデータポイント数、及び最小グループサイズ閾値(すなわち、n)に基づき、第1精度グループ内の第1のデータポイントの組をLIFOデータ構造に格納するよう構成されてよい。ブロック610での比較に基づき、第1のデータポイントの組が、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、又は正しくない可能性のあるセマンティッククラスのうちの1つにクラスタ化されるのに適していない場合には、第1のデータポイントの組は、LIFOデータ構造における格納に適し得る。第1のデータポイントの組がLIFOデータ構造における格納に適する場合に、第1のデータポイントの組は、第1のデータポイントの組のデータポイント数と最小グループサイズ閾値(すなわち、n)との比較に基づき、LIFOデータ構造に格納され得る。例えば、第1のデータポイントの組のデータポイント数が最小グループサイズ閾値(例えば、n=2)よりも多いと決定される場合にプロセッサ204は、第1のデータポイントの組をLIFOデータ構造に格納してよい。例えば、プロセッサ204は、第1精度グループ内の第1のデータポイントの組をスタックデータ構造「S」においてプッシュしてもよい。LIFOデータ構造は、メモリ206、永続性データストレージ208、又はデータベース108のうちの1つ以上に格納してもよいが、これらに限られない。
【0095】
例えば、図7を参照して、関数702内の第1再帰呼び出し710が、第1精度グループ内の第1のデータポイントの組を関数の引数として用いて関数702を再帰的に呼び出すために使用されてもよい。例えば、第1再帰呼び出し710のプログラムコード「|H|>n:train(H)」は、第1のデータポイントの組のデータポイント数が最小グループサイズ閾値(すなわち、n)よりも多い場合に、セット「H」を関数の引数として用いてtrain()関数(すなわち、関数702)を再帰的に呼び出してよい。上述されたように、セット「H」は、第1精度グループ内の第1のデータポイントの組を含み得る。
【0096】
図6Bを参照して、ブロック616で、LIFOデータ構造が空であるかどうかが決定されてよい。1つ以上の実施形態において、プロセッサ204は、LIFOデータ構造が空であるかどうかを決定するよう構成されてよい。LIFOデータ構造が空であるかどうかを決定するチェックは、図7の関数702の再帰的な繰り返しを制御するよう実行されてよい。
【0097】
ブロック618で、第3のデータポイントの組が、LIFOデータ構造が空ではないとの決定に基づき、LIFOデータ構造から読み出されてよい。1つ以上の実施形態において、LIFOデータ構造が空ではないとの決定(ブロック616でのチェックに基づき決定される。)に基づき、プロセッサ204は、LIFOデータ構造から第3のデータポイントの組を読み出すよう構成されてよい。LIFOデータ構造(例えば、スタック「S」)の後入れ先出し特性に基づいて、最も最近にLIFOデータ構造にプッシュされたデータポイントの組がポップされて、LIFOデータ構造(すなわち、スタック「S」)から第3のデータポイントの組として読み出され得る。実施形態において、第1精度グループの第1のデータポイントの組(すなわち、ブロック614でLIFOデータ構造に格納されたもの)が、第3のデータポイントの組として読み出されてもよい。他の実施形態では、第2精度グループの第2のデータポイントの組(すなわち、ブロック608でLIFOデータ構造に格納されたもの)が、第3のデータポイントの組として読み出されてもよい。
【0098】
ブロック620で、読み出された第3のデータポイントの組は、クラスタ化されるべき現在のサンプルとして選択し直されてよい。1つ以上の実施形態において、プロセッサ204は、読み出された第3のデータポイントの組を、クラスタ化されるべき現在のサンプルとして選択し直すよう構成されてよい。読み出された第3のデータポイントの組の、更にクラスタ化されるべき現在のサンプルとしての再選択は、ブロック620で記載されている、受け取られた第1データセットの、クラスタ化されるべき現在のサンプルとしての選択と同様であってよい。例えば、図7を参照して、プロセッサ204は、関数702の次の再帰的な繰り返しについて、初期化ステートメント704を実行するよう構成されてよい。ここで、訓練データ「T」は、LIFOデータ構造からの、読み出された第3のデータポイントの組の現在のサンプルとしての再選択に基づき、読み出された第3のデータポイントの組を割り当てられてよい。言い換えると、関数702の引数である訓練データ「T」が現在のサンプルとして割り当てられて得る。更に、制御は、図6Bに示されるように、ブロック604へ移ってよい。従って、新たに選択された現在のサンプルについて、プロセッサ204は、現在のサンプル内のデータポイントをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化するよう再びブロック604~614を実行してもよい。
【0099】
図6Bを参照して、ブロック622で、クラスタ化された第1データセットが、LIFOデータ構造が空であるとの決定に基づき、取得されてよい。1つ以上の実施形態において、プロセッサ204は、LIFOデータ構造が空であるとの決定に基づき、クラスタ化された第1データセットを、ブロック604~620までの動作の組の反復制御に基づいて取得するよう構成されてよい。LIFOデータ構造が空であるとの決定は、図7の関数702の全ての再帰的な繰り返しが処理されており、第1データセットが第1データセット内のほとんど又は全てのデータポイントについてクラスタ化されていることを示し得る。例えば、図7を参照して、関数702の最後の再帰的な繰り返しで、プロセッサ204は、クラスタ化された第1データセットを含むセット「R」、「U」、「C」及び「N」を返すようリターンステートメント714を実行してよい。このようにして、第1データセットは、正しい可能性のあるセマンティッククラス(すなわち、セット「R」)、正しくない可能性のあるセマンティッククラス(すなわち、セット「U」)、2つのうちの1つのセマンティッククラス(すなわち、セット「C」)、及び知らないセマンティッククラス(すなわち、セット「N」)を含むセマンティッククラスの組にクラスタ化され得る。
【0100】
図6Bを参照して、ブロック624で、クラスタ化された第1データセットは、受け取られた第1データセット内の各データポイントについての予測された第1クラス及び識別された混同クラスペアの組に基づき、再クラスタ化されてよい。1つ以上の実施形態において、プロセッサ204は、識別された混同クラスペアの組と、受け取られた第1データセット内の各データポイントについての予測された第1クラスとに基づき、クラスタ化された第1データセットを再クラスタ化するよう構成されてよい。受け取られた第1データセット内の各データポイントについて、プロセッサ204は、データポイントが2つのうちの1つのセマンティッククラスにクラスタ化されるかどうかを決定してよい(すなわち、例えば、図5で記載。)言い換えると、プロセッサ204は、データポイントについての予測された第1クラスが混同クラスペアの組2含まれるかどうかを決定してよい。データポイントが2つのうちの1つのセマンティッククラス(すなわち、混同クラスセット「C」)にクラスタ化されるが、そのデータポイントについての予測された第1クラスが混同クラスペアの組に含まれない場合に、プロセッサ204は、データポイントを知らないセマンティッククラスに再クラスタ化してもよい。さもなければ、データポイントが2つのうちの1つのセマンティッククラス以外のセマンティッククラスにクラスタ化される場合、又はデータポイントが2つのうちの1つのセマンティッククラスにクラスタ化され、予測された第1クラスが混同クラスペアの組に含まれる場合には、そのデータポイントは再クラスタ化されなくてもよい。例えば、番号認識アプリケーションの場合に、番号「1」及び「7」は、混同クラスペアの組に含まれる混同クラスペアである可能性がある。データポイントが2つのうちの1つのセマンティッククラスにクラスタ化され、そのデータポイントの予測された第1クラスが番号「3」である場合に、プロセッサ204は、データポイントの予測された第1クラスが混同クラスペアに属し得ないということで、そのデータポイントを知らないセマンティッククラスに再クラスタ化してよい。しかし、データポイントの予測された第1クラスが「1」(混同クラスペアに属す可能性がある。)であり、データポイントが2つのうちの1つのセマンティッククラスにクラスタ化される場合には、そのデータポイントは再クラスタ化されなくてもよい。
【0101】
ブロック626で、分類器106は、再クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき、訓練されてよい。1つ以上の実施形態において、プロセッサ204は、再クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき、分類器(例えば、分類器106)の訓練を制御するよう構成されてよい。分類器106の例には、決定木分類器、サポートベクトルマシン(SVM)分類器、単純ベイス分類器、ロジスティック回帰分類器、又はK近傍(K-NN)分類器が含まれ得るが、これらに限られない。例において、分類器106は、K=5個の最近傍によるK-NN分類器として構築及び訓練されてよい。例として、サイキット・ラーン(Scikit-Learn)ライブラリが、K-NN分類器を構築及び訓練するために使用されてもよい。例えば、分類器106は、例えば、図3のブロック312で記載されるように、第1データセット内の各データポイントについての、第3の特徴スコアの組と、クラスタ化されたセマンティッククラスの組との間の関係に関して、訓練され得る。K-NN分類器(例えば、分類器106)の訓練に基づき、K-NN分類器は、例えば、図4で記載されるように、セマンティッククラスの組の中の1つのセマンティッククラスを出力し得る。分類器106によって学習された関係に基づいて、分類器106は、例えば、図4で(ブロック406~410で)記載されるように、新しいデータポイントについて決定された第2の特徴スコアの組に基づき、新しいデータポイント(すなわち、第2データポイント)をセマンティッククラスの組の中の1つのセマンティッククラスに分類してよい。制御は終了に移ってよい。
【0102】
フローチャート600は、602、604、606、608、610、612、614、616、618、620、622、624、及び626などの別個の動作として表されているが、特定の実施形態では、このような別個の動作は、開示されている実施形態の本質から外れずに、特定の実施に応じて、追加の動作に分けられても、より少ない動作にまとめられても、あるいは、削除されてもよい。図7に示されるシナリオ700(プログラムコードを含む。)は、単に例として提示されており、本開示の範囲を限定するよう解釈されるべきではないことが留意され得る。
【0103】
従って、開示されている電子デバイス102は、DNN104の入力空間を、人が理解することができ、かつ、人(すなわち、ユーザ114)がDNN104の予測出力をより意味ある方法で理解するのを助けることができる様々なセマンティッククラスにパーティション化し得る。セマンティッククラスは、セマンティッククラスにクラスタ化されたデータポイントの予測精度(例えば、図6Aのブロック610を参照。)を示し得る。あるセマンティッククラスにおけるデータポイントのクラスタ化は、データポイントを分類することにおけるDNN104の信頼性に関して定性的なフィードバックをユーザに提供するために使用されてよく、更には、ユーザが、定性的なフィードバックに基づき、情報に基づく又は実行可能な決定を行うことを可能にし得る。これは更に、誤分類又は誤った予測の適切な検出と、誤った予測による如何なる経済的又は物理的な損失も回避するための(出力情報としての)特定のアクションの実行とによって、DNN104の予測又は分類の精度を高め得る。開示されている電子デバイス102によって特定のデータポイントについて供給された定性的なフィードバック及び/又はクラスタ化されたセマンティッククラスの組の中の1つの容易な理解に基づいて、ユーザ114又はユーザエンドデバイス110は、DNN104を信頼し、それに応じて、例えば、データポイントの予測をそのまま信頼すること、データポイントの予測を単純に捨てること、データポイントについて再び予測を実行するようDNN104を制御すること、より信頼できる出力を得るようデータポイントを他のDNNモデルへ渡すこと(すなわち、図4のブロック412で記載されたタイブレークソリューション)、又は複数のDNNモデルの間で多数決ソリューションを実行すること(図4のブロック412を参照。)といった(しかし、限定されない。)、適切な又は実行可能な決定を行うことができる。
【0104】
本開示のための例示的なデータセット及び実験セットアップは、次のように、表1で提示される:
【表1】
【0105】
留意されるべきは、表1で与えられているデータは、単に実験データとして解釈され得るものであり、本開示限定するものとして解釈され得ないことである。
【0106】
セマンティッククラスの組へのデータポイントのクラスタ化のための分類器の訓練フェーズ(すなわち、図3図6A図6B、及び図7で記載。)の例示的な実験データセット及び結果は、次のように、表2で提示される:
【表2】
【0107】
留意されるべきは、表2で与えられているデータは、単に実験データとして解釈され得るものであり、本開示限定するものとして解釈され得ないことである。
【0108】
セマンティッククラスの組の中の1つのセマンティッククラスへの新しいデータポイントのクラスタ化のための分類器の動作(すなわち、実時間)フェーズ(すなわち、図4で記載。)の例示的な実験データセット及び結果は、次のように、表3で提示される:
【表3】
【0109】
留意されるべきは、表3で与えられているデータは、単に実験データとして解釈され得るものであり、本開示限定するものとして解釈され得ないことである。
【0110】
本開示の様々な実施形態は、実行されることに応答して、システム(例えば、例となるシステム202又は電子デバイス102など)に動作を実行させる命令を記憶するよう構成された1つ以上の非一時的なコンピュータ可読記憶媒体を提供してもよい。動作は、実時間アプリケーションに関連した第1データセットを受け取ることを含んでよい。動作は、実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)によって、受け取られた第1データセットの第1データポイントに関連した第1クラスを予測することを更に含んでもよい。動作は、第1データポイントに関連した予測された第1クラスに基づき、第1データポイントの第1の特徴スコアの組を決定することを更に含んでもよい。動作は、予測された第1クラスと、第1データポイントに関連した所定のクラスとに基づき、DNNに関連した混同クラスペアの組を識別することを更に含んでもよい。動作は、受け取られた第1データセット内の各データポイントについての決定された第1の特徴スコアの組、予測された第1クラス、及び識別された混同クラスペアの組に基づき、受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化することを更に含んでもよい。セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。動作は、クラスタ化された第1データセット、決定された第1の特徴スコアの組、及びセマンティッククラスの組に基づき、分類器を訓練することを更に含んでもよい。
【0111】
本開示の様々な実施形態は、実行されることに応答して、システム(例えば、例となるシステム202又は電子デバイス102など)に動作を実行させる命令を記憶するよう構成された1つ以上の非一時的なコンピュータ可読記憶媒体を提供してもよい。動作は、実時間アプリケーションに関連した第1データセットを受け取ることを含んでよい。動作は、実時間アプリケーションに関連した第2データポイントを受け取ることを含んでよい。動作は、実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)によって、第2データポイントに関連した第2クラスを予測することを更に含んでもよい。動作は、受け取られた第2データポイントに関連した予測された第2クラスに基づき、第2データポイントの第2の特徴スコアの組を決定することを更に含んでもよい。動作は、決定された第2の特徴スコアの組及び予測された第2クラスに基づき、予め訓練された分類器を、受け取られた第2データポイントに適用することを更に含んでもよい。分類器は、データポイントをセマンティッククラスの組の中の1つのセマンティッククラスに分類するよう予め訓練されてよい。セマンティッククラスの組の各セマンティッククラスは、セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示し得る。動作は、第2データポイントに対する予め訓練された分類器の適用に基づき、第2データポイントをセマンティッククラスの組の中の1つのセマンティッククラスに分類することを更に含んでもよい。動作は、セマンティッククラスの組の中の、第2データポイントについての分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定することを更に含んでもよい。動作は、決定された少なくとも1つのアクションをレンダリングすることを更に含んでもよい。
【0112】
本開示で使用されるように、「モジュール」又は「コンポーネント」という用語は、モジュール若しくはコンポーネントの動作を実行するよう構成された特定のハードウェア実装、並びに/又はコンピューティングシステムの汎用ハードウェア(例えば、コンピュータ可読媒体、処理デバイス、など)に記憶され及び/若しくはそれによって実行され得るソフトウェアオブジェクト若しくはソフトウェアルーチンを指し得る。いくつかの実施形態において、本開示で記載される異なるコンポーネント、モジュール、エンジン、及びサービスは、コンピューティングシステムで(例えば、別個のスレッドとして)実行するオブジェクト又はプロセスとして実装されてもよい。本開示で記載されるシステム及び方法のいくつかは、(汎用ハードウェアに記憶され及び/又はそれによって実行される)ソフトウェアにおいて実装されるものとして概して記載されているが、特定のハードウェア実装、又はソフトウェアと特定のハードウェア実装との組み合わせも可能であり、考えられている。本明細書中、「コンピューティングエンティティ」は、本開示で先に定義されたあらゆるコンピューティングシステム、又はコンピューティングシステムで実行されるあらゆるモジュール若しくはモジュールの組み合わせであってよい。
【0113】
本開示で、特に添付の特許請求の範囲(例えば、添付の特許請求の本文)で使用される用語は、一般的に、“非限定的な(open)”用語として意図されている(例えば、語「含んでいる(including)」は、“~を含んでいるが、~に限定されない”との意に解釈されるべきであり、語「備えている(having)」は、「少なくとも~を備えている」との意に解釈されるべきであり、語「含む(includes)」は、“~を含むが、~に限定されない”との意に解釈されるべきである、など。)。
【0114】
更に、導入されたクレーム記載(introduced claim recitation)において特定の数が意図される場合、そのような意図は当該クレーム中に明確に記載され、そのような記載がない場合は、そのような意図も存在しない。例えば、理解を促すために、後続の添付された特許請求の範囲では、「少なくとも1つの(at least one)」及び「1つ以上の(one or more)」といった導入句を使用し、クレーム記載を導入することがある。しかし、このような句を使用するからといって、「a」又は「an」といった不定冠詞によりクレーム記載を導入した場合に、たとえ同一のクレーム内に、「1つ以上の」又は「少なくとも1つの」といった導入句と「a」又は「an」といった不定冠詞との両方が含まれるとしても、当該導入されたクレーム記載を含む特定のクレームが、当該記載事項を1しか含まない例に限定されるということが示唆されると解釈されるべきではない(例えば、「a」及び/又は「an」は、「少なくとも1つの」又は「1つ以上の」を意味すると解釈されるべきである。)。定冠詞を使用してクレーム記載を導入する場合にも同様のことが当てはまる。
【0115】
更には、導入されたクレーム記載において特定の数が明示されている場合であっても、そのような記載は、通常、少なくとも記載された数を意味するように解釈されるべきであることは、当業者には理解されるであろう(例えば、他に修飾語のない、単なる「2つの記載事項」という記載がある場合、この記載は、少なくとも2つの記載事項、又は2つ以上の記載事項を意味する。)。更に、「A、B及びCなどのうち少なくとも1つ」又は「A、B及びCなどのうちの1つ以上」に類する表記が使用される場合、一般的に、そのような構造は、Aのみ、Bのみ、Cのみ、AとBの両方、AとCの両方、BとCの両方、及び/又はAとBとCの全て、などを含むよう意図される。
【0116】
更に、2つ以上の選択可能な用語を表す如何なる離接語及び/又は離接句も、明細書、特許請求の範囲、又は図面のいずれであろうと、それら用語のうちの1つ、それらの用語のうちのいずれか、あるいは、それらの用語の両方を含む可能性を意図すると理解されるべきである。例えば、「A又はB」という句は、「A又はB」、あるいは、「A及びB」の可能性を含むことが理解されるべきである。
【0117】
本開示で挙げられている全ての例及び条件付き言語は、当該技術の促進に本発明者によって寄与される概念及び本発明を読者が理解するのを助ける教育上の目的を意図され、そのような具体的に挙げられている例及び条件に制限されないと解釈されるべきである。本開示の実施形態が詳細に記載されてきたが、様々な変更、置換、及び代替が、本開示の主旨及び適用範囲から逸脱することなしに行われてよい。
【0118】
上記の実施形態に加えて、以下の付記を開示する。
(付記1)
プロセッサが実行する方法であって、
実時間アプリケーションに関連した第1データセットを受け取ることと、
前記実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)によって、前記受け取られた第1データセットの第1データポイントに関連した第1クラスを予測することと、
前記第1データポイントに関連した前記予測された第1クラスに基づき、前記第1データポイントの第1の特徴スコアの組を決定することと、
前記予測された第1クラスと、前記第1データポイントに関連した所定のクラスとに基づき、前記DNNに関連した混同クラスペアの組を識別することと、
前記受け取られた第1データセット内の各データポイントについての前記決定された第1の特徴スコアの組と、前記予測された第1クラスと、前記識別された混同クラスペアの組とに基づき、前記受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化することであり、前記セマンティッククラスの組の中の各セマンティッククラスが、前記セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示す、ことと、
前記クラスタ化された第1データセットと、前記決定された第1の特徴スコアの組と、前記セマンティッククラスの組とに基づき、分類器を訓練することと
を有する方法。
(付記2)
前記実時間アプリケーションに関連した第2データポイントを受け取ることと、
前記DNNによって、前記受け取られた第2データポイントに関連した第2クラスを予測することと、
前記受け取られた第2データポイントに関連した前記予測された第2クラスに基づき、前記第2データポイントの第2の特徴スコアの組を決定することと、
前記決定された第2の特徴スコアの組及び前記予測された第2クラスに基づき、前記訓練された分類器を前記第2データポイントに適用することと、
前記第2データポイントに対する前記訓練された分類器の適用に基づき、前記第2データポイントを前記セマンティッククラスの組の中の1つのセマンティッククラスに分類することと
を更に有する、付記1に記載の方法。
(付記3)
前記セマンティッククラスの組の中の、前記第2データポイントについての前記分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定することと、
前記決定された少なくとも1つのアクションをレンダリングすることと
を更に有する、請求項2に記載の方法。
(付記4)
前記セマンティッククラスの組は、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを有する、
請求項1に記載の方法。
(付記5)
前記第1の特徴スコアの組は、前記第1データポイントについての、尤度に基づいたサプライズアデクシー(LSA)スコア、距離に基づいたサプライズアデクシー(DSA)スコア、信頼スコア、ロジットスコア、又はロバスト性ダイバーシティスコアのうちの少なくとも1つの情報を有する、
付記1に記載の方法。
(付記6)
前記LSAスコアは、前記第1データポイントが前記第1データセットによる分布内にあるかどうかを示す、
付記5に記載の方法。
(付記7)
前記DSAスコアは、前記第1データポイントが、前記DNNに関連したハイパースペースにおいて前記予測された第1クラスに隣接する他のクラスよりも前記予測された第1クラスに近いかどうかを示す、
付記5に記載の方法。
(付記8)
前記信頼スコアは、前記第1データポイントに関連した前記第1クラスの予測についての前記DNNの確率スコアに対応する、
付記5に記載の方法。
(付記9)
前記ロジットスコアは、前記第1データポイントに関連した前記第1クラスの予測についての前記DNNのpre-softmaxレイヤからのスコアに対応する、
付記5に記載の方法。
(付記10)
前記ロバスト性ダイバーシティスコアは、前記第1データポイントに対応する1つ以上のバリエーションについての前記DNNによる予測の安定性の程度を示す、
付記5に記載の方法。
(付記11)
前記混同クラスペアの組の識別は、
前記第1データポイントに関連した前記所定のクラスを、前記第1データポイントに関連した前記予測された第1クラスと比較することと、
前記比較に基づいて、前記予測された第1クラス及び前記所定のクラスを含む第1クラスペアに関連した誤分類の第1インスタンスを識別することと、
前記識別された誤分類の第1インスタンスに基づき、前記第1クラスペアに関連した誤分類のインスタンスのカウントを決定することと、
前記誤分類のインスタンスのカウント及び閾値に基づき、前記混同クラスペアの組の中の混同クラスペアとして前記第1クラスペアを識別することと
を有する、
付記1に記載の方法。
(付記12)
前記受け取られた第1データセットを、クラスタ化されるべき現在のサンプルとして選択することと、
前記受け取られた第1データセットのクラスタ化のための動作の組を制御することであり、前記動作の組は、
前記選択された現在のサンプル内の各データポイントの第3の特徴スコアの組に基づき、第1精度グループ又は第2精度グループのうちの1つに前記選択された現在のサンプルをクラスタ化することと、
前記第1精度グループ内の第1のデータポイントの組の各データポイントについて前記DNNによって予測されたクラスに基づき、かつ、前記第1のデータポイントの組の中の対応するデータポイントに関連した所定のクラスに基づき、前記第1精度グループに関連した精度スコアを決定することと、
前記第2精度グループ内の第2のデータポイントの組のデータポイント数及び最小グループサイズ閾値に基づき、前記第2のデータポイントの組を後入れ先出し(LIFO)データ構造に格納することと、
前記第1精度グループに関連した前記決定された精度スコアを、前記セマンティッククラスの組の各セマンティッククラスに関連した精度閾値と比較することと、
前記比較に基づき、前記第1精度グループ内の前記第1のデータポイントの組を前記セマンティッククラスの組の中の1つのセマンティッククラスに割り当てることと、
前記LIFOデータ構造が空であるかどうかを決定することと、
前記LIFOデータ構造が空ではないとの決定に基づき、前記LIFOデータ構造から第3のデータポイントの組を読み出すことと、
前記読み出された第3のデータポイントの組を、クラスタ化されるべき前記現在のサンプルとして選択し直すことと
を有する、前記制御することと、
前記LIFOデータ構造が空であるとの決定に基づき、前記動作の組の反復制御に基づいて前記クラスタ化された第1データセットを取得することと
を更に有する、付記1に記載の方法。
(付記13)
前記動作の組は、前記比較、前記第1のデータポイントの組のデータポイント数、及び前記最小グループサイズ閾値に基づき、前記第1精度グループの前記第1のデータポイントの組を前記LIFOデータ構造に格納することを更に有する、
付記12に記載の方法。
(付記14)
前記識別された混同クラスペアの組と、前記受け取られた第1データセット内の各データポイントについての前記予測された第1クラスとに基づき、前記クラスタ化された第1データセットを前記セマンティッククラスの組に再クラスタ化することと、
前記再クラスタ化された第1データセット、前記決定された第1の特徴スコアの組、及び前記セマンティッククラスの組に基づき、前記分類器を訓練することと
を更に有する、付記1に記載の方法。
(付記15)
前記選択された現在のサンプルは、k平均法アルゴリズムに基づきクラスタ化される、
付記12に記載の方法。
(付記16)
前記分類器は、K近傍分類器に対応する、
付記1に記載の方法。
(付記17)
前記第1データポイントは、イメージデータ、オーディオデータ、又はテキストデータのうちの1つに対応し、
前記実時間アプリケーションは、イメージ分類、スピーチ認識、又はテキスト認識のうちの1つを有する、
付記1に記載の方法。
(付記18)
プロセッサが実行する方法であって、
実時間アプリケーションに関連したデータポイントを受け取ることと、
前記実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)によって、前記データポイントに関連したクラスを予測することと、
前記受け取られたデータポイントに関連した前記予測されたクラスに基づき、前記受け取られたデータポイントの特徴スコアの組を決定することと、
前記決定された特徴スコアの組及び前記予測されたクラスに基づき、予め訓練された分類器を前記受け取られたデータポイントに適用することであり、前記分類器は、セマンティッククラスの組の中の1つのセマンティッククラスにデータポイントを分類するよう予め訓練されており、前記セマンティッククラスの組の各セマンティッククラスは、前記セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示す、ことと、
前記受け取られたデータポイントに対する前記予め訓練された分類器の適用に基づき、前記受け取られたデータポイントを前記セマンティッククラスの組の中の1つのセマンティッククラスに分類することと、
前記セマンティッククラスの組の中の、前記受け取られたデータポイントについての前記分類された1つのセマンティッククラスに関連した少なくとも1つのアクションを決定することと、
前記決定された少なくとも1つのアクションをレンダリングすることと
を有する方法。
(付記19)
前記セマンティッククラスの組は、正しい可能性のあるセマンティッククラス、2つのうちの1つのセマンティッククラス、正しくない可能性のあるセマンティッククラス、又は知らないセマンティッククラス、のうちの少なくとも1つを有する、
付記18に記載の方法。
(付記20)
命令を記憶しているメモリと、
実時間アプリケーションの分類タスクのために予め訓練されたディープニューラルネットワーク(DNN)と、
前記メモリ及び前記DNNへ結合され、前記命令を実行して、
前記実時間アプリケーションに関連した第1データセットを受け取ることと、
前記DNNによって、前記受け取られた第1データセットの第1データポイントに関連した第1クラスを予測することと、
前記第1データポイントに関連した前記予測された第1クラスに基づき、前記第1データポイントの第1の特徴スコアの組を決定することと、
前記予測された第1クラスと、前記第1データポイントに関連した所定のクラスとに基づき、前記DNNに関連した混同クラスペアの組を識別することと、
前記受け取られた第1データセット内の各データポイントについての前記決定された第1の特徴スコアの組と、前記予測された第1クラスと、前記識別された混同クラスペアの組とに基づき、前記受け取られた第1データセットをセマンティッククラスの組の中の1つのセマンティッククラスにクラスタ化することであり、前記セマンティッククラスの組の中の各セマンティッククラスが、前記セマンティッククラスの組の中の対応するセマンティッククラスにクラスタ化されたデータポイントの組に関連した予測精度を示す、ことと、
前記クラスタ化された第1データセットと、前記決定された第1の特徴スコアの組と、前記セマンティッククラスの組とに基づき、分類器を訓練することと
を有するプロセスを実行するプロセッサと
を有する電子デバイス。
【符号の説明】
【0119】
102 電子デバイス
104 ディープニューラルネットワーク(DNN)
106 分類器
108 データベース
110 ユーザエンドデバイス
112 通信ネットワーク
114 ユーザ
202 システム
204 プロセッサ
206 メモリ
208 永続性データストレージ208
210 入出力(I/O)デバイス
210A 表示スクリーン
212 ネットワークインターフェース
図1
図2
図3
図4
図5
図6A
図6B
図7