人工知能原理

コンピュータサイエンス教科書シリーズ 12

人工知能原理

人工知能アルゴリズムの中で,特に探索・ゲーム,機械学習,知識表現・セマンティックWeb技術に絞り解説した最新の人工知能教科書

ジャンル
発行年月日
2017/12/15
判型
A5
ページ数
232ページ
ISBN
978-4-339-02712-9
  • 内容紹介
  • まえがき
  • 目次
  • 著者紹介

人工知能アルゴリズムの中でも,特に探索・ゲーム,機械学習,知識表現・セマンティックWeb技術に焦点を絞り,それらを平易に解説した最新の人工知能教科書。読者の理解を助けるため,実際のプログラミングコードも掲載した。

2017年は,第3次人工知能ブームの中にある。

人工知能(artificial intelligence,AI)という言葉が初めて使用された1956年のダートマス会議から第1 次AIブームが始まるが,マービン・ミンスキーが,ニューラルネットワークの最も基本的な「単層パーセプトロン」は線形分離不可能なパターンを識別できないことを示したことなどもあり,1970年代中ごろには冬の時代を迎えることになる。
その後,1980年代になると,隠れ層をもつパーセプトロンはその問題を解決できること,ニューラルネットワークの学習アルゴリズム「誤差逆伝播法」が発見されたことから,第2次AIブームが到来する。この期間には,ニューラルネットワーク以外にもエキスパートシステムによる知識表現が隆盛し,わが国では第五世代コンピュータプロジェクトが推進されるなどの活況の中にあった。しかし,その状況も長くつづかず,およそ7 年程度で再び冬の時代を迎えることになる。これにはさまざまな理由が考えられるが,その一つに,人工知能の構築に必要な大量のデータがなかったことが挙げられる。

そして,その環境が2010年代に激変する。「ディープラーニング(深層学習)」の登場である。大量なデータと,それを処理するのに十分な能力を有するコンピュータが比較的容易に入手できるようになったことがきっかけで,高い精度の学習が可能になったのである。Google社のAlphaGoが2015年10月に人間のプロ囲碁棋士に勝利したのは衝撃的な出来事である。現在われわれはこの渦中にいる。

上述の人工知能の歴史は,ニューラルネットワークの視点から記したが,この期間,さまざまな人工知能アルゴリズムが研究されてきた。例えば,探索アルゴリズムは,第1次AIブームから脈々と研究され,近年では先ほどふれたAlphaGoにも採用されているモンテカルロ木探索が注目を集めている。第2次AIブームで脚光を浴びたエキスパートシステムでは比較的単純な知識表現構造が用いられていたが,現在では,文書の意味を形式化することでコンピュータによる自動的な情報収集や分析を行うセマンティックWebの研究が盛んに行われている。本書では,人工知能アルゴリズムの中でも特に,探索・ゲーム,機械学習,および知識表現・セマンティックWeb技術に焦点を絞り,平易な文章で解説する。また,読者の理解を助けるために,実際のプログラミングコードも掲載した。本書を読み,人工知能に興味をもち,さらなる勉学を進めるためのきっかけとなれば幸いである。

各章の執筆者はつぎのとおりである。
第I部「探索とゲーム」:山田
第II部「機械学習」:加納
第III部「知識表現」:遠藤

最後に,本書の出版の機会を与えてくださり,種々ご指導いただいた本シリーズの編集委員長曽和将容先生,担当編集委員岩田彰先生,ならびにコロナ社には心から感謝申し上げます。

2017年10月 加納政芳

1. 人工知能とその歴史
1.1 人工知能とは
1.2 人工知能の歴史

第Ⅰ部 探索とゲーム
2. 探索
2.1 状態空間のグラフ表現
2.2 深さ優先探索と幅優先探索
 2.2.1 深さ優先探索
 2.2.2 幅優先探索
 2.2.3 プログラム
 2.2.4 深さ優先探索と幅優先探索の比較
2.3 分岐限定法
 2.3.1 プログラム
 2.3.2 健全性
2.4 山登り法
2.5 最良優先探索
2.6 A*アルゴリズム
 2.6.1 プログラム
 2.6.2 健全性
 2.6.3 ヒューリスティック関数の精度・無矛盾性
2.7 反復深化法とIDA*
 2.7.1 深さを閾値とした反復深化法
 2.7.2 IDA*
演習問題

3. ゲーム
3.1 群論によるパズルの分析
 3.1.1 コマの並びの表現
 3.1.2 巡回置換による操作の表現
 3.1.3 等価な巡回置換
 3.1.4 偶置換・奇置換
3.2 ヒューリスティック関数の設計
3.3 ゲーム木
3.4 AND-OR木
3.5 証明数と反証数
3.6 MINMAX法
 3.6.1 局面の評価
 3.6.2 MINMAX探索
3.7 αβ法
3.8 ゲームプログラミングの進展
 3.8.1 いろいろな手法
 3.8.2 パズルやゲームの解を求める試みの事例
演習問題

第Ⅱ部 機械学習
4. 進化的計算
4.1 遺伝的アルゴリズム
 4.1.1 選択
 4.1.2 交叉
 4.1.3 突然変異
 4.1.4 GAによる探索の具体例
4.2 遺伝的プログラミング
 4.2.1 選択
 4.2.2 交叉
 4.2.3 突然変異
 4.2.4 GPによる探索の具体例
4.3 差分進化
4.4 対話型進化計算
演習問題

5. ニューラルネットワーク
5.1 ニューロンモデル
5.2 パーセプトロン
 5.2.1 誤り訂正学習法
 5.2.2 誤差逆伝播法
5.3 ディープラーニング
5.4 自己組織化マップ
演習問題

6. 強化学習
6.1 強化学習の枠組み
6.2 TD学習
6.3 SARSA
6.4 Q学習
6.5 適格度トレース
演習問題

第Ⅲ部 知識表現
7. 知識表現
7.1 知識とその表現
7.2 知識表現技法
 7.2.1 フレーム
 7.2.2 意味ネットワーク
 7.2.3 プロダクションルール
 7.2.4 スクリプト
7.3 推論
 7.3.1 フレームシステムにおける推論の事例
 7.3.2 意味ネットワークによる推論の事例
 7.3.3 プロダクションシステムによる推論の事例
 7.3.4 スクリプトによる推論の事例
7.4 マークアップ言語とメタ言語
 7.4.1 HTML
 7.4.2 XML
7.5 知識表現とその活用
演習問題

8. セマンティックWeb技術
8.1 セマンティックWeb設計の原則と技術階層
8.2 スキーマ言語
 8.2.1 DTD
 8.2.2 XMLSchema
8.3 Webにおけるメタデータの活用事例
8.4 オントロジー
 8.4.1 RDF
 8.4.2 OWL
8.5 セマンティックWebの応用事例
 8.5.1 LinkedOpenData
 8.5.2 SPARQL
8.6 セマンティックWebの未来
演習問題

引用・参考文献
演習問題解答
解答プログラム
索引

遠藤 守(エンドウ マモル)