【2023最新】「画像認識」のおすすめ本!人気ランキング

この記事では、「画像認識」のおすすめ本をランキング形式で紹介していきます。インターネット上の口コミや評判をベースに集計し独自のスコアでランク付けしています。

今すぐ試したい! 機械学習・深層学習(ディープラーニング) 画像認識プログラミングレシピ

賢, 川島
秀和システム
おすすめ度
100
紹介文
私たちの日常生活で、人工知能が普通に使われる時代になりました。スマートフォンの顔認証、自動運転技術、SiriやAlexaのようなAI音声アシスタントなど身近な技術ばかりです。これからは機械学習や深層学習はエンジニアの基本教養となるかもしれません。本書は、機械学習や深層学習の分野から画像認識に重点をおいて、難しい数式をつかわず、図や写真を多用して解説する入門書です。必要な概念、用語、キーワードも網羅的に説明します。 第1部 人工知能・機械学習・深層学習の基礎知識 第1章 人工知能・機械学習・深層学習の基本  01-01 人工知能概要  人工知能の歴史  人工知能とは  機械学習  人工ニューラルネットワーク  深層学習(ディープラーニング)  今注目される理由  01-02 機械学習とは  機械学習とは  機械学習のタイプ(分類)  教師あり学習  教師あり学習の用途  教師あり学習の重要アルゴリズム  教師なし学習  教師なし学習の用途  教師なし学習の重要アルゴリズム  強化学習  機械学習のためのデータ  データの重要性  学習用データと検証データ  過学習(over fitting)  次元の呪い(the curse of dimensionality)  データの入手  機械学習(教師あり)の流れ  課題の定義  データの準備  学習フェーズ  検証・評価フェーズ  応用フェーズ  01-03 深層学習とは  視覚情報の重要性  生物学ニューロンから人工ニューロンへ  生物学ニューロンとは  生物学ニューロンのモデル化  パーセプトロン(perceptron)  パーセプトロンの限界  ニューラルネットワーク  活性化関数  ニューラルネットワークの学習  深層学習(ディープラーニング)とは  深層学習の応用  3つの代表的な深層学習アルゴリズム  畳み込みニューラルネットワーク詳説  入力層(input layer)  畳み込み層(convolutional layer)  プーリング層(pooling layer)  全結合層(fully connected layer)  深層学習のフレームワーク  機械学習、深層学習に必要な数学 第2章 Pythonと重要なツール・ライブラリ  02-01 本書の実行環境の概要について  Pythonの開発環境  Pythonの環境を用意する  PCにPythonをインストールする場合  Anacondaのダウンロード  Anacondaのインストール  Anaconda Navigatorの起動  Anacondaで環境の管理  まずはChannelを追加しよう  仮想環境にパッケージをインストールしよう  Raspberry Piの場合  pip3のインストール  共通の必要なパッケージ等をインストールする  Kerasが利用するパッケージのインストール  本書のサンプルコードをダウンロードする  02-02 Jupyter Notebookを使おう  Jupyter Notebookの起動  Jupyter Notebookの基本操作  Notebookを作る  新しいNotebookを作る  メモを追加する  Raspberry PiでJupyter Notebookを使う場合  02-03 Colaboratoryノートブックを使おう  動かそう!  GoogleアカウントにログインしてGoogleドライブを起動  Colaboratoryノートブックを作成する  Pythonのバージョンの設定  Colaboratoryでの操作  ハードディスクの容量の確認  メモリ使用量の確認  OS情報の出力  CPU情報の出力  ファイルのアップロード  パッケージのインストール  使用中のパッケージのバージョンの確認  本書のNotebookをインポートする  02-04 Pythonの基礎と文法  Pythonの基本  Pythonのバージョンを確認しよう  インストールされているパッケージを確認しよう  Hello Worldと表示してみよう  日本語の出力  コメントの書き方  演算  変数  変数とは  文字列の変数  文字列の連結  Pythonの型  型の出力  型の変換  リストの作り方  二次元配列  三次元配列  文字の多次元配列  リストからの値の出し方  リストのスライス  リスト要素の更新  リスト要素の追加  リスト要素の削除  リストの代入  条件分岐  if文と条件式  else  elif  条件式の and、not、or  for文  range()による数値シーケンスの生成  while文  関数  import  ファイルをimportする 第3章 NumPyとMatplotlibの使い方  03-01 NumPyの使い方  NumPyの基本操作  配列の作成  掛け算  足し算  配列の要素同士の四則演算  ベクトルの内積  二次元ベクトルの内積  ndarrayの形状変換  要素がゼロの配列生成  要素が1の配列を生成する  未初期化の配列を生成する  matrixで二次元配列の作成  shapeで次元ごとの要素数を取得する  ndimで次元構造を取得する  配列要素のデータ型dtype  1要素のバイト数itemsize  配列の要素数size  arangeで配列を生成する  配列要素データ型の変換astype  03-02 Matplotlibの使い方  簡単なグラフを作ってみよう  グラフの要素に名前を設定する  グラフのグリッドを非表示にする  グラフの目盛を設定する  グラフのサイズ  散布図  複数グラフのグリッド表示  三次元散布図  色とマーカーを変える 第2部 今すぐ試してみたい16のレシピ! 第4章 機械学習・深層学習のレシピ(初級・中級)  04-01 OpenCVでの画像処理の基本  OpenCVとは  OpenCVのバージョン  OpenCVのインストール  バージョンの確認  サンプル画像のダウンロード  調理手順  画像の取込み  画像の保存  トリミング  リサイズ  画像の回転  色調変換  2値化  ぼかし  ノイズの除去  膨張・収縮  輪郭抽出  画像データの水増し  まとめ  04-02 Raspberry PiでOpenCVを利用した顔認識  Raspberry PiでOpenCVを使えるようにする  OpenCVのコンパイルとインストール  Raspbianの用意  Expand Filesystem  システムを更新する  swapfileサイズを大きくする  必要なパッケージのインストール  OpenCVのソースコードを用意する  コンパイルの準備  いざコンパイル  インストール  OpenCVのsoファイルを参照できるようにする  最後にswapfileサイズを戻す  インストール後の確認  調理手順  Raspberry Piカメラモジュールの用意  PiCameraパッケージのインストール  PiCameraを使えるようにRaspberry Piを設定する  カメラの動作確認  OpenCVのサンプルコードを実行しよう  分類器のダウンロード  実行と結果  検出方法  まとめ  04-03 アヤメ分類チャレンジレシピ  scikit-learnとは  scikit-learnとはPython向けの機械学習フレームワーク  scikit-learnの特徴  scikit-learnの datasetsの種類  scikit-learnのインストール  scikit-learnのバージョンの確認  課題を理解する  データに慣れる  表形式でデータを見る  データ全件を見る  1つの特徴量を見てみる  1列目、2列目のデータを使う場合  3列目、4列目のデータを使う場合  調理手順  必要なパッケージのインポート  分類と回帰  サポートベクターマシン(SVM : Support Vector Machine)  回帰係数と誤差  超平面(hyper-plane)とは?  交差検証  最後に一番シンプルな学習と検証  分類(predict)してもらう  まとめ  04-04 scikit-learnで機械学習手書き数字認識レシピ  手書き数字の画像データの特徴量を調べる  データセットモジュールのインポート  データを表示する  データを画像として描画する  複数データを描画してみよう  手書き数字データセットを三次元の空間で見る  調理手順  分類器をインポートする  データを再構成  分類器(SVC)の作成  検証とグラフ  一回整理しよう  まとめ  04-05 Chainer+MNIST手書き数字分類レシピ  Colaboratoryで学習、Raspberry Piで  手書き認識ウェブアプリケーションを作成  Chainerとは  MNISTとは  Chainer のインストール  Chainerのバージョンの確認  Chainer の基本部品のインポート  MNISTのデータをロードする  数字の画像を見る  学習用データセットと検証用データセットの数  調理手順  必要なパッケージをインポートする  ニューラルネットワークの定義  iteratorsとは  Optimizerの設定  検証の処理ブロック  学習と検証  学習済モデルの保存  学習済モデルのダウンロード  学習済のモデルを使う  Raspberry Pi側の作業  手書き数字の認識  画像データの送信  画像データの受け取り  まとめ  04-06 Chainerで作る犬と猫認識ウェブアプリ  データの準備  ChainerとCuPyの用意  データセットのダウンロード  ダウンロードしたファイルを確認する  データセットを解凍する  調理手順  学習データを確認する(任意画像)  検証データを確認する(任意画像)  学習データと検証データを分ける  関数get_image_teacher_label_list()の定義  学習データと検証データをリストにする  画像データ形式の整備  データ形状変換の結果確認  画像の前処理関数 adapt_data_to_convolution2d_format()  データセットの作成  学習データと検証データを分ける  CNNを設定する  反復子  Optimizerの設定  updaterの設定  trainerの設定  extensionsの設定  学習の実行  学習結果の確認  検証する(学習済モデルを使う)  モデルを書き出す  関数の定義 convert_test_data()  検証用の写真を選ぶ  画像サイズの設定  Google Driveにドキュメントとして保存する  ファイルの作成  保存(Google Driveへのアップロード)  手書き犬と猫の判別  写真をアップロードして認識させる  写真を判定する処理  まとめ  04-07 PyTorchでMNIST手書き数字学習レシピ  PyTorchとは  PyTorchのインストール  調理手順  必要なパッケージのインストール  データセットのダウンロード  データの中身を見てみる  データを可視化してみる  学習データと検証データを用意する  ニューラルネットワークの定義  モデル  コスト関数と最適化手法を定義する  学習  検証  個別データで検証  まとめ  04-08 PyTorchでCIFAR-10の画像学習レシピ  CIFAR-10とは  PyTorchのインストール  必要なパッケージのインポート  transformを定義する  学習データと検証データの用意  クラスの中身を設定する  調理手順  必要なパッケージのインポート  画像を表示する関数  CIFAR-10の中身を見る  学習のニューラルネットワークの定義  optimizerの設定  学習  個別データで検証  テスト  検証  クラス毎の検証結果  まとめ 第5章 機械学習・深層学習のレシピ(中級・上級)  05-01 TensorFlow+Keras+MNIST  手書き数字認識ウェブアプリ  Kerasとは  Kerasのバックエンドとは?  なぜKerasを使うのか  TensorFlowとは  Kerasを用いた処理フロー  調理手順  TensorFlowのインストール  TensorFlowのバージョンの確認  Kerasのインストール  設定  MNISTデータセットのローディング  学習モデルに合わせたデータ配列の形状変換  学習モデルに合わせてデータ調整  教師ラベルデータの変換  シーケンシャルモデル指定  学習モデルの構築  ニューラルネットワークの構築  モデルのコンパイル  学習  学習プロセスのグラフ  検証  予測  学習済モデルの保存  保存後ファイルの確認  学習済モデルのダウンロード  Raspberry Piで手書き数字の認識、文字認識  まとめ  05-02 TensorFlow+FashionMNISTでFashion認識  Fashion MNISTとは  TensorFlowのバージョン  Fashion MNISTデータの取得  データセットを見る  検証データの確認  データセットの一部を描画する  調理手順  設定  学習モデルに合わせてデータ調整  学習モデルの構築  モデルのコンパイル  学習  学習プロセスのグラフ  検証  予測  学習済モデルの保存  まとめ  05-03 TensorFlowで花認識ウェブアプリ  retrain(転移学習)とは  花のデータセットをダウンロードする  花のデータセットを解凍する  学習(retrain)プログラムを入手する  フォルダの内容を確認する  調理手順  転移学習開始  学習の結果を確認する  予測用のプログラムをダウンロードする  テストを実施する  アップロードした花の写真でテストする  学習済のファイルをダウンロードする  Raspberry Piで手書き入力の部分を用意する  まとめ  05-04 TensorFlowでペットボトルと空き缶分別  データの収集をする  ペットボトルの画像を用意する  空き缶の画像を用意する  ペットボトル写真の処理  ペットボトル画像を確認するために表示する  意図しない写真ファイルを削除する(クレンジング処理)  ペットボトル画像の水増し  水増ししたペットボトルの画像を確認する  調理手順  学習プログラムをダウンロードする  用意したデータをtarget_folderにコピーする  ペットボトルのデータをコピーする  空き缶のデータをコピーする  転移学習開始  予測するプログラムをダウンロードする  学習済モデルを使う  学習済のモデルファイルをダウンロードする  まとめ  05-05 YOLOで物体検出  物体検出とは  YOLOとは  調理手順  daskのインストール  CPythonのインストール  darknetのclone  作業の場所を移動する  YOLOをコンパイルする  YOLO3のモデルをダウンロードする  物体検出を試してみよう  もう1枚テストする  まとめ  05-06 ハードウェアの拡張による人物検出  Movidius NCSとは  調理手順  システムを最新の状態にする  swapfileサイズを大きくする  ncsdkのインストール  TensorFlowのインストール  OpenCVのインストール  サンプルコードの実行  まとめ  05-07 Google AIY Vision Kitで笑顔認識  Google AIY Vision Kitの組み立て  まずGoogle AIY Vision Kitの中身を見てみよう  Google AIY Vision Kitを組み立てる  調理手順  Google AIT Vision Kitの最初の起動  まとめ  05-08 人工知能Cloud APIを利用してキャプション作成  クラウド上のAPIを利用して分類、検出  Azureアカウントの取得  Computer Visionプロジェクトの作成  調理手順  必要なパッケージをインポートする  初期設定  画像のキャプションを取得する関数  写真の指定  結果の表示  画像を表示する  まとめ 第3部 Pythonとオブジェクト指向・Pythonでできるウェブサーバ 第6章 Pythonとオブジェクト指向  06-01 オブジェクト指向プログラミングとは  なぜオブジェクト指向プログラミングなのか  オブジェクトとは  クラスとは  06-02 クラスを実際に作ってみよう  ロボットのクラスを作ってみよう  クラスの定義  コンストラクタ(constructor)  メソッド(method)  属性(property)  インスタンス(instance)  メソッドの呼び出し  クラスの継承  親クラス(parent class)  拡張(メソッドの追加)  メソッドのオーバーライド(method override)  まとめ 第7章 Pythonでできるウェブサーバ  07-01 Flaskアプリケーション開発の準備  Flaskウェブアプリケーションフレームワーク  Flaskのインストール  07-02 アプリケーションの設置  フォルダの作成とapp.pyの設置  ウェブアプリケーションを立ち上げる  まとめ

詳解 OpenCV 3 ―コンピュータビジョンライブラリを使った画像処理・認識

Gary Bradski
オライリージャパン
おすすめ度
98
紹介文
OpenCVの開発者によるベストセラー書の改訂版。最新のC++インタフェースに対応。 OpenCVライブラリ開発者によるベストセラー書の改訂版! OpenCVの開発者によるベストセラー書の改訂版。最新のC++インタフェースに対応。OpenCVは現在、ロボットの視覚システムだけでなくスマホやパソコンの顔認証、画像アプリやセキュリティ監視の人物検出、製造、医療、自動運転車、ゲームやARアプリ、さらには機械学習に代表される人工知能の研究など、さまざまな分野で利用されています。本書では、カメラ入力やファイル出力といった簡単な使い方から、画像の変換やセグメンテーション、テンプレートマッチング、パターン認識、特徴量、物体や動きのトラッキング、ステレオビジョンからの3Dの再構成、機械学習まで、基礎から丁寧かつ詳細に解説します。関数のリファレンスとしても利用可能です。

Pythonで始めるOpenCV 4プログラミング

北山 直洋
カットシステム
おすすめ度
89

詳解ディープラーニング 第2版 ~TensorFlow/Keras・PyTorchによる時系列データ処理~ (Compass Booksシリーズ)

巣籠 悠輔
マイナビ出版
おすすめ度
82
紹介文
ディープラーニング実装入門書の決定版! ニューラルネットワークの理論とディープラーニングの実装について丁寧に解説。実装には、Python(3.x)とディープラーニング向けライブラリKeras(2.x)、TensorFlow(2.x)、PyTorch(1.x)を用います。 本書では、自然言語処理をはじめとした時系列データ処理のためのディープラーニング・アルゴリズムに焦点を当てているのも大きな特徴の1つです。本書の[第1版](2017年)以降に次々と登場している新しい手法やモデルを丁寧に説明、記事も大幅にボリュームアップしました。 [本書の構成] 1章 数学の準備:ニューラルネットワークのアルゴリズムを理解するための数学の知識、偏微分と線形代数の基本を学びます。アルゴリズムが複雑になってもこの2つを押さえておけばきちんと理解できます。 2章 Pythonの準備:ディープラーニングのアルゴリズムを実装するため、Python環境の構築およびPythonの基本から代表的なライブラリの使い方までを解説します。 3章 ニューラルネットワーク:ニューラルネットワークとは何か、どういった手法かを解説します。単純パーセプトロン、ロジスティック回帰、多クラスロジスティック回帰、多層パーセプトロンを扱います。 4章 ディープニューラルネットワーク:ディープラーニングはニューラルネットワークのモデルの発展形です。ニューラルネットワークから「ディープ」ニューラルネットワークになるうえで発生する課題とそれを解決するテクニックについて解説します。 5章 リカレントニューラルネットワーク:ニューラルネットワークに「時間」という概念を取り込むとどのようなモデルになるのか。通常のディープラーニングのモデルではうまく扱うことができない時系列データの扱いに特化したモデルであるリカレントニューラルネットワーク(RNN)とその手法LSTM、GRUについて取り上げます。 6章 リカレントニューラルネットワークの応用:時系列データの扱いに関しては、自然言語処理で新しいモデルが考えられてきました。本章では、Encoder-Decoder、Attention、Transformerについて学んでいきます。 付録 ライブラリ内部の処理を理解するためのグラフの知識と、Pythonのデコレータ @tf.function の実装例、Keras、TensorFlow、PyTorchによるモデルの保存・読み込みについて解説します。 はじめに 1章 数学の準備 1.1 偏微分 1.2 線形代数 1.3 まとめ 1章の参考文献 2章 Python の準備 2.1 Python 2とPython 3 2.2 Anaconda ディストリビューション 2.3 Python の基本 2.4 NumPy 2.5 ディープラーニング向けライブラリ 2.6 まとめ 3章 ニューラルネットワーク 3.1 ニューラルネットワークとは 3.2 回路としてのニューラルネットワーク 3.3 単純パーセプトロン 3.4 ロジスティック回帰 3.5 多クラスロジスティック回帰 3.6 多層パーセプトロン 3.7 モデルの評価 3.8 まとめ 4章 ディープニューラルネットワーク 4.1 ディープラーニング向けライブラリの導入(Keras/TensorFlow/PyTorch) 4.2 ディープラーニングへの準備 4.3 活性化関数の工夫 4.4 ドロップアウトの導入 4.5 学習の効率化に向けて 4.6 学習率の設定 4.7 重みの初期値の設定 4.8 バッチ正規化 4.9 まとめ 4章の参考文献 5章 リカレントニューラルネットワーク 5.1 基本のアプローチ 5.2 LSTM 5.3 GRU 5.4 双方向リカレントニューラルネットワーク 5.5 埋め込み層における計算 5.6 まとめ 5章の参考文献 6章 リカレントニューラルネットワークの応用 6.1 Encoder-Decoder 6.2 Attention 6.3 Transformer 6.4 まとめ 6章の参考文献 付録 A.1 計算グラフ A.2 @tf.function A.3 モデルの保存と読み込み(Keras、TensorFlow、PyTorch) 索引

OpenCV4基本プログラミング―さらに進化した画像処理ライブラリの定番

洋幸, 北山
カットシステム
おすすめ度
77

OpenCVによる画像処理入門 改訂第2版 (KS情報科学専門書)

小枝 正直
講談社
おすすめ度
77
紹介文
3言語対応で、画像処理の基本が身につくテキストの改訂版。OpenCV3.2に対応。「距離画像処理」を新たに解説。初学者に最適 3言語(C言語、C++、Python)対応で、「画像処理の基本」が身につくと、大好評のテキストの改訂版! ・OpenCV3.2に対応し、さらにパワーアップ! ・基本アルゴリズムとサンプルプログラムが豊富で、いますぐできる! ・理論と実践のバランスがよく、初学者に最適! ・「距離画像処理」を新たに解説! 【「まえがき」より】 本書は、基本的かつ汎用性の高い画像処理アルゴリズムを選定して解説した。また初学者が独学でも学べるように、開発環境の構築方法やカメラのセットアップ、トラブルシューティングなどの詳細な手順を載せている。本書ではまず、画像処理アルゴリズムについて解説し、内部で行われる処理が十分に理解されることに重点を置いている。その後、各種プログラミング言語(擬似言語、C言語)での実装例を並べて表記し、各アルゴリズムがどのようにコーディングされるのかを解説する。さらに、OpenCV の関数を用いたプログラム(Python、C++言語)も併記し、OpenCV の利用方法を説明する。 今回、第2版に改訂するにあたり、画像処理技術に関連する最新動向への対応を目指した。11章に距離画像処理を新たに追加して、近年、重要度が増している距離カメラの構造や計測原理、距離画像の処理方法についてまとめた。また、OpenCV も第1版出版後の 2015 年 6 月に Ver.3.0 が公開され、現在も多数の改良がなされている。現時点で最新の Ver.3.2 は十分に安定して利用できる状況と判断し、第2版ではインストールやプログラムを Ver.3.2 対応の表記に変更した。 【おもな内容】 Chapter1 画像処理とOpenCV Chapter2 OpenCVの導入 Chapter3 画像入力 Chapter4 デジタル画像と配列 Chapter5 画像形式と色空間 Chapter6 濃淡変換 Chapter7 フィルタ処理 Chapter8 2値画像処理 Chapter9 複数画像の利用 Chapter10 幾何学変換 Chapter11 距離画像処理 姉妹書『OpenCVによるコンピュータビジョン・機械学習入門』は2017年8月刊行予定。 Chapter1 画像処理とOpenCV Chapter2 OpenCVの導入 Chapter3 画像入力 Chapter4 デジタル画像と配列 Chapter5 画像形式と色空間 Chapter6 濃淡変換 Chapter7 フィルタ処理 Chapter8 2値画像処理 Chapter9 複数画像の利用 Chapter10 幾何学変換 Chapter11 距離画像処理 付録A OpenCVをソースからビルドする 付録B カメラ画像取り込み時の解像度設定 付録C Kinectのセットアップ 付録D Intel RealSenseのセットアップ 付録E OpenCVモジュール概説 付録F 擬似言語

深層学習 改訂第2版 (機械学習プロフェッショナルシリーズ)

岡谷 貴之
講談社
おすすめ度
77
紹介文
ベストセラーの改訂版。最高最強のバイブルが大幅にパワーアップ! 深層学習のさまざまな課題とその対策についても詳しく解説。 ◆ベストセラーの改訂版。最高最強のバイブルが大幅にパワーアップ!!◆ ・トランスフォーマー、グラフニューラルネットワーク、生成モデルなどをはじめ、各手法を大幅に加筆。 ・深層学習のさまざまな課題と、その対策についても詳しく解説。 [本書まえがきより抜粋] ないもの(=理論)ねだりをしても仕方がありません.それでも皆が研究を進めるのは,そうすることに意義があるからです.なぜうまく働くのか,なぜそうすべきか,数学的な証明はなくても,正しい説明は必ずあるはずです.それを手にできれば,目の前の課題を解決するのに,また次に進むべき道を知るうえで役に立つでしょう. そこで本書では,それぞれの方法について,今の時点で最も納得できる説明をきちんと与えることにこだわりました.名前の通った方法であっても,理屈が成り立たない,あるいは役に立たない方法や考え方については,はっきりそう書きました.著者の主観といわれても仕方がない場合もあるかもしれませんが,そのほうが有益であると信じています. また,現在の深層学習の広がりを把握できるように,定番となった問題・方法に加えて,重要だと思われる問題については,必ずしもそれほど有名でない方法も含めてなるべく網羅するようにしました.その取捨選択には,深層学習が実践的技術であることを踏まえ,実用性を最も重視しました.そこには,この間に著者が企業の実務家たちと行ってきた共同研究での経験が反映されています. [主な内容] 第1章 はじめに 第2章 ネットワークの基本構造 第3章 確率的勾配降下法 第4章 誤差逆伝播法 第5章 畳み込みニューラルネットワーク 第6章 系列データのためのネットワーク 第7章 集合・グラフのためのネットワークと注意機構 第8章 推論の信頼性 第9章 説明と可視化 第10章 いろいろな学習方法 第11章 データが少ない場合の学習 第12章 生成モデル 1章 はじめに 1.1 研究の歴史 1.2 本書の構成 2章 ネットワークの基本構造 2.1 ユニットと活性化関数 2.2 順伝播型ネットワーク 2.3 学習の概要 2.4 問題の定式化:出力層と損失関数の設計 3章 確率的勾配降下法 3.1 確率的勾配降下法 3.2 汎化性能と過剰適合 3.3 正則化 3.4 学習率の選定と制御 3.5 SGDの改良 3.6 層出力の正規化 3.7 重みの初期化 3.8 その他 4章 誤差逆伝播法 4.1 勾配計算の煩わしさ 4.2 誤差逆伝播法 4.3 自動微分 4.4 勾配消失問題 4.5 残差接続 5章 畳み込みニューラルネットワーク 5.1 単純型細胞と複雑型細胞 5.2 畳み込み 5.3 畳み込み層 5.4 プーリング層 5.5 畳み込み層の出力の正規化 5.6 推論のためのCNNの構造 5.7 入出力間の幾何学的関係 5.8 畳み込み層の一般化 5.9 アップサンプリングと畳み込み 5.10 物体カテゴリ認識への適用例 6章 系列データのためのネットワーク 6.1 系列データ 6.2 リカレントニューラルネットワーク 6.3 ゲート機構 6.4 自己回帰モデル 6.5 1次元畳み込みネットワーク 6.6 逆伝播の計算 7章 集合・グラフのためのネットワークと注意機構 7.1 集合データを扱うネットワーク 7.2 注意機構 7.3 トランスフォーマー 7.4 グラフニューラルネットワーク 8章 推論の信頼性 8.1 推論の不確かさ 8.2 不確かさの数理モデル 8.3 不確かさの予測 8.4 分布外入力の検出 8.5 敵対的事例 8.6 品質保証の試み 9章 説明と可視化 9.1 はじめに 9.2 入力による出力の微分 9.3 入力の遮蔽・挿入 9.4 中間層出力の表示 9.5 寄与度の分解 9.6 寄与度の逆伝播 9.7 可視化手法の評価 9.8 影響関数 9.9 学習内容の可視化 10章 いろいろな学習方法 10.1 距離計量学習 10.2 事例集合(マルチインスタンス)学習 10.3 クラスラベルの誤り 10.4 クラス間不均衡 10.5 継続・追加学習 10.6 知識蒸留 10.7 枝刈り 10.8 計算の量子化 10.9 ネットワーク構造探索 11章 データが少ない場合の学習 11.1 はじめに 11.2 データ拡張 11.3 転移学習 11.4 半教師あり学習 11.5 自己教師学習 11.6 マルチタスク学習 11.7 ドメイン適応・汎化 11.8 少数事例学習 11.9 能動学習 12章 生成モデル 12.1 データの生成モデル 12.2 自己符号化器 12.3 変分自己符号化器 12.4 敵対的生成ネットワーク 12.5 正規化フロー 12.6 ボルツマンマシン

物体・画像認識と時系列データ処理入門 [TensorFlow2/PyTorch対応第2版] NumPy/TensorFlow2(Keras)/PyTorchによる実装ディープラーニング

チーム・カルポ
秀和システム
おすすめ度
75
紹介文
Pythonのライブラリの1つであるTensorFlowは、ディープラーニングを支える数学的な各種理論を学ぶのに最適なライブラリです。しかし、TensorFlowは学習に必要な計算式を開発者が自ら組み立てねばならないという少し高めのハードルがあります。本書は、TensorFlow2のライブラリを取り上げ、ディープラーニングの基礎理論から2次元フィルター、転移学習、時系列データ、自然言語処理などを楽しく学べる入門書です。 機械学習を学ぶ人や開発に利用してい人が、PythonをとTensorFlowのライブラリを使ってディープラーニングの基礎理論から2次元フィルター、転移学習、時系列データ、自然言語処理などを楽しく学ぶ入門書です。 1章 ディープラーニングとは  1.1 深層学習(ディープラーニング)とは  1.1.1 機械学習の活用例  1.1.2 機械学習とディープラーニングの関係    ■機械学習の主な手法  1.2 ディープラーニングって具体的に何をするの?  1.2.1 ニューラルネットワークのニューロン    ■人工ニューロン    ■学習するということは重み・バイアスを適切な値に更新すること    ■ニューロンの発火をつかさどる「ステップ関数」    ■ニューロンの発火をつかさどる「シグモイド関数」    ■人工ニューロンをネットワーク状に連結する  1.2.2 ディープニューラルネットがディープラーニングを実現する    ■畳み込みニューラルネットワーク(CNN)    ■リカレントニューラルネットワーク(RNN)    ■ドロップアウト、正則化  1.2.3 ディープラーニングのためのライブラリ  1.2.4 ディープラーニングの仕組み  1.2.5 この本で使用するディープラーニング用データセット 2章 開発環境のセットアップとPythonの基礎  2.1 Anacondaの導入  2.1.1 Anacondaのダウンロードとインストール  2.2 仮想環境の構築とライブラリのインストール  2.2.1 専用の仮想環境を構築する  2.2.2 ライブラリのインストール  2.2.3 ライブラリのアップデート  2.3 Jupyter Notebookの使い方  2.3.1 Jupyter Notebookを仮想環境にインストールする  2.3.2 ノートブックを作成する    ■ノートブックを保存するためのフォルダーを作成する    ■ノートブックの作成  2.3.3 ソースコードを入力して実行する    ■Jupyter Notebookのコマンド  2.3.4 ノートブックを閉じて改めて開く    ■ノートブックを閉じる    ■ノートブックを開く  2.3.5 Jupyter Notebookのメニューを攻略する    ■[File]メニュー    ■[Edit]メニュー    ■[View]メニュー    ■[Insert]メニュー    ■[Cell]メニュー    ■[Kernel]メニュー  2.4 Google Colabを便利に使おう!  2.4.1 Googleドライブ上のColab専用のフォルダーにノートブックを作成する    ■ノートブックの作成  2.4.2 セルにコードを入力して実行する  2.4.3 Colabノートブックの機能    ■[ファイル]メニュー    ■[編集]メニュー    ■[表示]メニュー    ■[挿入]メニュー    ■[ランタイム]メニュー    ■[ツール]メニュー    ■GPUを有効にする  2.5 Pythonの演算処理  2.5.1 変数を使って演算する  2.5.2 Pythonが扱うデータの種類    ■ソースコードに説明文を書く    COLUMN リストの中に要素製造装置を入れる(内包表記)①  2.6 Pythonのリスト  2.6.1 リストを作る  2.7 if文とfor文  2.7.1 if文  2.7.2 条件式を作るための「比較演算子」  2.7.3 if...elseで処理を分ける  2.7.4 for文  2.8 関数  2.8.1 処理だけを行う関数  2.8.2 引数を受け取る関数  2.8.3 処理結果を返す関数  2.9 クラス  2.9.1 メソッド  2.9.2 オリジナルのクラスを作る    ■オブジェクトを作成する(クラスのインスタンス化)  2.9.3 オブジェクトの初期化を行う__init__()  2.9.4 インスタンスごとの情報を保持するインスタンス変数    COLUMN リストの中に要素製造装置を入れる(内包表記)② 3章 ディープラーニングの数学的要素  3.1 ニューラルネットワークのデータ表現:テンソル  3.1.1 NumPyのスカラー(0階テンソル)  3.1.2 NumPyのベクトル(1階テンソル)  3.1.3 NumPyの行列(2階テンソル)  3.1.4 3階テンソルとより高階数のテンソル  3.2 ニューラルネットワークを回す(ベクトルの演算)  3.2.1 ベクトルの算術演算  3.2.2 ベクトルのスカラー演算  3.2.3 ベクトル同士の四則演算    ■ベクトル同士の加算と減算  3.2.4 ベクトルのアダマール積を求める  3.2.5 ベクトルの内積を求める  3.3 ニューラルネットワークを回す(行列の演算)  3.3.1 行列の構造  3.3.2 多次元配列で行列を表現する  3.3.3 行列のスカラー演算  3.3.4 行列の定数倍  3.3.5 行列の成分にアクセスする  3.3.6 行列の成分同士の加算・減算をする  3.3.7 行列のアダマール積  3.3.8 行列の内積を求める    ■行列同士の内積を求めてみる  3.3.9 行と列を入れ替えて「転置行列」を作る  3.4 微分  3.4.1 極限(lim)  3.4.2 微分の基礎  3.4.3 微分をPythonで実装してみる    ■数値微分で関数を微分してみる    ■プログラムの実行結果  3.4.4 微分の公式  3.4.5 変数が2つ以上の場合の微分(偏微分)  3.4.6 合成関数の微分    ■合成関数のチェーンルールの拡張    ■積の微分法 4章 ニューラルネットワークの可動部(勾配ベースの最適化)  4.1 ロジスティック回帰を実装した単純パーセプトロンで二値分類を行う  4.1.1 活性化関数による「発火」の仕組み  4.1.2 シグモイド関数    ■シグモイド関数(ロジスティック関数)    ■シグモイド関数の実装  4.1.3 シグモイド関数を活性化関数にしてパラメーターを最適化する    ■最尤推定法と尤度関数    ■対数尤度関数を微分しやすいように、両端に対数をとる    ■対数尤度関数を変形してクロスエントロピー誤差関数にする    ■対数尤度関数の微分    COLUMN シグモイド関数の微分    ■パラメーターの更新式の導出  4.1.4 勾配降下法の考え方    ■学習率の設定    ■勾配降下法の更新式  4.1.5 単純パーセプトロンで論理ゲートを実現する    ■Pythonの標準仕様でAND、NAND、ORゲートを実装する  4.2 XORゲートを多層パーセプトロンで実現する  4.2.1 多層パーセプトロンによるXORゲートの実現    ■XORゲートの実現には、線形分離不可能な二値分類が必要    ■多層パーセプトロンの構造  4.2.2 TensorFlowスタイルによるXORゲートの実装    ■隠れ層(第1層)の作成    ■バイアス、重みの初期化方法    ■出力層(第2層)の作成(データフローグラフ)    ■順伝播処理を行うcall()メソッド    ■BinaryCrossentropyオブジェクトとSGDオブジェクトの生成    ■バックプロパゲーションを実施するtrain_step()関数の定義    ■学習を行う  4.2.3 KerasスタイルによるXORゲートの実装    ■モデルの作成    ■モデルの学習    ■学習結果の確認  4.2.4 PyTorchによるXORゲートの実装    ■モデルの定義    ■モデルの生成    ■損失関数とオプティマイザーの生成    ■勾配降下アルゴリズムによるパラメーターの更新処理    ■学習を行う    ■学習結果の確認 5章 ニューラルネットワーク(多層パーセプトロン)  5.1 フィードフォワードニューラルネットワーク(FFNN)  5.1.1 ニューラルネットワークにおける順方向への伝播    ■FFNNに必要な関数群を実装する    ■入力層→第1層    ■第1層→第2層    ■第2層→出力層    ■第3層  5.2 バックプロパゲーションを利用した重みの更新  5.2.1 誤差が逆方向に伝播される流れを見る  5.2.2 行列の掛け算で誤差逆伝播を一発で計算する    ■一種の正規化因子である行列式の分母を消してしまう  5.2.3 バックプロパゲーション(誤差逆伝播法)    ■出力層の重みを更新する(2乗和誤差の場合)    ■出力層の重みの更新(シグモイド関数を用いるときのクロスエントロピー誤差関数の場合)    ■出力層の重みの更新(ソフトマックス関数を用いるときのクロスエントロピー誤差関数の場合)    ■出力層から1つ手前の層の重みを更新する    ■重みの更新式を一般化する  5.3 ニューラルネットワークの作成  5.3.1 作成するニューラルネットワークの構造  5.3.2 初期化メソッド__init__()、weight_initializer()、sigmoid()、softmax()の作成    ■重みの初期値について考える  5.3.3 入力層の処理  5.3.4 隠れ層の処理  5.3.5 出力層の処理    ■ソフトマックス関数  5.3.6 ニューラルネットワークの順伝播部を完成させる  5.3.7 バックプロパゲーションによる重みの更新    ■出力層の重みの更新    ■隠れ層の重みの更新  5.3.8 テストデータを評価するevaluate()メソッドの定義  5.3.9 Python版ニューラルネットワークの完成  5.4 ファッションアイテムの画像認識  5.4.1 Fashion?MNISTデータセットのダウンロード  5.4.2 Fashion?MNISTデータの前処理    ■画像データの前処理    ■正解ラベルの前処理    COLUMN MNISTデータとFashion-MNISTデータ  5.4.3 ニューラルネットワークでファッションアイテムの学習を行う  5.4.4 ニューラルネットワークの学習精度を検証する  5.5 TensorFlowスタイルによるニューラルネットワークの構築  5.5.1 Fashion-MNISTデータセットの用意  5.5.2 2層ニューラルネットワークでファッションアイテムの画像を認識する    ■確率的勾配降下法    ■ReLU関数    ■隠れ層(第1層)    ■出力層(第2層)    ■モデルの定義を完成させる    ■損失関数とオプティマイザーの生成    ■パラメーターの更新処理    ■モデルを検証する    ■学習の早期終了判定を行うEarlyStoppingクラス    ■訓練データから検証用のデータを抽出する    ■学習の実行    ■損失と精度の推移をグラフにする  5.5.3 ドロップアウトでオーバーフィッティングを回避する    ■隠れ層の出力にドロップアウトを適用する    ■ドロップアウトを適用した結果を確認する  5.6 Kerasによるニューラルネットワークの構築  5.6.1 Kerasを用いたニューラルネットワークの構築    ■Fashion-MNISTデータセットの読み込みと加工    ■Kerasスタイルによるニューラルネットワークの実装    ■学習を実行し、テストデータで検証する    ■損失、正解率をグラフにする  5.7 PyTorchを使ってニューラルネットワークを構築する  5.7.1 データの読み込みと前処理、DataLoaderオブジェクトの生成まで    ■データの加工処理を担うTransformオブジェクトの生成    ■データセットの読み込み    ■DataLoaderオブジェクトの生成  5.7.2 2層ニューラルネットワークでファッションアイテムの画像を認識する    ■モデルの作成    ■損失関数とオプティマイザーの生成    ■パラメーターの更新を行うtrain_step()関数の定義    ■テストデータでモデルの評価を行うtest_step()関数の定義    ■早期終了判定を行うEarlyStoppingクラス    ■学習を行う 6章 画像認識のためのディープラーニング  6.1 ニューラルネットワークに「特徴検出器」を導入する(畳み込みニューラルネットワーク)  6.1.1 2次元フィルターで画像の特徴を検出する    ■2次元フィルター    ■2次元フィルターで手書き数字のエッジを抽出してみる  6.1.2 サイズ減した画像をゼロパディングで元のサイズに戻す  6.1.3 Kerasスタイルによる畳み込みニューラルネットワーク(CNN)の構築    ■入力層    ■畳み込み層    ■Flatten層    ■出力層    ■畳み込みニューラルネットワークのプログラミング    ■畳み込みニューラルネットワーク(CNN)で画像認識を行う  6.2 TensorFlowスタイルによるCNNの構築    ■ライブラリのインポートとデータセットの読み込み    ■畳み込みニューラルネットワーク(CNN)の作成    ■損失関数とオプティマイザーの生成からEarlyStoppingクラスの定義まで    ■学習の実行  6.3 PyTorchによるCNNの構築    ■データの準備からデータローダーの作成まで    ■モデルの定義    ■モデルの生成    ■損失関数とオプティマイザーの生成    ■train_step()関数の定義から早期終了判定を行うクラスの定義まで    ■学習を行う  6.4 プーリングで歪みやズレによる影響を回避する  6.4.1 プーリングの仕組み  6.4.2 プーリング層とドロップアウトを備えた畳み込みネットワークの構築  6.4.3 TensorFlowスタイルによるプログラミング    ■データの読み込みと前処理    ■モデルの定義    ■損失関数とオプティマイザーの生成からEarlyStoppingクラスの定義まで    ■学習を行う  6.5 Kerasスタイルでプーリングを実装したCNNを構築する  6.6 PyTorchによるプーリングを実装したCNNの構築    ■データの読み込み、前処理からデータローダーの作成まで    ■モデルを定義してモデルオブジェクトを生成する    ■損失関数とオプティマイザーの生成    ■train_step()関数の定義から早期終了判定を行うクラスの定義まで    ■学習を行う    COLUMN sparse_categorical_crossentropy 7章 一般物体認識のためのディープラーニング  7.1 カラー画像を10のカテゴリに分類したCIFAR-10データセット  7.1.1 一般物体認識のデータセット「CIFAR-10」を題材にする  7.1.2 KerasでダウンロードしたCIFAR-10のカラー画像を見る  7.1.3 一般物体認識のためのCNNの構造  7.1.4 TensorFlowスタイルでプログラミングしたCNNに飛行機、自動車、イヌ、ネコなどの10種類の画像を認識させてみる    ■畳み込みネットワークの構築    ■損失関数とオプティマイザーの生成    ■学習を実行する関数の定義    ■モデルの検証を行うvalid_step()関数の定義    ■学習の早期終了判定を行うクラスの定義    ■CIFAR-10の画像を学習させる    ■誤差と精度をグラフにする  7.1.5 KerasスタイルでプログラミングしたCNNで飛行機、自動車、イヌ、ネコ…を認識させる    ■CIFAR-10データセットのダウンロードと前処理    ■CNNを構築する関数の定義    ■KerasスタイルのCNNを用いてCIFAR-10を学習する  7.1.6 PyTorchでCIFAR-10の画像認識を行う    ■CIFAR-10をダウンロードして前処理を行う    ■モデルを定義する    ■損失関数とオプティマイザーの生成、学習と評価を行う関数の定義    ■学習を行う  7.2 カラー画像に移動、回転などの処理を加えてデータの水増しを行い、    認識精度を90%に引き上げる  7.2.1 データのスケールを小さくして処理時間をできるだけ短縮させる  7.2.2 訓練データに過剰に適合してしまうのを避ける    ■出力層の場合の正則化項を適用した重みの更新式  7.2.3 KerasスタイルによるCNNの作成    ■訓練用の画像データを水増しして認識精度を引き上げる    ■画像をランダムに回転させる    ■画像を平行に移動する    ■画像を垂直方向に移動する    ■画像をランダムに拡大    ■画像を左右反転    ■画像を上下反転    ■画像の色相をランダムに変化させる  7.2.4 画像を拡張処理して精度90%を達成する(Keras)    ■学習を行うtrain()関数の定義    ■学習を実行する    ■損失と精度、学習率の推移をグラフにする    ■学習結果を保存する    ■画像を入力して認識させてみる  7.2.5 画像を拡張処理して精度90%を達成する(TensorFlow)    ■データの読み込みと前処理    ■モデルの生成を行う    ■損失関数、オプティマイザー、学習/評価を行う関数の用意    ■学習を実行する関数と検証を行う関数の定義    ■データに拡張処理を行い学習する  7.2.6 画像を拡張処理して精度90%を達成する(PyTorch)    ■CIFAR-10をダウンロードして前処理を行う    ■モデルを定義する    ■損失関数とオプティマイザーの生成、学習と評価を行う関数の定義    ■学習を行う 8章 人間と機械のセマンティックギャップをなくす試み  8.1 CNNで「特徴認識」に近い二値分類、「Dogs vs. Cats」データセットを学習する  8.1.1 Dogs vs. Cats    ■データセットのダウンロード    ■データを前処理して一部の画像を出力してみる    ■画像を可視化してみる  8.1.2 ネコとイヌを認識させてみる    ■データのダウンロード    ■データジェネレーターを生成する関数の定義    ■モデルの生成から学習までを実行する関数の定義    ■学習を行う  8.2 「転移学習」でイヌとネコを高精度で分類する  8.2.1 自前のFC層に大規模なデータ学習済みのVGG16モデルを結合する  8.2.2 ファインチューニングを行って、さらに認識精度を引き上げる    ■データのダウンロードとデータジェネレーターの生成    ■ファインチューニングで認識精度を95%まで上げる    ■VGG16をファインチューニングして学習を実行する関数の定義    ■学習の実行    COLUMN Googleドライブにアップロードしたデータを使う  8.3 アリとハチの画像をVGG16で学習する    ■データセットをダウンロードして解凍する    ■データの前処理を行うクラス    ■オリジナルの画像と前処理後の画像を確認する    ■画像のファイルパスをリストにする    ■アリとハチの画像のデータセットを作成するクラス    ■データローダーの生成    ■VGG16の読み込み    ■学習を可能にする層の設定    ■損失関数とオプティマイザーの生成    ■学習を行う関数を定義する    ■学習と検証を行う 9章 ジェネレーティブディープラーニング  9.1 現在の学習に過去の情報を取り込む(リカレントニューラルネットワーク)  9.1.1 RNN(リカレントニューラルネットワーク)を理解する    ■BPTT(Backpropagation Through Time)  9.1.2 LSTM(Long Short Term Memory:長・短期記憶)    ■LSTMのファーストステップ    ■LSTMのセカンドステップ    ■LSTMのサードステップ  9.2 LSTMを配置したRNNで対話が正しいかどうかを識別する  9.2.1 「雑談対話コーパス」、Janomeライブラリのダウンロード    ■Janomeのインストール    ■「雑談対話コーパス」のダウンロード  9.2.2 対話データの抽出と加工    ■JSONファイルを読み込んで正解ラベルと発話をリストにする    ■発話テキストを形態素に分解する    ■単語を出現回数順の数値に置き換える    ■RNN(LSTM)を構築して発話が破綻しているかを学習する    ■RNNモデルを構築する    ■学習する  9.3 「雑談会話コーパス」の予測精度を上げる    ■アンサンブルって何?    ■アンサンブルに使用するモデル    ■アンサンブルをプログラミングする    ■多数決のアンサンブルを実行する 10章 OpenCVによる「物体検出」  10.1 OpenCV  10.1.1 OpenCVで何ができる?    ■OpenCVのインストール  10.2 OpenCVによる物体検出  10.2.1 人の顔の検出    ■画像の中から顔の部分を検出する  10.2.2 瞳の検出    ■画像の中から瞳の部分を検出する  10.3 検出した部分を切り取って保存する  10.3.1 画像から検出した顔の部分を切り出してファイルに保存する

OpenCVではじめよう ディープラーニングによる画像認識

吉村 康弘
技術評論社
おすすめ度
75
紹介文
OpenCVはコンピュータビジョン分野でもっとも利用されているオープンソースフレームワークです。近年の人工知能ブームに呼応する形で機械学習やディープラーニングAPIが強化され、物体の名称と位置を認識するオブジェクト検出(Object Detection)といったタスクも容易に扱えるようになりました。 とはいえ、画像認識タスクがすべてディープラーニングによる手法に置き換わるわけではありません。これまでに培った手法を選択した方が堅実な場面もあるため、本書では現時点で重要とされる画像処理手法を整理します。OpenCVの基礎的な解説からはじめ、dnnモジュールを用いたディープラーニングによる画像認識についても解説していきます。 1章 OpenCVとは 2章 OpenCVインストール 3章 coreモジュール 4章 imgprocモジュール 5章 imgcodecs、videoioモジュール 6章 ディープラーニング 7章 dnnモジュール基礎 8章 dnnモジュール応用 サンプルコードにはPythonを利用し、OpenCV 4.5.Xに対応しています。 目次 はじめに 本書の構成 本書で扱わないこと、参考文献 API の解説 サンプルコードとサポート 開発環境 第1章 OpenCVとは 1.1 OpenCVの概要 1.2 主要モジュール 1.3 OSSライセンス 1.3.1 OpenCVのOSSライセンス 1.3.2 opencv-pythonのOSSライセンス 1.4 サポート言語 1.4.1 公式サポート言語 1.4.2 非公式サポート言語 1.5 サポートプラットフォーム 1.6 高速化 1.6.1 スレッド並列化 1.6.2 SIMD命令対応 1.6.3 アクセラレータ対応 1.7 開発の歴史 1.8 ブランチ管理 1.8.1 2.4ブランチ 1.8.2 3.4ブランチ 1.8.3 4.xブランチ 1.8.4 5.xブランチ 1.8.5 masterブランチ 1.8.6 nextブランチ 1.9 各種サイト 1.9.1 公式サイト 1.9.2 公式リポジトリ 1.9.3 有志サイト 第2章 OpenCVインストール 2.1 OpenCVのインストール 2.2 pip 2.2.1 依存パッケージインストール 2.2.2 opencv-pythonインストール 2.2.3 opencv-contrib-pythonインストール 2.2.4 動作確認 2.2.5 opencv-pythonパッケージのバージョン番号 2.2.6 Windows環境固有の注意点 2.3 Miniconda 2.3.1 Minicondaインストール 2.3.2 依存パッケージインストール 2.3.3 opencvパッケージインストール 2.3.4 動作確認 2.4 Docker 2.4.1 Dockerインストール 2.4.2 Dockerイメージのビルド 2.4.3 Dockerコンテナの起動 2.4.4 動作確認 2.5 ソースコード 2.5.1 依存パッケージインストール 2.5.2 ビルド、インストール 2.5.3 動作確認 2.5.4 CMakeオプション 第3章 coreモジュール 3.1 基本処理 3.1.1 画像データの扱い 3.1.2 ブランク画像生成 3.1.3 画素値の参照、代入 3.1.4 width、height、チャンネル情報の取得 3.1.5 ROI操作 3.2 ピクセルごとの操作 3.2.1 add、subtract 3.2.2 bitwise_and、bitwise_or 3.2.3 addWeighted 3.2.4 absdiff 3.2.5 copyTo 3.2.6 flip 3.2.7 rotate 3.2.8 clip 3.3 統計情報の取得 3.3.1 min、max 3.3.2 minMaxLoc 3.3.3 mean 3.3.4 sum 3.3.5 countNonZero 3.4 画像の分割、結合 3.4.1 split、merge 3.4.2 hconcat、vconcat 3.5 ユーティリティ 3.5.1 getBuildInformation 3.5.2 TickMeter 3.5.3 FileStorage 3.5.4 useOptimized 3.5.5 setUseOptimized 第4章 imgprocモジュール 4.1 画像の前処理と後処理 4.1.1 OpenCVで利用できる手法 4.1.2 画像の出力方法 4.2 色の変換 4.2.1 色空間の変換(cvtColor 4.2.2 チャンネルで分割(split) 4.2.3 HSV色空間の活用 4.2.4 その他の色変換 4.3 適応的しきい値による2値化(adaptiveThreshold) 4.3.1 しきい値(threshold) 4.3.2 adaptiveThresholdによる2値化 4.3.3 輪郭の抽出(findContours) 4.4 画像の幾何変換 4.4.1 アフィン変換(warpAffine) 4.4.2 射影変換(ホモグラフィ変換) 第5章 imgcodecs、videoioモジュール 5.1 画像の読み込み 5.1.1 静止画を読み込む(imread) 5.1.2 動画の読み込み(VideoCapture) 5.1.3 ネットワークカメラからの読み込み 5.1.4 Webカメラからの読み込み 5.1.5 連番画像の読み込み 5.2 画像の書き込み 5.2.1 静止画の書き込み(imwrite) 5.2.2 動画の書き込み(VideoWriter) 第6章 ディープラーニング 6.1 ディープラーニングの概要 6.1.1 モデル、パラメータ、オプティマイザ 6.1.2 過小適合と過剰適合 6.1.3 ディープラーニングでの考え方 6.2 精度評価 6.2.1 回帰の精度評価 6.2.2 分類の精度評価 6.3 画像処理におけるディープラーニング 6.3.1 CNN 6.3.2 CNNの優位性 第7章 dnnモジュール基礎 7.1 dnnモジュールの概要 7.1.1 dnnモジュールとは? 7.1.2 サポートしているモデルフォーマット 7.1.3 推論エンジンと実行デバイス 7.1.4 High Level APIとLow Level API 7.2 顔検出 7.2.1 顔検出とは? 7.2.2 顔検出(OpenCV Face Detector) 7.2.3 NMS(Non-Maximum Suppression) 7.2.4 パフォーマンス比較 7.2.5 APIの仕様 7.3 オブジェクト検出 7.3.1 オブジェクト検出とは? 7.3.2 精度重視のオブジェクト検出(YOLOv4) 7.3.3 さらに精度の高いオブジェクト検出(Scaled-YOLOv4) 7.3.4 処理速度重視のオブジェクト検出(YOLOv4-tiny) 7.3.5 パフォーマンス比較 7.3.6 APIの仕様 7.4 クラス分類 7.4.1 クラス分類とは? 7.4.2 精度重視のクラス分類(EfficientNet) 7.4.3 信頼度上位5個のクラスを取得する 7.4.4 処理速度重視のクラス分類(MobileNet v3) 7.4.5 パフォーマンス比較 7.4.6 APIの仕様 7.5 セグメンテーション 7.5.1 セグメンテーションとは? 7.5.2 セグメンテーション(DeepLab v3) 7.5.3 APIの仕様 7.6 テキスト検出とテキスト認識 7.6.1 テキスト検出、テキスト認識とは? 7.6.2 テキスト検出(DB) 7.6.3 テキスト認識(CRNN-CTC、DenseNet-CTC) 7.6.4 パフォーマンス比較 7.6.5 APIの仕様 7.7 キーポイント検出 7.7.1 キーポイント検出とは? 7.7.2 キーポイント検出(Lightweight OpenPose) 7.7.3 キーポイントのもとになるヒートマップを取得する 7.7.4 APIの仕様 第8章 dnnモジュール応用 8.1 dnnモジュールの対応レイヤ 8.2 カスタムレイヤ対応 8.2.1 カスタムレイヤのクラスを実装する 8.2.2 カスタムレイヤを登録する 8.2.3 動作確認 8.3 学習済みモデルの診断ツール(model-diagnostics) 8.3.1 概要 8.3.2 環境構築 8.3.3 使い方 8.3.4 実行例 8.4 外部DNNフレームワーク連携 8.4.1 CUDA backend 8.4.2 Intel Inference Engine backend 8.4.3 Tengine backend 8.5 学習済みモデルの利用 8.5.1 OpenCV Zoo 8.5.2 Open Model Zoo 索引 著者プロフィール

scikit-learn、Keras、TensorFlowによる実践機械学習 第2版

Aurélien Géron
オライリージャパン
おすすめ度
74
紹介文
『scikit-learnとTensorFlowによる実践機械学習』の改訂。教師なし学習、言語、強化学習などを追加。 『scikit-learnとTensorFlowによる実践機械学習』待望の改訂版! 初版でカバーできなかった教師なし学習、ディープラーニングに関する画像、言語、強化学習などについて詳述。またTensorFlow上で動くニューラルネットワークライブラリのKerasの解説が加わり、各章でKerasを使った解説がなされています。TensorFlowのコンポーネントに関する記述が追加されています。Githubにjupyter notebookで試せるコードを掲載しており、試しながら学べます。

Pythonで始めるOpenCV3プログラミング

直洋, 北山
カットシステム
おすすめ度
74

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

斎藤 康毅
オライリージャパン
おすすめ度
74
紹介文
ディープラーニングの本格的な入門書。外部のライブラリに頼らずPython 3によってゼロからディープラーニングを作成できる。 実際にシステムを作りながらディープラーニングを学ぶ! ディープラーニングの本格的な入門書。外部のライブラリに頼らずに、Python 3によってゼロからディープラーニングを作ることで、ディープラーニングの原理を楽しく学びます。ディープラーニングやニューラルネットワークの基礎だけでなく、誤差逆伝播法や畳み込みニューラルネットワークなども実装レベルで理解できます。ハイパーパラメータの決め方や重みの初期値といった実践的なテクニック、Batch NormalizationやDropout、Adamといった最近のトレンド、自動運転や画像生成、強化学習などの応用例、さらには、なぜディープラーニングは優れているのか? なぜ層を深くすると認識精度がよくなるのか? といった“Why”に関する問題も取り上げます。

Python 1年生 体験してわかる!会話でまなべる!プログラミングのしくみ

森 巧尚
翔泳社
おすすめ度
74
紹介文
Python初心者でも安心して学べる超入門書の登場! 【本書の概要】 Web開発やデータ分析などの分野で近年、ユーザー数が増えてきているPython。 最近では、Pythonに触れる方も多くなってきています。 本書はそうしたPython初心者の方に向けて、 簡単なサンプルを作りながら、対話形式でプログラミングのしくみを学ぶ書籍です。 【対象読者】 Pythonのついて、何も知らない超初心者 【1年生シリーズ・3つのポイント】 ・対話形式で解説し、イラストを交えながら、基礎知識を解説します。 ・初めての方でも安心して学習できるよう基本文法もしっかり解説します。 ・平易でサンプルを用意していますので、安心してプログラムを体験できます。 【本書のポイント】 ヤギ博士とフタバちゃんと一緒に 基本的なプログラムから、面白い人工知能アプリの作成まで 体験して、プログラミングのしくみを学ぶことができます。 【著者】 森 巧尚(もり よしなお) iPhoneアプリやWebコンテンツの制作、執筆活動、関西学院大学非常勤講師など、 プログラミングにまつわる幅広い活動を行っている。 近著に『やさしくはじめるiPhoneアプリ作りの教科書』(マイナビ出版)、 『楽しく学ぶ アルゴリズムとプログラミングの図鑑』(マイナビ出版) 、 『なるほど!プログラミング』(SBクリエイティブ)などがある。 第1章 Python で何ができるの? 第2章 Python を触ってみよう 第3章 プログラムの基本を知ろう 第4章 アプリを作ってみよう 第5章 人工知能(チノ)くんと遊んでみよう

画像認識 (機械学習プロフェッショナルシリーズ)

原田 達也
講談社
おすすめ度
73
紹介文
デジタルカメラの顔認識などを可能にする画像認識。その精度は機械学習の利用で格段に向上した。基礎から機械学習による応用まで解説 デジタルカメラの顔認識機能など、身近で利用されている画像認識の技術。機械学習の応用により、その精度は格段に向上した。最前線で活躍する研究者が、基礎から深層学習を取り入れた応用的手法までをくわしく解説する。画像認識の現状と今後の展望を知るのに最適な一冊! ■おもな内容 第1章 画像認識の概要 第2章 局所特徴 第3章 統計的特徴抽出 第4章 コーディングとプーリング 第5章 分類 第6章 畳み込みニューラルネットワーク 第7章 物体検出 第8章 インスタンス認識と画像検索 第9章 さらなる話題(セマンティックセグメンテーション/画像からのキャプション生成/画像生成と敵対的生成ネットワーク) ■機械学習プロフェッショナルシリーズ 本シリーズでは、発展著しい機械学習技術の数学的な基礎理論、実用的なアルゴリズム、それらの活用法を、全29巻にわたって刊行する。 ビッグデータ時代を牽引している若手・中堅の現役研究者が、入門的な内容から最先端の研究成果までをわかりやすく解説。 これからデータサイエンス分野で研究を始めようとしている大学生・大学院生、および、機械学習技術を基礎科学や産業に応用しようとしている研究者・技術者に向けた注目のシリーズである。 第7期として、以下の3点を刊行! 統計的因果探索 清水 昌平・著 画像認識 原田 達也・著 深層学習による自然言語処理 坪井 祐太/海野 裕也/鈴木 潤・著 ■シリーズ編者 杉山 将 理化学研究所 革新知能統合研究センター センター長/東京大学大学院新領域創成科学研究科 教授 第1章 画像認識の概要 画像認識とは/画像認識の分類/クラス認識の手順/深い構造と浅い構造/物体検出/インスタンス認識/画像認識の認識性能を向上させるための原則/数学表記について 第2章 局所特徴 局所特徴とは/検出器/空間フィルタリング/基本的な検出器/ 回転やアフィン変換に頑健な検出器/記述子/検出器と記述子の組み合わせ 第3章 統計的特徴抽出 統計的特徴抽出とは/主成分分析/白色化/フィッシャー線形判別分析/正準相関分析/偏最小2乗法 第4章 コーディングとプーリング コーディングとプーリングの概要/確率分布を利用したコーディング/局所特徴のコードワードによる再構築/多様体学習/特徴写像の線形内積によるカーネル関数近似/空間情報の活用 第5章 分類 分類とは/ベイズ決定則/識別関数/一般的な教師付き学習の枠組み/最適化/線形識別関数/確率的識別関数/局所学習/集団学習/分類結果の評価 第6章 畳み込みニューラルネットワーク 画像認識における深層学習/フィードフォワードニューラルネットワーク/畳み込みニューラルネットワーク/実装上の工夫/パラメータの最適化/畳み込みニューラルネットワークの例 第7章 物体検出 物体検出とは/物体領域候補の提案/線形分類器を用いた物体検出/集団学習を用いた物体検出/非最大値の抑制/畳み込みニューラルネットワークを利用した物体検出/物体検出の評価 第8章 インスタンス認識と画像検索 インスタンス認識/画像検索/画像検索の評価 第9章 さらなる話題 セマンティックセグメンテーション/画像からのキャプション生成/画像生成と敵対的生成ネットワーク

独学プログラマー Python言語の基本から仕事のやり方まで

コーリー・アルソフ
日経BP
おすすめ度
73
紹介文
本書は「Pythonだけ」を学ぶ本ではありません。Pythonを使ってプログラミングを紹介していますが、伝えたい内容はPythonに限らない「プログラミング全般」の知識です。 本書の著者、コーリー・アルソフ(Cory Althoff)は、「独学プログラマー」です。本書は、彼が独学で、ゼロからプログラミングを学んだ体験に基づいて書かれました。 プログラミングを独学で身に付けるために、著者がPythonを通して学んだエッセンスが書かれています。彼の独学プログラマーとしての学び方は、Amazon.comでの本書の評価を見るとわかるように、多くの人に支持されています。 ――訳者あとがきより 第1部(Part1) 第1章 イントロダクション 第2章 さあ、はじめよう! 第3章 プログラミング入門 第4章 関数 第5章 コンテナ 第6章 文字列操作 第7章 ループ 第8章 モジュール 第9章 ファイル 第10章 知識を1つにまとめる 第11章 ハマったときの助け 第2部(Part2) 第12章 プログラミングパラダイム 第13章 オブジェクト指向プログラミングの4大要素 第14章 もっとオブジェクト指向プログラミング 第15章 知識を1つにまとめる 第3部(Part3) 第16章 Bash 第17章 正規表現 第18章 パッケージ管理 第19章 バージョン管理 第20章 知識を1つにまとめる 第4部(Part4) 第21章 データ構造 第22章 アルゴリズム 第5部(Part5)  第23章 プログラミングのベストプラクティス 第24章 プログラマーとしての最初の仕事 第25章 チームで働く 第26章 さらに学ぼう 第27章 次のステップ 第6部(Part6) 補章 より良いコードにするために 補章 継続して学ぶために 謝辞 訳者あとがき 索引 第1部(Part1) 第1章 イントロダクション 第2章 さあ、はじめよう! 第3章 プログラミング入門 第4章 関数 第5章 コンテナ 第6章 文字列操作 第7章 ループ 第8章 モジュール 第9章 ファイル 第10章 知識を1つにまとめる 第11章 ハマったときの助け 第2部(Part2) 第12章 プログラミングパラダイム 第13章 オブジェクト指向プログラミングの4大要素 第14章 もっとオブジェクト指向プログラミング 第15章 知識を1つにまとめる 第3部(Part3) 第16章 Bash 第17章 正規表現 第18章 パッケージ管理 第19章 バージョン管理 第20章 知識を1つにまとめる 第4部(Part4) 第21章 データ構造 第22章 アルゴリズム 第5部(Part5)  第23章 プログラミングのベストプラクティス 第24章 プログラマーとしての最初の仕事 第25章 チームで働く 第26章 さらに学ぼう 第27章 次のステップ 第6部(Part6) 補章 より良いコードにするために 補章 継続して学ぶために 謝辞 訳者あとがき 索引

Python実践データ分析100本ノック

下山 輝昌
秀和システム
おすすめ度
73
紹介文
データ分析の現場にあって入門書にない「汚いデータ」(ダーティデータ)に対応する、プロのノウハウを解説します。 これがリアルなデータ分析だ! 君は「汚いデータ」を処理できるか? データ分析の現場にあって入門書にないもの――それは、「汚いデータ」(ダーティデータ)です。本書は、データ分析の現場では①どんなデータに出会い、②どのような問題が生じ、③どう対応すればよいのかというノウハウを解説。 事前の加工(視覚化)から機械学習、最適化問題まで、100本ノックをこなして、ビジネス現場で即戦力になれる「応用力」を身につけよう! 練習するライブラリ ・Pandas ・Numpy ・Matplotlib ・scikit-learn ・Networkxs ・pulp ・ortoolpy ・opencv ・dlib ・MeCab 第1部 基礎編:データ加工 第1章 ウェブからの注文数を分析する10本ノック 第2章 小売店のデータでデータ加工を行う10本ノック 第2部 実践編①:機械学習 第3章 顧客の全体像を把握する10本ノック 第4章 顧客の行動を予測する10本ノック 第5章 顧客の退会を予測する10本ノック 第3部 実践編②:最適化問題 第6章 物流の最適ルートをコンサルティングする10本ノック 第7章 ロジスティクスネットワークの最適設計を行う10本ノック 第8章 数値シミュレーションで消費者行動を予測する10本ノック 第4部 発展編:画像処理/言語処理 第9章 潜在顧客を把握するための画像認識10本ノック 第10章 アンケート分析を行うための自然言語処理10本ノック

独習Python

山田 祥寛
翔泳社
おすすめ度
72
紹介文
プログラミング初学者に向けた独習シリーズに『独習Python』が新登場。山田祥寛氏によるPython入門書の決定版。 手を動かしておぼえるPythonプログラミング ――独学に最適な“標準教科書” プログラミングの初学者に向けた独習シリーズに『独習Python』が新登場。 プログラミング言語入門書の執筆で定評のある山田祥寛氏による、 Python入門書の決定版です。 独習シリーズの強みである、手を動かしておぼえる(書いて実行して結果を確認する) 特長を生かし、Pythonの基本的な言語仕様から、標準ライブラリ、ユーザー定義関数、 オブジェクト指向構文、モジュールまで、サンプルプログラムを例示しながら 詳細かつ丁寧に解説します。 プログラミングの基礎知識がない方でも、解説→例題(サンプル)→理解度チェック という3つのステップで、Pythonでプログラミングを行う際に必要な知識・概念・機能を 体系的に習得できます。 プログラミングの入門者、これからPythonで開発を始めたい初学者から、再入門者、 学生・ホビープログラマまで、「一からPython言語を学びたい」「Pythonプログラミング の基本をしっかり身につけたい」という方におすすめの一冊です。 第1章 イントロダクション 1.1 Pythonとは? 1.2 Pythonの歴史と現状 1.3 Pythonアプリを開発/実行するための基本環境 1.4 Pythonプログラミングの基本 1.5 Pythonの基本ルール 1.6 開発/学習の前に押さえておきたいテーマ 第2章 Pythonの基本 2.1 変数 2.2 データ型 第3章 演算子 3.1 算術演算子 3.2 代入演算子 3.3 比較演算子 3.4 論理演算子 3.5 ビット演算子 3.6 演算子の優先順位と結合則 第4章 制御構文 4.1 条件分岐 4.2 繰り返し処理 4.3 ループの制御 4.4 例外処理 第5章 標準ライブラリ[基本] 5.1 ライブラリの分類 5.2 文字列の操作 5.3 日付/時刻の操作 第6章 標準ライブラリ[コレクション] 6.1 シーケンス型 6.2 セット(集合)型 6.3 辞書(dict)型 第7章 標準ライブラリ[その他] 7.1 正規表現 7.2 ファイル操作 7.3 ファイルシステムの操作 7.4 HTTP経由でコンテンツを取得する 7.5 その他の機能 第8章 ユーザー定義関数 8.1 ユーザー定義関数の基本 8.2 変数の有効範囲(スコープ) 8.3 引数のさまざまな記法 8.4 関数呼び出しと戻り値 第9章 ユーザー定義関数[応用] 9.1 デコレーター 9.2 ジェネレーター 9.3 関数のモジュール化 9.4 非同期処理 9.5 ドキュメンテーション 第10章 オブジェクト指向構文 10.1 クラスの定義 10.2 カプセル化 10.3 継承 10.4 ポリモーフィズム 第11章 オブジェクト指向構文[応用] 11.1 例外処理 11.2 特殊メソッド 11.3 データクラス 11.4 イテレーター 11.5 メタクラス 付録A 「練習問題」「このの理解度チェック」解答

詳細! Python 3 入門ノート

大重 美幸
ソーテック社
おすすめ度
72
紹介文
Pythonプログラミングを全力で学ぶならこの1冊!Pythonをこれから学ぶビギナーから、基礎力を得て現場で実践したい方まで、確実なスキルアップをはかれます。 1 準備:Python3をはじめよう(Python3の準備 プログラムを試してみよう) 2 基礎:Pythonの基本構文を学ぶ(値と変数 標準ライブラリ 条件分岐、繰り返し、例外処理 リスト タプル セット(集合) 辞書 ユーザ定義関数 関数の高度な利用 クラス定義) 3 応用:科学から機械学習まで(テキストファイルの読み込みと書き出し グラフを描く NumPyの配列 機械学習を試そう)

直感 Deep Learning ―Python×Kerasでアイデアを形にするレシピ

Antonio Gulli
オライリージャパン
おすすめ度
72
紹介文
機械学習ライブラリKerasの解説書。画像識別、画像生成、自然言語処理、感情識別、自動ゲームプレイなどの幅広いサンプルを例示 人気フレームワークKerasの解説書! 直感的かつ短いコードでアイデアを形にできるKerasはTensorFlowのラッパーとして大人気のライブラリです。本書でもTensorFlowをバックエンドとして使用し、自然言語処理、画像識別、画像生成、音声合成、テキスト生成、強化学習、AIゲームプレイなどさまざまなモデルをPythonとKerasで実装します。対象読者は、各種のディープラーニングを素早く実装したいプログラマー、データサイエンティスト。ディープラーニングを支える技術の速習にも好適です。数式はなるべく使わずにコードと図で説明します。ニューラルネットワークおよびPython 3の基本を理解している人であれば誰でも始めることができます。

漫画でわかる デジタルマーケティング×データ分析

上野 佑馬(ウマたん)
ビジネス教育出版社
おすすめ度
71
紹介文
個人の地域密着型アウトドアショップがデジタルマーケティングで業績を飛躍的にアップさせていくストーリーに乗せて、DMの基礎を… 個人の地域密着型アウトドアショップがデジタルマーケティングで業績を飛躍的にアップさせていくストーリーに乗せて、DMの基礎を学ぶ

深層学習教科書 ディープラーニング G検定(ジェネラリスト)公式テキスト 第2版

猪狩 宇司
翔泳社
おすすめ度
71
紹介文
大好評!デジタル時代の必携リテラシー、G検定の「公式テキスト」の改訂版! 【本書の特徴】 ・大ベストセラー、ディープラーニング G検定 公式テキストの改訂版。 ・改訂された新シラバスに完全準拠。 ・試験運営団体である「日本ディープラーニング協会」が監修。 ・章末問題を大増量。分かりやすい解説付き。 ・ディープラーニングに関する入門書としても最適。 【対象読者】 ・ G検定を受験しようと思っている人 ・ディープラーニングについて概要を学びたい人 ・ディープラーニングを事業活用しようと思っている人・DX推進を検討している人 【G検定とは】 ・内容:ディープラーニングを事業に活かすための知識を有しているかを検定する ・試験方式:知識問題(多肢選択式)、オンライン実施(自宅受験) ・日程:年3回(詳細は公式サイトにて公表) 【目次】 試験の概要 第1章 人工知能(AI)とは 第2章 人工知能をめぐる動向 第3章 人工知能分野の問題 第4章 機械学習の具体的手法 第5章 ディープラーニングの概要 第6章 ディープラーニングの手法 第7章 ディープラーニングの社会実装に向けて Appendix 事例集 産業への応用 第1章 人工知能(AI)とは 1-1.人工知能(AI)とは 1-2.人工知能研究の歴史 第2章 人工知能をめぐる動向 2-1.探索・推論 2-2.知識表現 2-3.機械学習・深層学習 第3章 人工知能分野の問題 3-1.人工知能分野の問題 第4章 機械学習の具体的手法 4-1.代表的な手法 4-2.モデルの評価 第5章 ディープラーニングの概要 5-1.ニューラルネットワークとディープラーニング 5-2.ディープラーニングのアプローチ 5-3.ディープラーニングを実現するには 5-4.活性化関数 第6章 ディープラーニングの手法 6-1.畳み込みニューラルネットワーク 6-2.深層生成モデル 6-3.画像認識分野での応用 6-4.音声処理と自然言語処理分野 6-5.深層強化学習 6-6.モデルの解釈性の問題とその対応 第7章 ディープラーニングの社会実装に向けて 7-1.AIと社会 7-2.AIプロジェクトを計画する 7-3.データを集める 7-4.データを加工・分析・学習させる 7-5.実装・運用・評価する 7-6.クライシス・マネジメントをする Appendix 事例集 産業への応用 A-1.製造業領域における応用事例 A-2.モビリティ領域における応用事例 A-3.医療領域における応用事例 A-4.介護領域における応用事例 A-5.インフラ領域における応用事例 A-6.サービス・小売・物流領域における応用事例 A-7.農林水産業領域における応用事例 A-8.その他領域における応用事例

実践OpenCV 3 for C++画像映像情報処理

雅人, 永田
カットシステム
おすすめ度
71

Python2年生 スクレイピングのしくみ 体験してわかる!会話でまなべる!

森 巧尚
翔泳社
おすすめ度
71
紹介文
データ収集の基本!スクレイピングを体験してみよう! Pythonでスクレイピングを体験してみよう! 【スクレイピングとは】 機械学習やデータ分析になくてはならない「データ」。 このようなデータは、インターネット上に膨大にありますが、Pythonを使えば効率よくデータ収集できます。 こうした手法を「スクレイピング」といいます。 サイト自体もオープンデータ化が進んでおり、データを集めやすい環境が整ってきています。 【Python2年生について】 「Python2年生」シリーズは、「Python1年生」を読み終えた方を対象とした入門書です。 ある程度、技術的なことを盛り込み、本書で扱う技術について身に着けてもらいます。 【ターゲット】 ・ネット上からデータ収集を行う初心者 ・データ分析の手前の初心者 【本書の売り】 ヤギ博士&フタバちゃんと一緒に、インターネットからのファイルのダウンロード方法、 HTML解析の方法、いろいろなデータの読み書き、 APIの使い方といったデータ収集と便利なライブラリを利用した簡単な可視化手法を解説する書籍です。 また最終的にデータ収集を自動化する方法も簡単に解説します。 第1章 Pythonでデータをダウンロード  LESSON 01 スクレイピングってなに?  LESSON 02 Pythonをインストールしてみよう  LESSON 03 requestsでアクセスしてみよう 第2章 HTMLを解析しよう  LESSON 04 HTMLを解析してみよう  LESSON 05 ニュースの最新記事一覧を取得してみよう  LESSON 06 リンク一覧をファイルに書き出そう  LESSON 07 画像を一括ダウンロードしよう 第3章 表データを読み書きしよう  LESSON 08 pandasを使ってみよう  LESSON 09 さまざまなデータの加工  LESSON 10 グラフで表示してみよう  LESSON 11 Excelファイルを読み書きしてみよう 第4章 オープンデータを分析してみよう  LESSON 12 オープンデータってなに?  LESSON 13 郵便局:郵便番号データ  LESSON 14 e-Stat:政府統計の相互窓口  LESSON 15 キッズすたっと:探そう統計データ  LESSON 16 自治体のデータ:データシティ鯖江 第5章 Web APIでデータを収集しよう  LESSON 17 Web APIってなに?  LESSON 18 OpenWeatherMapってなに?  LESSON 19 現在の天気を調べよう  LESSON 20 現在から5日間(3時間ごと)の天気を調べよう

ディープラーニング活用の教科書

日本ディープラーニング協会
日経BP
おすすめ度
66
紹介文
急速に広がるディープラーニング活用の今と未来がわかる!国内の事例を体系的に取り上げ先駆者が解説 AIは研究から実用フェーズへ―― 急速に広がるディープラーニング活用の今と未来がわかる! 国内35社の事例を体系的に取り上げ、先駆者が苦労したポイントを解説 <日本ディープラーニング協会監修> 活用を検討する企業でよく生じる疑問にも答えます。 次世代の新規事業や業務改善の企画に欠かせない1冊! インターネットに遅れること20年、ディープラーニングは、 「汎用目的技術」の1つとして、あらゆる産業を変えていくとみられています。 汎用目的技術とは、古くは動物の家畜化、車輪、印刷の発明から、鉄道、電気、 自動車、インターネットまで「原理は単純で汎用的でさまざまなことに利用できる」 技術のことをいいます。 本書は、ディープラーニングが与えるインパクトを事例を基に解説します。 第1章では、東京大学大学院工学系研究科 特任准教授の松尾豊氏が描く「ディープラーニングをベースにしたAIの技術的発展」(ロードマップ)を解説。 第2~5章ではこのロードマップを基に国内の先進事例を分類して紹介していきます。 カツ丼の盛り付けを判定、泳ぐマグロの数を数える、クリーニング衣類を判別、文章の校閲、河川の護岸の傷判定、送電線の異常検知、道路下の空洞を探る、タクシーの乗客数予測、テレビCMの効果を予測、お弁当の盛り付け、重機で自動掘削、白黒映像の色付け、仮想アイドル画像の生成、プロ並みアナウンサー、人の話し方をまねる……続々登場する、こうしたディープラーニングの驚異の活用法が分かります。 第1章 ディープラーニングの発展予測 第2章 [Step1] 人の「眼」となり単純作業から解放する 第3章 [Step2] 「五感」を担い行動予測や異常検知を実現 第4章 [Step3] 現実社会に柔軟に対応 「ロボット」「自動運転」の時代 第5章 「創作」業務へも広がる活用範囲 第6章 ビジネス活用Q&A     ──向く分野/向かない分野、データ、人材、投資などの悩みに回答

Pythonプログラミングパーフェクトマスター[Python3/Anaconda/PyQt5対応第3版] (Perfect Master)

金城俊哉
秀和システム
おすすめ度
66
紹介文
Pythonはオブジェクト指向型の言語で、初学者向けでも文法解説だけでは物足りないと感じることが多いでしょう。本書では「チャットボットの開発を軸に文法的なものを学ぶ」スタイルをメインに、巻末ではディープラーニングについても学ぶことができます。 Anaconda、Jupyter Notebook、Spyderを使用し、Qt Designerでの解説をしていますので、それらの使い方も身に付きます。 第3版となる本書では、Web API、ライブラリを最新のものに対応するとともに、画像認識についてより高度な手法を追加しています。 Chapter 0 いま、なぜPythonなのか  0.1 そもそもPythonって何のためのものなの?   0.1.1 まずは「Pythonって何?」   0.1.2 Pythonって他のプログラミング言語と何が違うの?    Pythonは書いたらすぐに実行できる「インタープリター型言語」    Memo プログラミング言語  0.2 PHP、Ruby、Perlがあるのに、なぜPythonなの?   0.2.1 日本語対応もしっかり!  0.3 どうしてPythonはプログラミングの学習に向いてるの?   0.3.1 Pythonが褒められる2つの理由    Pythonには面倒な手続きが少ない    「プログラマーの頭」になるための近道  0.4 Pythonのコードが読みやすいって、どんなふうに?   0.4.1 階乗を求めるプログラムで比べてみよう  0.5 結局のところPythonで何が作れるの?   0.5.1 具体的にソフトウェアとしてはどんなものが作られているの?    統合開発環境    Memo Pythonは書いたらすぐに実行できるインタープリター型言語    Webフレームワーク    科学/数学用のライブラリ    ディープラーニング用のライブラリ  0.6 Pythonが使えると、この先どんなメリットがあるのかな?   0.6.1 Pythonのイイところ 1「ビッグな実績があるんです」   0.6.2 Pythonのイイところ 2「強力なフレームワークがいっぱいあるんです」   0.6.3 Pythonのイイところ 3「やっぱ需要はJavaの方が上でしょ?」    Onepoint 実は「儲かる」Pythonプログラマー  0.7 ところでPythonでアプリを作って何がウレシイの?    Pythonにはイイことがいっぱい  0.8 Pythonプログラミングをゼロからスタート!    なるべく順番に読んでほしいけど、好きなところから始めてもかまいません! Chapter 1 Pythonを使えるようにしてプログラミングを始めよう(環境構築とソースコードの入力)  1.1 PythonをダウンロードしてPCにインストールしよう   1.1.1 PythonをダウンロードしてWindowsマシンにインストールしよう    Python3.x.xのダウンロードとインストール  1.2 IDLE (Python GUI)を起動してPythonを動かしてみよう   1.2.1 Pythonの開発ツール「IDLE」でプログラムを実行してみよう    IDLEを起動して「Hello world!」プログラムを実行する    Memo Pythonのバージョン    Memo Macへのインストール   1.2.2 もっとプログラムらしいことをやってみよう    Pythonのプログラム用ファイルを作る    Memo 外部ライブラリ    保存したプログラムを実行する   1.2.3 さらにプログラムらしいことをやってみよう(アプリの画面を作る)    専用の画面を持つプログラムを作ってみる    Hint 本書で使う標準ライブラリ以外のライブラリ    Memo Pythonのロゴ  1.3 Anacondaをインストールして開発環境を用意する   1.3.1 Anacondaのダウンロードとインストール    macOSの場合   1.3.2 アプリを開発するための仮想環境を構築しよう    好きな名前を付けて仮想環境を構築しよう   1.3.3 Jupyter Notebookことはじめ    Jupyter Notebookを仮想環境にインストールする    Notebookを作成してソースコードを入力してみよう    Notebookを保存して改めて読み込んでみよう    Memo Jupyter Notebookのコマンド    Jupyter Notebookを便利に使う   1.3.4 Spyderことはじめ    Spyderを仮想環境にインストールする Chapter 2 Pythonプログラムの材料(オブジェクトとデータ型)  2.1 データのかたち(データ型)   2.1.1 プログラムとデータは別のもの(リテラル)    値(リテラル)の姿    Memo プログラムを書くときにハマりやすいこと   2.1.2 整数も小数も正も負も(数値型)    数値型   2.1.3 文字も文字列も(文字列型)    文字列リテラル    Hint 「'」と「"」のどっちがいい?   2.1.4 データではない文字列(コメント)    ソースコードのメモ書き「コメント」   2.1.5 YesかNoだけ(ブール〈bool〉型)    真偽リテラル   2.1.6 「値そのものが存在しない」は「None」    何もないことを示す特殊なリテラル「None」  2.2 オブジェクトと変数   2.2.1 オブジェクトを捕まえろ!    プログラムのデータはすべてオブジェクトになる    オブジェクトには関数(メソッド)が結び付けられている   2.2.2 3回続けてあいさつしてみよう??変数への代入    代入した値のデータ型は変更できないけれど値そのものを書き換えることはできる    Memo 変数名を付けるときのルール    Hint 変数名の命名規則  2.3 変数を使っていろんな計算をする   2.3.1 「入力した値を2倍にしてあげるよ」(算術演算子)    計算をさせるための記号、算術演算子    変数を使って演算する    単項プラス演算子(+)、単項マイナス演算子(?)   2.3.2 「x='僕の名前はPythonです'」(代入演算子)    代入演算子による値の代入    複合代入演算子による式の簡略化    多重代入   2.3.3 どこから手を付ける?(演算子の優先順位)    演算子には優先順位があるけれど()でコントロールできる    Memo 演算子の優先順位  2.4 文字列や数値をPythonの道具で自在に操ろう(関数、メソッド)   2.4.1 Pythonの道具(関数、メソッド)    print()関数ってどこから呼んできたの?   2.4.2 整数型への変換と浮動小数点数型への変換    整数以外の値をint型に変換する    浮動小数点数型(float型)への変換    Hint リテラルも変数もみんなオブジェクト    Hint 小数を含むstr型の「数字」をfloat型にする   2.4.3 え! 文字が逃げる?(エスケープシーケンス)    自動エコーとprint()関数による出力結果の違い    「\」で文字をエスケープすれば改行やタブを入れられる   2.4.4 「"こん" + "にちは"」「ようこそ *4」(文字列の連結と繰り返し)    文字列を連結したり繰り返したりする   2.4.5 会話文の中から必要な文字だけ取り出そう    [ ]で1文字抽出する    [:]や[: :]で文字列を切り出す   2.4.6 関数やメソッドを使えば文字列の分割、結合、置換、いろいろできる    len()関数で文字列の長さを調べる    split()メソッドで文字列を規則的に切り分ける    join()メソッドで文字列をジョイント!    replace()メソッドで文字列の一部を置き換える    format()メソッドで文字列を自動作成    Tips 逆さ言葉を答えてみよう   2.4.7 初恋したのはいつ?(input()関数)    コンソール上で入力された文字列はinput()関数で取得   2.4.8 あなたの標準体重は?    BMI(体格指数)を使って標準体重を計算してあげよう    Memo そのほかの便利な文字列操作関数 Chapter 3 条件分岐と繰り返し、関数を使う  3.1 テニスの攻撃パターンをシミュレートする   3.1.1 同じ技を10回繰り出す(forによる繰り返し)    スマッシュを連続10回繰り出す   3.1.2 2つの技を交互に繰り出す(ifによる条件分岐)    スマッシュとストロークを交互に繰り出す    Memo rangeオブジェクト(1)    Memo True/Falseと真/偽   3.1.3 3つの技を織り交ぜる(if...elif...else)    ifにelifを加えて条件を2つに増やす    ifの条件式を書く順番に気を付けよう   3.1.4 攻撃のパターンをランダムにしよう    randomモジュールを使って疑似乱数を発生させる  3.2 もう1つの繰り返し技(whileによる繰り返し)   3.2.1 条件がTrueの間は繰り返すよ    スマッシュを連続10回繰り出す   3.2.2 ピティナ、入力された言葉を再生する    相手の言葉をそのまま再生、'さよなら'で終了  3.3 リスト   3.3.1 4種類のストロークを順に繰り出す(リスト)    リストで複数のオブジェクトをまとめて管理    インデックシング    スライス    イテレーション    リストの更新    Memo rangeオブジェクト(2)    2つのリストをforで処理してみる    リストのリスト    Memo リストの操作    リストの中に要素製造装置を入れる(内包表記)   3.3.2 いわゆる「定数リスト」(タプル)    タプルの使い方  3.4 辞書と集合    Memo リスト要素をランダムに抽出する   3.4.1 ボールを打ったら音を出す(名前と値のペア)    辞書(dict)型    イテレーションアクセス    Memo 辞書に使えるメソッド    複数のシーケンスのイテレート   3.4.2 要素の重複を許さない集合    まずは集合を作ってみる    集合を使って重複した要素を削除する  3.5 装置を作る(関数)   3.5.1 呼び出すと擬音を付けてくれる関数    パラメーターの指定    デフォルトパラメーター    Memo デフォルトパラメーターの使いどころ    Hint リストをデフォルトパラメーターにするときの注意    伸縮自在のパラメーター    キーと値がセットになったパラメーター    関数オブジェクトと高階関数    関数内関数とクロージャー    小さな関数は処理部だけの「式」にしてしまう(ラムダ式)    Onepoint ラムダ式はいろんなプログラミング言語で使われている    ジェネレーター    Onepoint ジェネレーターの内部的な処理    デコレーター Chapter 4 オブジェクト、そして人工知能へ向けての第一歩  4.1 オリジナルのオブジェクト   4.1.1 「鬼コーチオブジェクト」登場!(クラスの作成)    オリジナルのクラス = オブジェクト    Memo 「オブジェクト」と「インスタンス」   4.1.2 「鬼コーチ」を呼んでこよう(オブジェクトの生成)    MyCoachクラスからMyCoachオブジェクトを作る    Memo メソッドと関数って何が違うの?   4.1.3 打ち返した回数を覚えておいてもらおう(クラス変数)    オブジェクト同士で共有するクラス変数    クラス変数を外部で初期化する    teach()をクラスメソッドに変更する    Memo メソッドやクラス変数を動的に追加する   4.1.4 大事な変数は隠しておこう(カプセル化)    インスタンス変数へのアクセスはすべてプロパティ経由にする    プロパティを使うことに意味はあるの?  4.2 ほんとに知能?   4.2.1 人工知能って何? えっ知能? 無脳?    絶妙トークは続く    ピティナ、君は人工ピーポー?    Pitynaオブジェクトの動作原理    Pitynaクラスと応答クラス    Memo ソースコードのドキュメント化   4.2.2 最初のピティナ    Spyderを起動して開発の準備をしよう    ピティナ、オウム返しボットバージョン   4.2.3 「オウム返し」+「ランダム応答」の2本立てで反応する(継承とオーバーライド)    ピティナ・バージョン2の実行モジュール「prototype.py」    Memo モジュール(Pythonファイル)の取り込み    Pitynaクラスのモジュール「pityna.py」    応答オブジェクトのモジュール「responder.py」    Memo RepeatResponderへの切り替え    Memo 自然言語処理って何をするの? Chapter 5 ピティナのGUI化と[人工感情]の移植  5.1 GUI版ピティナ   5.1.1 ピティナをGUIモジュールに移植するよ    まずはQt Designerを呼んでこよう   5.1.2 メインウィンドウを作成してウィジェット(widget)を配置しよう    メインウィンドウを作成する    Hint UI画面の開発は手打ち派? それともUIデザイナー派?    ログを表示するためのリストを配置する    応答クラス名の表示/非表示切り替え用のラジオボタンを配置する    会話入力用のテキストボックスを配置する    メッセージの送信ボタンを配置する    ピティナの応答領域、ラベルを配置する    ピティナのイメージを表示する    メニューを使う   5.1.3 イベント駆動の仕組みを実装しよう    ボタンクリックで駆動する仕組みを作ろう    ラジオボタンのオン/オフで駆動する仕組みを作ろう    メニューの[閉じる]選択で駆動する仕組みを作ろう   5.1.4 XML?Pythonモジュールへのコンバート    コマンドラインツール「pyuic5」でコンバートする    コンバート専用のプログラムを作る    リソースファイル(.qrs)をPythonにコンバートする    Memo コマンドをAnacondaのターミナルから実行する    Attention リソースファイルの名前に注意!   5.1.5 GUI版ピティナプログラムの開発    プログラムの起点、「main.py」モジュールを用意する    UI画面を構築する「mainWindow.py」モジュールを用意する    ピティナの本体「pityna.py」を用意する    応答クラスの「responder.py」モジュールを用意する    すべてのモジュールを確認してピティナを起動してみよう   5.1.6 Responderをランダムに切り替える    応答時にRandomResponderとRepeatResponderをランダムに実行する  5.2 辞書を小脇に   5.2.1 ファイルのオープンと読み込み    ファイルの中身を読み込んで画面に出力してみよう    ピティナ、辞書を読み込む    Memo ユニバーサル改行コード  5.3 ピティナ、パターンに反応する   5.3.1 正規表現ことはじめ    正規表現のパターン    パターン辞書ファイルを作ろう   5.3.2 「パターン辞書」「ランダム辞書」「オウム返し」の三つどもえの反応だ!    match()とsearch    Dictionaryクラス    Responderクラス    Pitynaクラス  5.4 感情の創出   5.4.1 ピティナに「感情」を与えるためのアルゴリズム    感情の「揺れ」はパラメーター値を変化させる仕組みで実現    Onepoint 感情の揺れをパラメーター値で表す    感情の表現はイメージを取り換えることで伝える   5.4.2 パターン辞書の変更    パターン辞書のフォーマットを変更    Memo プログラムをダブルクリックで起動する方法   5.4.3 感情モデルの移植(Emotionクラス)    機嫌値を管理するEmotionクラス   5.4.4 感情モデルの移植(Dictionaryクラス)    パターン辞書の各行をPatternItemオブジェクトとして保持する    Memo 応答メッセージをテキストエディットに出力する   5.4.5 感情モデルの移植(Patternltemクラス)    パターンや応答例から機嫌変動値を取り出す    PatternItemクラスの__init__()によるオブジェクトの初期化    match()、choice()、suitable()の追加   5.4.6 感情モデルの移植(Responderクラス、PatternResponderクラス、Pitynaクラス)    ResponderクラスとRepeatResponder、RandomResponderの修正    パターン辞書を扱うPatternResponderクラスの修正    Memo ピティナプログラムのモジュール   5.4.7 感情モデルの移植(ピティナの本体クラス)   5.4.8 ピティナ、笑ったり落ち込んだり    プログラム開発前の準備    Qt Designerを起動してリソースファイルを作ろう    UI形式ファイルとQRC形式ファイルのコンバート    感情の揺らぎを表情で表す Chapter 6 「記憶」のメカニズムを実装する(機械学習)  6.1 機械学習のススメ   6.1.1 まるごと覚える    辞書の学習を実現するためにクリアすべき課題    「学習メソッド」と「記憶メソッド」の追加    ピティナの本体クラスの修正    プログラム終了時の処理  6.2 形態素解析入門   6.2.1 形態素解析モジュール「Janome」の導入    「PyPI」はPythonライブラリの宝庫    pipコマンドで「Janome」をインストールする    Attention pipコマンドでのインストール    「Janome」で形態素解析いってみよう    Memo datetimeモジュール   6.2.2 キーワードで覚える    形態素解析を行うanalyzerモジュールを作ろう    ピティナの本体クラスを改造する    Dictionaryクラスを改造する    Memo Dictionaryクラスのメソッド    パターン辞書ファイルへの保存    Onepoint with文    PatternItemクラスのadd_phrase()とmake_line()    形態素解析版ピティナと対話してみる  6.3 テンプレートとして覚える   6.3.1 テンプレート学習用の辞書を作ろう    ピティナプログラムに必要なファイル一式    テンプレート辞書の構造    Attention ピティナの応答エリアをテキストエディットに変更する   6.3.2 Dictionaryクラスの改造    テンプレート辞書ファイルへの保存    Responderクラス群の新入り、TemplateResponderクラス    Pitynaクラスの変更    テンプレート学習を実装したピティナと対話してみる Chapter 7 マルコフ連鎖で文章を作り出す  7.1 無限のサル定理をマルコフ連鎖で実証する   7.1.1 マルコフ連鎖を使って文章を生成する    単語がつながっていくときの法則    マルコフ連鎖、マルコフモデルとは   7.1.2 3単語プレフィックスのマルコフ辞書    「わたしが好きなプログラムの女の子です。」って?   7.1.3 マルコフ辞書の実装    形態素解析とファイルの読み込み    マルコフ辞書の作成    マルコフ辞書から文章を作り出す    Memo マルコフ連鎖    Memo もとになる文章量が少ないと文章が作れないことがある    重複した文章を取り除く    プログラムを実行して文章を作ってみる    Hint 著作権の切れた作品を公開する青空文庫  7.2 マルコフ連鎖を利用した会話ボットの作成   7.2.1 小説を題材にマルコフ連鎖で生成した文章で応答する    Markovクラス   7.2.2 入力した文字列に反応するようにしてみる    markov_botモジュールの改造    入力した内容にマルコフ辞書が反応するか確かめる    Memo マルコフ連鎖の活用例  7.3 ピティナ、マルコフ辞書を使う   7.3.1 マルコフ連鎖文を生成するMarkovクラス    Markovクラス   7.3.2 Pitynaクラスの改造    Pitynaクラス   7.3.3 Responderに新たに加わったサブクラスMarkovResponder    MarkovResponderクラス   7.3.4 DictionaryクラスにmakeMarkovDictionary()メソッドを追加    Dictionaryクラス   7.3.5 マルコフ辞書を手にしたピティナ、その反応は?    最後に処理の流れを確認しておこう Chapter 8 インターネットアクセス  8.1 外部モジュール「Requests」を利用してネットに接続する   8.1.1 外部モジュール「Requests」    Requestsのインストール   8.1.2 Yahoo! JAPANにアクセスしてみよう    Requestsを利用してWebサイトにアクセスする    レスポンスメッセージからデータを取り出すメソッド   8.1.3 Web APIで役立つデータを入手    Webサービスを利用するためのWeb API    NTTドコモが提供しているWeb APIがオモシロイ  8.2 Requestsでネット上の情報を収集しよう   8.2.1 天気予報のWebサービス「OpenWeatherMap」を利用する    「OpenWeatherMap」の無料アカウントを取得する    5日間/3時間ごとの天気予報を取得するためのURLを作ろう    requestsのget()で天気予報をゲット!    Memo Weather APIの呼び出し回数の制限   8.2.2 ウィキ(Wiki)るプログラム    MediaWikiのAPI    Wikipediaから情報を収集しよう   8.2.3 「Yahoo!ニュース」のヘッドラインを取得してみよう    スクレイピング専用のBeautifulSoup4モジュール    Memo Twitterの開発者向けサイト    BeautifulSoup4で「Yahoo!ニュース」のRSSをスクレイピング   8.2.4 ピティナ、ネットにつながる    ピティナが今日から5日後までの天気を教えてくれる    mainWindowモジュールの改造    Webにつながるピティナを実行してみる    Memo 「OpenWeatherMap」で無料で利用できるWebサービス    Memo WebサービスのGoogle Colabを便利に使おう! Chapter 9 ピティナ、ディープラーニングで画像認識に挑戦!  9.1 ディープラーニングと言えばPythonなのです   9.1.1 ディープラーニングっていったい何?    ニューラルネットワークのニューロン  9.2 認識率98%の高精度のニューラルネットワークを作る   9.2.1 Kerasライブラリをインストールして「手書き数字」の画像データを用意しよう    Kerasを仮想環境にインストールしよう    Memo TensorFlowのインストールができないときの対処法    Memo matplotlib.pyplot.imshow()    Memo Matplotlibのインストール方法   9.2.2 ニューラルネットワークをプログラミングする    入力層をプログラミングしよう    第1層(隠れ層)をプログラミングしよう    ドロップアウトを実装しよう    第2層(出力層)をプログラミングしよう    バックプロパゲーションを実装しよう    ディープラーニングを実行して結果を評価しよう    Memo ディープラーニングの結果が保存されたファイル  9.3 ディープラーニング版ピティナ   9.3.1 ディープラーニング版ピティナ開発の概要です    ディープラーニング版ピティナの開発手順   9.3.2 ピティナAIの画面の開発    フォーム(メインウィンドウ)のプロパティを設定する    3個のラベルを配置してプロパティを設定する    [閉じる]メニューの設定    Onepoint pixmapプロパティでリソースファイルからイメージを取り込む手順    UI画面をPythonモジュールにコンバートする   9.3.3 ピティナAIをプログラミングしよう    ピティナAIを起動するモジュール    UI画面を生成するモジュールを作成しよう    ほんとにAI? ピティナ本体をプログラミングする    ピティナAI、手書きの数字を認識する  9.4 ピティナ、ファッションアイテムを92%の高確率で識別する   9.4.1 ファッションアイテムのデータセットとは何ぞや?   9.4.2 畳み込みニューラルネットワークの仕組みをさらっと紹介    2次元フィルター    ゼロパディング    プーリング    訓練データにばかり適合するのを避けるための「正則化」    プーリング層とドロップアウトを備えた畳み込みネットワークの構築   9.4.3 Fashion-MNISTデータを読み込んで学習する    「LearnMNIST.py」を畳み込みネットワーク版に改造してファッションアイテムを学習する   9.4.4 ピティナの本体モジュール「pityna.py」を改造する    pityna.pyの一部を書き換える    ピティナAI、ファッションアイテムを判別する Appendix 1 Pythonの標準ライブラリ  shutil(高水準のファイル操作)  timeit(小さなコード断片の実行時間計測)  collections(コンテナデータ型)  datetime(基本的な日付型と時間型)  Appendix 2 Pythonの外部ライブラリ  データベース  ゲーム開発  GIS(位置情報システム)  GUI  画像処理  Web開発

ディープラーニング活用の教科書 実践編

日本ディープラーニング協会
日経BP
おすすめ度
64
紹介文
ディープラーニング活用なくしてビジネスの飛躍的成長なし ◆日本ディープラーニング協会推薦図書◆ 日本ディープラーニング協会 監修 ディープラーニングをビジネスに生かす知識を問われる 同協会のG検定(ジェネラリスト) 推薦図書 松尾豊・同協会理事長による「ディープラーニング技術年表」収録 ディープラーニングは確かに実際のビジネスに溶け込み、商品やサービスでの活用が始まっています。 それによって業績を向上させた企業もあれば、社会課題の解決に結びつけている会社も実在します。 その最先端の実践的な事例を紹介しました。本書に「実践編」と付したのはこうした理由からです。 本書の最大の特徴の1つが、「ディープラーニングビジネス活用アワード」の受賞6プロジェクト全てを子細なケーススタディで紹介していることです。 日本ディープラーニング協会と一緒に、2019年春から準備を進めてきたものです。 エントリーはやや大手企業に偏重したきらいはありましたが、まさに腕自慢の実力派ぞろいでした。 大賞のキユーピーの食品加工で原料を検査する「AI食品原料検査装置」に始まって、楽天の自動翻訳プロジェクトである「Rakuten Translate」、 荏原環境プラントが進める「ごみ焼却プラント運転自動化プロジェクト」、水処理など流体向けAI分析のAnyTechの「水質判定AI『DeepLiquid』」、 保育園向けITサービスのユニファの「写真自動判定システムによる保育士の業務負荷軽減」、パッケージデザインのプラグの「パッケージデザインの好意度スコアを予測するAIサービス」の6事例を本書にまとめました。 できるだけ載せないようにしたケースもあります。 ディープラーニングといえば画像認識とばかりに、熟練工の目の代替として活用する事例は少なくない。 ただその点だけを極めても、効果の最大値は当該人件費の削減分にしかなりません。 結果として幼稚園児の笑顔が増える、あるいは静脈産業の支えになる、 といった大きな社会的意義をディープラーニングには持たせたい。そんな思いで作りました。 受賞6事例を含めた計26事例を、本書ではディープラーニング活用の効果で4つに分けました。 まず「商品開発・業界構造を変える」。 次が「消費者のデマンドに応える」。 そして「働き方を改革する」。 最後が「不正・異常を検知、社会課題を解決する」。 また資料的価値が高い、日本ディープラーニング協会理事長の松尾豊氏がまとめた「ディープラーニング技術年表」そして「インターネットでいうと1998年」も収録。 全編にわたって同協会の理事が一文字ずつ、とりわけ技術的な側面からアドバイスしてくれた貴重な書である。ぜひご覧になっていただきたい。 ディープラーニング活用なくしてビジネスの飛躍的成長なし ◆日本ディープラーニング協会推薦図書◆ はじめに 【第1章】 ディープラーニングで付加価値高め こうして稼ぐ       ―日本ディープラーニング協会 松尾豊理事長に聞く― 【第2章】 商品開発・業界構造を変える  ●キューピー   食品原料の異物を画像認識で検査 食の安全守るため装置は同業に外販も  ●プラグ   パッケージデザインの消費者調査をAIで代替 商品開発のやり方 ガラリ変わる可能性  ●AnyTech   水処理施設からチョコレートまで 「流体」の品質・状態を簡単チェック  ●NTTドコモ   店頭の商品を自動で認識 来店客の属性把握しPOSデータと連動で棚割り提案へ  ●フジクラ   半導体部品をディープラーニングで検査 AIプラットフォーム構築し全社のIoT基盤に  ●日本たばこ産業   コンビニのたばこ陳列を精度99%で認識 1013人超参加のコンテストで実現  ●トレタ   飲食店で売れ筋メニューが分析可能に ディープラーニングによるラベリング技術とは  ●Sports Technology Lab   スポーツ選手の動きをディープラーニングで分析 チーム強化から選手移籍まで  ●ソフトバンク   5G×ディープラーニング 高品質画像でもリアルタイムぼかし加工 【第3章】 消費者のデマンドに応える  ●楽天   ストレスなく外国語を話したい 海外動画配信サービスで培った翻訳技術を活用  ●ヤフー   安いガソリン、空いてる駐車場を近くで探したい ディープラーニングとドラレコで  ●SMBC日興証券   株式ポートフォリオの組み替え方を知りたい 資産総額13倍になるカラクリ 【第4章】 働き方を改革する  ●荏原環境プラント   ごみ焼却施設で「熟練運転員の目」を代替 5倍の効率化を実現 静脈産業を途絶えさせない  ●ユニファ   子供の「NG写真」をディープラーニングで自動排除 保育園の課題解決を支援  ●NTTデータジェトロニクス   社食食堂のレジで自動精算 人件費の削減、そして社員の満足度を高めて社内活性化へ  ●モノフル   トラックの人手不足問題に一石 ナンバーをAIで読み取り効率化  ●三菱総合研究所   財務諸表の数字を読み取り自動でリポート作成 シンクタンクの“夢”に一歩近づく  ●ディー・エヌ・エー(DeNA)   交通事故の削減支援をサービス化 AIとデータサイエンスのタッグで  ●イシダ   ディープラーニングでパスタをつかむ AIと機械の“せめぎ合い”から生まれた新技術  ●AVILEN   鉄加工の図面を自動で読み解く 各種フォーマットの図面に対応 【第5章】 不正・異常を検知、社会課題を解決する  ●リコー   カメラ+AIで路面の老朽化診断 事務機器からの多角化で数千万円の受注  ●日本気象協会   降雨予測のメッシュと時間を詳細化 スパコンを使わず実現、ダム管理などに活用  ●日本取引所自主規制法人   株の不正取引“見せ玉”に待った 証券取引所の不正検知にAI導入世界初  ●misosil   SNS広告でインフルエンサーの不正を暴く フォロワー水増しをAIで発見  ●トプコン   眼底画像から健康状態を読み解く デバイスのデータを加工する「センシングAI」とは?  ●Ollo   月額3万円で顔認証システムが導入可能 エッジデバイスでの高速・高精度化を実現 【第6章】 先端技術の動向を知る おわりに

C#で始めるOpenCV4プログラミング

北山 洋幸
カットシステム
おすすめ度
64

さらに進化した画像処理ライブラリの定番 OpenCV 3基本プログラミング

洋幸, 北山
カットシステム
おすすめ度
64
紹介文
OpenCV概要 はじめてのOpenCVプログラム マトリックスクラスについて アフィン変換 グラフィックス 色の処理 フィルタ処理 画像合成 動画処理 オブジェクト検出・除去 MatとUMatの性能 OpenCL halモジュール 独自カーネルコード 画像比較 画像検索

TensorFlow2 TensorFlow & Keras対応 プログラミング実装ハンドブック

チーム・カルポ
秀和システム
おすすめ度
64
紹介文
TensorFlowは、Google社が公開しているPython向け機械学習用ライブラリです。本書はPythonの基礎を学習した方に向けて、JupyterNotebookを使ったTensorFlowの活用法を解説する入門書です。シンプルな二値分類から画像認識、自然言語処理における時系列データの分析までを理論をまじえて体系的に解説します。 TensorFlowがバージョン2.0となったことにともない、Kerasがライブラリとして取り込まれ、計算グラフのコーディングが不要となるなど、大幅な改善がされています。 それに伴い、以前のバージョンで作成したソースコードが動作しなくなっています。そこで「TensorFlow&Kerasプログラミング実装ハンドブック」の内容を一新してバージョン2に完全対応しました。 第1章 機械学習ライブラリTensorFlow 第2章 開発環境の容易とPythonの基礎 第3章 TensorFlowの基本 第4章 例題で学ぶTensorFlowの基本 第5章 TensorFlowによるディープラーニング

3ステップでしっかり学ぶ Python 入門

山田 祥寛
技術評論社
おすすめ度
64

C言語による画像処理プログラミング入門: サンプルプログラムから学ぶ

長尾 智晴
朝倉書店
おすすめ度
63
紹介文
初学者を対象として典型的かつ重要な画像処理方式に絞り,しっかりと学べるよう構成. 初学者向けに典型的かつ重要な画像処理に絞って解説.[内容]階調補正/2値化/空間フィルタリング/周波数フィルタリング/圧縮符号化/電子透かし/2値画像/立体・3次元環境/動画像/文字・図形・画像/カラー画像/他

業界別! AI活用地図 8業界36業種の導入事例が一目でわかる (AI&TECHNOLOGY)

本橋 洋介
翔泳社
おすすめ度
63
紹介文
さまざまな業界で導入が進められているAIについて、どのような分野で活用されているのかが鳥瞰図で一目でわかる AIの導入事例が一目でわかる! 金融、流通、製造、インフラなど全8業界36業種のAIの導入について、どのような分野で活用されているのか、 どのような事項との親和性が高いかといったことについて鳥瞰図で解説。豊富な実例も掲載しており、ビジネスのアイデア創出にも応用できます。 また、「こんな応用可能性があります」にとどめず、実際に実装したりトライアルをするときのノウハウも掲載しています。 本書掲載の鳥瞰図はご購入者特典としてDLして活用できます。 【本書に掲載されている業種】 〈流通〉 コンビニ・スーパーマーケット 百貨店業 郵便・運送業 〈製造〉 自動車製造業 食品・飲料製造業 化粧品・日用品製造業 金属製造業・化学工業 重工業 建設業 繊維工業(アパレル) 電機製造業 〈金融〉 銀行業 保険業 証券業 〈サービス〉 ホテル業 旅行代理業 外食業 テーマパーク 放送局 〈インフラ〉 通信業 鉄道業 航空業 空港 道路・交通インフラ管理業 エネルギー業(ガス・電気) 石油および天然ガス生産・販売業 〈公共〉 学校・学習塾 警察・警備 消防・防災 〈ヘルスケア〉 病院 介護サービス業 製薬業 〈その他〉 農業 水産業 スタジアム・(プロ/アマ)スポーツ ゲーム業 Chapter 1 流通  コンビニ・スーパーマーケット  百貨店業  郵便・運送業  詳細解説:商品需要予測に基づく在庫管理 Chapter 2 製造  自動車製造業  食品・飲料製造業  化粧品・日用品製造業  金属製造業・化学工業  重工業  建設業  繊維工業(アパレル)  電機製造業  詳細解説:査定自動化・見積り自動化 Chapter 3 金融  銀行業  保険業  証券業  詳細解説:不正検知 Chapter 4 サービス  ホテル業  旅行代理業  外食業  テーマパーク  放送局  詳細解説:キャンペーン企画・価格設定 Chapter 5 インフラ  通信業  鉄道業  航空業  空港  道路・交通インフラ管理業  エネルギー業(ガス・電気)  石油および天然ガス生産・販売業  詳細解説:劣化予測・メンテナンス計画作成 Chapter 6 公共  学校・学習塾  警察・警備  消防・防災  詳細解説:画像データによる異常検知・品質評価 Chapter 7 ヘルスケア  病院  介護サービス業  製薬業  詳細解説:センサーデータによる異常検知 Chapter 8 その他  農業  水産業  スタジアム・(プロ/アマ)スポーツ  ゲーム業  詳細解説:見込み顧客分析・離反分析

入門 Python 3 第2版

Bill Lubanovic
オライリージャパン
おすすめ度
63
紹介文
プログラミング初心者向けPython入門書。5年ぶりの改訂版でPython3.9.0に対応。新機能追加でボリュームアップ。 実践を見据えた本格的な入門書の改訂版! プログラミング初心者を対象としたPythonの総括的な入門書で、前提知識がなくても取り組むことができます。プログラミングとPythonの基礎から、データベース処理、Webプログラミング、ネットワークプログラミング、初歩の並列処理といった応用までわかりやすく丁寧に解説します。「入門Python 3」の5年ぶりの改訂版でPython3.9.0に対応、f文字列などの新機能が追加され大幅にボリュームアップしています。 プログラミング初心者向けPython入門書。5年ぶりの改訂版でPython3.9.0に対応。新機能追加でボリュームアップ。

C言語による画像処理入門

猛, 安居院
昭晃堂
おすすめ度
63
紹介文
本書は、画像処理に興味をもつ高専、専門学校、短大、大学などに通う学生、あるいはこれから画像処理の勉強を始めようとする人達を対象にした、C言語による画像処理のプログラミングに関する入門書である。 1 画像入力・補正・出力 2 画像のフィルタリング 3 2値画像処理 4 画像の圧縮符号化 5 パターン認識 6 立体認識 7 動画像処理 8 神経回路網による画像認識 9 遺伝的アルゴリズムによる画像処理 付録(Cプログラミング入門 mypgm.h)

ビジネスの構築から最新技術までを網羅 AIの教科書

伊本 貴士
日経BP
おすすめ度
63
紹介文
これからAIを学ぶ人に向けた入門書。ビジネスへの活用法から最新技術までをカバーした、「最初に手にすべきAI本」 本書は、これから人工知能(AI)を学びたいと考える人に向けたAIの入門書です。エンジニアではない人、すなわち中高生や文系学部の大学生、文系出身のビジネスパーソンや経営者などでも理解できるように、分かりやすくAIの本質や基礎知識を解説しました。AIのビジネスへの活用法からAIの最新技術までをカバーした、「最初に手にすべきAI本」です。 著者は、日本経済新聞社や日経BPのセミナーでAIやIoTの講座を教える人気講師。フジテレビの「ホンマでっか!?TV」に評論家として出演もしています。語り口が初心者にも分かりやすいと定評のある著者が、必要最低限のポイントに絞り、できる限り専門用語を使わないように配慮しながら書き上げました。 初心者でも人工知能の本質を短時間で理解できるようにするために、それぞれの状況や理解度に応じて学習できるように3部に分けて構成しています。 第1部(第1章)は「基礎編」です。ここでは、今後、人工知能が中心となる社会で生きていくために必要最低限の知識についてまとめました。人工知能は何が得意で、何が不得意なのか、そして社会をどう変えていくのかについて解説しています。 第2部(第2~4章)は「ビジネス編」です。ここでは、ビジネスに人工知能を活用するに当たり、各業界の活用事例や今後どのような使われ方をするのかについて書いています。 また、人工知能を活用する際の注意事項を中心に、プロジェクト推進方法や国などの支援状況についても解説しています。 第3部は「技術編」です。ここでは、人工知能の仕組みについて解説しています。今後、データサイエンスや人工知能に関する知識は、エンジニアや人工知能のプロジェクトに関わる人にとっては必須の知識です。 本書を読めば、AIに関する一般向けの本にありがちな曖昧すぎてよく分からない、なぜそこにAIを使う必要があるのか理解できないといった疑問を解消できると思います。 第1章【基礎編】人工知能(AI)の世界 第2章【ビジネス編】産業別に見た人工知能事例と未来予想図 第3章【ビジネス編】人工知能活用に関する国の施策 第4章【ビジネス編】人工知能プロジェクトの進め方と注意点 第5章【技術編】機械学習 ~これまでの人工知能と歴史~ 第6章【技術編】ディープラーニング ~現在の人工知能~ 第7章【技術編】人工知能開発と運用管理 第8章【技術編】人工知能の最新技術 ~これからの人工知能~ 第9章 人工知能開発に関するいろいろなFAQ

OpenCVによるコンピュータビジョン・機械学習入門 (KS情報科学専門書)

中村 恭之
講談社
おすすめ度
63
紹介文
汎用性の高いアルゴリズムのプログラム例を多数掲載した。OpenCV3系に対応。多彩な内容で、欲張りな一冊! 大好評『OpenCVによる画像処理入門』の続編がついに誕生! 運動復元、物体追跡、画像レジストレーション、三次元再構成、機械学習をOpenCVで学ぼう!汎用性の高いアルゴリズムのプログラム例を多数掲載した。OpenCV3系に対応。多彩な内容で、欲張りな一冊! 【「まえがき」より】 本書は『OpenCVによる画像処理入門』の続編である.本書は,工業高等専門学校生,大学学部生,大学院生などを主な対象として構成し,基本的かつ汎用性の高いコンピュータビジョン・機械学習アルゴリズムを選定して掲載した. 前著と同様に,各章では,まず各技術の理論について解説し,その後,その技術をOpenCVを用いて実装する方法について紹介している.実装については,各技術について1つ 1つ実行できるようなプログラム例を掲載しているので,実行することで理論の理解を深めることができる. 学生だけでなく,CVの新しいアプリケーションを開発しようとしている技術者が,自身の課題に簡単に応用できるように配慮している.CVの各種の実装方法については,そのエッセンスのみから構成されるようなコーディング法で実装することを心がけている. 【おもな内容】 Chapter0 コンピュータビジョンとは?  Chapter1 特徴検出 Chapter2 特徴量記述 Chapter3 運動復元 Chapter4 物体追跡 Chapter5 画像レジストレーション Chapter6 カメラモデル Chapter7 エピポーラ幾何 Chapter8 カメラキャリブレーション Chapter9 3次元再構成 Chapter10 機械学習とは? Chapter11 人工的なデータの生成 Chapter12 主成分分析 Chapter13 クラスタリング Chapter14 k最近傍法 Chapter15 ベイズ識別 Chapter16 サポートベクトルマシン Chapter17 決定木 Chapter18 ニューラルネットワーク Chapter19 ブースティング Chapter20 識別器の性能評価 Chapter0 コンピュータビジョンとは?  Chapter1 特徴検出 Chapter2 特徴量記述 Chapter3 運動復元 Chapter4 物体追跡 Chapter5 画像レジストレーション Chapter6 カメラモデル Chapter7 エピポーラ幾何 Chapter8 カメラキャリブレーション Chapter9 3次元再構成 Chapter10 機械学習とは? Chapter11 人工的なデータの生成 Chapter12 主成分分析 Chapter13 クラスタリング Chapter14 k最近傍法 Chapter15 ベイズ識別 Chapter16 サポートベクトルマシン Chapter17 決定木 Chapter18 ニューラルネットワーク Chapter19 ブースティング Chapter20 識別器の性能評価 付録A OpenCVの導入

いちばんやさしい機械学習プロジェクトの教本 人気講師が教える仕事に AI を導入する方法 (「いちばんやさしい教本」シリーズ)

韮原祐介
インプレス
おすすめ度
62

画像処理の基礎

藤岡 弘
オーム社
おすすめ度
62
紹介文
1 序論 2 ディジタル画像処理の基本的トピックス 3 ディジタル画像の基礎 4 画像強調と復元 5 画像解析 6 画像圧縮

世界のトップ企業50はAIをどのように活用しているか?

バーナード・マー
ディスカヴァー・トゥエンティワン
おすすめ度
62

生成 Deep Learning ―絵を描き、物語や音楽を作り、ゲームをプレイする

David Foster
オライリージャパン
おすすめ度
62
紹介文
生成型ディープラーニングの解説。人間にしかできないと思われていた創造的な作業を機械に行わせる技術の基礎から応用までを学ぶ。 生成型ディープラーニングの基礎から応用までを網羅! 生成型ディープラーニングの解説書。「絵を描く」「曲を作る」といった、これまで人間にしかできないと思われていた創造的な作業を機械に行わせるという、いま最もホットな技術の基礎から応用までをJupyterノートブック環境で実際に試しながら学びます。第I部は基礎編です。機械学習プログラミング、変分オートエンコーダ、GANやVAEなど、生成モデルの作成において重要な基礎技術を学びます。第II部は応用編です。CycleGAN、エンコーダ―デコーダモデル、MuseGANなどのモデルを作成し、作画、作文、作曲といった創造的なタスクに取り組みます。さらには、実環境を用いずにゲームプレイAIの学習を可能にする、世界モデルを使った強化学習にも取り組みます。最後に生成モデリングの未来として、StyleGAN、BigGAN、BERT、GPT-2、MuseNetなどのアーキテクチャを紹介します。

スッキリわかるPython入門 (スッキリわかる入門シリーズ)

国本大悟
インプレス
おすすめ度
62

物体・画像認識と時系列データ処理入門

チーム・カルポ
秀和システム
おすすめ度
62
紹介文
本書を手に取っていただきありがとうございます。本書は、ディープラーニングについて、その基礎となるパーセプトロンやニューラルネットワークの基礎的なことから解説した本です。 本書では、まずTensorFlowによる実装を行い、続いてKeras、TFLearnによる実装を解説の基本として、KerasやTFLearn で簡単にプログラミングしたことが、実際はどうなっているのかをTensorFlowで知ることができるようになっています。本書が、Pythonでディープラーニングを実践するための一助となれば幸いです。 1章 ディープラーニングとは 2章 開発環境のセットアップとPython/TensorFlowの基礎 3章 ディープラーニングの数学的要素 4章 ニューラルネットワークの可動部(勾配ベースの最適化) 5章 ニューラルネットワーク 6章 画像認識のためのディープラーニング 7章 一般物体認識のためのディープラーニング 8章 人間と機械のセマンティックギャップをなくす試み 9章 ジェネレーティブディープラーニング

AI白書 2020

独立行政法人情報処理推進機構 AI白書編集委員会
KADOKAWA
おすすめ度
62
紹介文
広がるAI化格差と5年先を見据えた企業戦略 ▼技術から利用動向、制度政策に至るまで、国内と海外の人工知能の最新動向がすべてわかるAI白書の2020年版 DX(デジタルトランスフォーメーション)のための重要な技術であるAIの社会実装が進む一方、そのAI化で格差が広がっています。また、5Gのサービス開始、EU一般データ保護規則、米中間の対立など、AIを取り巻く環境は目まぐるしく変化しています。 第1章では、石角友愛氏(パロアルトインサイトCEO)と中島秀之 AI白書編集委員長(札幌市立大学理事長・学長)の対談、北野宏明 AI白書編集委員(ソニーコンピュータサイエンス研究所代表取締役社長・所長)と片岡 晃 IPA社会基盤センター長の対談を通じて、AIをめぐる日本の課題とビジネス戦略について解説。第2章「技術動向」では、AIに関する技術の概要と最新動向を整理し、第3章「利用動向」では国内外でのAI活用事例を紹介。さらに、AIの社会実装を支える環境として、第4章で「制度政策」、第5章で社会実装に係る課題解決の方向性(AI人材育成及びスタートアップエコシステム)について記載しています。 『AI白書2019』に最新情報を加え、大幅にアップデートしています。AIの基礎的な技術解説から、国内外の多様な導入事例、制度・政策面での取り組み、中国のAI動向データ、企業経営者の意識調査結果まで、AIにまつわる幅広い話題を網羅して収録。AIを実装し、DXを推進するにあたってのひとつの指針として、本書をご活用いただけます。 DX(デジタルトランスフォーメーション)のための重要な技術であるAIの社会実装。そのAI化で格差が広がっている。AIの技術や利用動向、制度政策、スタートアップエコシステムに至るまで、AIのすべてを解説 □第1章「2020年のAIとビジネス」 生産性やDXといった日本の課題、AI時代のビジネス戦略をテーマにした対談、など □第2章「技術動向」 AIを支える技術と最新動向、ディープラーニング、開発基盤、標準化・オープンプラットフォーム・信頼性、各国の研究開発の現状、など □第3章「利用動向」 日本と世界の分野別の利用動向、AI利用動向アンケート調査、AI導入予算・AI市場規模、中国のAI最新動向、など □第4章「制度政策動向」 AIに関する原則・ガイドライン、制度改革(モビリティ、データ流通、知的財産)、各国の政策動向、など □第5章「AI実装を推進するAI人材育成と地域スタートアップエコシステム」 スタートアップエコシステム、AI人材の育成、社会実装の課題と現状、など

Getting Started with Google BERT: Build and train state-of-the-art natural language processing models using BERT

Ravichandiran, Sudharsan
Packt Publishing
おすすめ度
62

オリジナルの画像認識AIを簡単に作ろう!

安田 恒
秀和システム
おすすめ度
62
紹介文
既存の学習済みAIに自分が必要な認識対象を転移学習で加えることで、AIの知識ゼロでも画像認識装置を作れるマニュアルです。 AIやIoTという言葉が毎日のようにメディアで紹介されています。しかし、興味を持っても、本を読むだけでは技術は身につきません。やはり実際に手を動かして、自分で体験するのが一番です。本書は、画像認識装置を製作して、AIやIoTなどの最先端技術を体験しながら学ぶ初心者のための入門書です。猫を認識し、画像を保存し、メールで知らせる、さらにIoTらしく「いつでもどこでも使える」装置を自分の手で、低予算で作りましょう。 CHAPTER 1 本書で製作する画像認識装置の構成 イントロダクション 装置の概略 ワンボードマイコン「Raspberry Pi」とは コンピュータビジョン向けライブラリ「 OpenCV」とは ディープラーニングフレームワーク「Caffe」とは CHAPTER 2 人工知能による猫の認識 イントロダクション クラウドサーバの準備 ディープラーニングを体験してみる 入力用画像を用意する 学習済みモデルをダウンロードする 画像認識のためのスクリプトを書いて実行する 学習用データの準備 ファインチューニングとは どのような画像が必要か検討する 学習用の画像をダウンロードする オリジナルAI のための画像収集 既存の学習済みモデルのファインチューニング 学習用データベースおよび平均画像の作成 ニューラルネットワーク定義ファイルおよび学習用パラメータのエディット 学習の実行と結果確認 オリジナルAI のためのファインチューニング CHAPTER 3 ハードウェアの準備 イントロダクション ハードウェアの組み立て Raspberry PiのOSのインストール Raspberry PiのOSの設定 カメラの動作チェック CHAPTER 4 ソフトウェアの準備 イントロダクション ソフトウェア群のインストール OpenCVのインストール Caffeのインストール クラウド環境の設定 メール通知の設定 オンラインストレージの設定 画像認識装置の仕上げ 猫検出スクリプトの作成 USBモデムのインストール 電源ケーブルの抜き差しでON/OFFできるようにする 動作確認とTips オリジナルAI のための判別処理 CHAPTER 5 猫除け装置への応用例 イントロダクション ハードウェア紹介 ソフトウェア紹介 実施例紹介

増補改訂版 図解でわかる はじめてのデジタル画像処理

山田 宏尚
技術評論社
おすすめ度
62
紹介文
AI時代の「画像処理」ってどんなしくみなの?画像処理技術を基礎から体系的に学べる。 0 デジタル画像処理って何? 1 画像の基礎 2 カラー画像のしくみ 3 デジタル画像のフィルタ処理 4 画像の明るさを変えよう 5 印刷のための画像処理 6 画像とフーリエ変換 7 静止画と圧縮のしくみ 8 動画像と圧縮のしくみ 9 テレビ放送と画像処理 10 AI(人工知能)と画像認識 11 様々な分野で活躍する画像処理

人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書)

松尾 豊
KADOKAWA/中経出版
おすすめ度
62
紹介文
人工知能は人間を超えるのか、その日は、いつやってくるのか? グーグルやフェイスブックが開発にしのぎを削る人工知能。日本トップクラスの研究者の一人である著者が、最新技術「ディープラーニング」とこれまでの知的格闘を解きほぐし、知能とは何か、人間とは何かを問い直す。 グーグルやフェイスブックが開発にしのぎを削る人工知能。日本トップクラスの研究者の一人である著者が、最新技術「ディープラーニング」とこれまでの知的格闘を解きほぐし、知能とは何か、人間とは何かを問い直す。

すぐに使える!業務で実践できる! PythonによるAI・機械学習・深層学習アプリのつくり方 TensorFlow2対応

クジラ飛行机
ソシム
おすすめ度
62

Pythonスタートブック [増補改訂版]

辻 真吾
技術評論社
おすすめ度
62

OpenCVによる画像処理入門 改訂第3版 (KS情報科学専門書)

小枝 正直
講談社
おすすめ度
62
紹介文
3言語(C言語、C++、Python)対応で基本が身につく、大好評テキストの改訂版。OpenCV4.5に対応、フルカラー化。 ◆◆3言語(C言語、C++、Python)対応で、「画像処理の基本」が身につくと、大好評のテキストの改訂版!◆◆ ・OpenCV4.5に対応し、さらにパワーアップ! ・基本アルゴリズムとサンプルプログラムが豊富で、いますぐできる! ・理論と実践のバランスがよく、初学者に最適! ・全編をフルカラー化し、デザインも一新! ・練習問題を解いて理解度アップ! ・Windowsだけでなく、Macでのインストールにも対応! 【「まえがき」より】 本書は,理数科高校生,工業高等専門学校生,大学学部生などを対象とした講義用教科書としての利用を想定し,基本的かつ汎用性の高い画像処理アルゴリズムを選定して解説した.また初学者が独学でも学べるように,開発環境の構築方法,トラブルシューティングなどの詳細な手順を載せている.本書ではまず,画像処理アルゴリズムについて解説し,内部で行われる処理が十分に理解されることに重点を置いている.その後,C言語での実装例を並べて表記し,各アルゴリズムがどのようにコーディングされるのかを解説する.さらに,OpenCVの関数を用いたプログラム(Python,C++言語)も併記し,OpenCVの利用方法を説明する. 今回,第3版に改訂するにあたり,読者からのさまざまなコメントや,我々が本書を用いて講義してきた経験をもとに,内容の理解がより促進されるように章立てを整理し,読者がより興味を惹くような内容に変更した.執筆時点における最新の開発環境に対応するため,OpenCV4系を採用し,Windows11とmacOS上での開発環境の構築について詳細な解説を加筆した.さらに,OSに依存しないGoogle Colaboratoryを用いたプログラム作成方法も加筆した.一方,情報処理技術者試験の試験要綱が2022年4月から更新され,擬似言語の記述形式が大幅に変更され,プログラムの記述方法がC言語と同等になった.そのため,第2版まで記載していた古い記述形式の擬似言語を用いたプログラムは削除することにした. 【おもな内容】 1章 画像処理とOpenCV 2章 OpenCV の導入 3章 画像入力装置と静止画・動画フォーマット 4章 デジタル画像と配列 5章 色空間 6章 濃淡変換 7章 フィルタ処理 8章 2値画像処理 9章 複数画像の利用 10章 幾何学変換 11章 距離画像処理 付録A OpenCVの描画系関数 付録B OpenCVをソースからビルドする 付録C OpenCVメインモジュール概説 姉妹書『OpenCVによるコンピュータビジョン・機械学習入門』も好評発売中! 1章 画像処理とOpenCV  1.1 身近にあるカメラと画像処理  1.2 ヒトの感覚器官  1.3 ヒトの視覚  1.4 画像処理とコンピュータビジョン  1.5 OpenCV 2章 OpenCV の導入  2.1 WindowsでOpenCVを使う  2.2 Mac(macOS)で OpenCVを使う  2.3 Google ColaboratoryでOpenCVを使う 3章 画像入力装置と静止画・動画フォーマット  3.1 画像入力装置  3.2 画像入力のための前処理  3.3 画像ファイルの生成  3.4 動画ファイルの生成  3.5 さまざまな動画撮影機器と映像インターフェース 4章 デジタル画像と配列  4.1 画像のデジタル化  4.2 さまざまなbit深度の画像  4.3 デジタル画像の座標系  4.4 画像ファイルフォーマット:PGMファイルフォーマット,PPMファイルフォーマット  4.5 デジタル画像と配列  4.6 OpenCVでの画像の扱い  4.7 C++ 言語における OpenCV ひな形プログラム  4.8 Pythonにおける OpenCV ひな形プログラム 5章 色空間  5.1 さまざまな色空間  5.2 色空間の変換  5.3 RGBからグレースケールへの変換 6章 濃淡変換  6.1 濃淡画像  6.2 ヒストグラムを用いた濃淡変換  6.3 トーンカーブによる濃淡変換  6.4 擬似濃淡変換 7章 フィルタ処理  7.1 空間フィルタ処理  7.2 平滑化フィルタ処理  7.3 エッジ検出フィルタ処理  7.4 鮮鋭化フィルタ処理 8章 2値画像処理  8.1 2値化処理  8.2 マスク処理  8.3 膨張・収縮処理  8.4 オープニング・クロージングによるノイズ除去  8.5 形状特徴パラメータ  8.6 ラベリング処理 9章 複数画像の利用  9.1 画像間演算  9.2 マスク合成  9.3 背景差分  9.4 フレーム間差分 10章 幾何学変換  10.1 線形変換  10.2 画像の再標本化と補間  10.3 同次座標の導入  10.4 アフィン変換と射影変換 11章 距離画像処理  11.1 TOF型カメラ  11.2 パターン投影型カメラ  11.3 さまざまな距離画像処理 付録A OpenCVの描画系関数 付録B OpenCVをソースからビルドする 付録C OpenCVメインモジュール概説

文系AI人材になる: 統計・プログラム知識は不要

竜司, 野口
東洋経済新報社
おすすめ度
62
紹介文
AIに仕事を奪われる前に、AIを使って自分の仕事をつくるための一冊。文系ビジネスマンに生き抜く自信をつけさせる一冊。 AI社会になって、ボクは職を失わないだろうか? 文系のワタシが、AIでキャリアアップするには? そんな不安や疑問を解消するのが本書です。 英数国理社×AI時代に対応した、AI活用の現場から生まれた実践トレーニング本。 ・専門用語は必要最低限に ・豊富な業種別事例は「自社での活用」を考えるヒントに。 ・AIとの「共働きスキル」を身につける。 AIを活用したビジネスプランを豊富に紹介。本書は、AIを、機能別に4分類、役割別に2分類し、合計4×2=8分類にわけている。その分類を用いて、事例を解説しているので、非常に理解しやすく、自分の仕事への適用・応用を検討しやすい。AIとお共働きスキルを身につけよう。 はじめに 文系AI人材になろう! 第1章 AI社会で職を失わないために 「AI失職」を恐れず「AI職」に就く準備を  「AIとの共働き」スキルを身につけよう  5つの「共働きスタイル」 第2章 文系のための AIキャリア  AIは「作る」から「使う」へ 上手に活用する「文系 AI人材」が重要に 「文系AI人材」の仕事内容とは?  「文系AI人材」になるための4つのステップ 第3章 AIのキホンは丸暗記で済ます  AI/機械学習/ディープラーニングの違い 学習方式の3分類--教師あり/教師なし/強化学習 活用タイプ別AIは4×2=8分類 「識別系AI」はこう使う 「予測系AI」はこう使う 「会話系AI」はこう使う 「実行系AI」はこう使う 出る順でAI基礎用語を丸暗記する 第4章 AIの作り方をザックリ理解する  AIは特徴づかみの名人 「予測系AI」の作り方を理解する  「識別系AI」の作り方を理解する 「会話系AI」の作り方を理解する  「実行系AI」の作り方を理解する 第5章 AI企画力を磨く  AI企画の「100本ノック」 「変化量と実現性」を担保する  AI企画の「解像度を上げる5W1H」  第6章 AI事例をトコトン知る――業種別×活用タイプ別の45事例集  第7章 文系AI人材が社会を変える  AIによる「消費者、会社、働き手」への変化 AI社会を牽引するアマゾン AI×各業界で変革を作るソフトバンク 日本の銀行で起きているAIによる変化 文系AI人材が社会をリードする おわりに

12歳からはじめる ゼロからの Pythonゲームプログラミング教室

大槻有一郎
ラトルズ
おすすめ度
62
紹介文
ミニゲームを作りながら、人工知能で話題のPythonを楽しく覚えよう!Windows 7/8/8.1/10対応。 1 Pythonをはじめよう 2 まずは簡単なことからやってみよう 3 ウィンドウを作ってみよう 4 条件分岐でプログラムに判断させよう 5 たくさんのデータをパパッと料理しよう 6 ロールプレイング風迷路を作ってみよう 7 モンスターと戦闘しよう 8 アドベンチャーゲームを作ろう

OpenCVで始める簡単動画プログラミング

洋幸, 北山
カットシステム
おすすめ度
62

図解即戦力 機械学習&ディープラーニングのしくみと技術がこれ1冊でしっかりわかる教科書

株式会社アイデミー
技術評論社
おすすめ度
62
紹介文
機械学習・ディープラーニングについて学ぶための、図解形式の解説書です。エンジニア1年生、機械学習関連企業への就職・転職を考えている人が、機械学習・ディープラーニングの基本と関連する技術、しくみ、開発の基礎知識などを一通り学ぶことができます。 1章 人工知能の基礎知識 人工知能とは 機械学習(ML)とは ディープラーニング(DL)とは 人工知能と機械学習が普及するまで 2章 機械学習の基礎知識 教師あり学習のしくみ 教師なし学習のしくみ 強化学習のしくみ 統計と機械学習の違い 機械学習と特徴量 得意な分野、苦手な分野 機械学習の活用事例 3章 機械学習のプロセスとコア技術 機械学習の基本ワークフロー データの収集 データの整形 モデルの作成と学習 バッチ学習とオンライン学習 テストデータによる予測結果の検証 学習結果に対する評価基準 ハイパーパラメータとモデルのチューニング 能動学習 相関と因果 フィードバックループ 4章 機械学習のアルゴリズム 回帰分析 サポートベクターマシン 決定木 アンサンブル学習 アンサンブル学習の応用 ロジスティック回帰 ベイジアンモデル 時系列分析と状態空間モデル k近傍(k-NN) 法とk平均(k-means)法 次元削減と主成分分析 最適化と遺伝的アルゴリズム 5章 ディープラーニングの基礎知識 ニューラルネットワークとその歴史 ディープラーニングと画像認識 ディープラーニングと自然言語処理 6章 ディープラーニングのプロセスとコア技術 誤差逆伝播法によるニューラルネットワークの学習 ニューラルネットワークの最適化 勾配消失問題 転移学習 7章 ディープラーニングのアルゴリズム 畳み込みニューラルネットワーク(CNN) 再帰型ニューラルネットワーク(RNN) 強化学習とディープラーニング オートエンコーダ GAN(敵対的生成ネットワーク) 物体検出 8章 システム開発と開発環境 人工知能プログラミングにおける主要言語 機械学習用ライブラリとフレームワーク ディープラーニングのフレームワーク GPUプログラミングと高速化 機械学習サービス

シン・ニホン AI×データ時代における日本の再生と人材育成 (NewsPicksパブリッシング)

安宅和人
NewsPicksパブリッシング
おすすめ度
62
紹介文
◎読者が選ぶビジネス書グランプリ2021 総合グランプリ受賞!! ◎ビジネス書大賞2020 特別賞(ソーシャルデザイン部門)受賞!! ◎ITエンジニア本大賞2021 ビジネス書部門 ベスト10! ◎累計17万5千部突破! 30万部超の名著『イシューからはじめよ』から9年――。 渾身の力で投げ込む、ファクトベースの現状分析と新たなる時代の展望! AI×データの発展により、時代は多面的に「確変モード」に突入した。 目まぐるしく動く社会の中、本書は以下の問いをひとつなぎにして答える。 ・現在の世の中の変化をどう見たらいいのか ・日本の現状をどう考えるべきか ・企業はどうしたらいいのか ・すでに大人の人はこれからどうサバイバルしていけばいいのか ・この変化の時代、子どもにはどんな経験を与え、育てればいいのか ・若者は、このAIネイティブ時代をどう捉え、生きのびていけばいいのか ・国としてのAI戦略、知財戦略はどうあるべきか? ・AI時代の人材育成は何が課題で、どう考えたらいいのか ・日本の大学など高等教育機関、研究機関の現状をどう考えたらいいのか ビジネス・教育・政策…全領域にファクトベースで斬り込む、著者渾身の書き下ろし! 意志なき悲観論でも、現実を直視しない楽観論でもない、建設的(Constructive)な、「残すに値する未来のつくり方」。 読者コメント 「久々にすっごい面白い本に出会った。これからの時代の生き方の教養書として面白い」 「これからの日本が進むべき道を豊富なデータと精緻なロジックで導き出している」 「新人教育やマネジメント教育に必須の本だと思う。これから日本で生きる全てのビジネスパーソンが何を目指し、何をすべきかが詳細に書かれている」 「安宅さんの『日本を何とかしたい』という熱い思いが伝わってきて、ビジネス書なのに感動しました。個人的に今年のベスト本になる予感」 「一気に読んだ。『未来をつくる人』をどう育てるか、についても多くのページが割かれている。子育て中の方にもおすすめ」 ●目次 1章 データ×AIが人類を再び解き放つ -- 時代の全体観と変化の本質 2章 「第二の黒船」にどう挑むか -- 日本の現状と勝ち筋 3章 求められる人材とスキル 4章 「未来を創る人」をどう育てるか 5章 未来に賭けられる国に -- リソース配分を変える 6章 残すに値する未来

いちばんやさしい Python入門教室

大澤 文孝
ソーテック社
おすすめ度
62
紹介文
豊富なカラー図解とイラストで超わかる!プログラムの「読み方」「書き方」「しくみ」「動かし方」を根本から理解し、作りながらしっかり学べる、すべてのビギナーに最良の入門書! 1 プログラムってなんだろう 2 Pythonを始めよう 3 Pythonでプログラムを書くときのルール 4 プログラムを構成する基本的な機能 5 数当てゲームを作ってみよう 6 数当てゲームをグラフィカルにしよう 7 クラスとオブジェクト 8 拡張モジュールを使ってみよう

Pythonでかなえる Excel作業効率化

北野 勝久
技術評論社
おすすめ度
61
紹介文
Excelは全ビジネスマン必須のアプリケーションですが、操作がめんどうだと感じたことはありませんか? 本書は、「Python」というプログラミング言語を使って、そんなめんどうな業務を自動化・効率化する方法を紹介します。プログラミングがはじめての人にもわかるように、コードの書き方からしっかり解説。ExcelやGoogleスプレッドシートでのグラフ作成やデータ収集、表計算、データ分析など、ひととおりの業務をプログラムで動かす方法がわかります。 プログラミングのはじめの一歩としてもオススメです。 ■■はじめに ■■■第1章 Pythonをはじめよう ■■1-1 Pythonの特徴 ■Column オープンソースソフトウェア(OSS)はどうして無料なの? ■■1-2 Pythonのインストール ■1-2-1 Anacondaのダウンロード ■Column Python 2? Python 3? ■1-2-2 Anacondaのインストール ■■1-3 Pythonをさわってみよう ■1-3-1 CUIの起動 ■1-3-2 Pythonの対話モードの起動 ■■1-4 PyCharmを使おう ■1-4-1 PyCharmのダウンロード ■1-4-2 PyCharmのインストール ■1-4-3 PyCharmを日本語で利用する ■1-4-4 インタープリターの設定 ■1-4-5 「hello world」と表示するプログラムの作成 ■Column PyCharmをすぐ呼び出せるようにしておこう ■■■第2章 Pythonを動かしてみよう ■■2-1 Pythonのきほん ■2-1-1 データの性質 ■2-1-2 オブジェクトと関数 ■2-1-3 計算してみよう ■2-1-4 異なるデータ型同士の計算 ■2-1-5 オブジェクトを操作する ■2-1-6 同じオブジェクトを使いまわす ■■2-2 ある条件で処理を分ける ■2-2-1 条件を判定する ■2-2-2 条件に応じて処理をする ■■2-3 オブジェクトをひとまとまりで扱う ■2-3-1 中身をあとから変更できるリスト型 ■2-3-2 中身をあとから変更できないタプル型 ■Column ミュータブルとイミュータブル ■2-3-3 キーと値をセットで扱う辞書型 ■■2-4 同じ処理を繰り返し行う ■2-4-1 要素の数だけ処理を繰り返す ■2-4-2 条件が続く限り処理を繰り返す ■2-4-3 処理の途中でループを抜け出す ■■2-5 定義した処理を実行する ■Column インデントは半角スペース4つ? ■2-5-1 関数にわたす情報・関数から戻ってくる情報 ■2-5-2 変数が使える範囲 ■Column エラーメッセージが表示されたら ■2-5-3 あらかじめ用意されている関数 ■■2-6 ファイルを機能ごとに分けて再利用する ■2-6-1 使いたいファイルを読み込ませる ■2-6-2 あらかじめ用意されているライブラリを使う ■Column サードパーティライブラリ ■■2-7 例外処理 ■■■第3章 Excel作業を自動化しよう ■■3-1 Excelファイルを操作するための準備 ■3-1-1 OpenPyXLをインストールする ■3-1-2 新しいフォルダの作成 ■3-1-3 Excelファイルをフォルダに配置する ■Column PyCharm上でのファイル移動 ■■3-2 Excelの値を表示する ■3-2-1 指定したセルの値を取得する ■Column 取得するセル位置を指定するほかの方法 ■3-2-2 複数のセルをまとめて取得する ■■3-3 Excelファイルを編集する ■3-3-1 Excelファイルを新規作成する ■3-3-2 Excelシートを追加/削除する ■3-3-3 セルの値を編集する ■3-3-4 フォントを設定する ■■3-4 Excelのレイアウトを編集する ■3-4-1 Excelの行と列の幅を設定する ■3-4-2 行と列を固定表示する ■Column #からはじまる行はなに? ■■3-5 Excelのグラフを作成する ■3-5-1 グラフが読み込むデータを決める ■3-5-2 グラフの種類を決める ■3-5-3 グラフにデータをわたす ■3-5-4 グラフをつくる ■3-5-5 データから系列をつくる ■Column PyCharmのコーディングアシスタンスについて ■Column GitやGitHubでプログラムを管理しよう ■■■第4章 Googleスプレッドシート操作も自動化しよう ■■4-1 Googleスプレッドシートを操作するための初期設定 ■4-1-1 Googleアカウントの作成 ■4-1-2 Google Cloud Platformプロジェクトの作成 ■4-1-3 スプレッドシートを操作するためのAPIを有効化する ■4-1-4 サービスアカウントを作成し、認証情報をダウンロードする ■4-1-5 利用ライブラリをインストールする ■■4-2 新しいスプレッドシートを作成する ■4-2-1 プログラムがAPIにアクセスできるよう設定する ■4-2-2 スプレッドシートを作成する ■4-2-3 スプレッドシートの共有権限を変更する ■4-2-4 スプレッドシートのURLを表示する ■Column 新しいシートを追加する ■■4-3 セルの値を取得する ■4-3-1 事前準備 ■4-3-2 スプレッドシートを開く ■4-3-3 セルの値を取得する ■■4-4 セルの値を編集する ■■■第5章 Excel作業の前工程・後工程を自動化しよう ■■5-1 フォルダ・ファイル操作 ■5-1-1 絶対パスと相対パス ■5-1-2 フォルダにあるファイルを一覧表示する ■5-1-3 フォルダを作成する ■5-1-4 ファイルの書き込みと読み込み ■Column モードオプションw、x、a の選び方 ■5-1-5 ファイルを移動する ■■5-2 文字列操作 ■5-2-1 文字列を検索する ■Column encoding オプションの指定について ■5-2-2 正規表現を使って文字列を検索する ■5-2-3 検索一致した文字列の位置を調べる ■5-2-4 文字列を置換する ■Column よりシンプルな文字列置換 ■Column format()メソッドで文字列に変数を埋め込む ■■5-3 CSVデータの処理 ■5-3-1 CSVの出力 ■Column newlineオプションの指定について ■5-3-2 CSVの読み込み ■5-3-3 CSVの加工 ■■5-4 Webからデータを取得しよう ■Column Webから情報を取得する際の注意点 ■■■第6章 表計算やデータ分析をやってみよう ■■6-1 データ分析を始める前に ■6-1-1 ExcelとPythonの使い分け ■6-1-2 データ分析の流れ ■■6-2 JupyterLabを使ってみよう ■6-2-1 JupyterLabとは ■Column Jupyter Notebookとの違いは? ■6-2-2 JupyterLabを起動する ■6-2-3 実行してみよう ■Column 新しいファイルの追加 ■6-2-4 pandasの基本的な使い方 ■■6-3 データを分析する ■6-3-1 データの準備 ■6-3-2 データを読み込む ■Column データセットの書き込み方法 ■6-3-3 データを結合する ■Column 手動でのデータ追加方法 ■Column 欠損値を補うには ■6-3-4 データを集計する ■■6-4 データを可視化する ■6-4-1 日本語フォントの使用について ■6-4-2 棒グラフを作成する ■6-4-3 折れ線グラフを作成する ■Column プログラムの書き進め方 ■■■第7章 いろんな業務を自動化してみよう ■■7-1 複数のExcelファイルに分散した売上データを分析する ■例題の説明 ■7-1-1 フォルダの中のExcelファイルを読み込む ■7-1-2 各月ごとに分かれている売上データを連結する ■Column インポートの順序とグループ化 ■7-1-3 売上データと顧客流入元データを結合する ■7-1-4 顧客流入元ごとの売上合計を集計する ■7-1-5 Excelファイルに集計データを出力する ■さらなる応用 ■■7-2 特定のルールに従って、フォルダ構成を整理する ■例題の説明 ■7-2-1 作業用フォルダにすべてのファイルをコピーする ■7-2-2 すべてのファイルを取得する ■7-2-3 取得したファイルが請求書ファイルかどうかを判別する ■Column 処理を関数にする基準は? ■7-2-4 新しいファイル名とフォルダ名を取得する ■7-2-5 新しいフォルダを作成する ■7-2-6 ファイル名変更とフォルダ移動を行う ■さらなる応用 ■■7-3 Webスクレイピングでデータを取得する ■例題の説明 ■7-3-1 対象のWebページを確認する ■Column クエリパラメータ ■7-3-2 Webページから情報を取得する ■7-3-3 CSSセレクタを確認する ■7-3-4 取得したHTMLを解析する ■7-3-5 書籍のURLを取り出す ■さらなる応用 ■Column Webページから画像を取得する ■■おわりに ■■参考文献 ■■索引 ■■読者特典

相対化する知性 人工知能が世界の見方をどう変えるのか

西山 圭太
日本評論社
おすすめ度
61
紹介文
人工知能と人間が共存する社会において、知性をどう認識し、人間はどのように生きればよいのか。3名の著者がこの問題を論じる。 人工知能と人間が共存する社会において、知性をどう認識し、人間はどのように生きればよいのか。3名の著者がこの問題を論じる。 第1部 人工知能とは  1章 人工知能のこれまで  2章 ディープラーニングとは何か  3章 ディープラーニングによる今後の技術進化  4章 消費インテリジェンス  5章 人間を超える人工知能 第2部 人工知能と世界の見方  1章 人工知能が「世界の見方」を変える  2章 認知構造はどう変わろうとしているのか  3章 強い同型論  4章 強い同型論で知能を説明する  5章 我々の「世界の見方」はどこからきてどこに向かうのか 第3部 人工知能と人間社会  1章 人工知能と人間社会  2章 自由主義の政治哲学が直面する課題  3章 人工知能とイノベーションの正義論  4章 世代間資産としての正義システム  5章 自由の根拠としての可謬性

マンガでわかる! 人工知能 AIは人間に何をもたらすのか (Informatics&IDEA)

松尾 豊
SBクリエイティブ
おすすめ度
61
紹介文
人工知能とは何か? 機械学習・ディープラーニングとは何かを、高クオリティなマンガとともに、くわしく・やさしく解説していきます。 人工知能がどのように発展してきたのか、私たちの未来をどのように変えていくのか、そして人工知能とどのように向き合っていくのかをテーマにストーリーを構成。人工知能という難しそうなテーマを、より身近に感じられるようになる一冊です。 Chapter1 人工知能の正体 ・「人間の脳」と「人工知能」 ・人工知能の定義 Chapter2 人工知能の歴史 ・人工知能の誕生-第1次AIブーム- ・コンピュータとの対話-第2次AIブーム- Chapter3 人工知能の新時代① ・第3次AIブームの始まり ・機械学習の広がりと課題 Chapter4 人工知能の新時代② ・ディープラーニングとは何か ・ディープラーニングによるブレイクするー Chapter5 人工知能と心 ・心と身体性 ・人工知能と創造性 Chapter6 人工知能が変えていく未来 ・AIを牽引する企業たち ・「眼を持つ機械」の活用 Chapter7 人工知能が人類にもたらすもの ・人工知能と倫理的課題 ・「シンギュラリティ」とその先の未来

みんなのRaspberry Pi入門 第4版

石井 モルナ
リックテレコム
おすすめ度
61
紹介文
Python3に完全対応!! お待たせしました! 大好評「みんなのRaspberry Pi入門」シリーズの第4版です。 「Raspberry Pi3」はもちろん、「Python3」にも対応させました!! 進化のとどまるところを知らないRaspberry Piは、最新OSのコードネームも「jessie」から「Stretch」へ、開発環境「IDLE」も「Thonny」に移行! すべてに対応した最新刊です。 本書の大きな特徴は、次の2つです。 1.写真と図で、本当に必要なもの、メンテナンスの方法などを丁寧に解説しました。 2.Raspberry Piの公式言語である「Python3」をしっかり、分かりやすく解説しました。 プログラミング未経験の方でもチャレンジいただけるよう、Pythonに限定しない形でのプログラミングの基礎と基本的な作法について、多くの紙面を割いております。 まさに入門者にピッタリの一冊です。

OpenCVとPythonによる機械学習プログラミング

Michael Beyeler
マイナビ出版
おすすめ度
61
紹介文
機械学習とコンピュータビジョンの知識を深め スキルを強化したい方に 機械学習の知識を深めスキルを強化したい方に ・OpenCV+scikit-learnで機械学習プログラミングを実践マスター ・統計的学習の本質的概念、決定木、サポートベクタマシン、ベイジアンネットワークなど様々なアルゴリズムとOpenCVを組み合わせて使う方法をわかりやすく解説! はしがき まえがき 訳者より・謝辞 1章 機械学習を味見してみよう 1.1 機械学習ことはじめ 1.2 機械学習で解くことのできる問題 1.3 Pythonをはじめよう 1.4 OpenCVをはじめよう 1.5 インストール 1.6 まとめ 2章 OpenCVとPythonによるデータ操作 2.1 機械学習の流れを理解する 2.2 OpenCVとPythonを使ってデータを扱う 2.3 まとめ 3章 教師あり学習の初歩 3.1 教師あり学習を理解する 3.2 クラスラベルを予測するために分類モデルを使用する 3.3 回帰モデルを使用して連続的な数値を予測する 3.4 ロジスティック回帰を用いたアヤメの分類 3.5 まとめ 4章 データ表現と特徴量エンジニアリング 4.1 特徴量エンジニアリングを理解する 4.2 データの前処理を行う 4.3 次元削減を理解する 4.4 テキスト特徴を表現する 4.5 画像を表現する 4.5 まとめ 5章 医療診断をするための決定木の使用 5.1 決定木を理解する 5.2 乳癌診断へ決定木を用いる 5.3 回帰のために決定木を使用する 5.4 まとめ 6章 サポートベクタマシン(SVM)による歩行者の検出 6.1 サポートベクタマシンを実装してみよう 6.2 非線形決定境界の導入 6.3 風景画像から歩行者を検出する 6.4 まとめ 7章 ベイズ学習による迷惑メールフィルタの実装 7.1 ベイズ推論を理解する 7.2 初めてベイズ分類器を実装する 7.3 Eメールを単純ベイズ分類器で分類する 7.4 まとめ 8章 教師なし学習で隠れた構造を発見する 8.1 教師なし学習を理解する 8.2 k-meansクラスタリングを理解する 8.3 期待値最大化を理解する 8.4 k-means法を用いた色空間の圧縮 8.5 k-meansを使用して手書き数字を分類する 8.6 クラスターを階層木として構造化する 8.7 まとめ 9章 深層学習による手書き数字分類 9.1 深層学習による手書き数字分類 9.2 パーセプトロンを理解する 9.3 最初のパーセプトロンを実装する 9.4 多層パーセプトロンを理解する 9.5 深層学習に慣れる 9.6 手書き数字を分類する 9.6 まとめ 10章 深層学習による手書き数字分類 10.1 アンサンブル法を理解する 10.2 決定木を組み合わせてランダムフォレストを作成する 10.3 顔認識のためにランダムフォレストを利用する 10.4 AdaBoostを実装する 10.5 複数のモデルを投票による分類器として統合する 10.6 まとめ 11章 ハイパーパラメータチューニングと適切なモデルの選択 11.1 モデルの評価 11.2 交差検証法を理解する 11.3 ブートストラップ法による頑健性の推定 11.4 評価結果の有意性の検証 11.5 グリッドサーチによるハイパーパラメータのチューニング 11.6 いろいろな評価指標によるモデルの評価 11.7 各種アルゴリズムの連結によるパイプラインの形成 11.8 まとめ 12章 仕上げ 12.1 機械学習問題へのアプローチ 12.2 独自の推定器の構築 12.3 これから 12.4 まとめ 索引

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング

Al Sweigart
オライリージャパン
おすすめ度
61
紹介文
手作業だと膨大に時間がかかる処理を一瞬でこなすPython 3プログラムの作り方について学べる入門書。 Pythonによる自動処理入門。とにかく、わかりやすい! ファイル名の変更や表計算のデータ更新といった作業は、日々の仕事の中で頻繁に発生します。ひとつふたつ修正するだけであれば問題はありません。しかし、それが数十、数百となってくると手に負えません。そのような単純な繰り返し作業はコンピュータに肩代わりしてもらうとすごくラクになります。本書では、手作業だと膨大に時間がかかる処理を一瞬でこなすPython 3プログラムの作り方について学びます。対象読者はノンプログラマー。本書で基本をマスターすれば、プログラミング未経験者でも面倒な単純作業を苦もなくこなす便利なプログラムを作れるようになります。さらに、章末の練習問題を解くことで、類似のタスクを自動処理するスキルをもっと高めることができます。

AIにできること、できないこと、ビジネス社会を生きていくための4つの力

藤本 浩司
日本評論社
おすすめ度
61
紹介文
現在のAI技術では何ができて何ができないのか、その実態を技術者が平易に語る。実際にAIをビジネスで活用している事例も紹介。 “AI、そこが知りたかった!  これだけ読めばモヤモヤが消える。しかも面白い。  もっとも早くからAIに携わってきた「稼げる研究者集団」が  これまでになかった「4つの力」という分かりやすいアプローチで解説。  「稼げるAI」を操る人間になりたいビジネスパーソン必読の書だ。”                幸田真音(作家) 『人工知能』著者 --------------------------------------------------------- ○ AIの本質を捉えて、AIにできること、できないことの違いがつかめる! ○ AIの実態を踏まえて、ビジネスへと活かすための要点が分かる! ○ AIに仕事を奪われないために、人は何を身につけるべきかが分かる! AIを活かすために、AIにできること、できないことを知ろう! 古くからAI研究に携わり、数多くの有名大企業でのAI導入実績を持つ テンソル・コンサルティング株式会社の社員が 現在のAIに何ができて何ができないのかを、分かりやすく、かつ面白く解説している。 仕事でAIに直接関わっているビジネスパーソンはもちろん、 AIの今後がなんとなく気になっている社会人から、 子供の将来に不安を感じている保護者の方にいたるまで、 幅広い層に読みやすくてすっきり分かる、目からウロコの指南書である。 1章 そもそもAIとはなにか     世間で言われるAIとは?     AIの歴史     活躍するAI  2章 AIの実態    AIに知性はあるのか?    今のAIの作り方    AIにできること、できないこと    AIは理解しているのか?    コラム:新しい概念の獲得 3章 AIの中身    ディープラーニングの中身    活躍するAIの中身    AIに対する疑問    コラム:重なった画像の理解 4章 AIのビジネスでの活用    役立つAIの設計指針    ビジネス活用に必要な要素    AIと人間の間違え方の違い    データサイエンティストの重要性    ビジネスでの活用事例    コラム:人間の優れた技能 5章 未来    AI分野以外の動向    AIに仕事を奪われないためには?    AIが人間を超えるまでには?    AIが人間に置き換わった未来

実践OpenCV4 for Python―画像映像情報処理と機械学習

永田 雅人
カットシステム
おすすめ度
61

人工知能プログラミングのための数学がわかる本

石川 聡彦
KADOKAWA
おすすめ度
61
紹介文
【東京大学特任准教授 松尾 豊氏 推薦】 大人気「10秒で始める人工知能プログラミング学習サービス」の代表者がおくる、 人工知能プログラミングに必要な数学を、やさしく学ぶ参考書が登場! キホンのキホンからおさらいするから、ニガテな人でも大丈夫! 後半では、Pythonのコードを動かしてさらに理解を深められます! ■本書の目的 ・人工知能関連の書籍に現れる数式への抵抗感をなくし、専門書を読むための数学基礎力をつけます。 ・いくつかの人工知能のアルゴリズムを理解し、数式の意味を理解できるようにします。 ■本書の特長 ・ゼロからおさらいするので、誰でも読めます。 ・人工知能プログラミングに必要な分野に特化しています。 ・演習問題や例題で、理解を深められます。 ■本書の対象読者 ・人工知能アルゴリズムを用いてモデリングをしているが、その根底のアルゴリズムはブラックボックスであり、数学を復習したい方。 ・人工知能アルゴリズムを体系的に学びたいが、数学を忘れており、専門書に現れる数式が理解できない方。 ・人工知能アルゴリズムに興味があるが、ハードルが高いと感じている方。 ■目次 CHAPTER 1 数学基礎 中学1 年から高校の数学を復習し、機械学習で使う数学の「入門レベル」を固めます。 CHAPTER 2 微分 微分の概念や表現方法を学びます。機械学習では「ディープラーニング(深層学習)」「ニューラルネットワーク」「最小2 乗法」「勾配降下法」「誤差逆伝播法」などで微分を活用します。 CHAPTER 3 線形代数 高校の範囲に大学1 年で学ぶ線形代数を加え、ベクトル・行列・線形変換を学びます。線形代数は膨大なデータや複雑なシステムを扱うのに役立ちます。 CHAPTER 4 確率・統計 確率・統計は「傾向を知り、限られたデータから全体像を予測する」ために、機械学習で活用されます。分散・尤度・正規分布などの難しい用語もやさしく学びます。 CHAPTER 5 実践編1 回帰モデルで住宅価格を推定してみよう 「データから住宅価格を推定する」ことを題材に、線形回帰モデルを理解します。 CHAPTER 6 実践編2 自然言語処理で文学作品の作者を当てよう 「文学作品を分析する」ことを題材に、自然言語を数学的に表現する方法などを学びます。 CHAPTER 7 実践編3 ディープラーニングで手書き数字認識をしてみよう 「手書きの数字を認識させる」ことを題材に、ディープラーニングの一種であるDNNを、画像認識から学びます。 東京大学特任准教授 松尾 豊氏 推薦! 人工知能プログラミングに必要な数学を、ゼロから抜け漏れなく、体系的に学ぶ! 数学を復習したいエンジニアに! CHAPTER1 数学基礎 CHAPTER2 微分 CHAPTER3 線形代数 CHAPTER4 確率・統計 CHAPTER5 実践編1 回帰モデルで住宅価格を推定してみよう CHAPTER6 実践編2 自然言語処理で文学作品の作者を当てよう CHAPTER7 実践編3 ディープラーニングで手書き数字認識をしてみよう

最短コースでわかる ディープラーニングの数学

赤石 雅典
日経BP
おすすめ度
61
紹介文
AIのブラックボックスを開けよう! 「ディープラーニング」の動作原理を「本当に」理解できる本です。 AIのブラックボックスを開けよう! ディープラーニングの本質を理解するために必要な「数学」を 「最短コース」で学べます! 「ディープラーニング」の動作原理を「本当に」理解できる本です。 本書では、ディープラーニングの理解には欠かせない数学を 高校1年生レベルから、やさしく解説します。 (微分、ベクトル、行列、確率など) 最短コースで理解できるように、 解説する数学の分野は必要最低限のものだけに絞り、 その相関関係を★特製の綴込マップ★にまとめました。 また、数学を使ってイチから記述したコードを Jupyter Notebook形式で提供しますので 実際に動かしながら学ぶことができます。 「ディープラーニング」の動作原理を「本当に」理解できる本です。 AIのブラックボックスを開けよう! 「ディープラーニング」の動作原理を「本当に」理解できる本です。 【導入編】 1章 機械学習入門 【理論編】 2章 微分・積分 3章 ベクトル・行列 4章 多変数関数の微分 5章 指数関数・対数関数 6章 確率・統計 【実践編】 7章 線形回帰モデル(回帰) 8章 ロジスティック回帰モデル(2値分類) 9章 ロジスティック回帰モデル(多値分類) 10章 ディープラーニングモデル 【発展編】 11章 実用的なディープラーニングを目指して ★巻頭綴じ込み★最短コースマップ

パターン認識と機械学習 上

C.M. ビショップ
丸善出版
おすすめ度
61

ラズパイ/PCで体験!計測のためのカメラ画像処理 (CQ文庫)

澤田 英宏
CQ出版
おすすめ度
61
紹介文
ラズベリー・パイとカメラで色合いや形状,明るさ,動き,サイズ,顔,人数,スクワットの上下回数などを検出します. ラズベリー・パイとその専用カメラ,オープンソースの画像処理ライブラリ OpenCVを利用して,色合いや形状,明るさ,動き,顔,サイズの検出を行います.さらにこれらを組み合わせて,通行者の人数やスクワットの上下回数などを検出します. 本書は月刊『Interface』2019年7月号の特集「カメラで測る 画像センシング[ラズパイ・カメラ便利帳付き]」の内容を再編集・加筆してまとめたものです. 目次 ●イントロダクション カメラによる画像センシングで広がる世界 ■産業分野 ■ロボット ■施設 ■自動運転 ■社会福祉 ●Appendix 1 実験に使うもの ■実験環境 ■ラズベリー・パイの操作 ●Appendix 2 体験用ラズベリー・パイの準備 ■ソフトウェアとライブラリのバージョン ■インストール ■OpenCVでPiカメラを使えるようにする ■プログラムを試す ●Appendix 3 パソコンだけでも体験できます ■画像処理ライブラリOpenCVのインストール ■開発環境Visual Studioのインストール ■サンプル・プログラムの試し方 ●Appendix 4 最低限おさえておきたい画像処理 ●第1部 基本の画像処理 1-0 プログラムと画像データ 1-1 カラー画像のグレー・スケール化 1-2 グレー・スケール画像の2値化 1-3 基本図形や文字の描画 1-4 画像をぼかす平滑化 1-5 円の検出 1-6 楕円フィッティング 1-7 色によるマスク処理 1-8 いろいろなマスク処理 1-9 明るさヒストグラム 1-10 特徴点検出 1-11 画像マッチング 1-12 背景差分を使った画像認識 1-13 ターゲットを探すカスケード分類器 1-14 テンプレート・マッチング 1-15 識別の前処理で広く使えるモルフォロジー変換 ●第2部 カメラで画像センシング 2-1 対象物の長さを測る 2-2 往復運動の回数をカウントする 2-3 侵入を検知する 2-4 通過物を数える 2-5 監視カメラを作る 2-6 ターゲットの接近を検知する 2-7 人数を数える 2-8 文字や数字を見つける 2-9 車のブレーキ・ランプを検知する 2-10 路面の白線を検知する ●第3部 覚えておくと便利なワザ 3-1 指定部分に背景を合成する「クロマキー合成」 3-2 画像の明暗を判定しノーマル/赤外線カメラを切り替える

Pythonで学ぶ実践画像・音声処理入門

伊藤 克亘
コロナ社
おすすめ度
61

やさしく学ぶ 機械学習を理解するための数学のきほん ~アヤノ&ミオと一緒に学ぶ 機械学習の理論と数学、実装まで~

立石 賢吾
マイナビ出版
おすすめ度
61
紹介文
数学がニガテでも大丈夫! 機械学習をやさしく学ぼう 「機械学習に興味があるけど、どの資料を見ても数式が出てきて、分からない・・・」 本書は、そんな方にぴったりの本です。 機械学習を勉強中のプログラマ「アヤノ」と、友達の「ミオ」の会話を通じて、楽しく学んでいきます。本書では、 ・そもそも機械学習がどうして注目を集めているのか? ・機械学習でできることにはどんなことがあるのか? ・どんな時に、回帰や分類、クラスタリングをすると有効なのか? といった基本的なところから、 ・ある問題に対して、どのように解決方法を考えればいいのか ・その解決方法を数式にするとどんな形になるのか ・実際にプログラムの形にするとどうなるのか まで、丁寧に、じっくりと説明していきます。 とくに、数式については、高校で習った数学を忘れている方でも分かるように、つまづきやすいところや理解しにくいところを重点的に解説します。 ※プログラムはPython 3で実装します Chapter1 ふたりの旅の始まり Chapter2 回帰について学ぼう ~広告費からクリック数を予測する Chapter3 分類について学ぼう ~画像サイズに基づいて分類する Chapter4 評価してみよう ~作ったモデルを評価する Chapter5 実装してみよう ~Pythonでプログラミングする

Pythonクローリング&スクレイピング[増補改訂版] -データ収集・解析のための実践開発ガイド

加藤 耕太
技術評論社
おすすめ度
61
紹介文
Pythonによるクローリング・スクレイピングの入門から実践までを解説した書籍です。2017年の初版から内容をアップデート、新ライブラリの解説などを追加した増補改訂版です。基本的なクローリングやAPIを活用したデータ収集、HTMLやXMLの解析から、データ取得後の分析や機械学習などの処理まで解説。データの収集・解析、活用がしっかりと基本から学べます。Webサービスの開発やデータサイエンスや機械学習分野で実用したい人はもちろん、基礎から解説しているのでPython初心者でもつまずかずに学習できます。多数のライブラリ、強力なフレームワークを活用して高効率に開発できます。 1. クローリング・スクレイピングとは何か 1-1. 本書が取り扱う領域 1-2. Wgetによるクローリング 1-3. スクレイピングに役立つUnixコマンド 1-4. gihyo.jpのスクレイピング 1-5. まとめ 2. Pythonではじめるクローリング・スクレイピング 2-1. Pythonを使うメリット 2-2. Pythonのインストールと実行 2-3. Pythonの基礎知識 2-4. Webページを取得する 2-5. Webページからデータを抜き出す 2-6. データをファイルに保存する 2-7. Pythonによるスクレイピングの流れ 2-8. URLの基礎知識 2-9. まとめ 3. ライブラリによる高度なクローリング・スクレイピング 3-1. HTMLのスクレイピング 3-2. XMLのスクレイピング 3-3. データベースに保存する 3-4. クローラーとURL 3-5. Pythonによるクローラーの作成 3-6. まとめ 4. 実用のためのメソッド 4-1. クローラーの特性 4-2. 収集したデータの利用に関する注意 4-3. クロール先の負荷に関する注意 4-4. 繰り返しの実行を前提とした設計 4-5. まとめ 5. クローリング・スクレイピングの実践とデータの活用 5-1. データセットの取得と活用 5-2. APIによるデータの収集と活用 5-3. 時系列データの収集と活用 5-4. オープンデータの収集と活用 5-5. Webページの自動操作 5-6. JavaScriptを使ったページのスクレイピング 5-7. 取得したデータの活用 5-8. まとめ 6. フレームワーク Scrapy 6-1. Scrapyの概要 6-2. Spiderの作成と実行 6-3. 実践的なクローリング 6-4. 抜き出したデータの処理 6-5. Scrapyの設定 6-6. Scrapyの拡張 6-7. クローリングによるデータの収集と活用 6-8. 画像の収集と活用 6-9. まとめ 7. クローラーの継続的な運用・管理 7-1. クローラーをサーバーで実行する 7-2. クローラーの定期的な実行 7-3. クローリングとスクレイピングの分離 7-4. クローリングの高速化・非同期化 7-5. クラウドを活用する 7-6. まとめ Appendix. Vagrantによる開発環境の構築 A-1. VirtualBoxとVagrant A-2. CPUの仮想化支援機能を有効にする A-3. VirtualBoxのインストール A-4. Vagrantのインストール A-5. 仮想マシンを起動する A-6. ゲストOSにSSH接続する A-7. Pythonのスクリプトファイルを実行する A-8. Linuxの基本操作 A-9. Vagrantで仮想マシンを操作するコマンド

Pythonと実例で学ぶ機械学習: 識別・予測・異常検知

健一, 福井
オーム社
おすすめ度
61
紹介文
機械学習による機器の振動データに対する異常検知 、時系列データ(例として睡眠系列データ)に対する解析を解説。 機械学習による異常検知と系列データ解析を実例をもとに学ぶ  本書は、現在産業界で注目されている、機械学習による ・機器の振動データに対する異常検知 ・系列データ(例として睡眠系列データ)に対する解析 を解説したものです。  業務や研究開発に必要だが機械学習については素人という方でも実践できるように、本書前半では、基本的な識別器・予測器のPythonによる実装例・使い方を解説しています。後半では、実問題への適用例を著者の研究経験をもとに解説しています。 第1章 機械学習とは何か 第2章 基本的な識別器・予測器 第3章 機器の振動データに対する異常検知 第4章 系列データの解析

Pythonでつくる ゲーム開発 入門講座

廣瀬 豪
ソーテック社
おすすめ度
61
紹介文
大手メーカーで活躍してきたクリエイターが ゲーム開発のノウハウをゼロから教えます! 本書はPythonを使用した、ゲームプログラミングの解説書です。 類書とは異なり、終始一貫「ゲーム開発」に焦点を当て、 今書いているプログラムがどのような"動き"に反映され、 どのような"面白さ"に結びつくのかを、正しく学ぶことができます。 一般的なソフト開発ではなく「ゲーム開発の作法」をきちんと学ぶことによって、ゲーム好きな読者の皆さんの就職や趣味といったリアルな世界がより充実してくれることを願い、出版されました。 【読者対象】 ○ゲーム業界に就職したい学生・社会人 ○SNSや同人で自作ゲームを発表したい方 ○落ち物パズル、RPGの作り方を知りたい方 ○一般ソフトとゲーム制作の違いを知りたい方 ○Pythonを始めたけど作るものが浮かばない方 ……高校生ぐらいから読めます! 【本書の特長】 ○業界の基礎知識やプログラマーの役割からきちんと解説 ○Pythonの基本文法をしっかり解説、プログラミング初心者も安心 ○プログラム1行ごとに説明を付けており、理解しやすい ○豊富な図解とイラストを用い、イメージで理解できる ○開発に必要な素材はすべて無償ダウンロードできる クイズ、すごろく、おみくじ、診断アプリ、迷路、自動生成ダンジョン、落ち物パズル、本格PRGなど……簡単なミニゲームから難しいものまで幅広く教材を用意しています。 さらに、読者特典として3つのおまけゲームもプレゼント! すべてのゲームをつくり終えた時、あたなのプログラミングスキルは何倍にも向上しているに違いありません。 本書を機に、ぜひゲームプログラミングの世界に飛び込んでみてください! Prologueゲームプログラマーになろう! Chapter 1 Pythonのインストール Lesson 1-1 Pythonとは? Lesson 1-2 Pythonのインストール Lesson 1-3 Pythonを起動しよう COLUMN ゲームクリエイターって儲かるの? Chapter 2 Pythonを始めよう Lesson 2-1 計算してみる Lesson 2-2 文字列を出力する Lesson 2-3 カレンダーを出力する Lesson 2-4 プログラミングの準備 Lesson 2-5 プログラムを記述しよう Lesson 2-6 入出力命令を知ろう Lesson 2-7 プログラムの記述の仕方 COLUMN ゲームが完成するまで Chapter 3 プログラミングの基礎を学ぼう Lesson 3-1 変数と計算式 Lesson 3-2 リストについて Lesson 3-3 条件分岐について Lesson 3-4 繰り返しについて Lesson 3-5 関数について COLUMN ゲームの開発費はどれくらい? その1 Chapter 4 importの使い方 Lesson 4-1 モジュールについて Lesson 4-2 カレンダーの復習 Lesson 4-3 日時を扱う Lesson 4-4 乱数の使い方 COLUMN RPGで逃げるのに失敗する確率 Chapter 5 CUIでつくるミニゲーム Lesson 5-1 CUIとGUI Lesson 5-2 クイズゲームを作る Lesson 5-3 すごろくを作る Lesson 5-4 消えたアルファベットを探すゲームを作る COLUMN ゲームの開発費はどれくらい? その2 Chapter 6 GUIの基礎1 Lesson 6-1 GUIについて Lesson 6-2 ラベルを配置する Lesson 6-3 ボタンを配置する Lesson 6-4 キャンバスを使う Lesson 6-5 おみくじを引くソフトを作る COLUMN キャンバスに図形を表示する Chapter 7 GUIの基礎2 Lesson 7-1 テキスト入力欄を配置する Lesson 7-2 複数行のテキスト入力欄を配置する Lesson 7-3 チェックボタンを配置する Lesson 7-4 メッセージボックスを表示する Lesson 7-5 診断ゲームを作る COLUMN RGBによる色指定 Chapter 8 本格的なゲーム開発の技術 Lesson 8-1 リアルタイム処理を実現する Lesson 8-2 キー入力を受け付ける Lesson 8-3 キー入力で画像を動かす Lesson 8-4 迷路のデータを定義する Lesson 8-5 二次元画面のゲーム開発の基礎 COLUMN ゲームソフトを完成させるには Lesson 8-6 ゲームとして完成させる COLUMN デジタルフォトフレームを作る Chapter 9 落ち物パズルを作ろう! Lesson 9-1 ゲームの仕様を考える Lesson 9-2 マウス入力を組み込む Lesson 9-3 ゲーム用のカーソルの表示 Lesson 9-4 マス上のデータを管理する Lesson 9-5 ブロックを落下させるアルゴリズム Lesson 9-6 クリックしてブロックを置く Lesson 9-7 ブロックが揃ったかを判定するアルゴリズム Lesson 9-8 正しいアルゴリズムを組み込む Lesson 9-9 タイトル画面とゲームオーバー画面 Lesson 9-10 落ち物パズルの完成 COLUMN winsoundで音を鳴らす Chapter 10 Pygameの使い方 Lesson 10-1 Pygameのインストール Lesson 10-2 Pygameのシステム Lesson 10-3 画像を描画する Lesson 10-4 図形を描画する Lesson 10-5 キー入力を行う Lesson 10-6 マウス入力を行う Lesson 10-7 サウンドを出力する COLUMN Pygameで日本語を使う Chapter 11 本格RPGを作ろう! 前編 Lesson 11-1 ロールプレイングゲームについて Lesson 11-2 迷路を自動生成する Lesson 11-3 ダンジョンを作る Lesson 11-4 ダンジョン内を移動する Lesson 11-5 戦闘シーンを作る その1 Lesson 11-6 戦闘シーンを作る その2 Lesson 11-7 戦闘シーンを作る その3 COLUMN ゲームの画面演出 287 Chapter 12 本格RPGを作ろう! 後編 Lesson 12-1 ロールプレイングゲームの全体像 Lesson 12-2 ファイルのダウンロードとプログラムの実行 Lesson 12-3 プログラムリスト Lesson 12-4 プログラムの詳細 COLUMN Pythonでのファイル処理 Chapter 13 オブジェクト指向プログラミング Lesson 13-1 オブジェクト指向プログラミングについて Lesson 13-2 クラスとオブジェクト Lesson 13-3 tkinterを使ってオブジェクト指向を学ぶ Lesson 13-4 オブジェクト指向プログラミングをもっと学ぶ COLUMN 筆者も苦労したオブジェクト指向プログラミング Appendix 池山高校Python研究部 Intro ゲームをつくろう! 1つ目 一筆書き迷路ゲーム 2つ目 英単語学習ソフト 3つ目 ブロック崩し

音声認識 (機械学習プロフェッショナルシリーズ)

篠田 浩一
講談社
おすすめ度
61
紹介文
基礎理論はコンパクトにまとめ、「耐雑音」「話者認識」「深層学習」についてたっぷり解説。音声認識分野がこれ一冊で学べる! 音声の信号処理についての知識ゼロでも読めるように、懇切丁寧に解説した。基礎理論はコンパクトにまとめ、「耐雑音」「話者認識」「深層学習」についてたっぷり解説。一気に実用が進んだ音声認識分野がこれ一冊で学べる! ■おもな内容 第1章 音声とは 第2章 音声分析 第3章 音声認識とは 第4章 隠れマルコフモデル 第5章 言語モデル 第6章 大語彙連続音声認識 第7章 耐雑音音声認識 第8章 話者適応と話者認識 第9章 深層学習 ■機械学習プロフェッショナルシリーズ 本シリーズでは、発展著しい機械学習技術の数学的な基礎理論、実用的なアルゴリズム、それらの活用法を、全29巻にわたって刊行する。 ビッグデータ時代を牽引している若手・中堅の現役研究者が、入門的な内容から最先端の研究成果までをわかりやすく解説。 これからデータサイエンス分野で研究を始めようとしている大学生・大学院生、および、機械学習技術を基礎科学や産業に応用しようとしている研究者・技術者に向けた注目のシリーズである。 ■シリーズ編者 杉山 将 理化学研究所 革新知能統合研究センター センター長/東京大学大学院新領域創成科学研究科 教授 第1章 音声とは  1.1 音の知覚  1.2 音声の生成  1.3 音韻と音素 第2章 音声分析  2.1 前処理  2.2 音声特徴量  2.3 音声特徴量の量子化 第3章 音声認識とは  3.1 音声認識の分類  3.2 DPマッチング 第4章 隠れマルコフモデル  4.1 確率モデルを用いたパターン認識  4.2 マルコフ過程  4.3 隠れマルコフモデルとは  4.4 音声認識のための隠れマルコフモデル  4.5 HMMを用いたパターン認識 第5章 言語モデル  5.1 言語の複雑さの尺度  5.2 確率的言語モデル  5.3 形態素解析 第6章 大語彙連続音声認識  6.1 サブワード認識単位を用いた学習・認識  6.2 音素文脈決定木を用いたクラスタリング  6.3 発音辞書  6.4 探索技術  6.5 識別学習 第7章 耐雑音音声認識  7.1 雑音とは  7.2 加算性雑音  7.3 乗算性雑音  7.4 非定常雑音への対応 第8章 話者適応と話者認識  8.1 話者適応とは  8.2 事後確率最大化法  8.3 最尤線形回帰法  8.4 話者正規化  8.5 話者認識とは  8.6 i-vectorを用いた話者照合 第9章 深層学習  9.1 ニューラルネットワーク  9.2 誤差逆伝播法  9.3 ニューラルネットワークによる音声認識  9.4 音声認識のための深層学習  9.5 音声認識の要素技術における深層学習  9.6 End-to-End学習  9.7 今後の展望

Pythonの絵本 Pythonを楽しく学ぶ9つの扉

株式会社アンク
翔泳社
おすすめ度
61
紹介文
人気の絵本シリーズにPython登場、人気の言語を手早くマスター 手軽に学びたい人の味方!人気の絵本シリーズにPython登場! Pythonはコンパイラを使わずに実行できるインタープリタ型の言語でありながら、データ分析など最新のコンピューティングの現場でひろく活用されています。 本書では「プログラミングについて何も知らないこと」を前提に、基本からPythonを解説し、さらにリストや関数といった特徴ある機能を紹介していきます。また、章末でプログラミングサンプルを紹介するなど、実戦的な内容も含まれています。 本書には次のような特長があります。 ・絵を多用し、短い解説で絵本のようにビジュアルに理解することができます ・2ページを単位とした説明、基礎に絞り込んだ内容でスピーディに学習できます ・予備知識は不要。「プログラミングとはなにか」から入門できます ・Pythonの特徴などや実行の仕組みなど、知識として知っておきたい事柄もフォロー ・クラス/オブジェクトの基本も解説。オブジェクト指向の基礎にも入門できます 【翔泳社の「絵本」シリーズのラインナップをアップデート】 翔泳社の「絵本シリーズ」は、豊富なイラストと簡潔な解説でコンピュータ技術に入門できる初心者向けのシリーズです。言語/技術の超初心者や手軽に習得したい方に最適な入門書です。 新しい「絵本シリーズ」では、旧来の分かりやすさ、親しみやすさ、基礎に徹した内容というコンセプトはそのままに、Web/ネットが全盛となった現在のコンピュータ技術の潮流に合わせた解説を心掛けます。『Cの絵本』『Javaの絵本』を皮切りにラインナップを順次刷新、さらに新しい仲間を増やしてラインナップを充実させていきます。 Pythonの勉強をはじめる前に 第1章 基本的なプログラム 第2章 計算の演算子 第3章 リスト 第4章 制御文 第5章 関数 第6章 文字列 第7章 ファイルと例外処理 第8章 クラスとオブジェクト 付録

実践 コンピュータビジョン

Jan Erik Solem
オライリージャパン
おすすめ度
61
紹介文
コンピュータビジョンの理論とアルゴリズムを基礎から学べる実践的な入門書。理論の説明にとどまらず、ベクトル演算や行列演算を駆使したサンプルを示しながら物体認識、3次元復元、ステレオ画像、拡張現実感、その他の応用について解説します。サンプルプログラムはPython2.7で書かれています。 基本的な画像処理 画像の局所記述子 画像間の写像 カメラモデルと拡張現実感 多視点幾何 画像のクラスタリング 画像検索 画像認識 画像の領域分割 OpenCV 付録A パッケージのインストール方法 付録B 画像のデータセット 付録C 画像の出典

コンピュータビジョン ―広がる要素技術と応用― (未来へつなぐ デジタルシリーズ 37)

米谷 竜
共立出版
おすすめ度
61
紹介文
 コンピュータによる視覚(ビジョン)機能を実現することを目的としたコンピュータビジョンは1970年代からはじまる学問分野であり,カメラで撮影された画像や映像に映る対象を理解するための様々な技術が長らく研究開発されてきた。特に近年は,深層学習をベースとした人工知能技術の発展とあいまって,基礎,応用の両面で急速な進歩を遂げている。また,仮想現実や拡張現実,マルチメディア,インタラクションなど様々な分野への応用も期待されている。  このような背景をのもと,本書『コンピュータビジョン―広がる要素技術と応用―』は,カメラキャリブレーションやカメラ位置姿勢推定,多視点幾何やフォトメトリックステレオによる3次元復元といった黎明期からの主要技術に加え,顔認識,人物属性認識,行動認識,重要領域検出,RGBD画像を用いた3次元物体認識,画像のキャプショニングといった応用技術,さらには近似最近傍探索,マルコフ確率場の推論と学習,凸最適化といった基盤技術をカバーする13章から構成される。本書を通して,コンピュータビジョン分野において最近注目を集めるトピックに関する基盤理論や原理,近年の重要文献,さらには実装方法を学べることが期待される。 第1章 コンピュータビジョンの概要 第2章 カメラキャリブレーション 第3章 多視点画像を用いた3次元復元 第4章 拡張現実感のためのコンピュータビジョン技術 第5章 フォトメトリックステレオ 第6章 近似最近傍探索 第7章 マルコフ確率場の推論と学習 第8章 コンピュータビジョンにおける凸最適化 第9章 顔認識 第10章 人物属性認識 第11章 単視点からの人物行動認識 第12章 重要領域の抽出 第13章 RGBD画像と3次元物体認識 第14章 画像キャプションの自動生成

Python実践入門 ── 言語の力を引き出し、開発効率を高める (WEB+DB PRESS plusシリーズ)

陶山 嶺
技術評論社
おすすめ度
61
紹介文
Pythonはここ数年で日本語の書籍も増え、開発現場での利用実績も着実に増えてきています。ご自身の第二、第三の言語の選択肢としてPythonが気になっているという方も多いのではないでしょうか。また、「Pythonを始めてみたけど、実際に業務で利用するには不安が残る」「コードレビューに怯えながらPythonを書いている」という方も多いのではないでしょうか。 本書は、そういった方を対象に、Pythonという言語が持つ機能の実践的な使い方を紹介します。Pythonは、日常的なツールからWeb開発、データ分析、機械学習など分野を問わず利用できる汎用性の高い言語です。本書も同じく、Pythonという言語の仕様やその特徴的な機能、標準ライブラリでできることを中心に扱うため、分野を問わず活用していただけます。 □第1章 Pythonはどのような言語か 1.1 プログラミング言語としての特徴 シンプルで読みやすい動的型付き言語 インデントによるブロックの表現 教育用プログラミング言語ABCの影響 後方互換性の重視 豊富な標準ライブラリ さまざまな用途での利用 1.2 Pythonの歴史と現況 Python自体の進化 Pythonの誕生 Python 2系でメジャーな言語に Python 3系への移行 現在のPythonの状況 Pythonを取り巻く環境の変化 1.3 Pythonコミュニティの特徴 コミュニティ主体のOSS PyCon ── Pythonユーザーが集まるカンファレンス PEPの存在 PEP 8:Style Guide for Python Code ── Python標準のスタイルガイド PEP 20:The Zen of Python ── Pythonの設計ガイドライン PEP 257:Docstring Conventions ── ドキュメントの書き方 1.4 本章のまとめ □第2章 Pythonのインストールと開発者向けの便利な機能 2.1 Pythonのインストール OSにプリインストールされているPython macOSでの利用 公式インストーラを利用したインストール Windowsでの利用 公式インストーラを利用したインストール Ubuntuでの利用 APTを利用したインストール そのほかのLinuxでの利用 Dockerの利用 公式イメージを利用したPythonの実行 スクリプトファイルの実行 2.2 Pythonの実行 本書で利用するpythonコマンド Pythonインタプリタの2つのモード 対話モードのインタプリタ 対話モードの基本的な使い方 対話モードでよく使う組み込み関数 type() ── オブジェクトの型を調べる dir() ── オブジェクトの属性を調べる help() ── ヘルプページを表示する Docstringを使ったヘルプページの作成 スクリプトの実行 モジュールをスクリプトとして実行 pythonコマンドとpython3コマンドの違い 2.3 本章のまとめ □第3章 制御フロー 3.1 基本となる文法 インデントによるブロックの表現 インデントの幅 pass文 ── 何もしないことの宣言 変数の利用 型の宣言がいらない理由 コメント コメントとDocstringの違い 3.2 条件分岐 if文 ── 条件を指定した処理の分岐 真となる値、偽となる値 シンプルな条件式 if文でよく使う数値の比較 if文でよく使うオブジェクトの比較 3.3 ループ ── 処理の繰り返し for文 ── 要素の数だけ処理を繰り返す for文でよく使う組み込み関数 for文のelse節の挙動 for文での変数のスコープ while文 ── 条件を指定した処理の繰り返し while文のelse節の挙動 break文 ── ループを抜ける continue文 ── 次のループに移る 3.4 例外処理 try文 ── 例外の捕捉 except節 ── 例外が発生したときのみ実行する else節 ── 例外が発生しなかったときのみ実行する finally節 ── 例外の有無にかかわらず必ず実行する raise文 ── 意図的に例外を発生させる 独自の例外を定義する with文 ── 定義済みのクリーンアップ処理を必ず実行する 3.5 本章のまとめ □第4章 データ構造 4.1 None ── 値が存在しないことを表現する 条件式でのNoneの利用 4.2 真理値 ── 真/偽を扱う bool型 ── 真理値を扱う型 ブール演算 x or y ── xが真ならx、そうでなければyを返す x and y ── xが真ならy、そうでなければxを返す not x ── xが真ならFalse、そうでなければTrueを返す 4.3 数値 数値どうしの演算 数値を扱う組み込み型 int型 ── 整数を扱う型 float型 ── 浮動小数点数を扱う型 complex型 ── 複素数を扱う型 条件式での数値の利用 4.4 文字列 str型 ── 文字列を扱う型 文字列の演算 for文での文字列の挙動 条件式での文字列の利用 文字列内での変数の利用 f-string ── 式を埋め込める文字列リテラル format() ── 引数に渡した変数で文字列を置換するメソッド %演算子 ── 一番古い文字列フォーマット str型とよく似たbytes型 str.encode()とbytes.decode()を利用した相互変換 Python 2系とPython 3系の文字列の違い 4.5 配列 ── 要素を1列に並べて扱う list型 ── 可変な配列を扱う型 要素の追加と削除 インデックスによる要素へのアクセス スライスによるリストの切り出し tuple型 ── 不変な配列を扱う型 タプル作成時の注意点 インデックスによる要素へのアクセス スライスによるタプルの切り出し for文での配列の挙動 条件式で使える配列の性質 タプルとリストの使い分け 4.6 辞書 ── キーと値のセットを扱う dict型 ── 辞書を扱う型 要素の追加と削除 キーによる要素へのアクセス キーに使えるオブジェクトの条件 for文での辞書の挙動 条件式で使える辞書の性質 4.7 集合 ── 一意な要素の集合を扱う set型 ── 可変な集合を扱う型 要素の追加と削除 frozenset型 ── 不変な集合を扱う型 集合の演算 ── 和、積、差、対称差 for文での集合の挙動 条件式で使える集合の性質 4.8 内包表記 ── 効率的なシーケンスの生成 リスト内包表記 ── 効率的なリストの生成 ネストしたリストの内包表記 if文のある内包表記 そのほかの内包表記 4.9 そのほかの型を表す概念 可変オブジェクト ── 定義後に値を変更できるオブジェクト 不変オブジェクト ── 定義後に値を変更できないオブジェクト コンテナオブジェクト ── ほかのオブジェクトへの参照を持つオブジェクト イテラブルなオブジェクト ── for文で使えるオブジェクト 呼び出し可能オブジェクト ── ()を付けて呼び出せるオブジェクト 4.10 本章のまとめ □第5章 関数 5.1 関数 ── 関連する処理をまとめる 関数の定義と実行 引数を取る関数 関数はオブジェクト 関数の戻り値 returnがない場合の戻り値 関数のさまざまな引数 位置引数 ── 仮引数名を指定しない実引数の受け渡し キーワード引数 ── 仮引数名を指定した実引数の受け渡し デフォルト値のある引数 ── 実引数を省略できる仮引数 可変長の位置引数 可変長のキーワード引数 キーワードのみ引数 ── 呼び出し時に仮引数名が必須になる引数 位置のみ引数 ── 呼び出し時に仮引数名を指定できない引数 引数リストのアンパック ── リストや辞書に格納された値を引数に渡す 関数のDocstring 5.2 lambda式 ── 無名関数の作成 lambda式の定義と実行 lambda式の使いどころ 5.3 型ヒント ── アノテーションで関数に型情報を付与する 型情報を付与するのメリット 型情報の付与 変数への型情報の付与 型ヒントの活用例 ── 静的解析ツールの利用 5.4 本章のまとめ □第6章 クラスとインスタンス 6.1 Pythonのクラス機構 classキーワードによるクラスの定義 インスタンスの作成 6.2 インスタンス ── クラスをもとに生成されるオブジェクト インスタンスメソッド ── インスタンスに紐付くメソッド インスタンス変数 ── インスタンスが保持する変数 インスタンスの初期化 __init__() ── インスタンスの初期化を行う特殊メソッド 引数を渡してインスタンス化する __init__()と__new__()の違い ── イニシャライザとコンストラクタ __new__()の注意点 プロパティ ── インスタンスメソッドをインスタンス変数のように扱う property ── 値の取得時に呼び出されるメソッド setter ── 値の設定時に呼び出されるメソッド クラスやインスタンスのプライベートな属性 アンダースコアから始まる属性 アンダースコア2つから始まる属性 プライベートな属性に対するPythonコミュニティの考え方 6.3 クラス ── インスタンスのひな型となるオブジェクト クラス変数 ── クラスオブジェクトが保持する変数 クラス変数にはインスタンスからも参照可能 クラスメソッド ── クラスに紐付くメソッド スタティックメソッド ── 関数のように振る舞うメソッド 6.4 クラスの継承 メソッドのオーバーライドとsuper()による基底クラスへのアクセス すべてのオブジェクトはobjectクラスのサブクラス 多重継承 ── 複数の基底クラスを指定する 多重継承の注意点 属性__mro__を利用したメソッド解決順序の確認 6.5 本章のまとめ □第7章 モジュールとパッケージ、名前空間とスコープ 7.1 モジュール ── コードを記述した.pyファイル モジュールの作成 モジュールのインポート python3コマンドから直接実行する 引数を取得する 直接実行したときのみ動くコード if __name__ == '__main__':ブロックの意味 変数__name__に格納される値 7.2 パッケージ ── モジュールの集合 パッケージの作成 パッケージ内のモジュールのインポート __init__.py ── パッケージの初期化を行う __init__.pyの便利な使い方 import文の比較 import文のみを利用したインポート from節を利用して特定の属性をインポートする .を利用した相対インポート ワイルドカードを利用して複数の属性を一括インポートする as節による別名の付与 7.3 インポートのしくみ モジュール検索の流れ sys.path ── モジュールの検索パス 検索パスの優先度 PYTHONPATH ── sys.pathに検索パスを追加する 7.4 名前空間と変数のスコープ 名前空間 ── 名前とオブジェクトのマッピング 名前空間の活用 スコープ ── 直接アクセス可能な領域 ローカルスコープ ── 関数内に閉じたスコープ グローバルスコープ ── モジュールトップレベルのスコープ ビルトインスコープ ── 組み込みオブジェクトのスコープ エンクロージングスコープ ── 現在のローカルスコープの1つ外側のスコープ 7.5 本章のまとめ □第8章 組み込み関数と特殊メソッド 8.1 組み込み関数 ── いつでも利用できる関数 オブジェクトの型を調べる関数 isinstance()、issubclass() ── 動的な型判定 callable() ── 呼び出し可能オブジェクトを判定 オブジェクトの属性に関する関数 hasattr() ── オブジェクトの属性の有無を判定 getattr()、setattr()、delattr() ── オブジェクトの属性を操作する イテラブルなオブジェクトを受け取る関数 zip() ── 複数のイテラブルの要素を同時に返す sorted() ── イテラブルの要素を並べ替える filter() ── イテラブルの要素を絞り込む map() ── すべての要素に関数を適用する all()、any() ── 真理値を返す そのほかの組み込み関数 8.2 特殊メソッド ── Pythonが暗黙的に呼び出す特別なメソッド __str__()、__repr__() ── オブジェクトを文字列で表現する __bool__() ── オブジェクトを真理値で評価する __call__() ── インスタンスを関数のように扱う 属性への動的なアクセス __setattr__() ── 属性への代入で呼び出される __delattr__() ── 属性の削除で呼び出される __getattr__()、__getattribute__() ── 属性アクセスで呼び出される イテラブルなオブジェクトとして振る舞う __iter__() ── イテレータオブジェクトを返す __next__() ── 次の要素を返す コンテナオブジェクトとして振る舞う __getitem__()、__setitem__() ── インデックスやキーによる操作 __contains__() ── オブジェクトの有無を判定する そのほかの特殊メソッド 8.3 本章のまとめ □第9章 Python特有のさまざまな機能 9.1 ジェネレータ ── メモリ効率のよいイテラブルなオブジェクト ジェネレータの具体例 ジェネレータの実装 ジェネレータ関数 ── 関数のように作成する ジェネレータ式 ── 内包表記を利用して作成する yield from式 ── サブジェネレータへ処理を委譲する ジェネレータを利用する際の注意点 len()で利用する場合 複数回利用する場合 ジェネレータの実例 ── ファイルの内容を変換する そのほかのユースケース 9.2 デコレータ ── 関数やクラスの前後に処理を追加する デコレータの具体例 functools.lru_cache() ── 関数の結果をキャッシュする関数デコレータ dataclasses.dataclass() ── よくある処理を自動追加するクラスデコレータ デコレータの実装 シンプルなデコレータ 引数を受け取る関数のデコレータ デコレータ自身が引数を受け取るデコレータ 複数のデコレータを同時に利用する functools.wraps()でデコレータの欠点を解消する デコレータの実例 ── 処理時間の計測 そのほかのユースケース 9.3 コンテキストマネージャー ── with文の前後で処理を実行するオブジェクト コンテキストマネージャーの具体例 コンテキストマネージャーの実装 __enter__()、__exit__() ── with文の前後に呼ばれるメソッド with文と例外処理 asキーワード ── __enter__()の戻り値を利用する contextlib.contextmanagerでシンプルに実装する コンテキストマネージャーの実例 ── 一時的なログレベルの変更 そのほかのユースケース 9.4 デスクリプタ ── 属性処理をクラスに委譲する デスクリプタの具体例 デスクリプタの実装 __set__()を実装する ── データデスクリプタ __get__()のみを実装する ── 非データデスクリプタ デスクリプタの実例 ── プロパティのキャッシュ そのほかのユースケース 9.5 本章のまとめ □第10章 並行処理 10.1 並行処理と並列処理 ── 複数の処理を同時に行う 逐次処理で実行する 並行処理で実行する 並列処理で実行する Pythonと並行処理 並行処理と非同期処理の関係 10.2 concurrent.futuresモジュール ── 並行処理のための高水準インタフェース FutureクラスとExecutorクラス ── 非同期処理のカプセル化と実行 ThreadPoolExecutorクラス ── スレッドベースの非同期実行 スレッドベースの非同期実行が効果的なケース ThreadPoolExecutorクラスを利用したマルチスレッド処理の実例 逐次処理で実装 マルチスレッドで実装 マルチスレッドの注意点 マルチスレッドでの動作に問題がある実装 スレッドセーフな実装 ProcessPoolExecutorクラス ── プロセスベースの非同期実行 プロセスベースの非同期実行が効果的なケース ProcessPoolExecutorクラスを利用したマルチプロセス処理の実例 逐次処理で実装 マルチプロセスで実装 マルチプロセスの注意点 pickle化できるオブジェクトを使う 乱数の取り扱い方 10.3 asyncioモジュール ── イベントループを利用した並行処理を行う コルーチン ── 処理の途中で中断、再開する async構文を使ったコルーチンの実装 await構文を使ったコルーチンの呼び出しと中断 コルーチンの並行実行 コルーチンのスケジューリングと実行 イベントループ ── asyncioモジュールの中心的な機構 タスク ── スケジューリングしたコルーチンをカプセル化 非同期I/O ── イベントループに適したI/O処理 同期I/Oを利用する処理のタスク化 asyncioモジュールとHTTP通信 aiohttp ── 非同期I/Oを利用するHTTPクライアント兼サーバライブラリ 10.4 本章のまとめ □第11章 開発環境とパッケージの管理 11.1 仮想環境 ── 隔離されたPython実行環境 venv ── 仮想環境作成ツール venvのしくみ 仮想環境の有効化、無効化 仮想環境内でのpythonコマンド 仮想環境内でパッケージを利用する 複数のプロジェクトを並行して開発する 11.2 パッケージの利用 pip ── パッケージ管理ツール 基本的な使い方 パッケージのインストール パッケージのアンインストール PyPI ── Pythonパッケージのリポジトリ ソースコードリポジトリにあるパッケージをインストールする ローカルにあるパッケージをインストールする インストール済みのパッケージをアップデートする 現在のユーザー用にインストールする 環境の保存と再現 ── requirementsファイルの活用 現在の環境の情報をrequirementsファイルに保存する requirementsファイルから環境を再現する 開発環境でのみ利用するパッケージの管理 依存パッケージのアップデート 11.3 パッケージの作成 setup.py ── パッケージの情報をまとめたファイル パッケージのディレクトリ構成 setup.pyの基本 PyPIへの登録を考慮する 依存パッケージを考慮する .py以外のファイルを考慮する PyPIへのパッケージの登録 PyPIのアカウント作成 配布物の作成 配布物のアップロード 11.4 本章のまとめ □第12章 ユニットテスト 12.1 ユニットテストの導入 単一モジュールのテスト テスト実行コマンドの簡略化 パッケージのテスト ディレクトリ構成 サンプルアプリケーションの作成 12.2 unittestモジュール ── 標準のユニットテストライブラリ テストケースの実装 前処理、後処理が必要なテストケース テストの実行と結果の確認 テスト失敗時の結果 テスト失敗時の結果を抑制する 特定のテストのみを実行する テストケースを直接指定 テストディスカバリ 12.3 unittest.mockモジュール ── モックオブジェクトの利用 モックオブジェクトの基本的な使い方 任意の値を返す呼び出し可能オブジェクトとして利用する アサーションメソッドで呼び出され方をテストする patchを使ったオブジェクトの置き換え mockを利用するテストケースの実例 12.4 ユースケース別のテストケースの実装 環境依存のテストをスキップする 例外の発生をテストする 違うパラメータで同じテストを繰り返す コンテキストマネージャーをテストする 12.5 本章のまとめ □第13章 実践的なPythonアプリケーションの開発 13.1 作成するアプリケーション LGTM画像を自動生成するコマンドラインツール 利用する主な外部パッケージ requests ── HTTPクライアントライブラリ Click ── コマンドラインツール作成ライブラリ Pillow ── 画像処理ライブラリ 13.2 プロジェクトの作成 Gitの利用 .gitignoreファイルの作成 GitHubでのソースコード管理 パッケージのひな型作成 lgtmパッケージの作成 テストコードの作成 13.3 継続的インテグレーションの導入 CircleCIでテスト自動化 プロジェクトの追加 config.ymlの追加 テストの実行と結果の確認 13.4 アプリケーションの開発 コマンドライン引数の取得 画像のソース情報とメッセージを受け取る テストコードの修正 画像の取得 ファイルパスから画像を取得するクラスの実装 URLから画像を取得するクラスの実装 検索キーワードから画像を取得するクラスの実装 画像を取得するクラスの利用 画像処理 文字列を画像上に描画する最小限の実装例 文字列を中央に最適なサイズで描画する 各処理の呼び出し 13.5 コマンドとして実行する setup.pyの作成 entry_points ── スクリプトインタフェースの登録を行う引数 動かしてみよう 13.6 本章のまとめ

エキスパートPythonプログラミング改訂2版

Michal Jaworski
KADOKAWA
おすすめ度
61
紹介文
卓越したPythonプログラマになるための必読書 本書は、Pythonを使って仕事をしている開発者が普段どのようなツールやテクニックを用いて仕事をしているのか、また開発者が実際に現場で用いているベストプラクティスについて解説した書籍です。本書を読むことで、先進的なPythonプログラマが日常的に使用している開発ノウハウを学ぶことができます。 第1章 現在のPythonのステータス 第2章 構文ベストプラクティス ― クラス以外 第3章 構文ベストプラクティス ― クラスの世界 第4章 良い名前を選ぶ 第5章 パッケージを作る 第6章 コードをデプロイする 第7章 他言語によるPythonの拡張 第8章 コードの管理 第9章 プロジェクトのドキュメント作成 第10章 テスト駆動開発 第11章最適化 ― 一般原則とプロファイリングテクニック 第12章最適化 ― いくつかの強力な解決方法 第13章 並行処理 第14章 Pythonのためのデザインパターン

3次元コンピュータビジョン計算ハンドブック

健一, 金谷
森北出版
おすすめ度
61
紹介文
コンピュータビジョンの代表的な計算手順(アルゴリズム)について,詳細に解説. OpenCVやWeb上のプログラムなど,コンピュータビジョンを行ううえでのツールは充実していますが,これらを改良したり,自分の問題のために書き換えるのは,一筋縄ではいきません. 本書では,コンピュータビジョン,とくに画像からの3次元解析の代表的な手法について,それらの計算手順(アルゴリズム)を詳細に解説することで,こうした問題を解決するヒントを提供します. 〈本書の特徴〉 ・「計算手順」→「解説」という順序で解説 →理論の詳細を追わなくても学べる. ・アルゴリズムの適用例を示し,それぞれの精度と処理速度を評価 →高精度・高速な処理を行うために,アルゴリズムの何をどのように工夫すればよいかがわかる. ・この分野の第一人者である著者らが,各手法について,歴史的概観を交えて参考文献を紹介 →今後の学習の指針,分野の概観が得られる. なお,実装を容易にするために,代表的な手順のサンプルコードと,行列・ベクトル演算ライブラリEigenの解説を森北出版のWeb サイトで公開しています. 第1章 序 論 第I部 コンピュータビジョンの基礎技術 第2章 楕円当てはめ 第3章 基礎行列の計算 第4章 三角測量 第5章 2画像からの3次元復元 第6章 射影変換の計算 第7章 平面三角測量 第8章 平面の3次元復元 第9章 楕円の解析と円の3次元計算 第II部 多画像からの3次元復元 第10章 多視点三角測量 第11章 バンドル調整 第12章 アフィンカメラの自己校正 第13章 透視投影カメラの自己校正

たった1日で基本が身に付く! Python超入門

伊藤 裕一
技術評論社
おすすめ度
61
紹介文
詰め込みすぎないわかりやすい解説。コレならわかる!できる! 1 Pythonでプログラミングを始めよう 2 制御構文を理解しよう 3 関数の使い方をマスターしよう 4 オブジェクト指向を理解しよう 5 クラスの使い方をマスターしよう 6 モジュールを利用しよう 7 ファイルの読み書きと例外処理を行おう 8 アプリケーションを作成しよう

PythonによるOpenCV4画像処理プログラミング+Webアプリ入門

北山 直洋
カットシステム
おすすめ度
61

はじめてのディープラーニング -Pythonで学ぶニューラルネットワークとバックプロパゲーション- (Machine Learning)

我妻 幸長
SBクリエイティブ
おすすめ度
61
紹介文
知識ゼロからはじめるディープラーニング EラーニングサイトUdemyの人気講師が教えるディープラーニングの基礎。ディープラーニングの本命であるニューラルネットワークと、ニューラルネットワークを学習させる際に用いられるアルゴリズムであるバックプロパゲーション(誤差逆伝播法)を初学者にもわかりやすく解説。また画像認識や自然言語処理の分野で高い効率性を発揮する畳み込みニューラルネットワークについてもコード付きで解説することにより、入門書であるにもかかわらず本格的AI開発の入り口まで学ぶことができます。 [本書の特徴] ・はじめてPythonに触れる方のために、Python本体と数値演算ライブラリNumPyによるプログラミングの基礎を解説しています。 ・文系エンジニアのために、微分や線形代数など、ニューラルネットワークの理解に必要な数学の知識を解説しています。 ・サンプルプログラムはフレームワークを使わずにPythonのみで記述しています。このため数式をコード化する際の原理が初心者にもわかりやすくなっています。 ・サンプルプログラムはSBクリエイティブ株式会社のサイトからダウンロード可能です。 ・Python3、Jupyter Notebook対応 第01章 ディープラーニングとは 第02章 Pythonの概要 第03章 ディープラーニングに必要な数学 第04章 ニューラルネットワーク 第05章 バックプロパゲーション 第06章 最小限の実装によるディープラーニング 第07章 畳み込みニューラルネットワーク(CNN) 第08章 ディープラーニングの応用

Excelでわかるディープラーニング超入門

涌井 良幸
技術評論社
おすすめ度
61
紹介文
「なぜディープラーニングが形を区別できるのか」が見えてくる!Excelと対話しながらしくみを解き明かす画期的な超入門書!初めてのAI学習に最適!難しい数学計算はExcelに任せてディープラーニングのしくみを動かしながら理解できる! 1章 初めてのディープラーニング(畳み込みニューラルネットワークのしくみは簡単 AIとディープラーニング) 2章 Excelの確認とその応用(利用するExcel関数はたったの7個 Excelの参照形式 ほか) 3章 ニューロンモデル(神経細胞の働き 神経細胞の働きを数式表現 ほか) 4章 ニューラルネットワークのしくみ(読み物としてのニューラルネットワークのしくみ ニューラルネットワークが手書き文字を識別 ほか) 5章 畳み込みニューラルネットワークのしくみ(読み物としての畳み込み-ニューラルネットワークのしくみ 畳み込みニューラルネットワークが手書き数字を識別 ほか) 付録

高校数学からはじめるディープラーニング 初歩からわかる人工知能が働くしくみ (ブルーバックス)

金丸 隆志
講談社
おすすめ度
61
紹介文
ディープラーニングの動作する数学の仕組みを解説。どの分野が必要かを知り、基本を理解し、どのように効いているかを学びます。 本書は、ディープラーニングを支え、ベースとなっている数学に焦点をあて、どのような仕組みで、どのように効いて、なぜ機能するのかの解説をしていきます。「ブラックボックス」と思われがちなディープラーニングの中身を理解していきます。 高校数学の知識を前提としながらも、必要な数学を復習しつつ、高校で習わない偏微分に関しては基本から必要な部分を解説して、ディープラーニングを支える数学の知識を学んでいきます。 「ディープラーニングという言葉は聞くが、どんなものなのか分からないので理解したい」「ブラックボックスと言われるディープラーニングの仕組みを知りたい」「ディープラーニングを学びたいけれど、数学の勉強のどこから手を付けていいか分からない」といった読者の興味に応える一冊です。 数学を学びながら、それがディープラーニングにどのように効いているのか分かることが重要です。その点を実感として理解することができれば、ディープラーニングの仕組みの本質が理解できたことにつながっていきます。そのためのディープラーニングの主要な概念の解説もしていきます。

実践OpenCV 2.4 for Python―映像処理&解析

博之, 桑井
カットシステム
おすすめ度
61
紹介文
注目のコンピュータービジョンライブラリ。高度な映像処理、解析がPythonでさらに簡単に! 第1章 OpenCVについて(OpenCVとは OpenCVの機能と構成 ほか) 第2章 画像・映像入出力(画像ファイルの表示 画像ファイルの処理と保存 ほか) 第3章 映像処理(カラーチャンネルの分離と合成 移動物体の抽出(浮動小数点数型画像) ほか) 第4章 基本操作(テキストとグラフィックスの描画 ピクセルの直接操作(映像処理) ほか) 第5章 映像解析(テンプレートマッチング オプティカルフロー検出 ほか) 付録

深層学習 (機械学習プロフェッショナルシリーズ)

岡谷 貴之
講談社
おすすめ度
61
紹介文
基礎から、SGD、自己符号化器、CNN、RNN、ボルツマンマシンまでと、盛りだくさん。軽快な語り口で、無理なく理解できる! いま最も注目されている機械学習手法である深層学習(ディープラーニング)を、トップ研究者が解説した。基礎から、SGD、自己符号化器、CNN、RNN、ボルツマンマシンまでと、盛りだくさん。軽快な語り口なので、無理なく理解できる! 【機械学習プロフェッショナルシリーズ】 本シリーズでは、発展著しい機械学習技術の数学的な基礎理論、実用的なアルゴリズム、それらの活用法を、全29巻にわたって刊行する。 ビッグデータ時代を牽引している若手・中堅の現役研究者が、入門的な内容から最先端の研究成果までをわかりやすく解説。 これからデータサイエンス分野で研究を始めようとしている大学生・大学院生、および、機械学習技術を基礎科学や産業に応用しようとしている研究者・技術者に向けた注目のシリーズである。 全29巻のうち第1期として、以下の4点を同時刊行! 『機械学習のための確率と統計』杉山 将・著 『深層学習』岡谷 貴之・著 『オンライン機械学習』海野 裕也/岡野原 大輔/得居 誠也/徳永 拓之・著 『トピックモデル』岩田 具治・著 第2期の刊行は2015年8月、第3期の刊行は2015年12月の予定(^o^)/ 【シリーズ編者】 杉山 将 東京大学大学院新領域創成科学研究科 教授 第1章 はじめに 第2章 順伝播型ネットワーク 第3章 確率的勾配降下法 第4章 誤差逆伝播法 第5章 自己符号化器 第6章 畳込みニューラルネット 第7章 再帰型ニューラルネット 第8章 ボルツマンマシン

イラストで学ぶ ディープラーニング 改訂第2版 (KS情報科学専門書)

山下 隆義
講談社
おすすめ度
61
紹介文
深層学習ベストセラーがさらにパワーアップ。リカレントニューラルネットワーク、GAN、深層強化学習の「章」が新たに加わった。 おお!もう第2版! 深層学習ベストセラーがさらにパワーアップ。リカレントニューラルネットワーク、GAN、深層強化学習の「章」が新たに加わり、ツールの最新事情も反映された。50ページ以上増強されたお得な一冊! いまの姿を的確に、時代を見据えた、きちんとした大改訂。 ResNet、SENet、Faster R-CNN、YOLO、GAN、DCGAN、CGAN、CycleGAN DQN、Actor-Critic、A3C、Caffe、Chainer、TensorFlow、Keras、PyTorch ・リカレントニューラルネットワーク、GAN、深層強化学習の「章」が新たに加わった。 ・物体検出、セグメンテーション、可視化への活用も充実し、フレームワークの最新事情も反映。 ・50ページ以上増強されたお得な一冊! 主な内容 1章 序論 2章 ニューラルネットワーク 3章 畳み込みニューラルネットワーク 4章 汎化性能を向上させる方法 5章 畳み込みニューラルネットワークの活用 6章 リカレントニューラルネットワーク 7章 オートエンコーダ 8章 敵対的生成ネットワーク 9章 深層強化学習 10章 ディープラーニングのフレームワーク 序論 ニューラルネットワーク 畳み込みニューラルネットワーク 汎化性能を向上させる方法 畳み込みニューラルネットワークの活用 リカレントニューラルネットワーク オートエンコーダ 敵対的生成ネットワーク 深層強化学習 ディープラーニングのフレームワーク

Processing 3による画像処理とグラフィックス

かおり, 谷尻
カットシステム
おすすめ度
61

ゼロから作るDeep Learning ❷ ―自然言語処理編

斎藤 康毅
オライリージャパン
おすすめ度
61
紹介文
大ベストセラーの続編。さらに作る、さらに深くDeep Learningに迫る! 大ベストセラーの続編。さらに作る、さらに深くDeep Learningに迫る! コンピュータの専門書としては異例の大ヒットを記録した『ゼロから作るDeep Learning』の続編。第二弾の本書では、自然言語処理や時系列データ処理に焦点を当て、ディープラーニングを使ってさまざまな問題に挑みます。word2vecやRNN(リカレントニューラルネットワーク)、LSTMやGRU、seq2seqやAttention……ディープラーニングを支えるこれら最先端の技術を実装レベルでマスターできます。前作同様、平坦な言葉で分かりやすくをモットーに、高度に見える技術の裏側をじっくり説明し、実際に作ることで理解を深めます。最後までコンセプトは変わらない。ゼロから作る!

画像認識の極み‟ディープラーニング" (映像情報MOOK)

映像情報インダストリアル
産業開発機構
おすすめ度
61
紹介文
ディープラーニングを活用した各社の様々な事例やサービスをまとめた、まさに次世代の産業界の指標となる1冊です。 自動化や効率化が進むこれからの時代にますます注目を集めているディープラーニング。 本書では、ディープラーニングを活用した様々な事例やディープラーニングを用いたサービスを 提供する企業の取り組みをまとめた、まさに次世代の産業界の指標となる1冊です。 【序論】 ・ディープラーニングとはなにか?  日本大学 生産工学部/杉沼浩司 ほか ・深層学習がもたらした画像認識技術の飛躍的向上  株式会社センスタイムジャパン ・ディープラーニングへの取り組み  ~異常検知エンジン「gLupe」の紹介~  株式会社システム計画研究所/久野祐輔 ・従来の概念を変えるディープラーニングを  用いた画像解析ソフトウェア「SuaKIT」  株式会社アプロリンク/塚田大和 ・Deep Learning を活用した  外観検査システム「WiseImaging」  株式会社シーイーシー/久保田進也 【特別インタビュー】 ・“データを価値に変える"  人工知能でビジネスをサポートするブレインパッドの取り組み  株式会社ブレインパッド ・産業用画像処理におけるディープラーニングの真価  ─ HALCON が提供する機械学習機能とディープラーニング活用機能 ─  株式会社リンクス/島 輝行 ・トンネル切羽 AI 自動評価システム ̶ Deep Learning 活用による取り組み̶  日本システムウエア株式会社/野村貴律  株式会社 安藤・間/宇津木慎司 ・エッジコンピューティング向け組込み特化の  ディープラーニングフレームワーク「KAIBER」の活用法  ディープインサイト株式会社/久保田良則 【画像センシング展̶特別招待講演より】 ・画像診断におけるAI 活用推進について  東京慈恵会医科大学 放射線医学講座/准教授 中田典生 ・個体差がある物体でも瞬時に識別  画像識別技術「AI-Scan」  株式会社ブレイン/多鹿一良 ・人間の感覚をもった画像検査システム  「Deep Inspection」  株式会社 Rist/遠野宏季 ・画像認識および Deep Learning 開発サービス  「TrustSense」  株式会社トラスト・テクノロジー/山本隆一郎 ■製品紹介 ●株式会社スカイロジック ●丸紅無線通信株式会社 ●アースアイズ株式会社 ●HPCシステムズ株式会社 ●株式会社エンルートラボ ●キヤノン IT ソリューションズ株式会社 ●クリスタルメソッド株式会社 ●コグネックス株式会社 ●株式会社システムズナカシマ ●株式会社タイテック ●ビットブリッジ株式会社 ●株式会社マイクロテクニカ ●株式会社ミラック光学

カラー図解 Raspberry Piではじめる機械学習 基礎からディープラーニングまで (ブルーバックス)

金丸 隆志
講談社
おすすめ度
61
紹介文
ラズパイを使ってさまざまな機械学習の演習を行い、体験を重ねながら理解する入門書。専門知識がなくても読み通せます。 ラズパイを使ってさまざまな機械学習の演習を行い、体験を重ねながら理解する入門書。専門知識がなくても読み通せます。 第1章 機械学習と人工知能、ニューラルネットワークとの関係 第2章 機械学習入門 第3章 Raspberry Piで機械学習を体験するための準備(※) 第4章 サポートベクトルマシンによるアヤメの分類 第5章 多層ニューラルネットワークによるアヤメの分類 第6章 手書き数字の分類 第7章 コンピュータとじゃんけん勝負をしよう 第8章 画像処理でグー・チョキ・パーを読み取ろう 第9章 じゃんけんシステムの完成 第10章 ディープラーニング ※Raspberry Pi用OSのインストールと環境設定の解説は、本書のサポートページに掲載されます。 【付録A】matplotlibを用いたプログラムの解説 【付録B】OpenCVを用いたプログラムの解説 【付録C】自分の手の画像を学習用データとする方法 (注:【付録】はサポートページにてPDF形式で配布します。電子版では、末尾に収録されます)

深層学習

Ian Goodfellow
KADOKAWA
おすすめ度
61
紹介文
深層学習の世界的名著、ついに刊行 AI研究の一分野として注目を集める深層学習(ディープラーニング)に関する教科書として世界的な評価を受けている解説書。深層学習の理解に必要な数学、ニューラルネットワークの基礎から、CNN(畳み込みニューラルネットワーク)やRNN(回帰結合型ニューラルネットワーク)などのすでに確立した手法、さらに深層学習の研究まで、深層学習の基礎を理論を含めてしっかり学習したい人に最適な内容になっている。近年の深層学習研究をリードする著名な研究者たちが執筆した入門者必読の書である。 本書は、深層学習に関する数学的バックグラウンドやコンセプトから産業への応用まで、包括的に解説した唯一の書籍です。 第1章 はじめに 第I部 応用数学と機械学習の基礎 第2章 線形代数 第3章 確率と情報理論 第4章 数値計算 第5章 機械学習の基礎 第II部 深層ネットワーク:現代的な実践 第6章 深層順伝播型ネットワーク 第7章 深層学習のための正則化 第8章 深層モデルの訓練のための最適化 第9章 畳み込みネットワーク 第10章 系列モデリング:回帰結合型ニューラルネットワークと再帰型ネットワーク 第11章 実用的な方法論 第12章 アプリケーション 第III部 深層学習の研究 第13章 線形因子モデル 第14章 自己符号化器 第15章 表現学習 第16章 深層学習のための構造化確率モデル 第17章 モンテカルロ法 第18章 分配関数との対峙 第19章 近似推論 第20章 深層生成モデル

PythonとKerasによるディープラーニング

Francois Chollet
マイナビ出版
おすすめ度
61
紹介文
AIの大衆化―多くの人々がディープラーニングを利用できるよう実践解説! AIの大衆化―多くの人々がディープラーニングを利用できるよう実践解説! PythonベースのディープラーニングフレームワークKerasの開発者である筆者が、1人でも多くの人々がディープラーニングを利用できるよう実践解説します。 本書はディープラーニングを一から学習したいと考えている人のために書かれています。数学的な表記を避け、代わりにコードを使って定量的な概念を説明することで、機械学習とディープラーニングの基本的な考えについて実践的な知識を養っていきます。 サンプルコードはPythonベースのディープラーニングフレームワークであるKerasに基づいており、バックエンドエンジンとしてTensorFlowを使用しています。 Part 1では、ディープラーニングを大まかに紹介。機械学習とニューラルネットワークを囲む状況といくつかの定義を示し、取り組みを開始するために必要な概念を説明します。 第1章:人工知能(AI)、機械学習、ディープラーニングの基本的なコンテキストと予備知識を提供。 第2章:ディープラーニングに取り組むために必要な基本概念(テンソル、テンソル演算、勾配降下法、バックプロパゲーション)を紹介。 第3章:ディープラーニングフレームワークであるKerasの紹介。分類タスクと回帰タスクを処理する単純なニューラルネットワークの訓練と内部で何が起きているのかが理解できる。 第4章:機械学習の一般的なワークフローとよくある落とし穴・解決法を詳解。 Part 2では、ディープラーニングの実践的な応用例としてコンピュータビジョンと自然言語処理を詳しく見ていきます。サンプルの多くは、ディープラーニングを実務で使用するときに遭遇する問題を解決するためのテンプレートとして利用できます。 第5章:画像分類に焦点を合わせ、コンピュータビジョンの実践的な例を幅広く取り上げる。 第6章:テキストや時系列といったシーケンスデータを処理するための手法を実際に試してみる。 第7章:最先端のディープラーニングモデルを構築するための高度な手法を紹介。 第8章:画像やテキストを作成する能力を持つディープラーニングモデルであり、驚くほど芸術的な結果をもたらすことがあるジェネレーティブモデルの紹介。 第9章:本書の総括。ディープラーニングの限界とその未来を予測。 本書を最後まで読めば、ディープラーニングとは何か、適用できるのはどのような状況か、その制限についてしっかり理解できるはずです。コンピュータビジョンから自然言語処理、画像分類、時系列予測、感情分析、画像/ テキスト生成に至るまで、現実の幅広い問題にKerasを使用できるようになり、最高の短期集中コースとして活用できます。 まえがき 謝辞 監訳者より 本書について カバーについて Part 1 ディープラーニングの基礎 1章 ディープラーニングとは何か 1.1 AI、機械学習、ディープラーニング 1.2 ディープラーニングの前史:機械学習 1.3 なぜディープラーニングなのか、なぜ今なのか 2章 予習:ニューラルネットワークの数学的要素 2.1 初めてのニューラルネットワーク 2.2 ニューラルネットワークでのデータ表現 2.3 ニューラルネットワークの歯車:テンソル演算 2.4 ニューラルネットワークのエンジン:勾配ベースの最適化 2.5 最初の例を振り返る 3章 入門:ニューラルネットワーク 3.1 ニューラルネットワークの構造 3.2 Kerasの紹介 3.3 ディープラーニングマシンのセットアップ 3.4 二値分類の例:映画レビューの分類 3.5 多クラス分類の例:ニュース配信の分類 3.6 回帰の例:住宅価格の予測 4章 機械学習の基礎 4.1 機械学習の4 つの手法 4.2 機械学習モデルの評価 4.3 データ前処理、特徴エンジニアリング、表現学習 4.4 過学習と学習不足 4.5 機械学習の一般的なワークフロー Part 2 ディープラーニングの実践 5章 コンピュータビジョンのためのディープラーニング 5.1 畳み込みニューラルネットワークの紹介 5.2 小さなデータセットでCNNを一から訓練する 5.3 学習済みのCNNを使用する 5.4 CNNが学習した内容を可視化する 6章 テキストとシーケンスのためのディープラーニング 6.1 テキストデータの操作 6.2 リカレントニューラルネットワークを理解する 6.3 リカレントニューラルネットワークの高度な使い方 6.4 畳み込みニューラルネットワークでのシーケンス処理 7章 高度なディープラーニングのベストプラクティス 7.1 Sequential モデルを超えて:Keras Functional API 7.2 Keras のコールバックとTensorBoardを使ったディープラーニングモデルの調査 7.3 モデルを最大限に活用するために 8章 ジェネレーティブディープラーニング 8.1 LSTM によるテキスト生成 8.2 DeepDream 8.3 ニューラルネットワークによるスタイル変換 8.4 変分オートエンコーダによる画像の生成 8.5 速習:敵対的生成ネットワーク 9章 本書のまとめ 9.1 主な概念の復習 9.2 ディープラーニングの限界 9.3 ディープラーニングの未来 9.4 目まぐるしく変化する分野に後れずについていくには 9.5 最後に 付録A Kerasとその依存ファイルをUbuntu にインストールする A.1 Pythonの科学ライブラリをインストールする A.2 GPUのサポートをセットアップする A.3 Theanoをインストールする(オプション) A.4 Kerasをインストールする 付録B AWSのGPUインスタンスでJupyter Notebookを実行する B.1 Jupyter NotebookをAWSで実行する理由 B.2 Jupyter NotebookをAWSで実行しない理由 B.3 AWS GPUインスタンスのセットアップ B.4 Kerasをインストールする B.5 ローカルポートフォワーディングを設定する B.6 ローカルブラウザからJupyter Notebookを使用する

あなたのワークシートがインターネットにつながる Excel VBAでクローリング&スクレイピング

五十嵐 貴之
ソシム
おすすめ度
61

つくりながら学ぶ! PyTorchによる発展ディープラーニング

小川雄太郎
マイナビ出版
おすすめ度
61
紹介文
ディープラーニングの発展・応用手法を実装しながら学ぼう 本書ではディープラーニングの発展・応用手法を実装しながら学習していきます。ディープラーニングの実装パッケージとしてPyTorchを利用します。扱うタスク内容とディープラーニングモデルは次の通りで「ビジネスの現場でディープラーニングを活用するためにも実装経験を積んでおきたいタスク」という観点で選定しました。 [本書で学習できるタスク] 転移学習、ファインチューニング:少量の画像データからディープラーニングモデルを構築 物体検出(SSD):画像のどこに何が映っているのかを検出 セマンティックセグメンテーション(PSPNet):ピクセルレベルで画像内の物体を検出 姿勢推定(OpenPose):人物を検出し人体の各部位を同定しリンク GAN(DCGAN、Self-Attention GAN):現実に存在するような画像を生成 異常検知(AnoGAN、Efficient GAN):正常画像のみからGANで異常画像を検出 自然言語処理(Transformer、BERT):テキストデータの感情分析を実施 動画分類(3DCNN、ECO):人物動作の動画データをクラス分類 本書は第1章から順番に様々なタスクに対するディープラーニングモデルの実装に取り組むことで高度かつ応用的な手法が徐々に身につく構成となっています。各ディープラーニングモデルは執筆時点でState-of-the-Art(最高性能モデル)の土台となっており、実装できるようになればその後の研究・開発に役立つことでしょう。 ディープラーニングの発展・応用手法を楽しく学んでいただければ幸いです。 実装環境 ・読者のPC(GPU環境不要)、AnacondaとJupyter Notebook、AWSを使用したGPUサーバー ・AWSの環境:p2.xlargeインスタンス、Deep Learning AMI(Ubuntu)マシンイメージ(OS Ubuntu 16.04|64ビット、NVIDIA K80 GPU、Python 3.6.5、conda 4.5.2、PyTorch 1.0.1) 第1章 画像分類と転移学習(VGG) 1.1 学習済みのVGGモデルを使用する方法 1.2 PyTorchによるディープラーニング実装の流れ 1.3 転移学習の実装 1.4 Amazon AWSのクラウドGPUマシンを使用する方法 1.5 ファインチューニングの実装 第2章 物体検出(SSD) 2.1 物体検出とは 2.2 Datasetの実装 2.3 DataLoaderの実装 2.4 ネットワークモデルの実装 2.5 順伝搬関数の実装 2.6 損失関数の実装 2.7 学習と検証の実施 2.8 推論の実施 第3章 セマンティックセグメンテーション(PSPNet) 3.1 セマンティックセグメンテーションとは 3.2 DatasetとDataLoaderの実装 3.3 PSPNetのネットワーク構成と実装 3.4 Featureモジュールの解説と実装 3.5 Pyramid Poolingモジュールの解説と実装 3.6 Decoder、AuxLossモジュールの解説と実装 3.7 ファインチューニングによる学習と検証の実施 3.8 セマンティックセグメンテーションの推論 第4章 姿勢推定(OpenPose) 4.1 姿勢推定とOpenPoseの概要 4.2 DatasetとDataLoaderの実装 4.3 OpenPoseのネットワーク構成と実装 4.4 Feature、Stageモジュールの解説と実装 4.5 TensorBoardXを使用したネットワークの可視化手法 4.6 OpenPoseの学習 4.7 OpenPoseの推論 第5章 GANによる画像生成(DCGAN、Self-Attention GAN) 5.1 GANによる画像生成のメカニズムとDCGANの実装 5.2 DCGANの損失関数、学習、生成の実装 5.3 Self-Attention GANの概要 5.4 Self-Attention GANの学習、生成の実装 第6章 GANによる異常検知(AnoGAN、Efficient GAN) 6.1 GANによる異常画像検知のメカニズム 6.2 AnoGANの実装と異常検知の実施 6.3 Efficient GANの概要 6.4 Efficient GANの実装と異常検知の実施 第7章 自然言語処理による感情分析(Transformer) 7.1 形態素解析の実装(Janome、MeCab+NEologd) 7.2 torchtextを用いたDataset、DataLoaderの実装 7.3 単語のベクトル表現の仕組み(word2vec、fastText) 7.4 word2vec、fastTextで日本語学習済みモデルを使用する方法 7.5 IMDb(Internet Movie Database)のDataLoaderを実装 7.6 Transformerの実装(分類タスク用) 7.7 Transformerの学習・推論、判定根拠の可視化を実装 第8章 自然言語処理による感情分析(BERT) 8.1 BERTのメカニズム 8.2 BERTの実装 8.3 BERTを用いたベクトル表現の比較(bank:銀行とbank:土手) 8.4 BERTの学習・推論、判定根拠の可視化を実装 第9章 動画分類(3DCNN、ECO) 9.1 動画データに対するディープラーニングとECOの概要 9.2 2D Netモジュール(Inception-v2)の実装 9.3 3D Netモジュール(3DCNN)の実装 9.4 Kinetics動画データセットをDataLoaderに実装 9.5 ECOモデルの実装と動画分類の推論実施

物体検出とGAN、オートエンコーダー、画像処理入門 PyTorch/TensorFlow2による発展的・実装ディープラーニング

チーム・カルポ
秀和システム
おすすめ度
61
紹介文
本書はディープラーニングの発展型技術である物体検出と画像生成について取り上げた解説書です。自動運転、顔認識、外観検査、医療画像診断など、多くの分野で利用されている技術となっています。 物体検出はSSDの実装法をプログラミングを行いながら解説しています。また、手軽に物体検出を体験できるようTensorFlow Hubについても紹介しています。 画像生成はオートエンコーダ―からGANまでを取り上げました。 本書はディープラーニングの発展型技術である物体検出と画像生成について取り上げた解説書です。自動運転、顔認識、外観検査、医療画像診断など、多くの分野で利用されている技術となっています。 1章 開発環境について  1.1 Anacondaの導入   1.1.1 Anacondaに含まれる主なツール    Anaconda Navigator(アナコンダナビゲーター)    Jupyter Notebook(ジュピターノートブック)    Spyder(スパイダー)   1.1.2 Anacondaのインストール   1.1.3 Anaconda Navigatorを起動して仮想環境を用意する   1.1.4 ライブラリのインストール    PyTorchを仮想環境にインストールする  1.2 Jupyter Notebookを使う   1.2.1 Jupyter Notebookを仮想環境にインストールする   1.2.2 ノートブックを作成する    ノートブックを保存するためのフォルダーを作成する    ノートブックの作成   1.2.3 ソースコードを入力して実行する    Jupyter Notebookのコマンド   1.2.4 ノートブックを閉じる/開く    ノートブックを閉じる    ノートブックを開く   1.2.5 Jupyter Notebookのメニューを攻略する    [File]メニュー    [Edit]メニュー    [View]メニュー    [Insert]メニュー    [Cell]メニュー    [Kernel]メニュー  1.3 Spyderを使う   1.3.1 Spyderを仮想環境にインストールする   1.3.2 モジュールの保存   1.3.3 モジュールのプログラムを実行する    実行中のプログラムの変数の値を確認する  1.4 Google Colabを使う   1.4.1 Colabノートブック    Colabの利用可能時間   1.4.2 Googleドライブ上のColab専用のフォルダーにノートブックを作成する    Googleドライブにログインしてフォルダーを作成する    ノートブックの作成   1.4.3 セルにコードを入力して実行する   1.4.4 Colabノートブックの機能    [ファイル]メニュー    [編集]メニュー    [表示]メニュー    [挿入]メニュー    [ランタイム]メニュー    [ツール]メニュー    GPUを有効にする 2章 SSDによる物体検出  2.1 物体検出の概要   2.2.1 物体検出とは   2.1.2 SSD(Single Shot MultiBox Detector)   2.1.3 SSDにおける物体検出の流れ    物体検出の学習時の処理    物体検出の推論時の処理   2.1.4 プログラミングの流れ    データセットに関わるプログラミング    SSDモデル    学習と学習後における推論  2.2 データセットの用意と前処理   2.2.1 VOCデータセットの概要    VOC2007    VOC2012   2.2.2 VOCデータセットとVGG16、SSD300の学習済み重みのダウンロード    「data」フォルダーと「weights」フォルダーの作成    VOC2012のダウンロードと解凍    VGG16の学習済み重み、SSD300の学習済み重みのダウンロード   2.2.3 アノテーションデータをリスト化する    プログラムの実行はノートブック、クラスなどの定義はモジュールで    イメージとアノテーションのファイルパスをリスト化する(make_filepath_list()関数)    バウンディングボックスの座標と正解ラベルをリスト化するクラスの定義(GetBBoxAndLabelクラス)   2.2.4 イメージとアノテーションを前処理する    COLUMN PyTorchとTorchvisionのインストール    データ拡張の内容    イメージの切り出し    データの前処理を行うDataTransformクラスの定義    データの前処理をイテレートする仕組みを提供するPreprocessVOC2012クラス   2.2.5 ミニバッチを生成するDataLoader    DataLoaderでミニバッチを生成する  2.3 SSDモデルの実装   2.3.1 畳み込みニューラルネットワーク(CNN)    2次元フィルターで画像の特徴を検出する    サイズ減した画像をゼロパディングで元のサイズに戻す    プーリングで歪みやズレによる影響を回避する   2.3.2 SSDモデルの構造    SSDモデルの出力    SSDモデルの全体像   2.3.3 vggネットワークの実装    vggネットワークの構造    vggネットワークを生成するmake_vgg()関数の定義    vggネットワークを生成して構造を確認してみよう   2.3.4 extrasネットワークの実装    extrasネットワークの構造    extrasネットワークを生成するmake_extras()関数の定義    make_extras()関数の動作確認   2.3.5 locネットワークの実装    locネットワークの構造    locネットワークを生成するmake_loc()関数の定義    make_loc()関数の動作確認   2.3.6 confネットワークの実装    confネットワークの構造    confネットワークを生成するmake_conf()関数の定義    make_conf()関数の動作確認   2.3.7 L2Norm層の実装    L2Normの処理    L2Normクラスの定義   2.3.8 デフォルトボックスを生成するDBoxクラス    特徴量マップのセルごとにデフォルトボックスを用意する仕組み    DBoxクラスの定義    DBoxクラスの動作確認  2.4 順伝播処理の実装   2.4.1 decord()関数の定義    decord()関数を定義する   2.4.2 1つの物体に対するバウンディングボックスを1つに絞り込む    Non-Maximum Suppressionの処理を追ってみる    nonmaximum_suppress()関数の定義   2.4.3 推論時にバウンディングボックスの情報を出力する    Detectクラスの処理の概要    COLUMN One-hotエンコーディングとソフトマックス関数    Detectクラスを定義する  2.5 SSDモデルの実装   2.5.1 SSDモデルにおける順伝播処理について徹底解説    __init()__における初期化処理    forward()による順伝播処理の詳細    SSDクラスの定義  2.6 バウンディングボックスの処理   2.6.1 DBoxの情報をBBox形式の情報に変換するpoint_form()関数    point_form()関数の定義   2.6.2 2個のボックスが重なる部分の面積を求めるintersect()関数    intersect()関数の定義   2.6.3 ボックス間のジャッカード係数(IoU)を計算するjaccard()関数    jaccard()関数の定義   2.6.4 match()関数の定義    match()関数の処理    match()関数の定義  2.7 デフォルトボックスのオフセット情報を作るencode()関数    encode()関数の定義  2.8 SSDの損失関数としてMultiBoxLossクラスを作成する   2.8.1 MultiBoxLossクラスのforward()メソッドの処理    教師データとして「DBoxのオフセット値」と「物体の正解ラベル」を取得    物体を検出したPositive DBoxのオフセット情報の損失「loss_l」を計算    COLUMN SmoothL1Loss関数について    confネットワークが出力する21クラスの予測値(確信度)の損失を求める    COLUMN クロスエントロピー誤差    Hard Negative Miningのための抽出用マスクを作成    オフセット情報の平均損失と確信度の損失平均を求める    MultiBoxLossクラスの定義  2.9 SSDモデルの学習プログラム   2.9.1 「Googleドライブ」にデータ一式をアップロードする    Googleドライブの「ObjectDetection」フォルダーへのアップロード   2.9.2 Colabノートブックで学習プログラムを実行する    ドライブのマウント    GPUの設定    「ObjectDetection」フォルダー内のモジュールをインポート可能にする    データローダーの作成    SSDモデルの生成    損失関数とオプティマイザーの作成    学習と同時に検証を行う関数を実行する    COLUMN 誤差逆伝播における重みの更新式  2.10 学習済みモデルでの推論の実施   2.10.1 ノートブックを作成して物体検出を実施    検証モードのSSDモデルを生成して学習済み重みをセット    SSDモデルに画像を入力する   2.10.2 検出結果を写真上に描画する    検出から描画までを行うSSDPredictionsクラス    物体検出を行って検出結果を描画する    学習済みの重み「ssd300_mAP_77.43_v2.pth」に取り替えてみる 3章 「FasterRCNN+InceptionResNetV2」による物体検出  3.1 TensorFlow Hubの物体検出モデル「FasterRCNN+InceptionResNetV2」   3.1.1 「FasterRCNN+InceptionResNetV2」の概要  3.2 「FasterRCNN+InceptionResNetV2」で物体検出を体験してみる   3.2.1 Colabノートブックを作成   3.2.2 物体検出の実施    風景写真を物体検出にかける    昆虫の写真、スマートフォンの写真、鳥の絵画で試してみる 4章 オートエンコーダー  4.1 オートエンコーダー(PyTorch)   4.1.1 オートエンコーダーのメカニズム    3層構造のオートエンコーダー   4.1.2 PyTorchによるオートエンコーダーの実装    オートエンコーダーを実装して手書き数字を学習する    復元された画像を表示してみる  4.2 畳み込みオートエンコーダー(TensorFlow)   4.2.1 畳み込みオートエンコーダーのメカニズム    エンコーダー    デコーダー   4.2.2 TensorFlowによる畳み込みオートエンコーダーの実装    畳み込みオートエンコーダーを実装してファッションアイテムの画像を学習する    学習結果を出力してみる  4.3 畳み込みオートエンコーダーによるノイズ除去(TensorFlow)   4.3.1 ノイズ除去畳み込みオートエンコーダーのメカニズム   4.3.2 TensorFlowによるノイズ除去畳み込みオートエンコーダーの実装    ノイズ除去畳み込みオートエンコーダーを実装して学習する    ノイズを加えた画像と復元した画像を出力する  4.4 変分オートエンコーダー(PyTorch)   4.4.1 変分オートエンコーダーのメカニズム    変分オートエンコーダーの損失関数   4.4.2 PyTorchによる畳み込みオートエンコーダーの実装    変分オートエンコーダーを実装する    変分オートエンコーダーに入力した結果を出力する    デコーダーに任意のデータを入力して画像を生成する  4.5 変分オートエンコーダー(TensorFlow)   4.5.1 変分オートエンコーダーのメカニズム    潜在ロスの計算   4.5.2 TensorFlowによる変分オートエンコーダーの実装    変分オートエンコーダーを実装する    入力したイメージと復元したイメージを出力してみる 5章 GAN(敵対的生成ネットワーク)  5.1 DCGANによる画像生成(PyTorch)   5.1.1 GANのメカニズム    GANの学習の仕組み   5.1.2 DCGANのメカニズム   5.1.3 PyTorchによるDCGANの実装    DCGANを実装する  5.2 DCGANによる画像生成(TensorFlow)   5.2.1 TensorFlowによるDCGANの実装    DCGANを実装してFashion-MNISTデータセットで学習する    学習済みの生成器で画像を生成  5.3 Conditional GANによる画像生成(PyTorch)   5.3.1 Conditional GANのメカニズム    生成器への正解ラベルの入力    識別器への数値ラベルの入力   5.3.2 PyTorchによるConditional GANの実装    Conditional GANを実装する  5.4 Conditional GANによる画像生成(TensorFlow)   5.4.1 TensorFlowによるConditional GANの実装    Colabノートブックでプログラムを実行    学習済みの生成器にノイズを入力して画像を生成してみる Appendix ディープラーニングの数学的要素  A.1 ニューラルネットワークのデータ表現:テンソル   A.1.1 NumPyのスカラー(0階テンソル)   A.1.2 NumPyのベクトル(1階テンソル)   A.1.3 NumPyの行列(2階テンソル)   A.1.4 3階テンソルとより高階数のテンソル  A.2 ニューラルネットワークを回す(ベクトルの演算)   A.2.1 ベクトルの算術演算   A.2.2 ベクトルのスカラー演算   A.2.3 ベクトル同士の四則演算    ベクトル同士の加算と減算   A.2.4 ベクトルのアダマール積を求める   A.2.5 ベクトルの内積を求める  A.3 ニューラルネットワークを回す(行列の演算)   A.3.1 行列の構造   A.3.2 多次元配列で行列を表現する   A.3.3 行列のスカラー演算   A.3.4 行列の定数倍   A.3.5 行列の成分にアクセスする   A.3.6 行列の成分同士の加算・減算をする   A.3.7 行列のアダマール積   A.3.8 行列の内積を求める    行列同士の内積を求めてみる   A.3.9 行と列を入れ替えて「転置行列」を作る  A.4 微分   A.4.1 極限(lim)   A.4.2 微分の基礎   A.4.3 微分をPythonで実装してみる    数値微分で関数を微分してみる    プログラムの実行結果   A.4.4 微分の公式   A.4.5 変数が2つ以上の場合の微分(偏微分)   A.4.6 合成関数の微分    合成関数のチェーンルールの拡張    積の微分法

医療AIとディープラーニングシリーズ 標準 医用画像のためのディープラーニング: 入門編

福岡 大輔
オーム社
おすすめ度
61
紹介文
プログラミングは一切行わず、医用画像に人工知能を導入するための解説書。 プログラミングは一切行わず、医用画像に人工知能を導入するための解説書。 Neural Network Console(ソニー社)と、DIGITS(NVIDIA社)を使って、深層学習と医用画像処理を行う手順とノウハウを詳しく解説。

医療AIとディープラーニングシリーズ 標準 医用画像のためのディープラーニング: 実践編

藤田 広志
オーム社
おすすめ度
61
紹介文
医用画像に人工知能を本格的に導入するためのわかりやすい解説書。 医用画像に人工知能を本格的に導入するためのわかりやすい解説書。 ・TensorFlow+Kerasで行う ・Anaconda上で環境構築する ・データはだれでも入手できるデータを使う を基本的な方針としてまとめた。

[第3版]Python機械学習プログラミング 達人データサイエンティストによる理論と実践 (impress top gear)

Sebastian Raschka
インプレス
おすすめ度
61
紹介文
本書は、機械学習コンセプト全般をカバーし、理論的背景とPythonコーディングの実際を解説しています。初歩的な線形回帰から始め、ディープラーニング(CNN/RNN)、敵対的生成ネットワーク、強化学習などを取り上げ、scikit-learnやTensorFlowなどPythonライブラリの新版を使ってプログラミング。第3版では13~16章の内容をほとんど刷新したほか、敵対的生成ネットワークと強化学習の章を新たに追加。機械学習プログラミングの本格的な理解と実践に向けて大きく飛躍できる一冊です。
search