エンジニア選書シリーズAzure Machine Learningではじめる機械学習/LLM活用入門

[表紙]Azure Machine Learningではじめる機械学習/LLM活用入門

紙版発売

B5変形判/432ページ

定価3,520円(本体3,200円+税10%)

ISBN 978-4-297-14846-1

電子版

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

Azure Machine Learningは機械学習における学習から推論,運用までをエンドツーエンドでサポートするプラットフォームです。本書は,機械学習の活用を推進するエンジニアやデジタルトランスフォーメーションを担う人々に向け,Azure Machine Learningを使った機械学習モデルの構築から運用まで解説しています。Azure Machine Learningの基本からはじめ,自動機械学習(AutoML)機能を使った便利なモデル開発,MLflowと機械学習パイプラインを使った実践的なモデル開発を経て,MLOpsの実現を目指します。大規模言語モデルの活用にあたっては,モデルカタログやプロンプトフローの使い方を解説し,LLMOpsの概念にも触れます。

こんな方におすすめ

  • Azure Machine Learningに興味のある人
  • 機械学習・LLMの活用をこれからはじめようとする人

本書のサンプル

本書の一部ページを,PDFで確認することができます。

本書の紙面イメージは次のとおりです。画像をクリックすることで拡大して確認することができます。

サンプル画像1

サンプル画像2

サンプル画像3

目次

第1部 Azure Machine Learningの基本

第1章 機械学習をビジネスに活かすには

  • 1.1 機械学習に関わる用語の整理
  • 1.2 機械学習が解決できる課題
  • 1.3 生成AI時代における機械学習の意義
  • 1.4 機械学習が取り組むべき課題
    • 1.4.1 需要予測
    • 1.4.2 画像分類による品質検査
    • 1.4.3 自然言語処理による文書分類
  • 1.5 機械学習の全体的なプロセスと課題
    • 1.5.1 課題設定:解決すべき課題の明確化とプロジェクトの基盤構築
    • 1.5.2 データ収集・探索:必要なデータの収集と分析
    • 1.5.3 データ前処理:モデルが学習可能なデータセットの整備
    • 1.5.4 アルゴリズム選定:タスクに最適なモデルの選択
    • 1.5.5 パラメーター探索:モデル性能を左右するパラメーターの最適化
    • 1.5.6 モデル学習:データからパターンを学ぶプロセス
    • 1.5.7 モデル評価:モデルの性能確認と改善
    • 1.5.8 デプロイ:モデルの実稼働環境への導入
    • 1.5.9 モニタリング:デプロイ後のモデル性能監視とメンテナンス
  • 1.6 ビジネスにおける機械学習
    • 1.6.2 トレーニングループ
    • 1.6.3 運用ループ
  • 1.7 まとめ

第2章 Azure Machine Learningの概要

  • 2.1 Azure Machine Learningとは
    • COLUMN マネージド計算リソースとは
    • 2.1.1 使い慣れたツールとの統合
    • 2.1.2 MLflowへのネイティブ対応
    • 2.1.3 MLOpsのプラットフォーム
    • 2.1.4 責任あるAI利用のための機能
    • 2.1.5 エンタープライズ対応
    • 2.1.6 LLMを利用したアプリケーションの開発
  • 2.2 Azure Machine Learning の主要な概念
    • 2.2.1 ワークスペース
    • COLUMN Azure Machine Learningの価格
    • 2.2.2 クライアントツール
    • 2.2.3 開発用機能
    • 2.2.4 アセット
    • COLUMN Azure Machine Learning推論HTTPサーバー
    • 2.2.5 管理
    • 2.2.6 レジストリ
    • COLUMN Azure Machine Learning CLI/SDK v2
  • 2.3 Azureサービスとの連携
    • 2.3.1 Azure Synapse Analytics/Azure Data Factory
    • 2.3.2 Microsoft Fabric
    • 2.3.3 Azure Kubernetes Services/Azure Arc
    • 2.3.4 GitHub/Azure DevOps
  • 2.4 まとめ
    • COLUMN Microsoftの責任あるAIへの取り組み

第3章 Azure Machine Learningのセットアップ

  • 3.1 Azureリソースの階層構造
    • 3.1.1 管理グループ(Management groups)
    • 3.1.2 サブスクリプション(Subscriptions)
    • 3.1.3 リソースグループ(Resource groups)
    • 3.1.4 リソース(Resources)
  • 3.2 Azureアカウント作成
  • 3.3 Azure Machine Learningワークスペースの作成
  • 3.4 クォータの引き上げ申請
    • COLUMN プレビュー機能の有効化
  • 3.5 まとめ

第4章 AutoMLの概要と実践

  • 4.1 AutoML(自動機械学習)とは?
  • 4.2 AutoMLでサポートされる機械学習のタスク
    • 4.2.1 分類
    • 4.2.2 回帰
    • 4.2.3 時系列予測
    • 4.2.4 画像(Computer Vision)
    • 4.2.5 自然言語処理(NLP)
  • 4.3 ハンズオン
    • 4.3.1 データの登録
    • 4.3.2 学習ジョブの作成と実行
    • 4.3.3 結果の確認
    • 4.3.4 モデルのデプロイ
  • 4.4 まとめ
    • COLUMN データのラベリング

第2部 機械学習モデルの構築と活用

第5章 スクラッチでのモデル開発

  • 5.1 ノートブック上でのモデル開発
    • 5.1.1 コンピューティングインスタンスの作成
    • 5.1.2 Web版のVS Codeを起動
    • 5.1.3 サンプルコードのダウンロード
    • 5.1.4 conda仮想環境作成
    • COLUMN Azure Machine Learning上でのAnacondaライセンスについて
    • 5.1.5 新しいカーネルとして追加
    • 5.1.6 モデル開発
  • 5.2 学習ジョブでのモデル開発
    • 5.2.1 Azure Machine Learningワークスペースに接続
    • COLUMN DefaultAzureCredentialとは
    • 5.2.2 データアセットの作成
    • 5.2.3 カスタム環境の作成
    • 5.2.4 学習用スクリプト作成
    • COLUMN IPythonマジック
    • 5.2.5 ジョブの構成
    • COLUMN LightGBMとは
    • 5.2.6 ジョブの実行
  • 5.3 モデルの評価
  • 5.4 コンピューティングインスタンスの停止
  • 5.5 まとめ

第6章 MLflowによる実験管理とモデル管理

  • 6.1 MLflow概要
  • 6.2 MLflowの構成と使い方
    • 6.2.1 MLflow Tracking
    • 6.2.2 MLflow Models
  • 6.3 Azure Machine LearningとMLflowの関係
    • 6.3.1 MLflow Tracking Server-as-a-Service
    • 6.3.2 その他のクラウドサービスの対応状況
    • COLUMN MLflowとAzure Machine LearningのアセットURI
  • 6.4 実験管理とモデル管理の実例と解説
    • 6.4.1 autologを使用したノートブック上での実験管理
    • 6.4.2 ノートブック上でのカスタム実験管理
    • COLUMN ジョブ中での実験管理
  • 6.5 まとめ

第7章 機械学習パイプライン

  • 7.1 機械学習パイプラインとは?
  • 7.2 Azure Machine Learningパイプラインとコンポーネント
    • 7.2.1 Azure Machine Learning パイプラインの概要
    • 7.2.2 パイプラインの仕組み
    • 7.2.3 パイプラインの実行方法
    • 7.2.4 Azure Machine Learningコンポーネント
  • 7.3 コンポーネントを用いたパイプラインの設計
    • 7.3.1 パイプライン全体の処理内容の定義
    • 7.3.2 コンポーネントの処理内容の定義
    • 7.3.3 コンポーネントの依存関係
    • 7.3.4 コンポーネントの設定
  • 7.4 Azure Machine Learningパイプラインの構築ハンズオン
    • 7.4.1 事前準備
    • 7.4.2 コンポーネントの作成
    • 7.4.3 パイプラインの作成
    • 7.4.4 パイプラインの実行
  • 7.5 まとめ

第8章 モデルのデプロイ

  • 8.1 機械学習モデルの推論
  • 8.2 オンラインエンドポイント
    • 8.2.1 オンラインエンドポイント概要
    • 8.2.2 エンドポイントとデプロイ
    • 8.2.3 デプロイに必要なアセット
    • 8.2.4 ユーザーへの影響を最小限に抑えた推論環境の移行
    • 8.2.5 マネージドオンラインエンドポイントの認証
  • 8.3 マネージドオンラインエンドポイントの構築ハンズオン
    • 8.3.1 アセットの準備
    • 8.3.2 エンドポイントの作成
    • 8.3.3 デプロイの作成
    • 8.3.4 推論の実行
  • 8.4 バッチエンドポイント
    • 8.4.1 バッチエンドポイントの概要
    • 8.4.2 バッチエンドポイントの認証
  • 8.5 モデルデプロイの構築ハンズオン
    • 8.5.1 アセットの準備
    • 8.5.2 エンドポイントの作成
    • 8.5.3 デプロイの作成
    • 8.5.4 推論の実行
  • 8.6 パイプラインコンポーネントデプロイの構築ハンズオン
    • 8.6.1 エンドポイントの作成
    • 8.6.2 パイプラインジョブのデプロイ
    • 8.6.3 パイプラインの実行
  • 8.7 まとめ

第9章 MLOpsの概要と実践

  • 9.1 MLOpsとは
  • 9.2 MLOps実現に向けたMicrosoftの取り組み
  • 9.3 Azure Machine LearningのMLOps機能
    • 9.3.1 レジストリとは
    • 9.3.2 レジストリの構築ハンズオン
    • 9.3.3 モデル監視
    • 9.3.4 モデル監視ジョブの構築ハンズオン
    • COLUMN ドリフトメトリクスの詳細
    • 9.3.5 機械学習における継続的インテグレーション/デリバリー
    • 9.3.6 継続的インテグレーション/デリバリーの構築ハンズオン
  • 9.4 まとめ

第3部 大規模言語モデルの活用

第10章 大規模言語モデルの概要

  • 10.1 大規模言語モデルとは
    • 10.1.1 LLMのテキスト生成の仕組み
    • 10.1.2 LLMの「文脈理解」能力
    • 10.1.3 LLMの特徴
    • 10.1.4 LLMの構築プロセス
    • COLUMN ユーザー独自のデータセットを使ったファインチューニング
  • 10.2 これまでの機械学習との違い
    • 10.2.1 タスクごとのモデル設計 vs. 汎用的なモデルの利用
    • 10.2.2 基盤モデル
    • 10.2.3 推論フェーズの重要性
    • 10.2.4 プロンプトによるタスク指示
  • 10.3 RAGワークフローの概要
    • COLUMN RAGとファインチューニングの使い分け
  • 10.4 LLMを活用したアプリケーション開発のライフサイクル
    • 10.4.1 初期化
    • 10.4.2 実験
    • 10.4.3 評価と改善
    • 10.4.4 本番
  • 10.5 まとめ

第11章 基盤モデルとモデルカタログ

  • 11.1 基盤モデルの概要
    • 11.1.1 自己教師あり学習と基盤モデル
    • COLUMN ライセンスと機械学習モデル
    • 11.1.2 ファインチューニングとは
  • 11.2 モデルカタログの概要
    • 11.2.2 Azure OpenAIのモデル
    • 11.2.3 Hugging Face Hub のモデル
  • 11.3 基盤モデルのデプロイ
    • 11.3.1 サーバーレスAPI
    • COLUMN Azure AI Content Safety
    • COLUMN Azure AI Inference SDK
    • 11.3.2 マネージドオンラインエンドポイントへのノーコードデプロイ
  • 11.4 ファインチューニング
    • 11.4.1 SaaS 的ファインチューニング
    • 11.4.2 PaaS的ファインチューニング
    • COLUMN 深層学習モデルの軽量化手法
  • 11.5 まとめ

第12章 プロンプトフローの活用

  • 12.1 RAGとは
    • 12.1.1 検索システム
    • COLUMN ベクトル検索について
    • 12.1.2 オーケストレーター
  • 12.2 プロンプトフローとは
  • 12.3 ハンズオンの設定
    • 12.3.1 Azure OpenAIのデプロイ
    • 12.3.2 Azure AI Searchのデプロイ
    • 12.3.3 各サービスへの接続設定
    • 12.3.4 インデックスの作成
  • 12.4 問い合わせチャットボットの開発
    • 12.4.1 フローの作成
    • 12.4.2 フローの評価
    • 12.4.3 フローの実行
    • 12.4.4 フローのデプロイ
  • 12.5 まとめ

第13章 LLMOpsへの招待

  • 13.1 LLMOpsとは
    • 13.1.1 MLOpsとLLMOpsの違い
    • 13.1.2 MicrosoftのLLMOps実現に向けた取り組み
  • 13.2 Azure Machine LearningのLLMOps機能
    • 13.2.1 LLMワークフローの監視
    • 13.2.2 LLMワークフローの監視ジョブ構築ハンズオン
    • COLUMN LLMワークフローのコード管理とCI/CD環境整備
  • 13.3 まとめ
    • COLUMN Azure AI Foundry

付録

付録A クライアント環境のセットアップ

  • A.1 Azure CLIのインストール
    • A.1.1 インストール手順(Windows)
    • A.1.2 インストール手順(macOS)
    • A.1.3 インストール手順(Linux;Ubuntu、Debian)
    • A.1.4 Dockerコンテナ(Dockerに対応しているオペレーティングシステム)
  • A.2 Azure Machine Learning用のAzure CLI拡張機能
  • A.3 Azure Machine Learning Python SDKのインストール

付録B Azure Machine Learningとデータ

  • B.1 データに関連する機能とアセット
    • B.1.1 データアセット
    • B.1.2 データインポート
    • COLUMN v1時代のリレーショナルデータベース連携
    • B.1.3 特徴量ストア
  • B.2 データソース連携
    • B.2.1 アプリケーションデータ
    • B.2.2 データレイクハウスを中心とするデータ分析基盤
  • B.3 まとめ

付録C MLflow Modelsによるノーコードコンテナビルドとデプロイ

  • C.1 MLflow Modelsのメリット
  • C.2 モデルの読み込みと推論
  • C.3 APIのデプロイ
    • C.3.1 事前準備
    • COLUMN MLFLOW_TRACKING_URI
    • C.3.2 コンテナビルド
    • C.3.3 サービング
    • C.3.4 MLflowによって自動生成されたAPIの仕様
    • C.3.5 Azure Machine Learningマネージドオンラインエンドポイント
    • COLUMN Kunbernetesオンラインエンドポイント
  • C.4 まとめ

付録D 責任あるAIツールボックス

  • D.1 責任あるAIツールボックスの概要
  • D.2 エラー分析
  • D.3 解釈可能性
  • D.4 公平性評価
  • D.5 反実仮想サンプル生成
  • D.6 因果推論

著者プロフィール

永田祥平(ながたしょうへい)

元日本マイクロソフト株式会社 クラウドソリューションアーキテクト

大学院で分子生物学やバイオインフォマティクスを学んだあと,2020年より日本マイクロソフト株式会社に入社。クラウドソリューションアーキテクト(AI)として,おもにエンタープライズのお客様を対象に,Azureデータ分析・機械学習基盤や生成AIアプリケーションの導入・活用支援を行う。2024年より米国系SaaS企業に移り,プロダクトマネージャーとして日本,韓国,台湾市場に向けた生成AI・エージェント機能の企画開発を行っている。おもな著書に『Azure OpenAI ServiceではじめるChatGPT/LLMシステム構築入門』(技術評論社)。第1章から第3章,第10章の執筆と全体統括を担当。

X@shohei_aio

LinkedInhttps://www.linkedin.com/in/shohei-nagata/


立脇裕太(たてわきゆうた)

日本マイクロソフト株式会社 クラウドソリューションアーキテクト

Softbank(SBT),Deloitte,DataRobotでビッグデータ,クラウド,機械学習を活用してお客様のデータ活用を推進する経験を経て,日本マイクロソフトに入社。現職では,需要高まる生成AIの活用を支援する案件に従事しつつ,お客様のMLOps成熟度Level4実現に向けた支援にも従事。MLOpsCommunity(JP)のオーガナイザーでMLOpsやAIガバナンスに関する講演や記事執筆などを実施。

第5章,第9章,第13章の執筆を担当。

LinkedInhttps://www.linkedin.com/in/yuta-tatewaki


伊藤駿汰(いとうしゅんた)

日本マイクロソフト株式会社 クラウドソリューションアーキテクト/株式会社Omamori 取締役

本業でAI/ML開発(とくに自然言語処理方面)と利活用の技術支援,機械学習基盤やMLOps基盤の構築および活用の技術支援を行うクラウドソリューションアーキテクト,副業で自社サービスの開発を担うソフトウェアエンジニアとして活動。第6章,第11章,付録B,付録Cの執筆を担当。

X@ep_ito


宮田大士(みやたたいし)

日本マイクロソフト株式会社 クラウドソリューションアーキテクト

情報学の修士号を取得後,製造業にてデータ分析/機械学習システムの構築/データ分析基盤の開発を経験し,日本マイクロソフトに入社。現職では,自動車産業・製造業を中心とした幅広い業界のお客様にAIの導入/活用を支援。第4章と第12章の執筆を担当。

X@tmiyata25


女部田啓太(おなぶたけいた)

Regional AI Architect Lead, Office of the Chief Technology Officer, Microsoft Asia

Oracle,SAS Instituteでのデータ分析,統計解析,機械学習の経験を経て,2018年よりMicrosoftに入社。おもに製造業のお客様のプロジェクトに機械学習エンジニアとして従事。現職では,アジア地域における重要な基盤モデルの開発・運用管理,AI Agentのシステム構築プロジェクトへの技術支援などを実施。第7章,第8章,付録A,付録Dの執筆を担当。

X@keonabut

LinkedInhttps://www.linkedin.com/in/keita-onabuta