フレームとは、知識を構造化された階層的な形式に整理するデータ構造であり、典型的にはスロットとフィラーで構成される。人工知能や計算機科学の文脈では、フレームは定型化された状況や物体を表し、システムが関連する属性や関係を格納することを可能にする。この概念は1970年代に認知科学と知識表現の研究を通じて生まれ、現在も自然言語処理、コンピュータビジョン、ユーザーインターフェース設計などの分野における基礎的な考え方であり続けている。
フレームは、複数の情報を単一の再利用可能な単位にまとめる方法を提供する。これらはしばしば階層的に編成され、下位レベルのフレームは上位レベルのフレームからプロパティを継承することで、効率的な推論と推測を可能にする。この構造は、フラットなデータ表現とは対照的に、デフォルト値や手続き的アタッチメントを提供し、スロットが満たされたりアクセスされたりしたときにアクションをトリガーできる。
歴史的発展
フレーム概念は、1974年にマービン・ミンスキーによってAIにおける知識表現の研究の一環として正式に導入された。ミンスキーは、人間の知覚と理解をモデル化する方法としてフレームを提案し、人々が新しい経験を解釈するために事前の知識構造を使用することを示唆した。1975年に発表された彼の画期的な論文「知識を表現するためのフレームワーク」は、誕生日パーティーや部屋などの一般的なシナリオを表現するためにフレームをどのように使用できるかを概説した。
ミンスキーのアイデアは、心理学や言語学における初期の研究、特に1932年にフレデリック・バートレットが提唱したスキーマの概念に基づいていた。その後の数十年で、フレームは自然言語理解プログラムやエキスパートシステムを含むいくつかのAIシステムに統合された。MIT CSAILやXerox PARCなどの機関の研究者はこの概念を拡張し、1970年代後半にはFRL(フレーム表現言語)やKRL(知識表現言語)などのフレームベースの言語の開発につながった。
主要な構成要素
フレームは通常、名前と一連のスロットで構成され、各スロットには値、デフォルト、または制約のセットを含めることができる。スロットには、「if-needed」手続き(値を動的に計算する)や「if-added」手続き(スロットが満たされたときに実行される)などのファセットが含まれることが多い。この設計により、フレームは宣言的知識と手続き的知識の両方をサポートできる。
継承は中心的な特徴であり、フレームは別のフレームのサブクラスとして定義でき、そのスロットとデフォルトを継承する。例えば、「車」フレームには「車輪」(デフォルト4)や「エンジン」などのスロットがあり、「スポーツカー」フレームはこれらを継承し、「最高速度」を追加する。この階層的な配置は冗長性を減らし、更新を簡素化する。
フレームはまた、複数の視点をサポートし、同じオブジェクトをコンテキストに応じて異なるフレームを通じて見ることができる。これは、画像がアクティブなフレームに基づいて顔、建物、または車両として解釈される可能性があるAIアプリケーションで特に有用である。
人工知能における応用
Artificial intelligenceでは、フレームはさまざまなサブフィールドに適用されてきた。自然言語処理では、動詞の引数やイベント構造を解析するのに役立ち、1990年代後半に国際コンピュータサイエンス研究所で始まったFrameNetプロジェクトに見られる。FrameNetは、1,200以上のフレームに対するフレーム意味論の辞書を提供し、単語を意味役割にリンクする。
コンピュータビジョンでは、フレームはオブジェクトやシーンをモデル化するために使用され、システムが観測された特徴を期待される構造に一致させることができる。Stanford AI LabやMIT CSAILでの初期のビジョンシステムは、フレームベースの推論を使用して線画や3Dシーンを解釈した。今日では、関連する概念が現代のDeep learningアーキテクチャ、例えば画像セグメンテーション用のU-Netに現れており、畳み込み層がフレーム継承に類似した階層的特徴を捉えている。
フレームベースの推論は、ルールベースのエキスパートシステムやオントロジー工学にも登場する。OWLなどの標準は、フレームのような表現から派生しているが、論理で形式化されている。ロボット工学では、フレームはエージェントが状況認識を維持するのに役立ち、WaymoやTeslaシステムに見られるように、環境状態が動的に更新される。
フレーム意味論と言語理論
1980年代にチャールズ・フィルモアによって開発されたフレーム意味論の言語理論は、この概念を言語理解に拡張する。それは、単語がフレームを喚起し、フレームが意味を形成する構造化された背景知識であると仮定する。例えば、「売る」という単語は、買い手、売り手、商品、お金のスロットを持つ商業取引フレームを活性化する。この視点は、Machine learningモデルやNLPに影響を与えてきた。
フレーム意味論はミンスキーのフレームとは異なるが、構造化された知識という中核的なアイデアを共有している。これは計算辞書で実用化され、情報抽出や質問応答などのタスクで使用されている。OpenAIやAnthropicによって開発されたような現代のLarge language modelは、Transformer (architecture)アーキテクチャを通じてフレームのような知識を暗黙的にエンコードしているが、明示的なスロットベースの構造は使用していない。
関連概念との比較
フレームは、スキーマやオントロジーと比較されることが多い。データベース理論におけるスキーマは、データベース構造の形式的な記述であり、心理学では認知テンプレートである。フレームは、デフォルトや手続き的アタッチメントをサポートするため、スキーマよりも柔軟である。オントロジーは、ドメインのより形式的で論理的な仕様であり、多くの場合OWLで表現され、通常は手続き的ファセットを欠いている。
現代の計算フレームワークでは、「フレーム」はデータコンテナ、例えばデータサイエンスライブラリのpandasにおけるDataFrameも指す。この用法は、Rによって導入された統計用語「データフレーム」に由来するが、異種データを保持する表形式構造というアイデアを共有している。AI知識フレームとは直接関係ないが、この用語の広がりを示している。
現代における関連性と影響
Neural networkベースのアプローチの台頭にもかかわらず、フレームのような構造は、記号的推論とDeep learningを組み合わせたハイブリッドシステムで関連性を保っている。例えば、Google DeepMindや他の研究所は、ノードとエッジのスロット全体に情報を伝播するグラフニューラルネットワークなど、モデルに構造化表現を組み込んでいる。フレームの概念は、GraphcoreやSambaNovaのハードウェア設計にも残っており、固定サイズの計算「タイル」またはフレームを使用して並列操作を最適化している。
ユーザーインターフェース設計では、フレームはHTMLフレーム(非推奨だが)や現代のウィンドウシステムの中心であり、各ウィンドウがコンテンツのフレームとして機能する。この用語はビデオ処理にも登場し、フレームは単一の画像を指す。この多様性は、単一の概念がAmazon Web ServicesやGoogle Cloudを含むさまざまなドメインでどのように進化できるかを浮き彫りにしている。
2025年現在、「フレーム」という用語は、分散システムやコンパイラの教室を含むコンピュータサイエンスの30以上の異なる分野で使用されている。AIにおけるその耐久性は、モデルが複雑になるにつれて、構造化表現の重要性を強調している。実践者にとって、フレームを理解することは、記号的AIの遺産と現代の学習システムの間の概念的な橋渡しを提供する。
参考文献
基礎資料としては、マービン・ミンスキーの1974年の元の論文が主要な情報源である。知識表現と認知モデリングに関する書籍は、通常フレームを詳細にカバーしている。