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

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

▶ ヴィアナイ システムズ, インコーポレイテッドの特許一覧

特表2023-534433ニューラルネットワークの自然言語記述を生成するための技術
<>
  • 特表-ニューラルネットワークの自然言語記述を生成するための技術 図1
  • 特表-ニューラルネットワークの自然言語記述を生成するための技術 図2
  • 特表-ニューラルネットワークの自然言語記述を生成するための技術 図3
  • 特表-ニューラルネットワークの自然言語記述を生成するための技術 図4
  • 特表-ニューラルネットワークの自然言語記述を生成するための技術 図5
  • 特表-ニューラルネットワークの自然言語記述を生成するための技術 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-08-09
(54)【発明の名称】ニューラルネットワークの自然言語記述を生成するための技術
(51)【国際特許分類】
   G06N 3/04 20230101AFI20230802BHJP
【FI】
G06N3/04
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023501445
(86)(22)【出願日】2021-07-15
(85)【翻訳文提出日】2023-01-23
(86)【国際出願番号】 US2021041880
(87)【国際公開番号】W WO2022016009
(87)【国際公開日】2022-01-20
(31)【優先権主張番号】63/053,510
(32)【優先日】2020-07-17
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/376,086
(32)【優先日】2021-07-14
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】519266524
【氏名又は名称】ヴィアナイ システムズ, インコーポレイテッド
(74)【代理人】
【識別番号】100073184
【弁理士】
【氏名又は名称】柳田 征史
(74)【代理人】
【識別番号】100175042
【弁理士】
【氏名又は名称】高橋 秀明
(72)【発明者】
【氏名】インダー シッカ,ヴィシャール
(57)【要約】
人工知能(AI)モデルは、階層的に1つまたは複数の観察者モデルに結合された1つまたは複数の特徴モデルを含む。特徴モデルは、入力を処理して、その入力内の異なる特徴を検出するように構成される。観察者モデルは、入力の処理中に特徴モデルの動作を分析して、様々なタイプの観察を生成するように構成される。観察の1つのタイプは、所与の特徴モデルの様々なアーキテクチャ特性及び/または関数特性が、特徴を検出するためにどのように入力の処理に影響を与えるのかを伝達する自然言語表現を含み、それによって所与の特徴モデルが動作する基礎となるメカニズムを明らかにする。
【特許請求の範囲】
【請求項1】
ニューラルネットワークの特性を分析するためのコンピュータ実装方法であって、
第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させることと、
第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させることであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成されることと
を含む、前記コンピュータ実装方法。
【請求項2】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つに基づいて統語成分のタクソノミーを生成させ、前記統語成分のタクソノミーを使用して前記自然言語表現を生成させることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つのアーキテクチャ特性を数値化するアーキテクチャパラメータ化を生成させ、前記アーキテクチャパラメータ化を使用して前記自然言語表現を生成させることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項4】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つの関数特性を数値化する関数パラメータ化を生成させ、前記関数パラメータ化を使用して前記自然言語表現を生成させることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項5】
前記第1の動作が、畳み込み演算、集約演算、または閾値比較演算を含む、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記1つまたは複数の特性が、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つを含む、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記第1の動作が、前記第1の入力が第1のタイプの特徴を含む程度を数値化する特徴検出演算を含む、請求項1に記載のコンピュータ実装方法。
【請求項8】
前記第2のニューラルネットワークが、前記第1のニューラルネットワークの1つまたは複数のアーキテクチャ特性、または前記第1のニューラルネットワークの1つまたは複数の関数特性の少なくとも1つに基づいて自然言語表現を生成するようにトレーニングされるディープニューラルネットワークを備える、請求項1に記載のコンピュータ実装方法。
【請求項9】
非一時的なコンピュータ可読媒体であって、プロセッサによって実行されるときに、前記プロセッサに、
第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させる前記ステップと、
第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させる前記ステップであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成させるステップと
を実行させるプログラム命令を格納する、前記非一時的なコンピュータ可読媒体。
【請求項10】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つに基づいて統語成分のタクソノミーを生成させ、前記統語成分のタクソノミーを使用して前記自然言語表現を生成させる前記ステップをさらに含む、請求項9に記載の非一時的なコンピュータ可読媒体。
【請求項11】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つのアーキテクチャ特性を数値化するアーキテクチャパラメータ化を生成させ、前記アーキテクチャパラメータ化を使用して前記自然言語表現を生成させる前記ステップをさらに含む、請求項9に記載の非一時的なコンピュータ可読媒体。
【請求項12】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つの関数特性を数値化する関数パラメータ化を生成させ、前記関数パラメータ化を使用して前記自然言語表現を生成させる前記ステップをさらに含む、請求項9に記載の非一時的なコンピュータ可読媒体。
【請求項13】
前記1つまたは複数の特性が、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つを含む、請求項9に記載の非一時的なコンピュータ可読媒体。
【請求項14】
前記第2のニューラルネットワークが、前記第1の動作を実行するように構成された前記第1のニューラルネットワークの内部部分に結合される、請求項9に記載の非一時的なコンピュータ可読媒体。
【請求項15】
前記第1のニューラルネットワークが、前記第1の動作を実行するときに1つまたは複数の中間値を生成し、前記第2のニューラルネットワークが、前記1つまたは複数の中間値に基づいて前記自然言語表現を生成する、請求項9に記載の非一時的なコンピュータ可読媒体。
【請求項16】
ニューラルネットワークの特性を分析するためのコンピュータ実装方法であって、
第1のニューラルネットワークに、第1の入力に基づいて第1の出力を生成させることと、
第2のニューラルネットワークに、前記第1の出力を生成するときに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つをユーザーに伝達する自然言語表現を生成させることと
を含む、前記コンピュータ実装方法。
【請求項17】
前記第2のニューラルネットワークが、前記第1の出力を生成するために第1の動作を実行する前記第1のニューラルネットワークの内部部分に結合され、前記自然言語表現が、前記第1の動作の少なくとも1つの特性を前記ユーザーに伝達する、請求項16に記載のコンピュータ実装方法。
【請求項18】
前記自然言語表現をユーザーに出力すること、または前記自然言語表現をメモリに格納することをさらに含む、請求項16に記載のコンピュータ実装方法。
【請求項19】
グラフィカルユーザーインターフェースを介して、前記第1のニューラルネットワークと前記第2のニューラルネットワークとの間の1つまたは複数の相互接続を示す構成データを受け取ることと、
前記構成データに基づいて前記第1のニューラルネットワークと前記第2のニューラルネットワークの両方を構成することと
をさらに含む、請求項16に記載のコンピュータ実装方法。
【請求項20】
前記構成データが、前記第1のニューラルネットワークに関連付けられたニューラルネットワークタイプ、及び前記第2のニューラルネットワークに関連付けられたニューラルネットワークタイプをさらに示す、請求項19に記載のコンピュータ実装方法。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
本出願は、2020年7月17日に出願され、通し番号63/053,510を有する「Technique for Generating Natural Language Descriptions of Neural Networks」と題する米国仮出願の優先権の利益を主張し、2021年7月14日に出願され、通し番号17/376,086を有する「Technique for Generating Natural Language Descriptions of Neural Netoworks」と題する米国出願の優先権の利益を主張する。これらの関連出願の主題は、これによって参照により本明細書に組み込まれる。
【技術分野】
【0002】
様々な実施形態は、一般に、コンピュータ科学及び人工知能に関し、より具体的には、ニューラルネットワークの自然言語記述を生成するための技術に関する。
【背景技術】
【0003】
従来のニューラルネットワーク設計プロセスでは、設計者は、特定のタイプの問題に対処するニューラルネットワークアーキテクチャを開発するためにプログラムコードを書く。設計者は、トレーニングデータを処理するときにニューラルネットワークが生成する必要があるターゲット出力と併せてそのトレーニングデータを使用してニューラルネットワークをトレーニングする。トレーニングプロセス中、トレーニングアルゴリズムは、ニューラルネットワークの層に含まれる重みを更新して、ニューラルネットワークが、ターゲット出力と一貫性がある出力を生成する程度を改善する。トレーニングが完了すると、ニューラルネットワークはバリデーションデータを使用して試験され、ニューラルネットワークが、バリデーションデータに関連付けられたターゲット出力を生成できる精度を決定する。
【0004】
ニューラルネットワークを設計するときに選ぶ様々な範囲のネットワークアーキテクチャがある。「ディープ」ニューラルネットワークは、一般に、多くの異なるタイプの層及び異なる層の中での接続の複雑なトポロジを含む複雑なネットワークアーキテクチャを有する。一部のディープニューラルネットワークは、各層が、数百または数千の個々のニューロンを含むことができ、数百または数千の個々の接続を介して1つまたは複数の他の層に結合することができる10以上の層を有する可能性がある。ディープニューラルネットワークは、広範囲のタスクを高い精度で実行するようにトレーニングできるため、ディープニューラルネットワークは、人工知能の分野で広く採用されるようになっている。しかしながら、ディープニューラルネットワークを設計及び展開するときには様々な問題が発生する可能性がある。
【0005】
第1に、ディープニューラルネットワークの固有の複雑さにより、設計者は、ディープニューラルネットワークがどのように動作するのかを直接的に観察または理解することができない。結果として、典型的な設計者は、通常、ディープニューラルネットワークのどのコンポーネントが、特定の挙動または結果を生じさせることに関与しているのかを判断することができない。したがって、所与のディープニューラルネットワークが、バリデーションデータと比較して高い精度で動作しているように見えても、設計者は、通常、ディープニューラルネットワークが、なぜそのような高い精度で動作するのか、またはディープニューラルネットワークが現実世界の実装においてなぜ高い精度で動作し続ける必要があるのかを説明することができない。ディープニューラルネットワークの基礎となるメカニズムを理解または説明することができないため、多くの場合、ディープニューラルネットワークは、不正確な動作が重大な結果をもたらす可能性がある、自律走行車またはロボット手術システムなどのシステムに展開することができない。
【0006】
第2に、設計者は、ディープニューラルネットワークがどのようにして動作するのかを直接的に観察または理解することができないため、設計者は、通常、所与のディープニューラルネットワークのどのコンポーネントが、そのディープニューラルネットワークが不正確な結果を生じさせる場合に、修正されるべきかを特定することができない。結果的に、不正確な結果を生じさせるディープニューラルネットワークは、通常、異なるトレーニングデータ及び/または異なる初期条件を使用して再トレーニングしなければならない。しかしながら、ディープニューラルネットワークが再トレーニングされ、後に高い精度で動作するとしても、上述の理由から、設計者は、通常、ディープニューラルネットワークの再トレーニングが、なぜネットワークの全体的な動作を改善したのかを理解または説明することができない。
【0007】
上述の説明が示すように、当該技術で必要とされることは、ディープニューラルネットワークの動作を分析するためのより効果的な技術である。
【発明の概要】
【0008】
様々な実施形態は、第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させることと、第2のニューラルネットワークに、第1の動作に基づいて自然言語表現を生成させることであって、自然言語表現が、第1の動作を実行するときに第1のニューラルネットワークの1つまたは複数の特徴をユーザーに示す、生成させることとを含む、ニューラルネットワークの特徴を分析するためのコンピュータ実装方法を含む。
【0009】
先行技術と比較して開示されている技術の少なくとも1つの技術的な利点は、開示されているAIモデルが、ニューラルネットワークなどの所与の基礎となるシステムがどのように動作及び機能するのかを特徴付ける自然言語記述を自動的に生成することである。これらの記述により、基礎となるシステムの設計者は、システムの関数特性を明確に述べ、説明することが可能になり、それによって設計者及び他者がシステムに適した用途を理解するのに役立つ。
【0010】
様々な実施形態の上記の列挙された特徴を詳細に理解できるように、上記で簡潔に要約された本発明の概念のより具体的な説明は、様々な実施形態を参照することによって行われ得、様々な実施形態の一部は添付図面に示される。しかしながら、添付図面が本発明の概念の典型的な実施形態だけを示し、ひいては、いかなる方法によっても範囲を限定すると見なされるべきではないこと、及び他の等しく効果的な実施形態があることを留意されたい。
【図面の簡単な説明】
【0011】
図1】様々な実施形態の1つまたは複数の態様を実装するように構成されたシステムを示す。
図2】様々な実施形態による、図1の人工知能(AI)モデルのより詳細な図である。
図3】様々な実施形態による、図1のグラフィカルユーザーインターフェース(GUI)の例示的な描写である。
図4】様々な実施形態による、図2の観察者モデルの1つ及び特徴モデルの1つのより詳細な図である。
図5】様々な実施形態による、図2の観察者モデルの1つと特徴モデルの1つとの間の例示的な結合である。
図6】様々な実施形態による、ニューラルネットワークの動作を説明する自然言語表現を生成するための方法ステップの流れ図である。
【発明を実施するための形態】
【0012】
以下の説明では、様々な実施形態のより完全な理解を与えるために多数の具体的な詳細が説明される。しかしながら、本発明の概念が1つまたは複数のこれらの具体的な詳細なしに実施され得ることは、当業者には明らかであろう。
【0013】
上述のように、ディープニューラルネットワークの固有の複雑さにより、設計者は、ディープニューラルネットワークがどのように動作するのかを直接的に観察または理解することができないため、通常、ディープニューラルネットワークのどのコンポーネントが、特定の挙動または結果を生じさせることに関与しているのかを判断することができない。結果として、所与のディープニューラルネットワークは高い精度で動作しているように見えても、設計者は、通常、ディープニューラルネットワークがなぜ高い精度で動作するのかを説明することはできない、またはディープニューラルネットワークが、現実世界のシナリオでなぜ高い精度で動作し続ける必要があるのかに対するいずれの論理的な支持も提供することができない。設計者は、ディープニューラルネットワークがどのようにして動作するのかを直接的に観察または理解することができないため、設計者は、通常、ディープニューラルネットワークのどのコンポーネントが、ディープニューラルネットワークが不正確な結果を生じさせる場合に、修正されるべきかを特定することができない。不正確な結果を生じさせるディープニューラルネットワークは、多くの場合、異なるトレーニングデータで再トレーニングしなければならない、及び/または異なる初期条件で開始して再トレーニングしなければならない。しかしながら、所与のディープニューラルネットワークがこのようにして再トレーニングされ、後に高い精度で動作する場合も、設計者は、上述の理由から、ディープニューラルネットワークがなぜ高い精度で動作するのかを理解または説明することができない。
【0014】
これらの問題に対処するために、様々な実施形態は、1つまたは複数の観察者モデルに階層的に結合された1つまたは複数の特徴モデルを含むコンピュータシステムを含む。特徴モデルは、入力を処理して、その入力内の異なる特徴を検出するように構成される。観察者モデルは、入力の処理中に特徴モデルの動作を分析して、様々なタイプの観察を生成するように構成される。観察の1つのタイプは、所与の特徴モデルの様々なアーキテクチャ特性及び/または関数特性が、特徴を検出するためにどのように入力の処理に影響を与えるのかを伝達する自然言語表現を含み、それによって所与の特徴モデルが動作する基礎となるメカニズムを明らかにする。
【0015】
先行技術と比較して開示されている技術の少なくとも1つの技術的な利点は、開示されている技術が、ニューラルネットワークなどのコンピュータシステムがどのように動作及び機能するのかを特徴付ける自然言語記述を自動的に生成することである。これらの記述により、設計者は、コンピュータシステムの関数特性を明確に述べ、説明することが可能になり、それによって設計者及び他者がコンピュータシステムに適した用途を理解するのに役立つ。さらに、自然言語記述は、設計者に、それ以外の場合、従来の技術を使用しても理解することができないコンピュータシステムを改善及び/または修復する方法に関する洞察力を与えることができる。これらの技術的利点は、先行技術の手法に優る1つまたは複数の技術的進歩を表している。
【0016】
システム概要
図1は、様々な実施形態の1つまたは複数の態様を実装するように構成されたシステムを示す。示されるように、システム100は、ネットワーク150を介して互いに結合されたクライアント110と、サーバ130とを含む。クライアント110またはサーバ130は、デスクトップコンピュータ、ラップトップコンピュータ、モバイルデバイス、コンピューティングデバイスの仮想化されたインスタンス、分散型コンピュータシステム及び/またはクラウドベースコンピュータシステムなどを含む任意の技術的に実現可能なタイプのコンピュータシステムであってよい。ネットワーク150は、とりわけ、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、ワールドワイドウェブ、またはインターネットを含む相互接続された通信リンクの任意の技術的に実現可能なセットであってよい。クライアント110及びサーバ130は、ネットワーク150を介して通信するように構成される。
【0017】
さらに示されるように、クライアント110は、互いに結合されたプロセッサ112と、入出力(I/O)装置114と、メモリ116とを含む。プロセッサ112は、データを処理し、ソフトウェアアプリケーションを実行するように構成された、任意の技術的に実現可能なハードウェアユニットのセットを含む。例えば、プロセッサ112は、1つまたは複数の中央処理装置(CPU)、1つまたは複数のグラフィックスプロセッシングユニット(GPU)、及び/または1つまたは複数の並列処理装置(PPU)を含むであろう。I/O装置114は、とりわけ、例えば、表示装置、キーボード、及びタッチスクリーンを含む入力動作及び/または出力動作を実行するように構成されたデバイスの任意の技術的に実現可能なセットを含む。
【0018】
メモリ116は、例えばハードディスク、ランダムアクセスメモリ(RAM)モジュール、及び読み取り専用メモリ(ROM)など、データ及びソフトウェアアプリケーションを格納するように構成された任意の技術的に実現可能な記憶媒体を含む。メモリ116は、データベース118(0)と、人工知能(AI)設計アプリケーション120(0)と、AIモデル122(0)と、グラフィカルユーザーインターフェース(GUI)124(0)とを含む。データベース118(0)は、様々なタイプのデータを格納するファイルシステム及び/またはデータストレージアプリケーションである。AI設計アプリケーション120(0)は、プロセッサ112によって実行されるとき、サーバ130上で実行中の対応するソフトウェアアプリケーションと相互運用して、1つまたは複数のAIモデルを生成、分析、評価、及び記述するソフトウェアアプリケーションである。AIモデル122(0)は、汎用のまたは特殊な人工知能指向動作を実行するように構成された1つまたは複数の人工ニューラルネットワークを含む。GUI124(0)は、ユーザーがAI設計アプリケーション120(0)と対話することを可能にする。
【0019】
サーバ130は、互いに結合されたプロセッサ132と、I/O装置134と、メモリ136とを含む。プロセッサ132は、1つまたは複数のCPU、1つまたは複数のGPU、及び/または1つまたは複数のPPUなど、データを処理し、ソフトウェアアプリケーションを実行するように構成されたハードウェアユニットの任意の技術的に実現可能なセットを含む。I/O装置134は、とりわけ、表示装置、キーボード、及びタッチスクリーンなど、入力動作及び/または出力動作を実行するように構成されたデバイスの任意の技術的に実現可能なセットを含む。
【0020】
メモリ136は、例えばハードディスク、RAMモジュール、及びROMなど、データ及びソフトウェアアプリケーションを格納するように構成された任意の技術的に実現可能な記憶媒体を含む。メモリ136は、データベース118(1)、AI設計アプリケーション120(1)、AIモデル122(1)、及びGUI124(1)を含む。データベース118(1)は、データベース118(0)と同様に、様々なタイプのデータを格納するファイルシステム及び/またはデータストレージアプリケーションである。AI設計アプリケーション120(1)は、プロセッサ132によって実行されるとき、AI設計アプリケーション120(0)と相互運用して、1つまたは複数のAIモデルを生成、分析、評価、及び記述するソフトウェアアプリケーションである。AIモデル122(1)は、汎用のまたは特殊な人工知能指向動作を実行するように構成された1つまたは複数の人工ニューラルネットワークを含む。GUI124(1)は、ユーザーがAI設計アプリケーション120(1)とインターフェースすることを可能にする。
【0021】
一般事項として、データベース118(0)及び118(1)は、分散ストレージエンティティの別々の部分を表す。したがって、簡略にするために、データベース118(0)及び118(1)は、本明細書で集合的にデータベース118と呼ばれる。同様に、AI設計アプリケーション120(0)及び120(1)は、本明細書に説明される本発明の動作のいずれか及びすべてを実行するように構成された分散ソフトウェアエンティティの別々の部分を表す。したがって、AI設計アプリケーション120(0)及び120(1)は、以下で集合的にAI設計アプリケーション120と呼ばれる。AIモデル122(0)及び122(1)は、同様に、1つまたは複数のニューラルネットワークを含む分散AIモデルを表す。したがって、AIモデル122(0)及び122(1)は、以下で集合的にAIモデル122と呼ばれる。GUI124(0)及び124(1)は、同様に、1つまたは複数のGUIの分散された部分を表す。GUI124(0)及び124(1)は、本明細書では、集合的にGUI124と呼ばれる。
【0022】
動作中、AI設計アプリケーション120は、GUI124を介して受け取られるユーザー入力に基づいてAIモデル122を生成する。GUI124は、ユーザーが、他の動作の中でも、AIモデル122を作成及び編集する、AIモデル122の機能を探索する、トレーニングデータに比べてAIモデル122を評価する、及びAIモデル122の性能及び/または動作を記述及び/または制約する様々なデータを生成することを可能にする設計ツール及び分析ツールを明らかにする。AIモデル122は、図2に関連して以下により詳細に説明される。GUI124の例示的なスクリーンショットは、図3に関連して以下により詳細に説明される。
【0023】
ソフトウェアの概要
図2は、様々な実施形態による、図1の人工知能(AI)モデルのより詳細な図である。示されるように、AIモデル122は、互いと相互運用して、入力200を処理し、出力240を生成するように構成された相互接続されたモジュールの階層システムである。入力200は、一般に、音声データ、ビデオデータ、画像データ、テキストデータ、未処理のセンサデータ及び/または処理されたセンサデータ、そのようなデータの任意の組み合わせなどを含む任意の技術的に実現可能なタイプのデータを含む。出力240は、一般に、入力200に関連付けられた分類、または入力200を処理するときにAIモデル122の動作を記述する自然言語表現のセットの少なくとも1つを含む。
【0024】
AIモデル122は、特徴モデル210(0)から210(N)と、観察者モデル220(0)から220(M)と、出力ジェネレータ230とを含み、N及びMは整数値である。特徴モデル210(0)から210(N)は、観察者モデル220(0)から220(M)に結合される。観察者モデル220(0)から220(M)は、出力ジェネレータ230に結合される。特徴モデル210(0)から210(N)は入力200を処理して、それぞれ特徴データ210(0)から210(N)を生成するように構成される。観察者モデル220(0)から220(M)は、特徴モデル210に関連付けられた他のデータに加えて、特徴データ212(0)から212(N)を処理して、それぞれ観察データ222(0)から222(M)を生成するように構成される。出力ジェネレータ230は、観察データ222(0)から222(M)を結合して出力240を生成するように構成される。
【0025】
所与の特徴モデル210は、一般に、入力データを処理して、出力データのセットを生成する任意のコンピュータモデルまたはアルゴリズムである。様々な実施形態では、所与の特徴モデル210は、入力200内の1つまたは複数の特徴の存在を数値化するために、及び特徴データ212を生成して、検出された特徴を表すために1つまたは複数の特徴検出アルゴリズムを実装するニューラルネットワークである。所与の特徴モデル210は、基本的な幾何学的形状、音声サンプルの短いシーケンス、簡略なデータパターン、及び様々なデータ型に関連付けられた他の特徴など、低レベルの特徴を識別するように構成され得る。代わりに、所与の特徴モデル210は、現実世界の物体、発話された言葉、データの複雑なパターン、及び様々なデータ型に関連付けられた他の特徴など、高レベルの特徴を識別するように構成され得る。様々な実施形態では、所与の特徴モデル210は、バイナリ畳み込みニューラルネットワーク(CNN)、特徴マップ、分類子、または特徴を検出可能な任意の他の技術的に実現可能なタイプのAIアルゴリズムもしくはニューラルネットワークアルゴリズムであってよい。
【0026】
所与の観察者モデル220は、観察データ222を生成するために、特徴モデル210によって生成された出力データの一部またはすべてに基づいて1つまたは複数の分類アルゴリズムを実装し得る。観察データ222は、その特徴データ212に割り当てられた1つまたは複数の分類を反映し得る。所与の観察者モデル220は、任意の技術的に実現可能な手法を使用して、特徴データ212の様々なセットを特定の分類にマッピングするように構成され得る。例えば、所与の観察者モデル220は、特徴モデル210を介して識別された幾何学的形状の特定のセットの存在が、それらの幾何学的形状が人間の顔に属しているとして分類されるべきであることを示すと判断できるであろう。当業者は、1つまたは複数の分類を含む観察データ222を生成するために、特徴データ212に説明される1つまたは複数の特徴に基づいて、任意の技術的に実現可能な分類技術をどのようにして実装できるのか理解する。
【0027】
所与の観察者モデル220はまた、特徴データ212を生成するときに対応する特徴モデル210の動作を記述する観察データ222を生成するために、その特徴データ212の所与のセットに基づいて、1つまたは複数の自然言語処理アルゴリズムを実装し得る。このように行う際に、所与の観察モデル220は、観察データ222に含まれる自然言語表現(複数可)を生成するために、特徴モデル210に関連付けられたアーキテクチャデータ及び/または関数データとともに、特徴データ212を分析するように構成され得る。様々な実施形態では、所与の観察者モデル220は、特徴データ212を処理して観察を生成することが可能な、決定木、ルールエンジン、ニューラルネットワーク、または任意の他の技術的に実現可能なタイプのアルゴリズムであってよい。
【0028】
出力ジェネレータ230は、一般に、一部のまたはすべての観察者モデル220から受け取られた観察データ222を結合して、出力240を生成するために、1つまたは複数のデータ集約アルゴリズムを実装する。出力ジェネレータ230は、観察データ222に説明される分類及び/または観察データ222に説明される自然言語表現を結合して、出力240を生成することができる。例えば、出力ジェネレータ230は、観察データ222(0)から222(M)に関連付けられたM個の分類を受け取り、次に各分類がその観察データ内に出現する回数に基づいて、それらの分類をランク付けするであろう。出力ジェネレータ230は、次に、最高のランクが付けられた分類を選択し、その分類を出力240内に含めるであろう。別の例では、出力ジェネレータ230は、第1の観察データ222内で、所与の特徴モデル210内の第1のニューラルネットワーク層の動作を明確に述べる第1の自然言語表現を受け取るであろう。出力ジェネレータ230はまた、第2の観察データ222内で、所与の特徴モデル210内での第2のニューラルネットワーク層の動作を明確に述べる第2の自然言語表現を受け取るであろう。出力ジェネレータ230は、次に、第1の自然言語表現及び第2の自然言語表現を結合して、その特徴モデル210の包括的な動作を記述する注釈を創作するであろう。
【0029】
いくつかの例では、出力ジェネレータ230は、1つまたは複数の観察モデル220から受け取られた自然言語表現のセットに基づいて、所与の特徴モデル210のリアルタイム機能を記述する注釈を創作できる。例えば、出力ジェネレータ230は、第1の観察データ222内で、第1の時間間隔の間の所与の特徴モデル210内の第1のニューラルネットワーク層の動作を明確に述べる第1の自然言語表現を受け取るであろう。出力ジェネレータ230はまた、第2の観察データ222内で、第2の時間間隔の間の第1のニューラルネットワーク層の動作を明確に述べる第2の自然言語表現を受け取るであろう。出力ジェネレータ230は、次に、第1の自然言語表現及び第2の自然言語表現を結合して、その特徴モデル210の時間的に変化する動作を記述する注釈を創作するであろう。
【0030】
一実施形態では、出力ジェネレータ230は、特徴データ212の1つまたは複数のセットに基づいて、1つまたは複数の観察者モデル220が生成する異なる分類を自然言語を介して表現する、観察データ222の1つまたは複数のセットを受け取り得る。出力ジェネレータ230は、次にこれらの分類を抽出し、それらの分類を結合して出力240を生成し得る。
【0031】
一般事項として、観察者モデル220は、それらの特徴モデル210によって生成される任意の出力、それらの特徴モデル210の任意のアーキテクチャ特性、及び/またはそれらの特徴モデル210の任意の関数特性を含む、特徴モデル210の任意の態様の任意の技術的に実現可能な記述を反映する、観察データ222を生成することができる。さらに、出力ジェネレータ230は、出力240を生成するために任意の及び/またはすべての観察データ222を結合することができる。
【0032】
当業者は、様々な実施形態では、本明細書に説明されるシステムに類似した観察者システムが、任意の基礎となるシステムのために、その基礎となるシステムの動作を評価及び報告するために設計及び実装することができることを理解する。その関連で、様々な実施形態では、観察者モデル220は、観察データ222を生成するために任意のタイプのコンピュータシステムによって生成される出力データに作用することができる。例えば、及び制限なく、観察者モデル220は、観察データ222を生成するために、推奨システム、データベースシステム、アイデンティティ管理システム、またはソーシャルネットワーキングシステムによって生成される出力データに作用することができる。観察データ222は、基礎となるコンピュータシステムの関数特性の記述または説明であり、コンピュータシステムの動作のより深い理解を可能にする。
【0033】
上述のように、AI設計アプリケーション120は、GUI124とのユーザーインタラクションに基づいてAIモデル122を生成する。GUI124の様々な要素を描く例示的なスクリーンショットは、図3に関連して以下により詳細に説明される。
【0034】
図3は、様々な実施形態による、図1のグラフィカルユーザーインターフェース(GUI)の例示的なスクリーンショットである。示されるように、GUI124は、ユーザーがAIモデル122を構成するために対話できるいくつかのユーザーインターフェース(UI)要素を含む。特に、GUI124は、UI要素300、310(0)から310(N)、320(0)から320(M)、及び340を含む。
【0035】
UI要素300は入力要素であり、ユーザーはその入力要素を介して入力200を入力することができる。示されている例では、入力200は、手書きの「7」である。UI要素300は、音声データ、ビデオデータ、画像データ、及び図2に関連して上述される他のタイプのデータを含む任意の技術的に実現可能なタイプの入力を受け取るように構成され得る。
【0036】
UI要素310は入出力要素であり、その入力要素及び出力要素を介して、ユーザーは異なるタイプの特徴モデル210を選択し、次に異なる特徴データ212を受け取ることができる。示されている例では、UI要素310(0)は、「バイナリCNN」タイプの特徴モデルの選択312(0)によって、円が入力200に存在する程度を示す特徴データ212(0)が生じることを示す。UI要素310(1)は、「特徴マップ」タイプの特徴モデルの選択312(1)によって、横線が入力200内に存在する程度を示す特徴データ212(1)が生じることを示す。UI要素310(N)は、「分類子」タイプの特徴モデルの選択312(N)によって、縦線が入力200に存在する程度を示す特徴データ212(N)が生じることを示す。様々な実施形態では、UI要素310は、いくつかのまたはすべての特徴モデル210が同じタイプまたは異なるタイプとなるように構成するために、及び/または同じタイプの特徴もしくは異なるタイプの特徴を検出するために使用され得る。例えば、UI要素310は、入力200内の異なる幾何学的特徴を検出するN個のバイナリCNNのセットを構成するために使用されるであろう。
【0037】
UI要素320は入出力要素であり、ユーザーは、その入出力要素を介して異なるタイプの観察者モデル220を選択し、次に異なる観察データ222を受け取ることができる。示される例では、UI要素320(0)は、「決定木」タイプの観察者モデルの選択322(0)によって、自然言語を介して、入力200が「7」であることを表す観察データ222(0)が生じることを示す。UI要素320(1)は、「ルールエンジン」タイプの観察者モデルの選択322(1)によって、自然言語を介して、入力200はおそらく「5」であるが、「7」でもあろうことを表す観察データ222(1)が生じることを示す。UI要素320(M)は、「ニューラルネットワーク」タイプの観察者モデルの選択322(M)によって、自然言語を介して、特定のニューロンの閾値に対する調整により誤った出力が訂正されるであろうことを表す観察データ222(M)が生じることを示す。様々な実施形態では、UI要素320はまた、特徴モデル210がどのようにして観察者モデル220に結合されるのか、及び/または特徴モデル210から派生するどのデータが、特徴モデルに結合された観察者モデル220によって処理されるのかを選択するために使用され得る。
【0038】
UI要素340は出力要素であり、出力240は、その出力要素を介してユーザーに提供される。示される例では、出力240は「7」であり、AIモデル122が入力200を「7」であるとして分類していることを示す。UI要素340は、音声データ、ビデオデータ、画像データ、及び図2に関連して上述される他のタイプのデータを含む任意の技術的に実現可能なタイプの入力を出力するように構成され得る。
【0039】
一般に図1~3を参照すると、開示されている技術は、広範囲の異なる構成の特徴モデル210及び観察者モデル220を有するAIモデル122を生成するために適用することができる。さらに、開示されている技術は、自然言語を使用して、任意の所与の特徴モデル210の任意の技術的に実現可能な態様を記述する観察データ222を生成するように任意の所与の観察者モデル220を構成するために実装することができる。図4図6は、1つまたは複数の特徴モデル210に基づいて自然言語表現を生成するために、観察者モデル220によって実装できる様々な技術を説明する。
【0040】
特徴モデルの自然言語記述の生成
図4は、様々な実施形態による、図2の観察者モデルの1つ及び特徴モデルの1つのより詳細な図である。示されるように、特徴モデル210は、特徴データ212と、アーキテクチャデータ400と、関数データ402とを含む。アーキテクチャデータ400及び関数データ402は、一般に、特徴モデル210の様々な動作を実行するニューラルネットワークを定義する。また示されるように、観察者モデル220は、タクソノミージェネレータ410と、アーキテクチャアナライザ420と、関数アナライザ430と、観察ジェネレータ440とを含む。
【0041】
図2に関連して上述されるように、特徴データ212は、入力200内で検出される1つまたは複数の特徴に関するデータ、及び/またはそれらの特徴がその入力で検出される程度を含む。様々な実施形態では、特徴データ212は、特徴モデル210が検出するように構成される1つのタイプの特徴を、その1つのタイプの特徴が入力200内で検出される程度を示すメトリック値とともに示す。
【0042】
アーキテクチャデータ400は、特徴モデル210によって定義されるニューラルネットワークの編成及び/または各内部要素間の相互接続を定義するデータを含む。例えば、アーキテクチャデータ400は、ニューラルネットワークの1つまたは複数の層、それらの層のいずれかの中に実装される1つまたは複数の関数、それらの層のいずれかの中に含まれるニューロンの様々なセット、ニューロン及び/または層の間のあらゆる相互接続、それらの相互接続に関連付けられたあらゆる重み値などを定義するであろう。当業者は、当該技術分野にニューラルネットワークのアーキテクチャを定義するための多数の手法が存在すること、及びアーキテクチャデータ400を生成するために、そのような手法を実装できることを理解する。
【0043】
関数データ402は、特徴モデル210によって定義されるニューラルネットワークの1つまたは複数の要素によって実装される特定の数学関数を定義するデータを含む。例えば、関数データ402は、特徴モデル210内の特定のノードが、総和関数、閾値比較、ソフトマックス関数、正規化線形ユニット(ReLU)などを実装することを示すであろう。当業者は、当該技術分野にニューラルネットワークによって実行される関数を定義するための多数の手法が存在すること、及び関数データ402を提供するために任意のそのような手法を実装できることを理解する。
【0044】
一実施形態では、アーキテクチャデータ400及び関数データ402は、ニューラルネットワークの構造と、そのニューラルネットワークが実行する演算の両方を定義する数式のセットによって集合的に表し得る。本実施形態では、アーキテクチャデータ400及び関数データ402の集合的な表現は、数学の分野に関連付けられた自然言語を使用して表現され得る。
【0045】
動作中、観察者モデル220に含まれる様々なモジュールは、図2に関連して上述される観察データ222を生成するために、特徴データ212、アーキテクチャデータ400、及び関数データ402を処理する。
【0046】
特に、タクソノミーエンジン410はタクソノミー412を生成するために、特徴データ212、アーキテクチャデータ400、及び関数データ402を処理する。タクソノミー412は、上述のデータのすべての態様を記述する統語成分のセットを含む。例えば、タクソノミー412は、特徴データ212に関連付けられた特徴を記述するために使用される単語のセット、アーキテクチャデータ400に説明される様々なアーキテクチャ特性を記述するために使用される単語のセット、及び/または関数データ402に定義される様々な関数を記述するために使用される単語のセットを含むであろう。加えて、タクソノミーは、文法上の自然言語表現を創作するために必要とされる任意の追加の統語成分をさらに含み得る。
【0047】
アーキテクチャアナライザ420は、アーキテクチャパラメータ化422を生成するためにアーキテクチャデータ400を分析する。アーキテクチャパラメータ化422は、特徴モデル210によって定義されたニューラルネットワークのアーキテクチャを表すパラメータ値のセットを含む。例えば、アーキテクチャパラメータ化422は、ニューラルネットワークに含まれる層の数、各層に含まれるニューロンの数などを示すであろう。アーキテクチャアナライザ420は、アーキテクチャパラメータ化422を生成するために任意の技術的に実現可能なパラメータ化を実装し得る。
【0048】
関数アナライザ430は、関数パラメータ化432を生成するために関数データ430を分析する。関数パラメータ化432は、特徴モデル210によって定義されるニューラルネットワーク内に実装される1つまたは複数の関数を定義するパラメータ値のセットを含む。例えば、関数パラメータ化432は、ニューラルネットワークの所与の層に関連付けられる閾値のセットを含むであろう。関数アナライザ430は、関数パラメータ化432を生成するために、任意の技術的に実現可能なパラメータ化技術を実装し得る。
【0049】
観察ジェネレータ440は、観察データ222に説明される1つまたは複数の自然言語表現を生成するために、タクソノミー412、アーキテクチャパラメータ化422、及び関数パラメータ化432を処理するように構成される。そのようにする上で、観察ジェネレータ440は、特徴データ212を生成するときに特徴モデル210の動作を記述するために、アーキテクチャパラメータ化422及び/または関数パラメータ化432に基づいてタクソノミー412に含まれる1つまたは複数の統語成分をアセンブルする。一実施形態では、観察ジェネレータ440は、1つまたは複数の基礎となるニューラルネットワークに関連付けられた分類内で統語成分を選択するように、様々なアーキテクチャパラメータ化及び関数パラメータ化に基づいてトレーニングされるニューラルネットワークを含む。当業者は、観察ジェネレータ440が、観察データ222を生成するときに自然言語表現を生成する任意の技術的に実現可能な方式を実装し得ることを理解する。
【0050】
一実施形態では、特徴モデル210と観察者モデル220の両方とも、観察データ222の生成を容易にする方法で互いと相互接続されるニューラルネットワークによって実装され得る。図5は、そのような2つのニューラルネットワークをどのようにして構成できるのかの例を説明する。
【0051】
図5は、様々な実施形態による、図2の観察者モデルの1つと特徴モデルの1つとの間の例示的な結合である。示されるように、特徴モデル210は観察者モデル220に結合される。また示されるように、特徴モデル210及び観察者モデル220は、ニューラルネットワークによって実装される。
【0052】
特に、特徴モデル210は、入力層500と、相互接続の第1のセット502と、1つまたは複数の中間層504と、相互接続の第2のセット506と、出力層508とを含むニューラルネットワークである。出力層508は、特徴データ212を出力する。観察者モデル220は、入力層510と、相互接続の第1のセット512と、1つまたは複数の中間層514と、相互接続の第2のセット516と、出力層518とを含むニューラルネットワークである。出力層518は、観察データ222を出力する。ここに示される様々な入力層、中間層、及び出力層は、任意の技術的に実現可能なタイプのニューラルネットワーク層を含むことができる。ここに示される様々な相互接続は、任意の技術的に実現可能なニューラルネットワークアーキテクチャを実装するように構成された任意の技術的に実現可能なタイプのニューラルネットワーク接続を含むことができる。さらに、任意の所与の相互接続は、1つまたは複数の重み値に関連付けることができる。
【0053】
観察者モデル220は、入力接続520、522、及び524を介して特徴モデル210の様々な部分に結合される。具体的には、観察者モデル220は、入力接続520を介して特徴モデル210の出力層508に結合され、入力接続522を介して特徴モデル210の相互接続502に結合され、入力接続524を介して特徴モデル210の中間層(複数可)504に結合される。観察者モデル222は、示されている特徴モデル210の様々な部分から、入力接続520、522、及び524を介して取り込まれるデータに基づいて観察データ222を生成するように構成される。
【0054】
特に、観察者モデル222は、入力接続520を介して出力層508から取り込まれた特徴データ212に基づいて観察データ222を生成し得る。観察者モデル222はまた、入力接続522を介して相互接続502から取り込まれた1つまたは複数の値に基づいて観察データ222を生成し得る。観察者モデル222はまた、入力接続524を介して中間層(複数可)504から取り込まれた1つまたは複数の値に基づいて観察データ222を生成し得る。入力接続522及び/または524を介して取り込まれた値など、特徴モデル210の任意の内部部分から取り込まれた任意の所与の値は、入力200、特徴モデル210のアーキテクチャ特性(またはアーキテクチャ特性のパラメータ化)、及び/または特徴モデル210の関数特性(または関数特性のパラメータ化)の処理中に特徴モデル210内で生成される中間値に相当し得る。例えば、入力接続522及び/または524を介して取り込まれた所与の値は、アクティブ化レベルのセット、バイアス値のセット、閾値のセットなどであろう。
【0055】
上記のタイプの入力を介して、及び特徴モデル210に関連付けられた上記データに基づいて、観察者モデル220は、特徴モデル210の動作を記述する1つまたは複数の自然言語表現を含むために観察データ222を生成する。図4に関連して上述されるように、それらの自然言語表現は、特徴モデル210の様々なアーキテクチャ特性及び/または関数特性を反映する統語成分のタクソノミーに基づいて生成することができる。これらの技術を介して、観察者モデル220は、特徴モデル210の基礎となる機能を明らかにし、特徴モデル210がどのように動作するのかを記述する説明、及び/または性能を改善するために特徴モデル210を修正する方法を生成することができる。これらの技術は、図6に関連して以下により詳細に説明される。
【0056】
図6は、様々な実施形態による、ニューラルネットワークの動作を記述する自然言語表現を生成するための方法ステップの流れ図である。方法ステップは、図1図5のシステムに関連して説明されるが、当業者は、方法ステップを任意の順序で実行するように構成されたいずれのシステムも本実施形態の範囲に入ることを理解する。
【0057】
示されるように、方法600は、図1のGUI124が、ユーザーとのインタラクションを介して、特徴モデル(複数可)210及び観察者モデル(複数可)220の構成を取得するステップ602で始まる。GUI124は、ユーザーが、異なるタイプの特徴モデル210及び異なるタイプの観察者モデル220を選択し、それらのモデルをどのようにして互いに結合すべきかを示すことを可能にする。図3は、GUI124の例示的なスクリーンショットを説明している。特徴モデル210及び観察モデル220の構成に基づいて、図1のAI設計アプリケーション120は、図2に関連して上述されるように、AIモデル122を生成する。
【0058】
ステップ604で、AIモデル122は、特徴モデル210に入力を処理させて、特徴データ212を生成する。所与の特徴モデル210は、一般に、入力内の1つまたは複数の特徴の存在を数値化するために、及び特徴データ212介して、検出された特徴を表すために1つまたは複数の特徴検出アルゴリズムを実装するニューラルネットワークである。所与の特徴モデル210は、基本的な幾何学的形状、音声サンプルの短いシーケンス、簡略なデータパターン、及び様々なデータ型に関連付けられた他の特徴など、低レベルの特徴を識別するように構成され得る。代わりに、所与の特徴モデル210は、現実世界の物体、発話された言葉、データの複雑なパターン、及び様々なデータ型に関連付けられた他の特徴など、高レベルの特徴を識別するように構成され得る。特徴モデル210は、畳み込み演算、集約演算、閾値比較演算、及びニューラルネットワーク及び/またはディープニューラルネットワークに一般的に関連付けられた他のタイプの演算を実行し得る。
【0059】
ステップ606で、観察者モデル220内のタクソノミージェネレータ410は、特徴モデル210のアーキテクチャ特性及び/または関数特性に基づいて特徴モデル220のタクソノミー412を生成する。アーキテクチャ特性は、図4のアーキテクチャデータ400を介して定義できる。関数特性は、図4の関数データ402を介して定義できる。タクソノミー412は、特徴モデル210のアーキテクチャ特性及び関数特性を記述する統語成分のセットを含む。例えば、タクソノミー412は、特徴データ212に関連付けられた特徴を記述するために使用される単語のセット、アーキテクチャデータ400に説明される様々なアーキテクチャ特性を記述するために使用される単語のセット、及び/または関数データ402に定義される様々な関数を記述するために使用される単語のセットを含むであろう。加えて、タクソノミーは、文法的に正しい自然言語表現を創作するために必要とされる任意の追加の統語成分をさらに含み得る。
【0060】
ステップ608で、観察者モデル220内のアーキテクチャアナライザ420は、アーキテクチャデータ400に説明され、ステップ606に関連して上述されるアーキテクチャ特性に基づいて、特徴モデル210のアーキテクチャパラメータ化422を生成する。アーキテクチャパラメータ化422は、特徴モデル210によって定義されたニューラルネットワークのアーキテクチャを表すパラメータ値のセットを含む。例えば、アーキテクチャパラメータ化422は、ニューラルネットワークに含まれる層の数、各層に含まれるニューロンの数などを示すであろう。アーキテクチャアナライザ420は、アーキテクチャパラメータ化422を生成するために任意の技術的に実現可能なパラメータ化を実装し得る。
【0061】
ステップ610で、関数アナライザ430は、関数データ402に説明され、ステップ606に関連して上述される関数特性に基づいて、特徴モデル210の関数パラメータ化432を生成する。関数パラメータ化432は、特徴モデル210によって定義されるニューラルネットワーク内に実装される1つまたは複数の関数を定義するパラメータ値のセットを含む。例えば、関数パラメータ化432は、ニューラルネットワークの所与の層に関連付けられる閾値のセットを含むであろう。関数アナライザ430は、関数パラメータ化432を生成するために、任意の技術的に実現可能なパラメータ化技術を実装し得る。
【0062】
ステップ612で、観察者モデル220内の観察ジェネレータ440は、それぞれステップ604、606、608、及び610で生成された特徴データ212、タクソノミー412、アーキテクチャパラメータ化422、及び関数パラメータ化432に基づいて観察データ222を生成する。観察データ220は、特徴モデル210の様々な態様を記述する1つまたは複数の自然言語表現を含む。観察ジェネレータ440は、特徴データ212を生成するときに特徴モデル210の動作を記述するために、アーキテクチャパラメータ化422及び/または関数パラメータ化432に基づいてタクソノミー412に含まれる1つまたは複数の統語成分をアセンブルする。一実施形態では、観察ジェネレータ440は、1つまたは複数の基礎となるニューラルネットワークに関連付けられた分類内で統語成分を選択及び/またはアセンブルするように、様々なアーキテクチャパラメータ化及び関数パラメータ化に基づいてトレーニングされるニューラルネットワークを含む。
【0063】
ステップ614で、AIモデル122内の出力ジェネレータ330は、観察データに基づいて1つまたは複数の自然言語表現を出力する。1つまたは複数の自然言語表現は、図3に示されるように、GUI124を介して出力することもできれば、以後の使用のためにメモリに格納することもできる。重要なことには、開示されている技術に従って生成及び出力された自然言語表現は、特徴モデル210が様々な動作を実行できる基礎となるメカニズムを明確に述べる。
【0064】
要約すると、人工知能(AI)モデルは、階層的に1つまたは複数の観察者モデルに結合された1つまたは複数の特徴モデルを含む。特徴モデルは、入力を処理して、その入力内の異なる特徴を検出するように構成される。観察者モデルは、入力の処理中に特徴モデルの動作を分析して、様々なタイプの観察を生成するように構成される。観察の1つのタイプは、所与の特徴モデルの様々なアーキテクチャ特性及び/または関数特性が、特徴を検出するためにどのように入力の処理に影響を与えるのかを伝達する自然言語表現を含み、それによって所与の特徴モデルが動作する基礎となるメカニズムを明らかにする。
【0065】
先行技術と比較して開示されている技術の少なくとも1つの技術的な利点は、開示されているAIモデルが、所与のニューラルネットワークがどのように動作及び機能するのかを特徴付ける自然言語記述を自動的に生成することである。これらの記述により、設計者は他者に、ニューラルネットワークの関数特性を明確に述べ、説明することが可能になり、それによって他者がAIモデルに適した用途を理解するのに役立つ。さらに、これらの記述は、設計者に、それ以外の場合、理解することができないニューラルネットワークを改善及び/または修復する方法に関する洞察力を与えることができる。これらの技術的利点は、先行技術の手法に優る1つまたは複数の技術的進歩を表している。
【0066】
1.様々な実施形態では、ニューラルネットワークの特性を分析するためのコンピュータ実装方法が、第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させることと、第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させることであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成されることとを含む。
【0067】
2.前記第2のニューラルネットワークに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つに基づいて統語成分のタクソノミーを生成させ、前記統語成分のタクソノミーを使用して前記自然言語表現を生成させることをさらに含む、条項1に記載のコンピュータ実装方法。
【0068】
3.前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つのアーキテクチャ特性を数値化するアーキテクチャパラメータ化を生成させ、前記アーキテクチャパラメータ化を使用して前記自然言語表現を生成させることをさらに含む、条項1または2に記載のコンピュータ実装方法。
【0069】
4.前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つの関数特性を数値化する関数パラメータ化を生成させ、前記関数パラメータ化を使用して前記自然言語表現を生成させることをさらに含む、条項1~3のいずれかに記載のコンピュータ実装方法。
【0070】
5.前記第1の動作が、畳み込み演算、集約演算、または閾値比較演算を含む、条項1~4のいずれかに記載のコンピュータ実装方法。
【0071】
6.前記1つまたは複数の特性が、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つを含む、条項1~5のいずれかに記載のコンピュータ実装方法。
【0072】
7.前記第1の動作が、前記第1の入力が第1のタイプの特徴を含む程度を数値化する特徴検出演算を含む、条項1~6のいずれかに記載のコンピュータ実装方法。
【0073】
8. 前記第2のニューラルネットワークが、前記第1のニューラルネットワークの1つまたは複数のアーキテクチャ特性、または前記第1のニューラルネットワークの1つまたは複数の関数特性の少なくとも1つに基づいて自然言語表現を生成するようにトレーニングされるディープニューラルネットワークを備える、条項1~8のいずれかに記載のコンピュータ実装方法。
【0074】
9.様々な実施形態では、非一時的なコンピュータ可読媒体が、プロセッサによって実行されるときに、前記プロセッサに、第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させる前記ステップと、第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させる前記ステップであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成させるステップとを実行させるプログラム命令を格納する。
【0075】
10.前記第2のニューラルネットワークに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つに基づいて統語成分のタクソノミーを生成させ、前記統語成分のタクソノミーを使用して前記自然言語表現を生成させる前記ステップをさらに含む、条項9に記載の非一時的なコンピュータ可読媒体。
【0076】
11.前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つのアーキテクチャ特性を数値化するアーキテクチャパラメータ化を生成させ、前記アーキテクチャパラメータ化を使用して前記自然言語表現を生成させる前記ステップをさらに含む、条項9または10に記載の非一時的なコンピュータ可読媒体。
【0077】
12.前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つの関数特性を数値化する関数パラメータ化を生成させ、前記関数パラメータ化を使用して前記自然言語表現を生成させる前記ステップをさらに含む、条項9~11のいずれかに記載の非一時的なコンピュータ可読媒体。
【0078】
13.前記1つまたは複数の特性が、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つを含む、条項9~12のいずれかに記載の非一時的なコンピュータ可読媒体。
【0079】
14.前記第2のニューラルネットワークが、前記第1の動作を実行するように構成された前記第1のニューラルネットワークの内部部分に結合される、条項9~13のいずれかに記載の非一時的なコンピュータ可読媒体。
【0080】
15.前記第1のニューラルネットワークが、前記第1の動作を実行するときに1つまたは複数の中間値を生成し、前記第2のニューラルネットワークが、前記1つまたは複数の中間値に基づいて前記自然言語表現を生成する、条項9~14のいずれかに記載の非一時的なコンピュータ可読媒体。
【0081】
16.様々な実施形態では、ニューラルネットワークの特性を分析するためのコンピュータ実装方法が、第1のニューラルネットワークに、第1の入力に基づいて第1の出力を生成させることと、第2のニューラルネットワークに、前記第1の出力を生成するときに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つをユーザーに伝達する自然言語表現を生成させることとを含む。
【0082】
17.前記第2のニューラルネットワークが、前記第1の出力を生成するために第1の動作を実行する前記第1のニューラルネットワークの内部部分に結合され、前記自然言語表現が、前記第1の動作の少なくとも1つの特性を前記ユーザーに伝達する、条項16に記載のコンピュータ実装方法。
【0083】
18.前記自然言語表現をユーザーに出力すること、または前記自然言語表現をメモリに格納することをさらに含む、条項16または17に記載のコンピュータ実装方法。
【0084】
19.グラフィカルユーザーインターフェースを介して、前記第1のニューラルネットワークと前記第2のニューラルネットワークとの間の1つまたは複数の相互接続を示す構成データを受け取ることと、前記構成データに基づいて前記第1のニューラルネットワークと前記第2のニューラルネットワークの両方を構成することとをさらに含む、条項16~18のいずれかに記載のコンピュータ実装方法。
【0085】
20.前記構成データが、前記第1のニューラルネットワークに関連付けられたニューラルネットワークタイプ、及び前記第2のニューラルネットワークに関連付けられたニューラルネットワークタイプをさらに示す、条項16~19のいずれかに記載のコンピュータ実装方法。
【0086】
特許請求の範囲のいずれかに列挙される請求項要素のいずれか、及び/または本出願に説明される任意の要素のありとあらゆる組み合わせは、いずれの形であれ、本実施形態及び保護の企図された範囲内に入る。
【0087】
様々な実施形態の説明は、例証の目的で提示されているが、包括的に、または開示される実施形態に限定されることが意図されていない。多くの変更形態及び変形形態は、説明される実施形態の範囲及び趣旨から逸脱することなく当業者には明白である。
【0088】
本実施形態の態様は、システム、方法、またはコンピュータプログラム製品として具体化され得る。したがって、本開示の態様は、全体的にハードウェア実施形態、全体的にソフトウェア実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、またはすべて一般的に本明細書で「モジュール」、「システム」、または「コンピュータ」と呼ばれる場合があるソフトウェア態様及びハードウェア態様を組み合わせる実施形態の形態をとり得る。さらに、本開示の態様は、コンピュータ可読プログラムコードが具現化された1つまたは複数のコンピュータ可読媒体(複数可)に具現化されたコンピュータプログラム製品の形をとってよい。
【0089】
1つ以上のコンピュータ可読媒体(複数可)の任意の組み合わせを利用し得る。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、例えば、電子、磁気、光、電磁気、赤外線、もしくは半導体のシステム、装置、もしくはデバイス、または任意の前述の好適な組み合わせであり得るが、これに限定されない。コンピュータ可読記憶媒体のより多くの具体例(一部抜粋)は、1つ以上の通信回線を有する電気的接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能PROM(EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学記憶デバイス、磁気記憶デバイス、または前述の任意の好適な組み合わせを含むであろう。本文書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、装置、もしくはデバイスによる使用のために、またはそれらと接続してプログラムを含むまたは記憶することができる任意の有形媒体であり得る。
【0090】
本開示の態様は、本方法の実施形態に従った方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図及び/またはブロック図を参照して上記に説明されている。フローチャート図及び/またはブロック図の各ブロック、及びフローチャート図及び/またはブロック図のブロックの組み合わせは、コンピュータプログラム命令によって実施できることが理解される。これらのコンピュータプログラム命令は、マシンを生成するために、汎用コンピュータ、専用コンピュータ、または他のプログラム可能データ処理装置のプロセッサに提供され得る。命令は、コンピュータのプロセッサまたは他のプログラム可能データ処理装置を介して実行されるとき、フローチャート及び/またはブロック図の1つまたは複数のブロックに指定される機能/行為の実装を可能にする。係るプロセッサは、限定ではなく、汎用プロセッサ、専用プロセッサ、アプリケーション特有プロセッサ、またはフィールドプログラム可能ゲートアレイであり得る。
【0091】
図のフローチャート及びブロック図は、本開示の様々な実施形態によるシステム、方法、装置、及びコンピュータプログラム製品の可能である実施態様のアーキテクチャ、機能、及び動作を示す。この点で、フローチャートまたはブロック図の各ブロックは、規定された論理機能(複数可)を実装するための1つ以上の実行可能命令を含むモジュール、セグメント、またはコードの一部を表し得る。また、いくつかの代替実施態様では、ブロックで留意される機能は、図で留意される順序とは違う順序で起こり得ることを留意されたい。例えば、連続して示される2つのブロックは、実際に、実質的に同時に実行され得る、または、ブロックは、時々、関与する機能に応じて、逆の順序で実行され得る。また、ブロック図及び/またはフローチャート図の各ブロック、及びブロック図及び/またはフローチャート図のブロックの組み合わせは、規定の機能もしくは行為、または特殊目的ハードウェア及びコンピュータ命令の組み合わせを行う特殊目的ハードウェアベースシステムによって実施され得ることを留意される。
【0092】
上記は本開示の実施形態を対象としているが、本開示の他の実施形態及びさらなる実施形態は、本開示の基本的な範囲から逸脱することなく考案され得、本開示の範囲は、以下に続く特許請求の範囲によって決定される。
図1
図2
図3
図4
図5
図6
【手続補正書】
【提出日】2023-02-08
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0092
【補正方法】変更
【補正の内容】
【0092】
上記は本開示の実施形態を対象としているが、本開示の他の実施形態及びさらなる実施形態は、本開示の基本的な範囲から逸脱することなく考案され得、本開示の範囲は、以下に続く特許請求の範囲によって決定される。
以下、本発明の好ましい実施の形態を項分け記載する。
実施形態1
ニューラルネットワークの特性を分析するためのコンピュータ実装方法であって、
第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させることと、
第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させることであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成されることと
を含む、前記コンピュータ実装方法。
実施形態2
前記第2のニューラルネットワークに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つに基づいて統語成分のタクソノミーを生成させ、前記統語成分のタクソノミーを使用して前記自然言語表現を生成させることをさらに含む、実施形態1に記載のコンピュータ実装方法。
実施形態3
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つのアーキテクチャ特性を数値化するアーキテクチャパラメータ化を生成させ、前記アーキテクチャパラメータ化を使用して前記自然言語表現を生成させることをさらに含む、実施形態1に記載のコンピュータ実装方法。
実施形態4
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つの関数特性を数値化する関数パラメータ化を生成させ、前記関数パラメータ化を使用して前記自然言語表現を生成させることをさらに含む、実施形態1に記載のコンピュータ実装方法。
実施形態5
前記第1の動作が、畳み込み演算、集約演算、または閾値比較演算を含む、実施形態1に記載のコンピュータ実装方法。
実施形態6
前記1つまたは複数の特性が、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つを含む、実施形態1に記載のコンピュータ実装方法。
実施形態7
前記第1の動作が、前記第1の入力が第1のタイプの特徴を含む程度を数値化する特徴検出演算を含む、実施形態1に記載のコンピュータ実装方法。
実施形態8
前記第2のニューラルネットワークが、前記第1のニューラルネットワークの1つまたは複数のアーキテクチャ特性、または前記第1のニューラルネットワークの1つまたは複数の関数特性の少なくとも1つに基づいて自然言語表現を生成するようにトレーニングされるディープニューラルネットワークを備える、実施形態1に記載のコンピュータ実装方法。
実施形態9
非一時的なコンピュータ可読媒体であって、プロセッサによって実行されるときに、前記プロセッサに、
第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させる前記ステップと、
第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させる前記ステップであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成させるステップと
を実行させるプログラム命令を格納する、前記非一時的なコンピュータ可読媒体。
実施形態10
前記第2のニューラルネットワークに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つに基づいて統語成分のタクソノミーを生成させ、前記統語成分のタクソノミーを使用して前記自然言語表現を生成させる前記ステップをさらに含む、実施形態9に記載の非一時的なコンピュータ可読媒体。
実施形態11
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つのアーキテクチャ特性を数値化するアーキテクチャパラメータ化を生成させ、前記アーキテクチャパラメータ化を使用して前記自然言語表現を生成させる前記ステップをさらに含む、実施形態9に記載の非一時的なコンピュータ可読媒体。
実施形態12
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つの関数特性を数値化する関数パラメータ化を生成させ、前記関数パラメータ化を使用して前記自然言語表現を生成させる前記ステップをさらに含む、実施形態9に記載の非一時的なコンピュータ可読媒体。
実施形態13
前記1つまたは複数の特性が、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つを含む、実施形態9に記載の非一時的なコンピュータ可読媒体。
実施形態14
前記第2のニューラルネットワークが、前記第1の動作を実行するように構成された前記第1のニューラルネットワークの内部部分に結合される、実施形態9に記載の非一時的なコンピュータ可読媒体。
実施形態15
前記第1のニューラルネットワークが、前記第1の動作を実行するときに1つまたは複数の中間値を生成し、前記第2のニューラルネットワークが、前記1つまたは複数の中間値に基づいて前記自然言語表現を生成する、実施形態9に記載の非一時的なコンピュータ可読媒体。
実施形態16
ニューラルネットワークの特性を分析するためのコンピュータ実装方法であって、
第1のニューラルネットワークに、第1の入力に基づいて第1の出力を生成させることと、
第2のニューラルネットワークに、前記第1の出力を生成するときに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つをユーザーに伝達する自然言語表現を生成させることと
を含む、前記コンピュータ実装方法。
実施形態17
前記第2のニューラルネットワークが、前記第1の出力を生成するために第1の動作を実行する前記第1のニューラルネットワークの内部部分に結合され、前記自然言語表現が、前記第1の動作の少なくとも1つの特性を前記ユーザーに伝達する、実施形態16に記載のコンピュータ実装方法。
実施形態18
前記自然言語表現をユーザーに出力すること、または前記自然言語表現をメモリに格納することをさらに含む、実施形態16に記載のコンピュータ実装方法。
実施形態19
グラフィカルユーザーインターフェースを介して、前記第1のニューラルネットワークと前記第2のニューラルネットワークとの間の1つまたは複数の相互接続を示す構成データを受け取ることと、
前記構成データに基づいて前記第1のニューラルネットワークと前記第2のニューラルネットワークの両方を構成することと
をさらに含む、実施形態16に記載のコンピュータ実装方法。
実施形態20
前記構成データが、前記第1のニューラルネットワークに関連付けられたニューラルネットワークタイプ、及び前記第2のニューラルネットワークに関連付けられたニューラルネットワークタイプをさらに示す、実施形態19に記載のコンピュータ実装方法。
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ニューラルネットワークの特性を分析するためのコンピュータ実装方法であって、
第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させることと、
第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させることであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成されることと
を含む、前記コンピュータ実装方法。
【請求項2】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つに基づいて統語成分のタクソノミーを生成させ、前記統語成分のタクソノミーを使用して前記自然言語表現を生成させることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つのアーキテクチャ特性を数値化するアーキテクチャパラメータ化を生成させ、前記アーキテクチャパラメータ化を使用して前記自然言語表現を生成させることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項4】
前記第2のニューラルネットワークに、前記第1のニューラルネットワークでパラメータ化動作を実行させて、前記第1のニューラルネットワークの少なくとも1つの関数特性を数値化する関数パラメータ化を生成させ、前記関数パラメータ化を使用して前記自然言語表現を生成させることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項5】
前記第1の動作が、畳み込み演算、集約演算、または閾値比較演算を含む、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記1つまたは複数の特性が、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つを含む、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記第1の動作が、前記第1の入力が第1のタイプの特徴を含む程度を数値化する特徴検出演算を含む、請求項1に記載のコンピュータ実装方法。
【請求項8】
前記第2のニューラルネットワークが、前記第1のニューラルネットワークの1つまたは複数のアーキテクチャ特性、または前記第1のニューラルネットワークの1つまたは複数の関数特性の少なくとも1つに基づいて自然言語表現を生成するようにトレーニングされるディープニューラルネットワークを備える、請求項1に記載のコンピュータ実装方法。
【請求項9】
非一時的なコンピュータ可読媒体であって、プロセッサによって実行されるときに、前記プロセッサに、
第1のニューラルネットワークに、第1の入力に基づいて第1の動作を実行させる前記ステップと、
第2のニューラルネットワークに、前記第1の動作に基づいて自然言語表現を生成させる前記ステップであって、前記自然言語表現が、前記第1の動作を実行するときに前記第1のニューラルネットワークの1つまたは複数の特性をユーザーに示す、前記生成させるステップと
を実行させるプログラム命令を格納する、前記非一時的なコンピュータ可読媒体。
【請求項10】
ニューラルネットワークの特性を分析するためのコンピュータ実装方法であって、
第1のニューラルネットワークに、第1の入力に基づいて第1の出力を生成させることと、
第2のニューラルネットワークに、前記第1の出力を生成するときに、前記第1のニューラルネットワークのアーキテクチャ特性または関数特性の少なくとも1つをユーザーに伝達する自然言語表現を生成させることと
を含む、前記コンピュータ実装方法。
【請求項11】
前記第2のニューラルネットワークが、前記第1の出力を生成するために第1の動作を実行する前記第1のニューラルネットワークの内部部分に結合され、前記自然言語表現が、前記第1の動作の少なくとも1つの特性を前記ユーザーに伝達する、請求項10に記載のコンピュータ実装方法。
【請求項12】
前記自然言語表現をユーザーに出力すること、または前記自然言語表現をメモリに格納することをさらに含む、請求項10に記載のコンピュータ実装方法。
【請求項13】
グラフィカルユーザーインターフェースを介して、前記第1のニューラルネットワークと前記第2のニューラルネットワークとの間の1つまたは複数の相互接続を示す構成データを受け取ることと、
前記構成データに基づいて前記第1のニューラルネットワークと前記第2のニューラルネットワークの両方を構成することと
をさらに含む、請求項10に記載のコンピュータ実装方法。
【請求項14】
前記構成データが、前記第1のニューラルネットワークに関連付けられたニューラルネットワークタイプ、及び前記第2のニューラルネットワークに関連付けられたニューラルネットワークタイプをさらに示す、請求項13に記載のコンピュータ実装方法。
【国際調査報告】