翔泳社が3月7日に刊行した『はじめての人工知能 Excelで体験しながら学ぶAI』は、Excelのサンプルプログラムを実行して、実際の人工知能がどんなふうに動作するのかを体験しながら、人工知能の本質、つまり技術的な側面を学べる解説書です。
人工知能はさまざまな企業が独自に開発を行ない、より発展的な研究が進んでいる最新分野ですが、その基本について知る機会はあまり多くありません。よく聞くのは、人工知能によって社会や人間にどんな影響が及ぶのかという倫理的・社会的な側面に沿った情報です。しかし、そうしたことを考えるためにはもちろん、これから人工知能を活用したい、あるいはそもそもの研究開発をしたいと考えている方にとって、より重要なのは人工知能の基本を知ることです。
ニューラルネットワーク、ファジィ、機械学習、遺伝的アルゴリズムなど、人工知能の技術は幅広い領域で活用が模索されています。すでに実用化されている技術も多々あります。本書は、著者の淺井登さんが高専5年生向けに教える内容をベースとしているので、これらの技術の基本を一から学んでいくことができます。
現在人工知能に関わる仕事をしている方、あるいは将来関わるかもしれない方、初めて学ぼうという方におすすめです。
目次
第1章 人工知能は夢いっぱい
1.1 人工知能が人間を超える?
1.2 人工知能の研究テーマ
1.3 人工知能技術の初歩的な考察
第2章 人間の脳を機械で真似る = ニューラルネットワーク
【体験してみよう】多少ゆがんだ文字でも人工知能なら正しく認識できる
~パーセプトロンによる文字認識~
【体験してみよう】もっとゆがんだ文字でも人工知能なら正しく認識できる
~ホップフィールドネットワークによる文字認識~
2.1 脳のモデルとニューラルネットワークの考え方
2.2 パーセプトロン(Perceptron)
2.3 ホップフィールドネットワーク(Hopfield Network)
2.4 その他のニューラルネットワーク
第3章 人間のあいまい性を機械で扱う = ファジィ
【体験してみよう】「ちょっと高め/ちょっと低め」の感覚で空調を制御する
~ファジィ推論による空調制御~
【体験してみよう】あいまいな条件で目標値を維持する ~ファジィ制御~
3.1 ファジィの考え方
3.2 ファジィ推論
3.3 ファジィ制御
3.4 ファジィ関係
第4章 よいものが残る進化の法則をうまく使う = 遺伝的アルゴリズム
【体験してみよう】遺産の適正な分配を要領よく行う
~遺伝的アルゴリズムによる財産分け~
4.1 遺伝的アルゴリズムの考え方
4.2 遺伝的アルゴリズムの具体例
4.3 遺伝的アルゴリズムの応用
第5章 身の周りの問題をうまく解決するには = 問題解決
【体験してみよう】宣教師が「人食い人」に食われずに川を渡れるか?
~ MC問題~
5.1 モデル化
5.2 状態遷移
5.3 問題解決の具体例
第6章 最も効率的な道筋をどう選ぶか = 探索法
【体験してみよう】最小コストで山の頂上まで登るときの経路を探せ
~探索法の比較~
6.1 探索法の分類
6.2 系統的探索(Systematic Search)
6.3 ヒューリスティック探索(Heuristic Search)
6.4 探索法まとめ
第7章 相手がいるときの対処法 = ゲーム戦略
【体験してみよう】簡単なカードゲームでコンピュータに挑戦!
~αβ戦略によるカードゲーム~
7.1 Min-Max 戦略
7.2 αβ戦略
第8章 人間が学習する過程を機械で真似る = 機械学習
【体験してみよう】人工知能にことばの意味を教えよう
~バージョン空間法による学習~
8.1 機械学習の基本的な考え方
8.2 バージョン空間法 (Version Space Method)
第9章 人間の知識を機械上で表現すれば人間の代わりになる
= 知識表現とエキスパートシステム
【体験してみよう】病院に行く前に人工知能に聞いてみよう
~病気診断エキスパートシステム~
9.1 知識表現(Knowledge Representation)
9.2 エキスパートシステム(Expert System)
第10章 人間の自律性を機械にもたせる = エージェント
【体験してみよう】犯人を捕まえろ! ~追跡問題~
10.1 エージェントの古典的な問題
10.2 エージェントの要件
10.3 マルチエージェント
第11章 人工知能の草分け的コンピュータ言語 = Lisp
【体験してみよう】犯人を捕まえろ! ~追跡問題~
11.1 リスト処理(List processing)
11.2 ラムダ計算
11.3 スコープとエクステント(Scope & Extent)
11.4 ゴミ集め(Garbage Collection)
第12章 ものごとの関係を記述するコンピュータ言語 = Prolog
12.1 命題論理
12.2 述語論理
12.3 ホーン節
12.4 ユニフィケーション(Unification)とバックトラック(Backtrack)
12.5 WAMと抽象命令