AIについて学ぶために、2014年に購入し飛ばし飛ばして読んでいた本書を本日読了いたしました。

Amazonのレビューでも指摘されていますが、まさに「概論」というタイトルにふさわしく、広く浅く人工知能に関する概念の説明が行われています。決して「入門書」ではないので、何かしらバックボーンとなる知識をもっていないと、本書に書かれている内容を「知る」ことはできても、「理解」するのは難しいかと思われます。
本書の内容をざっくりまとめると、「人口知能で問題を解決するにあたって、宣言的知識 declarative Knowledgeと手続的知識 procedural knowledgeをどのように実装するか(プログラミングするか)」になります。宣言的知識 declarative Knowledgeは、命題、知識、ルール、事実と言い換えてもいいでしょうし、手続的知識 procedural knowledgeは簡単に言うとアルゴリズムです。
宣言的知識 declarative Knowledgeに関しては、Prolog/Javaの知識が理解に役立ちます。
特に第4章でとりあげられている「意味ネットワーク semantic network」と「フレーム frame」ですが、is-a関係や、継承 inheritanceといったオブジェクト志向プログラミングの言葉が登場します。フレームframeに関しては、データ(field)だけでなく手続き(method) も持つことができると説明されており、オブジェクト志向のクラス概念そのものだと思います。時系列的に考えても、これらの人工知能の知識表現に関する研究の蓄積がオブジェクト志向に受け継がれていったんでしょうね。
立命館大学 稲葉教授のウェブサイトでも下記のように簡単に言及されていますが、オブジェクト指向が成り立つにあたって、知識表現の研究がどのように参照されたかを説明する本などあったら読んでみたいです。
Amazonのレビューでも指摘されていますが、まさに「概論」というタイトルにふさわしく、広く浅く人工知能に関する概念の説明が行われています。決して「入門書」ではないので、何かしらバックボーンとなる知識をもっていないと、本書に書かれている内容を「知る」ことはできても、「理解」するのは難しいかと思われます。
本書の内容をざっくりまとめると、「人口知能で問題を解決するにあたって、宣言的知識 declarative Knowledgeと手続的知識 procedural knowledgeをどのように実装するか(プログラミングするか)」になります。宣言的知識 declarative Knowledgeは、命題、知識、ルール、事実と言い換えてもいいでしょうし、手続的知識 procedural knowledgeは簡単に言うとアルゴリズムです。
宣言的知識 declarative Knowledgeに関しては、Prolog/Javaの知識が理解に役立ちます。
特に第4章でとりあげられている「意味ネットワーク semantic network」と「フレーム frame」ですが、is-a関係や、継承 inheritanceといったオブジェクト志向プログラミングの言葉が登場します。フレームframeに関しては、データ(field)だけでなく手続き(method) も持つことができると説明されており、オブジェクト志向のクラス概念そのものだと思います。時系列的に考えても、これらの人工知能の知識表現に関する研究の蓄積がオブジェクト志向に受け継がれていったんでしょうね。
立命館大学 稲葉教授のウェブサイトでも下記のように簡単に言及されていますが、オブジェクト指向が成り立つにあたって、知識表現の研究がどのように参照されたかを説明する本などあったら読んでみたいです。
人工知能における知識表現や問題解決の手法は、組織的活動を効率化するコンピュータシステムの開発やデータベース設計の前提となる「オブジェクト指向」と呼ばれる技術に受け継がれている。説明されているアルゴリズムに関しては、Prologに関連するパターンマッチングについては実感をもって理解できますが、その他についてはPythonで実際にコーディングしてみて、理解を深めたいと考えています。