タグ: Dataflow

  • 【Google認定MLエンジニア】業界特化API(Industry-specific API)実装ガイド

    【Google認定MLエンジニア】業界特化API(Industry-specific API)実装ガイド

    業界特化API(Industry-specific API implementation)は、Document AI、Retail API、Healthcare API、Media Translation APIなど、特定の業務用途に最適化されたGoogle CloudのAPI群を使って、スケーラブルで責任ある機械学習ソリューションを構築・展開するスキルを問う領域です。

    以下では、各APIの目的、設計パターン、推奨構成、よくある誤りを体系的にまとめます。


    📄 1. Document AI API(文書解析)

    ✅ 推奨アーキテクチャ

    • Cloud Storage にスキャン文書を保存
    • Cloud Functions でアップロードをトリガーし、自動処理
    • Dataflow で事前処理(画像補正やOCR補助)
    • BigQuery に結果を格納し、分析基盤と連携

    🚫 非推奨アクション

    • Vertex AI Model Monitoring(Document AI はマネージドサービスのため不要)
    • Cloud Run を使ったリアルタイム処理(Cloud Functions で十分)

    🏷 試験で問われやすいポイント

    • Cloud Functions でスケーラブルな自動処理を実装
    • BigQuery に格納して分析可能性を担保

    ☁️ Cloud Functions と Cloud Run の違いガイド

    Google Cloud の Cloud FunctionsCloud Run はどちらも「サーバーレス」な実行環境ですが、用途や設計思想が異なります。以下にそれぞれの特徴と違いを整理します。


    🌩 Cloud Functions と Cloud Run の違いまとめ

    項目 Cloud Functions Cloud Run
    🧭 主な用途 単機能のトリガー型処理(イベント駆動) コンテナを使ったHTTPアプリ/API運用(柔軟な構成)
    ⚡ 起動方式 イベント駆動型(例:Cloud Storage にファイルがアップされた時) HTTPリクエスト駆動型 または常駐処理
    🏗 構築単位 関数(Function)単位のコード 任意のコンテナイメージ(アプリごと)
    🛠 言語/実行環境 Node.js, Python, Go など指定されたランタイム 任意のランタイム(Dockerで動けばOK)
    📦 実行内容の自由度 比較的限定的(状態を持たない1関数) 高い(マルチエンドポイントAPIやフレームワークもOK)
    🌐 外部からのアクセス HTTPまたはPub/Sub等のイベント経由 HTTP(WebアプリやAPI向け)
    🚀 起動の速さ(Cold Start) やや速い(関数なので軽量) やや遅め(コンテナ全体起動)※改善中
    🔒 セキュリティ/認証 IAM & イベント権限制御 IAM & リクエストレベルの認証(細かい設定可能)
    💰 課金単位 関数の実行時間+呼び出し回数 コンテナ稼働時間(秒単位)とメモリ消費量

    ☑ どちらを使うべきか?

    ✅ Cloud Functions が向いているケース
    • Cloud Storage / PubSub / Firestore など Google Cloud内のイベントに反応したい
    • 「何かが起きたら即処理したい」タイプの処理
    • 簡単なAPIやWebhook(1関数で完結)
    • コードだけでOK、Dockerを使いたくない場合

    例:

    • ファイルアップロード後に自動OCR処理
    • Pub/Subメッセージ受信時にデータ変換

    ✅ Cloud Run が向いているケース
    • 複雑なAPIロジックWebアプリをサーバーレスで運用したい
    • 自前のライブラリや依存関係を含んだ Docker環境 で動かしたい
    • 状態を保持する処理(例:セッション、キャッシュ)や 非同期ジョブ管理
    • 外部からHTTPで 柔軟なルーティング制御 が必要な場合

    例:

    • FlaskやExpressで構築したWebアプリ/API
    • 長時間かかる機械学習バッチ処理
    • 非同期なトランスコーディングや画像生成

    🧠 試験対策的な補足

    試験でよく問われる判断基準
    ✅ Cloud Functions は「リアルタイム処理」や「トリガー処理」に向いている
    ✅ Cloud Run は「コンテナを用いた柔軟なサービス設計」に向いている
    ⚠ Cloud Functions で済むケースに Cloud Run を使うと「過剰設計」になりがち

    🛒 2. Retail API(商品推薦)

    ✅ 推奨アーキテクチャ

    • BigQuery に蓄積された商品データを Cloud Functions で Retail API に送信
    • 推薦結果は BigQuery に保存して BI やレポートに活用
    • Cloud Operations Suite(旧 Stackdriver) で API の使用量・エラー率をモニタリング

    🚫 非推奨アクション

    • Vertex AI でバイアス検出(Retail API 自体がブラックボックスなので過剰)

    🏷 試験で問われやすいポイント

    • Vertex AI を無理に使わない
    • リアルタイム性を Cloud Functions で担保

    🏥 3. Healthcare API(患者記録分析)

    ✅ 推奨アーキテクチャ

    • Cloud SQL に格納されたデータに対し、Cloud Functions で自動トリガー処理
    • IAM+暗号化 によるセキュアなアクセス制御
    • 結果も Cloud SQL に保存し、厳格なセキュリティとプライバシー保持

    🚫 非推奨アクション

    • Dataflow での前処理(Healthcare API は多様な形式を直接受け付け可能)
    • CI/CD構築(分析用途には不要)

    🏷 試験で問われやすいポイント

    • セキュリティ・暗号化・IAMがキーワード
    • Healthcare API は前処理不要

    🎬 4. Media Translation API(字幕翻訳)

    ✅ 推奨アーキテクチャ

    • Cloud Storage にアップロードされた字幕ファイルを Cloud Functions でトリガー
    • BigQuery に翻訳結果を保存して多言語対応の効果を分析
    • Cloud Operations Suite で翻訳精度やAPI使用量をモニタリング

    🚫 非推奨アクション

    • Vertex AI での翻訳モデル構築(Media Translation API 単体で十分)
    • Cloud Run の活用(Cloud Functions で事足りる)

    🏷 試験で問われやすいポイント

    • Vertex AIを使わず、API単体での完結性を重視

    🛑 全体のCAUTIONまとめ

    ケース よくある誤答 正しい理解
    Document AI Vertex AI Monitoring 管理されたAPIには不要
    Retail API Vertex AIでバイアス検出 過剰な構成
    Healthcare API Dataflowで前処理 不要。APIが処理可能
    Media Translation Vertex AIで翻訳精度強化 APIで十分

    ✨まとめ:業界特化API実装の3大ポイント

    1. Cloud Functions はトリガー型のリアルタイム処理に最適
    2. BigQuery は分析・統合のハブとして定番
    3. Vertex AIやDataflowの利用はケースバイケースで必要最小限に

  • 【Google認定MLエンジニア】特徴選択と特徴量エンジニアリング(Feature Selection and Engineering)ガイド

    【Google認定MLエンジニア】特徴選択と特徴量エンジニアリング(Feature Selection and Engineering)ガイド

    Google Cloud の BigQuery ML 環境をベースにした「特徴選択と特徴量エンジニアリング」の戦略を体系的に整理します。この知識は、機械学習モデルの精度向上・計算効率の最適化・スケーラビリティの担保に不可欠です。


    🧩 1. 特徴量エンジニアリングの目的

    目的 説明
    モデル性能の向上 意味のある新しい特徴量の作成により、モデルの精度を高める。
    データのスケーラビリティ 一貫した処理・自動化されたパイプラインにより、大規模データへの対応を強化。
    学習効率の向上 無駄な特徴を削減し、学習コストを下げる。

    🔧 2. BigQuery ML における主要なエンジニアリング手法

    2.1 欠損値への対応

    • 方法: SQLベースで IFNULL() などの関数を活用
    • 注意点: 欠損値処理は予測精度に直結するため、事前処理で徹底的に対策

    2.2 カテゴリカルデータの変換

    手法 概要 適用場面
    One-Hot Encoding 各カテゴリを0/1の列に展開 少数カテゴリ
    Label Encoding ラベルを数値に変換 順序付きカテゴリ
    Feature Hashing 高カーディナリティカテゴリを効率的に表現 大量のユニーク値がある場合(例:郵便番号)

    🧠 3. 特徴選択(Feature Selection)

    3.1 正則化による選択

    • Lasso回帰(L1正則化)
      • 重要でない特徴の係数をゼロにする
      • MODEL_TYPE='linear_reg', L1_REG を指定

    3.2 Feature Importance Metrics

    • 方法: ML.FEATURE_IMPORTANCE関数で重要度を算出
    • 目的: 予測精度に寄与する特徴量の可視化と選別

    🧪 4. 特徴量のスケーリングと変換

    処理 BigQuery ML内での対応 備考
    Standard Scaling ❌非対応 Dataflow等で前処理が必要
    正規化(Normalization) ❌非対応 外部パイプラインで実施

    🧬 5. 新たな特徴量の生成

    • SQLによる派生特徴量の生成

      • 例: 売上 = 単価 × 数量
      • 実装: CREATE MODELTRANSFORM を活用(SQLで表現可能)
    • Feature Crosses

      • 複数カテゴリカル特徴の掛け合わせ
      • 特定の組み合わせパターンの意味合いを捉える

    🤖 6. 自動化とパイプライン化

    方法 内容 利点
    Dataflow + Apache Beam 前処理パイプライン構築 一貫性と再現性の担保
    Vertex AI Pipelines 特徴量処理・モデル学習の自動化 スケーラブルなMLワークフロー構築

    ⚠️ 7. 注意すべき非対応機能

    機能名 状況 代替手段
    PCA(主成分分析) ❌未対応 手動で相関の高い特徴を削除する等
    Recursive Feature Elimination (RFE) ❌未対応 LassoやFeature Importanceで代替
    ハイパーパラメータチューニング ❌未対応 外部ツール(Vertex AI等)を使用

    ※ 現在のBQMLはPCAにネイティブ対応しています

    • 過去(〜2022年頃まで):BQMLにはPCA(主成分分析)は未対応でした。
    • 現在(2023年〜):BQMLは CREATE MODEL で MODEL_TYPE=’pca’ を指定することで、ネイティブにPCAモデルを構築可能になっています。

    ✅ 試験対策のためのまとめ

    試験フォーカス 警告アラート
    欠損値処理・特徴量変換・SQLによる生成 PCAやRFEは BigQuery ML に直接は存在しない
    正則化(Lasso)やFeature Importance 正規化・スケーリングはBigQuery ML内では未サポート
    Feature Hashingや自動化パイプライン構築 k-means は欠損値処理・次元削減には不向き

    📌 おすすめの学習順序(習得ステップ)

    1. SQLによる特徴量生成
    2. 欠損値処理とカテゴリ変換
    3. Lasso回帰・Feature Importanceの理解
    4. Feature Crosses・Feature Hashingの応用
    5. Dataflow/Vertex AIによる自動化

  • 【Google認定MLエンジニア】Google Cloud 機械学習エコシステムの主要プロダクト一覧

    【Google認定MLエンジニア】Google Cloud 機械学習エコシステムの主要プロダクト一覧

    • データ収集/整形
      • Cloud Storage / PubSub / Dataflow / Dataprep

    • 前処理/特徴量管理
      • BigQuery / Dataform / Feature Store

    • モデリング
      • BigQuery ML / Vertex AI Workbench / AutoML / Custom Training

    • パイプライン/MLOps
      • Pipelines / Model Registry / Experiments

    • デプロイ・推論
      • Vertex AI Prediction / Edge Deployment / Matching Engine

    こんなときはどれ?

    状況 おすすめツール
    SQLだけで予測モデルを作りたい BigQuery ML
    ノートブックで深層学習したい Vertex AI Workbench
    ノーコードで画像分類モデルを作りたい AutoML Vision
    本番運用のMLOpsを整備したい Vertex AI Pipelines + Model Registry
    特徴量を複数チームで共有したい Vertex AI Feature Store