WEB+DB PRESS plusシリーズPractical Developers
――機械学習時代のソフトウェア開発[ゲームアプリ/インフラ/エッジ編]
2019年8月9日紙版発売
2019年8月2日電子版発売
飯塚健太郎,大川徳之,keno,古賀理,田中一樹,徳永拓之,西田圭介,森田和孝 著
B5判/176ページ
定価2,618円(本体2,380円+税10%)
ISBN 978-4-297-10744-4
ただいま弊社在庫はございません。
書籍の概要
この本の概要
ソフトウェア開発の今に焦点を当て,実践で活きる本物の事例をまとめた入門書。第一線の開発者による全面書き下ろし。
AIを筆頭に,機械学習/深層学習分野の勢いは加速する一方です。そんななか,多岐にわたる実行環境,モデル学習や推論の段階で異なる特性を持つ各成果物,精度と性能,多種多様な大規模データ処理など,今の機械学習システムの開発は,従来のソフトウェア開発とは異なる面を持ち合わせています。
本書では,そんな「機械学習時代のソフトウェア開発」にスポットを当て,とくに注目度の高いゲームアプリ,大規模インフラ,エッジの三つの切り口で技術情報を徹底解説。合わせて,気になる開発環境例も盛り込みました。時代へ適応し技術力の進化を遂げたい,そんな開発者の方々に向けて,機械学習を取り込んだシステムの全体像から実用的な開発テクニックまで,これまでと大きく変わる部分,意外と変わらない部分が見えてくる技術情報満載でお届けします。
こんな方におすすめ
- 機械学習を用いたソフトウェア開発に関心をお持ちの方々
- 機械学習のサービスへの活用/運用の検討に携わるデータサイエンティスト,機械学習エンジニアの方々
- 広く機械学習/深層学習に興味をお持ちの情報系をはじめとした学生の方々
この書籍に関連する記事があります!
- 機械学習とソフトウェア開発の今―実サービス投入のステージに上がった機械学習
- 機械学習は歴史のある概念で,ディープラーニング(深層学習)の登場で一気に浸透しました。
本書のサンプル
本書の紙面イメージは次のとおりです。画像をクリックすることで拡大して確認することができます。
目次
Part 1
[稼働中のサービスを加速させる]
ゲームアプリ『逆転オセロニア』×機械学習/AIの着眼点
──企画/設計/開発/リリース,一部始終
- #01:機械学習とソフトウェア開発のコラボレーション
──ゲームアプリの開発事例 - #02:クラウドを駆使した機械学習システム
──GCPを軸にしたアーキテクチャの俯瞰 - #03:機械学習を取り込んだシステムの基本的な開発工程
──AI技術をどのように事業価値に結びつけるのか - #04:[実践で活きる]機械学習を用いたソフトウェア開発
──要所,課題,解法 - Column (ちらっと)開発環境披露
Part 2
[シンプルを貫く。指針とツール]
大規模データのインフラ構築/運用
──世界1位の求人検索エンジン「Indeed」
- #01:新分野へ切り込むチームと既存インフラとの決別
──大規模なデータ群を捌く。小さなチーム「Elephant」 - #02:データ処理インフラの全体像
──6つのサブシステムの関係 - #03:コストと開発速度のトレードオフ
──開発コストと計算資源 - #04:強力&便利なツール陣
──AWS CodeDeploy,Jenkins,Apache Spark - Column Imhotep
──Indeedが作ったOSSのデータ開発基盤 - Column 開発者のマシン&開発環境
Part 3
[フィンテック/金融業界発]
大規模データ処理の自動化
──セキュリティ強化のためのサーバーレスアーキテクチャ
- #01:基本構成を考える
──システム構成,基盤部分のツール,業務フロー - #02:効率化の基盤を整える
──コンテナ技術,秘密鍵管理,ワークフロー管理,バルク型転送 - #03:本番環境で自動化を実現する
──本番環境のコンテナ,デプロイ,スケジュール実行 - Column 職場の作業環境
- Column docker-syncによる高速化
- Column 環境変数を初期化する起動スクリプト
- Column aws-vaultとKeychain
Part 4
[エッジで極める]
深層学習推論の高速化
──限りある演算能力を駆使し,重い演算を動かす技術
- #01:エッジデバイス上での深層学習推論実行の基礎知識
──エッジデバイスの種類,高速化の必要性,高速化ツールチェイン - #02:エッジコンピューティング最前線の開発環境
──開発用の実機からアセンブラライブラリまで - #03:[実例から学ぶ]モデルの高速化ワークフロー
──デバイス特性の調査,計算グラフの抜き出し,コードの変換,クロスコンパイル,続く仮説検証 - #04:深層学習ソフトウェア開発プロジェクト特有の事情
──深層学習とソフトウェア開発の今の関係 - #05:エッジデバイスにおける開発効率
──エッジデバイスをいかに動かさずに済ませるか - #06:これまでのソフトウェア開発との差異
──エッジで深層学習を取り入れるなら - Column 機械学習と私
Part 5
[特急入門]
深層学習コンパイラTVMの開発
──深層学習の超基礎から開発環境,一線の機能開発まで
- #01:[すぐわかる]AIを支える三大技術
──アルゴリズム,ソフトウェア,ハードウェア - #02:深層学習コンパイラTVMの基礎知識
──特徴,アーキテクチャ,活用事例 - #03:基礎からわかるVTA
──AIチップからどのようなAIプログラムが生成されるか - #04:OpenCLですぐ試せる。TVMと高位合成
──FPGAのAI処理回路生成に挑戦 - Appendix:深層学習の研究/開発のための開発環境
──大量のデータや高性能ハードウェアとの格闘,開発時間とトライ&エラー
Part 6
[消費電力は数W以下]
エッジの深層学習と技術選択
──量子化ネットワーク×FPGAの世界
- #01:[ゼロからわかる]FPGA&量子化の基礎知識
──エッジで実現する深層学習のアプローチ - #02:LeapMindの開発環境
──エッジ×深層学習のためのモデル学習環境 - #03:[FPGA&量子化の今が見えてくる]Blueoil基本解剖
──深層学習の推論をエッジで楽々実行 - #04:量子化ネットワークの応用
──惑星探査機の自撮り,点検作業へ飛ぶドローン,ブラウザ上での顔認識 - Column Blueoil開発ストーリー
- Column Emscripten対応の思い出