Pythonで動かして学ぶ!あたらしい深層学習の教科書 機械学習の基本から深層学習まで(株式会社アイデミー 石川 聡彦)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. Pythonで動かして学ぶ!あたらしい深層学習の教科書 機械学習の基本から深層学習まで

Pythonで動かして学ぶ!あたらしい深層学習の教科書 機械学習の基本から深層学習まで


形式:
書籍
発売日:
ISBN:
9784798158570
定価:
3,520(本体3,200円+税10%)
仕様:
A5・792ページ
カテゴリ:
人工知能・機械学習
キーワード:
#プログラミング,#開発手法,#データ・データベース,#ビジネスIT
シリーズ:
AI & TECHNOLOGY
紙の書籍

【本書の概要】
本書は株式会社アイデミーで大人気の講座『ディープラーニングで画像認識モデルを作ってみよう!』を書籍化したものです。
機械学習の基本からはじまり、Pythonの基礎、データの処理、深層学習の基本から応用ついて、
サンプルを元に実際に動かしながら、わかりやすく解説します。
各項には練習問題がありますので、学習効果を確かめながら読む進めることができます。
本書を読めば、機械学習から深層学習の基本を一気通貫で学習できます。
これから深層学習をはじめたい、初学者の方におすすめの1冊です。

【本書の対象】
人工知能関連の開発に携わる初学者(開発者、研究者、理工系学生)

【本書の構成】
第1章から第3章で機械学習の基本を、
第4章から第6章ではPythonの基礎知識を、
第7章から第9章ではNumPyやPandasの基礎知識を、
第10章から第13章では可視化の基礎知識を、
第14章から第15章ではデータの扱い方の基本を、
第16章から第18章では教師あり学習やハイパーパラメータとチューニングを、
第19章から第22章では深層学習について基本か応用まで、
丁寧に解説します。

【著者プロフィール】
石川 聡彦(いしかわ・あきひこ)
株式会社アイデミー 代表取締役社長 CEO。
東京大学工学部卒。株式会社アイデミーは2014年に創業されたベンチャー企業で、
10秒で始める先端テクノロジー特化型のプログラミング学習サービス「Aidemy」を提供。
様々な企業のアプリケーション制作・データ解析を行った。現在の主力サービス「Aidemy」は
AIやブロックチェーンなどの先端テクノロジーに特化したプログラミング学習サービスで、
リリース100日で会員数10,000名以上、演習回数100万回以上を記録。
早稲田大学主催のリーディング理工学博士プログラムでは、AIプログラミング実践授業の講師も担当した。
著書に『人工知能プログラミングのための数学がわかる本』(KADOKAWA/2018年)などがある。

会員特典

書籍リンク集

本書の中で紹介しているサイトの一覧です。

書籍リンク集

Introduction Aidemyで機械学習・深層学習を学ぶ
Prologue 開発環境の準備
第1章 機械学習概論
第2章 機械学習の流れ
第3章 性能評価指標
第4章 Pythonの基礎
第5章 Pythonの基本文法
第6章 関数の基礎
第7章 NumPy
第8章 Pandasの基礎
第9章 Pandasの応用
第10章 データ可視化のための準備
第11章 matplotlibの使い方
第12章 様々なグラフを作る
第13章 lambdaやmapなどの便利なPython記法
第14章 DataFrameを用いたデータクレンジング
第15章 OpenCVの利用と画像データの前処理
第16章 教師あり学習(分類)の基礎
第17章 ハイパーパラメータとチューニング(1)
第18章 ハイパーパラメータとチューニング(2)
第19章 深層学習の実践
第20章 深層学習のチューニング
第21章 CNNを用いた画像認識の基礎
第22章 CNNを用いた画像認識の応用

付属データはこちら

会員特典はこちら

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

  • 第21章におけるコード内のアドレスについて

    2022年8月23日現在、第21章のサンプルで、URLアドレスの変更により、サンプルが実行できない形になっております。
    以下のアドレスに変更して読み進めていただければ幸いです。


    P.672
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy


    P.678
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy

    P.700
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy


    P.704
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy

    P.709
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy

    P.715
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy

    P.720
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/weight.npy'
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/weight.npy

    P.726
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/weight.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/weight.npy

    P.731
    ------------------------
    旧:
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/circle.npy
    https://aidemyexcontentsdata.blob.core.windows.net/data/5100_cnn/weight.npy
    新:
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/circle.npy
    https://aidemystorageprd.blob.core.windows.net/data/5100_cnn_data/weight.npy




  • 「6.2.6 関数のimport(インポート)」の補足資料

     Pythonでは頻繁に行われるいくつかの処理を1つのファイルにまとめ、他のソースコードから利用できるようにしたモジュールというものがあります。 それに加え、関連する複数のモジュールを1つのディレクトリにまとめた、パッケージというものがあります。 また、パッケージの中にさらにパッケージが入れ子になっていることもあります。 この場合入れ子になっているほうのパッケージをサブパッケージと呼びます。これらの関係は、図1のようになっています。



    ▲図1:パッケージ、サブパッケージ、モジュール(上)、timeモジュール(下)

     パッケージはたくさんありますが、その1つにscipyがあります。図1には3つしか書かれていませんが、scipyのパッケージには、図1以外にもたくさんのサブパッケージが含まれています。
     プログラム内でパッケージやモジュールを使用する際には、リスト1のようなimport(インポート)という処理が必要になります。


    [In]
    --------------------------
    import time # timeモジュールをインポートします
    import scipy # scipyパッケージをインポートします
    --------------------------
    ▲リスト1:import処理①

     importしたパッケージ内のメソッドを使用する場合は、 パッケージ名.サブパッケージ名.メソッド名と書きます(リスト2)。


    [In]
    --------------------------
    from scipy import linalg

    scipy.linalg.norm([1,1])
    --------------------------
    [Out]
    --------------------------
    1.4142135623730951
    --------------------------
    ▲リスト2:import処理②

     リスト3の例ではtimeモジュールのtimeというメソッドを使用して、現在の時刻を出力しています。


    [In]
    --------------------------
    import time

    now_time = time.time() # 現在時刻をnow_timeに代入します

    print(now_time) # 現在時刻が出力されます
    --------------------------
    [Out]
    --------------------------
    1541667651.980569
    --------------------------
    ▲リスト3:import処理③


     また、from パッケージ名.サブパッケージ名 import メソッド名という書き方で、メソッドを直接読み込む方法もあります。この場合はメソッド呼び出しの際に、パッケージ名・サブパッケージ名を省略できます(リスト4)。

    [In]
    --------------------------
    from scipy.linalg import norm

    norm([1, 1]) # パッケージ名・モジュール名を省略できます
    --------------------------
    [Out]
    --------------------------
    1.4142135623730951
    --------------------------
    ▲リスト4:import処理④

     また、from モジュール名 import メソッド名という書き方でモジュール名を省略することができます(リスト5)。

    [In]
    --------------------------
    from time import time # timeモジュールのtimeメソッドをimportします

    now_time = time() # モジュール名を省略できます

    print(now_time) # 現在時刻が出力されます
    --------------------------
    [Out]
    --------------------------
    1541667809.7508
    --------------------------
    ▲リスト5:import処理⑤

     PythonにはPyPIというパッケージ管理システムが用意されており、scipy以外にもたくさんのパッケージが公開されています。しかし、PyPIに公開されている膨大な数のパッケージを1つずつダウンロードしたり、インストールしたりするのは手間がかかりすぎます。 そこで、パッケージ管理ではpipというツールを使用します。pipを使用すれば、コマンドプロンプト (macOSであれば「ターミナル」、UbuntuなどのLinuxディストリビューションであれば「端末」)で、 pip install パッケージ名と入力するだけでパッケージを手軽にインストールできます。


ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2023年07月10日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 054
図3.4 左下の図のTNの数値
9760
9898
2021.11.10
1刷 101
上から2行目 
2刷
#chaos[1:-3]でも可能
#chaos[1:-2]でも可能

※リフローEPUBの場合、「5.1.5 リストからリストを取り出す(スライス)」の(解答例)の「In」の3行目(青マーカー部分)が該当箇所になります。
2018.10.26
1刷 106
上から4行目
2刷
JSON 形式と似た形式
連想配列と似た形式

※リフローEPUBの場合、「5.2.1 辞書型」の2つ目の段落が該当箇所になります。
2018.11.15
1刷 148
6.2.6 関数のimport(インポート)
2刷
6.2.6 関数のimport(インポート)
6.2.6 関数のimport(インポート)*1 ページ最下部に注釈追加 *1  6.2.6 項の内容に関しては、追加情報がありますので、本書の書籍情報のサイト(https://www.shoeisha.co.jp/book/detail/9784798158570)の「追加情報」でご確認ください。
2018.11.15
1刷 174
問題の「In」のコード7行目
2刷
# 行列を初期化します
# 行列を初期化します*1 ページ最下部に注釈追加 *1  matC = np.array([[0] * N for _ in range(N)]) の [0] の部分は、環境によっては [0. 0] にしてくだ さい。

※リフローEPUBの場合、「7.1.2 NumPyの高速な処理の体験」の(問題)の「In」のコードの7行目が該当箇所になります。
2018.11.15
1刷 193
上から1行目と解答例[In]の下から3行目
2刷
0~1までの
0以上1未満の

※リフローEPUBの場合、リスト7.27の下から3行目、およびリスト7.28の「In」の下から3行目が該当箇所になります。
2018.11.15
1刷 240
リスト 8.30の「In」
3刷

data  =  {"fruits":  ["apple",  "orange",  "banana",  "strawberry", "kiwifruit"],


data  =  {"fruits":  ["apple",  "orange",  "banana",  "strawberry", "kiwifruit"],
        "year": [2001, 2002, 2001, 2008, 2006],

2019.10.24
1刷 274
解答例[In] の下から1行目
2刷

青いマーカーを取ります

※リフローEPUBの場合、リスト9.8の「In」のコード最終行が該当箇所になります。
2018.11.15
1刷 512
解答例の番号の修正
2刷
2.二項分類(線形)
1.二項分類(線形)

※リフローEPUBの場合、図16.1のすぐ下の番号付き箇条書きが該当箇所になります。
2018.11.06
1刷 579
上から1行目
2刷

青いマーカーを取ります

※リフローEPUBの場合、「18.2.1 パラメータ n_estimators」の(解答例)の「In」の4行目が該当箇所になります。
2018.11.15
1刷 633
MEMO
MEMO:metrics metrics は評価関数なので、学習自体には関係ありません。評価関数については第1章「機械学習概論」を参照してください。
MEMO:metrics metrics は評価関数なので、学習自体には関係ありません。評価関数については第3章「性能評価指標」を参照してください。
2023.07.10
1刷 717
解答例[In] の上から5行目
2刷

青いマーカーを取ります

※リフローEPUBの場合、「21.3.4 padding(Conv層)」の(解答例)の「In」の4行目が該当箇所になります。
2018.11.15
1刷 743
本文上から3行目
2刷
青がBNなし、黒がBNあり
青がBNあり、黒がBNなし

※リフローEPUBの場合、図22.3の下にある本文の最初の段落が該当箇所になります。
2018.11.02

感想・レビュー

XTJP さん

2020-01-10

Kindle. 紙版はどうなのかわからないが、レイアウトがむちゃくちゃなせいで非常に見づらかったが、こういう本を途中で投げ出すのは嫌なので最後までなんとか進めた。とりあえず一通りおわったので、これからはこれを辞書代わりにしながら実践的な問題に向き合っていきたい。