ニューラルネットワーク自作入門

ニューラルネットワークジサクニュウモン

数学と Python の優しい旅

ニューラルネットワーク自作入門の表紙
ハードウェア
著者:
Tariq Rashid / 新納 浩幸(タリク ラシド / シンノウ ヒロユキ)
出版社:
マイナビ出版
出版日:
2017年04月28日頃
ISBN:
9784839962258
在庫:
在庫あり
3(3 件 / 楽天ブックス)
初級者向け
Python深層学習ニューラルネットワーク数学機械学習自作入門微積分コンピュータサイエンスデータサイエンス

なぜ注目されているか

言及数
342位
総合459位 ↓ 15 ランクダウン 言及 9 件・うち記事 8 件を掲載
01120222023202420252026

書籍紹介

ニューラルネットワークで使われる数学の最もやさしい入門書
ー さらにコンピュータ言語 Python を使って自分自身で作ってみよう!

本書はニューラルネットワークで必要となる数学について、一歩一歩、旅する気分で触れていきながら、コンピュータ言語: Python を使いニューラルネットワークを自作します。今日ニューラルネットワークは深層学習と人工知能の重要な鍵であり、大きな実績をあげています。しかし、実際にニューラルネットワークがどのように機能するかを本当に理解している方は極少数でしょう。

本書では極カンタンなところからスタートし、ニューラルネットワークがどのように機能するかを理解していくーゆっくりと楽しい旅のお手伝いします。
読者の方には中学・高校で学んだ以上の数学の知識を必要としません、本書を通して微積分へ入門することも可能です。

本書の目的はできるだけ多くの読者に・できるだけ理解しやすくニューラルネットワーク自作をお手伝いすることです (さらに発展した課題が欲しい読者には、既にたくさんの教科書があると思います)。

Python でコードを作成し、独自の畳み込みニューラルネットワークを作成。「手書きによる数字」を認識してみます。

Part 1 は数学的考え方に関するものです。我々は、ニューラルネットワークの基礎となる数学的考え方を、多くのイラストや例を使って丁寧に紹介していきます。

Part 2 は実践編です。人気があり習得しやすいプログラミング言語: Python を紹介しつつ、人間が手書きした「数字」を認識し、容易に実行できるニューラルネットワークを構築していきます。

Part 3 では、これらのアイデアをさらに拡張。シンプルなアイデアやコードを使用し、認識率 98%のニューラルネットワークへと改良を進めます。自分で書いた手書き文字でニューラルネットワークをテストし、さらに"制作者の特権"を活かしミステリアスなニューラルネットワークの心の中を覗き見してみよう。

最後に制作物を Raspberry Pi で動かしてみます。
本書で紹介するすべてのコードは、Raspberry Pi で動くことを確認しています。

イントロダクション: 本書の対象者 / この本で何ができるが / どのようにして行うのか

Part 1:どうやって動くのか

Part 2:Python でやってみよう

Part 3:さらに楽しもう

付録 A:とってもやさしい微積分入門

付録 B:Raspberry Pi でやってみよう

技書の森解説

『ニューラルネットワーク自作入門』 (Tariq Rashid 著、新納 浩幸 監訳、マイナビ出版、2017 年 4 月刊) は、原書 Make Your Own Neural Network の日本語版で、ニューラルネットワークで使われる数学を一歩ずつ確かめながら、Python で手書きの数字を認識するネットワークを自分で組み上げる入門書です。副題は「数学と Python の優しい旅」です。版元は、読者に中学 / 高校で学んだ以上の数学の知識を求めず、本書を通して微分へ入門することもできると案内しています。著者は刊行時のプロフィールで物理学の学位と機械学習とデータマイニングの修士号を持つと紹介され、監訳者は同じく刊行時に自然言語処理を専門とする茨城大学の教授と紹介されています。

3 つの Part の構成、予測マシンから手書き数字の認識まで

目次はプロローグとイントロダクションのあと、3 つの Part と付録 2 本、エピローグの順に並びます。Part 1「どうやって動くのか」は 16 節あり、単純な予測マシンと分類器の学習から始めて、自然界のニューロン、行列の掛け算を使った 3 層の例、出力層や多層への誤差逆伝播、重みの更新の実行例、データの準備へと進みます。Part 2「Python でやってみよう」は Python と対話型の IPython の紹介、やさしい Python 入門から入り、Python でのネットワークの実装と、手書き数字の MNIST データセットへの適用を扱います。Part 3「もっと楽しく」は自分で書いた手書き文字での試験、ネットワークの内部をのぞく節、回転による新しい訓練データの作成の 3 節です。版元の紹介文では、Part 3 で認識率 98% のネットワークへ改良を進めると説明されています。

誤差逆伝播を手で追うことの意味

深層学習 の道具を使えば、誤差逆伝播は 1 行の呼び出しで済みます。その手軽さの裏で、出力の誤差がどの重みにどれだけ責任を負うのかを分配する計算は見えなくなります。学習が進まない、値が発散するといった不調に出会った時に原因の見当を付けられるかどうかは、この分配の仕組みを一度でも自分で組んだ経験に左右されます。本書の Part 1 は、誤差逆伝播を複数のノードからの重みの学習から、出力層、多層へと広げ、最後に行列の掛け算でまとめて書き直す並びです。ネットワークの計算が行列の積として書けるという見方は、Part 2 の実装をそのまま短くする鍵でもあります。付録 A は平らな直線と傾斜のある直線から始めて微分の規則と関数の関数へ進むため、高校で微分を学ばなかった読者も、勾配に沿って重みを動かす考え方の土台をここで補えます。

中学 / 高校の数学から入りたい読者と、物足りない読者

向いているのは、数式の多い専門書で手が止まった経験があり、ネットワークが数字を見分ける仕組みを自分のコードで確かめたい人です。付録 B は IPython のインストールから学習とテストまでを扱い、版元は本書のすべてのコードが小型コンピューターの Raspberry Pi で動くことを確認したと案内しています。一方で、目次には畳み込みや系列を扱う節も、深層学習フレームワークの名前も見当たりません。版元自身も、さらに発展した課題が欲しい読者には既に多くの教科書があると書いています。画像認識の実務や大規模なモデルの扱いを学びたい人は、本書を原理の確認に使い、次の本を別に用意するのが近道です。数学の学び直しをどこまで広げるかは 機械学習に必要な数学の本の選び方 が、原理を手で理解する本の次に何を読むかは ディープラーニング本の選び方 が手がかりになります。

一度は自分の手でネットワークを組み、誤差が重みへ戻っていく様子を数式とコードの両方で見ておきたい人にとって、中学 / 高校の数学から入れる本書は最初の 1 冊として元が取りやすい本です。Part 1 の予測マシンから順に読み進めてみてください。

言及した記事 (8 件)

この本に興味がある方におすすめ

関連する本

関連記事

関連用語

共有: