SBクリエイティブ

はじめてのディープラーニング

我妻 幸長:著者

Pythonで学ぶニューラルネットワークとバックプロパゲーション

オンライン教育プラットフォームUdemyの人気講師が教えるディープラーニングの基礎。ディープラーニングのベースであるニューラルネットワークと、ニューラルネットワークを学習させる際に用いられるアルゴリズムであるバックプロパゲーション(誤差逆伝播法)を初学者にもわかりやすく解説。また画像認識の分野で高い効率性を発揮する畳み込みニューラルネットワークについてもコード付きで解説することにより、入門書であるにもかかわらず本格的AI開発の入り口まで学ぶことができます。

[本書の特徴]
・はじめてPythonに触れる方のために、Python本体と数値演算ライブラリNumPyによるプログラミングの基礎を解説しています。
・文系エンジニアのために、微分や線形代数など、ニューラルネットワークの理解に必要な数学の知識を解説しています。
・サンプルプログラムはフレームワークを使わずにPythonのみで記述しています。このため数式をコード化する際の原理が初心者にもわかりやすくなっています。
・サンプルプログラムはSBクリエイティブ株式会社のサイトからダウンロード可能です。
・Python3、Jupyter Notebook対応

■目次:
第01章 ディープラーニングとは
第02章 Pythonの概要
第03章 ディープラーニングに必要な数学
第04章 ニューラルネットワーク
第05章 バックプロパゲーション
第06章 ディープラーニングの実装
第07章 畳み込みニューラルネットワーク(CNN)
第08章 ディープラーニングの関連技術

定価:2,948円(本体2,680円+10%税)

書籍情報

  • 発売日:2018年8月22日(水)
  • ISBN:978-4-7973-9681-2
  • サイズ:A5/2色
  • ページ数:340
  • 付録:-

本書は、可能な限り多くの方がディープラーニングの本質を学ぶことができるように、プログラミングと数学から畳み込みニュートラルネットワークに至まで、手を動かしながら少しづつ丁寧に学べるように設計されています。また扱うコードは直感的な分かりやすさを重視しています。変数名やコメントにも注意を払い、可能な限りシンプルで可読性高いコードを心がけています。本書が、多くの方々のAIに取り組むきっかけになれば嬉しい限りです。

ニュートラルネットワーク

ニュートラルネットワークには、複数の入力と複数の出力があります。多数のパラメーターを持っており、これらを調整することで豊かな表現力を発揮します。ディープラーニングにおいては、これらのパラメータが最適化されることで、学習が行われます。学習が最適に行われると、入力に対して適切な判断を行った結果が、出力として得られるようになります。

Pythonの文

inは「x in y」という形式で使い、yの中にxが含まれる場合にtrueを返します。yには後述するリストやタプルを指定します。また、+演算子は文字列や後述するリストの結合に利用するできます。

軸とtransposeメソッド

NumPyには、軸(axis)という概念があります。軸とは文字通り座標軸のことで、配列において数値が並ぶ方向のことです。軸は次元の数と同じ数存在します。例えば一次元配列には1つの軸があり、2次元配列には2つの軸が、3次元配列には3つの軸があることになります。軸にはそれぞれインデックスがあります。2次元配列の場合、縦方向の軸はaxis=0で、横方向の軸はaxis=1となります。

行列の行と列

行がm個、列がn個並んでいる行列を、m×nの行列と表現します。従って、上記の1の行列は3×4の行列になります。なお、縦ベクトルは列の数が1の行列と、横ベクトルは行の数が1の行列と考えることもできます。本書における数式では、アルファベット大文字のイタリックで行列を表します。上記は行列の表記の例です。

勾配降下法

この際の各重みの変化量は、この曲線の傾き、すなわち勾配で決まります。バイアスの場合も同様です。従って、ニュートラルネットワークのすべての重みとバイアスを更新するためにまず必要なことは、すべての重みとバイアスに対する、誤差の勾配を求めることになります。このような最小値を局所最適解といいます。それに対して、真の最小値を最大最適解といいます。

ドロップアウト(Dropout)

ドロップアウトは、出力層以外ニューロンを一定の確率でランダムに消去するテクニックです。次の図にドロップアウトの概略を示しますが、入力層、中間層のニューロンがいくつか消去(×がついているもの)されて、ネットワークがまばらになっています。消去されるニューロンは、重みとバイアスの更新ごとに入れ替わります。層のニューロンが消去されずに残る確率をpとした場合、中間層にはp=0.5が、入力層にはp=0.8~0.9などの値が用いられる場合が多いようです。

著者紹介

我妻幸長
「ヒトとAIの共生」がミッションの会社、SAI-Lab株式会社の代表取締役。AI関連の教育と研究開発に従事。
東北大学大学院理学研究科修了。理学博士(物理学)。興味の対象は、人工知能(AI)、複雑系、脳科学、シンギュラリティなど。
プログラミング / AI講師として、教室で1000人以上を、オンラインで約2万人近くをこれまでに指導。
世界最大の教育動画プラットフォーム、Udemyで「はじめてのPython」、「実践データサイエンス&機械学習」、「みんなのディープラーニング」、「みんなのAI講座」などを開講中。
エンジニアとして、VR、ゲーム、SNSなど、ジャンルを問わず数々のアプリを開発。

関連商品のご案内

もっと見る

試し読み新着お届け

もっと見る