この模擬問題は、AWS Certified Machine Learning - Specialty の試験ガイドに基づいてGPT-5が作成したものです。
出題範囲は試験ガイドに記載の配分に準拠しています。
生成AIを使用しているため、内容に誤りが含まれている可能性があります。
もし誤りを見つけましたら、ご指摘いただけますと幸いです。
何問正解できたかコメントして下さいね!
Q1(D1: データエンジニアリング)
ある国際的な動画配信サービスのデータサイエンスチームは、利用者の視聴行動ログをリアルタイムに収集し、それをもとにパーソナライズされたレコメンデーションモデルを更新する仕組みを構築しようとしています。データは複数の地域から Amazon Kinesis Data Streams に送信されており、現在は Amazon S3 にバッチとして保存された後、1 日に数回の ETL ジョブによって処理されています。しかし、経営層からは「ユーザーの行動に応じてより早く推薦結果を更新するべきだ」という要望があり、データ到着から数分以内に特徴量を生成してモデル学習に取り込める体制を求められています。また、専任の運用チームを置くことは難しく、年末年始のような急激なアクセス増加にも自動で対応できることが前提です。
この状況で最も適切なアーキテクチャはどれでしょうか。
A) Kinesis Data Firehose を使用してデータを直接 S3 に保存し、Glue の ETL ジョブを時間ごとにスケジュールして特徴量を作成する。
B) Kinesis Data Streams を入力として Amazon EMR クラスター上の Spark Streaming アプリケーションを常時稼働させ、特徴量を計算して S3 に保存する。
C) Kinesis Data Streams を入力に Amazon Managed Service for Apache Flink を利用し、ストリーム処理で特徴量を集計して S3 に書き出し、SageMaker の学習ジョブで利用する。
D) Kinesis Data Streams を Lambda 関数でポーリングし、各レコードを DynamoDB に保存した上で学習用のデータセットを構築する。
正解:C
解説:
C が正しい理由: Flink(マネージド版)は低レイテンシのストリーム処理をマネージドに提供し、数分以内の特徴量生成・スケーラビリティ・運用負荷軽減のすべてを満たす。
A Glue はジョブ起動遅延があり、数分以内という要件を満たせない。
B EMR は常時運用・スケーリング管理が必要で、マネージド要件に合わない。
D Lambda + DynamoDB はスケーラビリティに課題があり、ETL ステップが追加で必要になる。
Q2(D2: 探索的データ分析)
ある金融機関は、過去 10 年分の取引データを用いて詐欺検知モデルを構築しようとしています。データを確認すると、直近数年間に不正取引の手口が急激に多様化しており、古いデータとは分布が大きく異なっていました。また、一部の属性には欠損が多く、特に顧客所在地のカラムでは 40% もの欠損が見られます。不正ラベル自体は全体の 0.1% 未満しか存在せず、極端に不均衡なデータです。
この場合、モデル学習用データをどのように準備するのが最も適切でしょうか。
A) 全データをランダムにシャッフルし、学習・検証・テストに均等に分割する。
B) 過去のデータを学習に使い、直近の数年分を検証・テストに充てる。欠損値は他特徴量を利用して補完し、不均衡には SMOTE やクラス重みを適用する。
C) 不正と正常を同数サンプリングして学習データを構成する。
D) 欠損が多い属性は削除し、残りのデータでモデルを構築する。
正解:B
解説:
B が正しい理由: 将来予測を前提とするなら「過去→未来」の分割が必須。欠損は教師あり補完の方が精度が高い。不均衡には SMOTE やクラス重みが有効。
A ランダム分割はリークを起こし、実運用を反映できない。
C ラベルを完全に均衡させると実際の分布を失い、確率予測が無意味になる。
D 属性削除は重要情報を捨てるリスクが高い。
Q3(D3: モデリング)
ある小売プラットフォームでは、数百万のユーザーと数百万の商品を扱っており、それぞれの購入履歴やクリック履歴を活用して「次に購入する可能性の高い商品」を予測するモデルを構築しようとしています。データは非常に疎で、ユーザー ID と商品 ID の組み合わせが主な特徴量です。SageMaker の組み込みアルゴリズムから選ぶ場合、どれが最も適切でしょうか。
A) PCA を使って次元削減した後にロジスティック回帰で分類する。
B) Factorization Machines を使って疎なデータの二次相互作用を学習する。
C) K-means でユーザーをクラスタリングし、クラスタ内の商品を推薦する。
D) 線形回帰で商品 ID を直接予測する。
正解:B
解説:
B が正しい理由: FM は疎なカテゴリカル特徴量に強く、CTR予測やレコメンドに適している。
A PCA + ロジスティック回帰では ID の相互作用が表現できない。
C K-means はクラスタリングであり、推薦の精度は限定的。
D 線形回帰は連続値回帰用でカテゴリカル予測には不適。
Q4(D3: 評価指標)
ある銀行が不正検知モデルを検討しています。偽陽性(正常取引を不正と誤判定)のコストは $100、偽陰性(不正を見逃す)のコストは $1000 と試算されています。モデル A の再現率は 0.85 で偽陽性率は 0.15、モデル B の再現率は 0.75 で偽陽性率は 0.05 でした。
総合的なコストを考慮した場合、どちらを採用すべきでしょうか。
A) モデル A、再現率が高いため不正をより検出できる。
B) モデル B、偽陽性が少ないためコストが低い。
C) モデル A、偽陰性コストが大きいため再現率を優先した方が総コストが低くなる。
D) 両者は同等なので AUC で判断する必要がある。
正解:C
解説:
C が正しい理由: 偽陰性のコストは偽陽性の 10 倍。モデル A は再現率が高く、見逃しを減らせるため総コストが低くなる。
A 部分的には正しいが、単に「再現率が高いから」では不十分。
B 偽陽性が少なくても偽陰性の損失が膨大になるため不適。
D AUC での比較は可能だが、明確にコスト最小化を重視するならモデル A が優位。
Q5(D4: デプロイ)
ある SaaS 企業は、数千の顧客ごとに異なるモデルを SageMaker 上でリアルタイム推論として提供したいと考えています。しかしコスト増が懸念されています。限られた予算の中でこれを実現するために最適な選択肢はどれでしょうか。
A) 顧客ごとに専用のエンドポイントを用意する。
B) すべてのモデルを 1 つの巨大なコンテナに格納して常時稼働させる。
C) SageMaker マルチモデルエンドポイントを利用し、必要に応じてモデルをロードする。
D) SageMaker Batch Transform を利用して夜間に一括推論する。
正解:C
解説:
C が正しい理由: マルチモデルエンドポイントは多数のモデルを 1 つのエンドポイントで管理し、オンデマンドでロードできるため、リアルタイム性とコスト効率を両立する。
A 数千エンドポイントはコスト・運用ともに現実的でない。
B 全モデル常駐はメモリ逼迫・管理困難。
D Batch Transform はオフライン処理向けで、リアルタイム要件に合わない。
Q6(D2: 探索的データ分析)
ある通信会社のデータサイエンスチームは、顧客の通話履歴やインターネット利用状況を用いて解約予測モデルを構築しています。データには過去 3 年分の顧客行動ログが含まれていますが、最近の 6 ヶ月間では解約率が急上昇しており、分布が大きく変化しています。チームはモデルの学習にあたり、データをどのように分割すべきかを検討しています。要件は、実際の運用環境で発生するデータ分布の変化をできる限り忠実に再現し、過去のモデルが新しいデータにどのように適応できるかを検証することです。
最適なデータ分割戦略はどれでしょうか。
A) 全データをランダムにシャッフルし、均等に学習・検証・テストに分割する。
B) すべての期間を対象に学習し、検証とテストはランダムにサンプリングする。
C) 過去 2 年半分を学習データとし、直近 6 ヶ月分を検証・テストに充てる。
D) 学習・検証・テストすべてに直近 6 ヶ月のデータを含め、残りを破棄する。
正解:C
解説:
C が正しい理由:
本番運用では将来データに対して予測を行うため、テストデータは最新のデータ分布を反映させるべきです。したがって「過去で学習し、直近を検証・テスト」とするのが最も妥当です。
A が誤りの理由:
ランダム分割は情報リークを招き、現実のデータドリフトを評価できません。
B が誤りの理由:
ランダムサンプリングでは「最近の分布変化」を適切に再現できません。
D が誤りの理由:
直近データのみを使用すると学習データ量が減少し、モデルの汎化性能が落ちます。
Q7(D3: モデリング)
ある大規模小売チェーンでは、数百万件の取引履歴を用いて商品レコメンデーションを提供しています。特徴量は主にユーザー ID と商品 ID のペアで構成されており、データは極めて疎で高次元です。データサイエンティストは Amazon SageMaker の組み込みアルゴリズムを使って効率的に学習を行いたいと考えています。
このユースケースに最も適したアルゴリズムはどれでしょうか。
A) Principal Component Analysis (PCA)
B) Factorization Machines
C) Linear Learner
D) K-means
正解:B
解説:
B が正しい理由:
Factorization Machines は疎な特徴量の二次相互作用を効率的に学習できるため、CTR予測やレコメンドに最適です。SageMaker 組み込みアルゴリズムの中でも代表的な選択肢です。
A が誤りの理由:
PCA は次元削減アルゴリズムであり、予測モデルそのものではありません。
C が誤りの理由:
Linear Learner は基本的に線形関係を捉えるモデルで、疎な高次元カテゴリカルデータの相互作用を効率的に扱えません。
D が誤りの理由:
K-means はクラスタリングであり、推薦や予測モデルには不向きです。
Q8(D3: 評価指標)
あるオンラインバンキング企業が、不正取引検知のためのモデルを評価しています。正常取引は全体の 99.5% を占め、不正取引はわずか 0.5% しかありません。ビジネス上の最重要要件は、不正取引をできるだけ見逃さないことです。チームはモデル評価のために適切な指標を選択しようとしています。
最も適切な評価指標はどれでしょうか。
A) Accuracy(正解率)
B) RMSE
C) Precision-Recall AUC
D) ROC AUC
正解:C
解説:
C が正しい理由:
極端なクラス不均衡下では ROC AUC は過大評価されやすいため、少数クラス(不正)の性能に敏感な PR-AUC が望ましい。
A が誤りの理由:
Accuracy は不均衡データで無意味。99.5% を常に正常と予測するだけで高精度になってしまう。
B が誤りの理由:
RMSE は回帰タスクの指標であり、分類には不適。
D が誤りの理由:
ROC AUC も有用ではあるが、不均衡が極端な場合は PR-AUC の方が解釈性が高い。
Q9(D4: デプロイ)
あるスタートアップは、顧客の購買履歴を用いたリアルタイムの離脱予測モデルを Amazon SageMaker 上で提供しています。現在は単一のエンドポイントでモデルをホストしていますが、顧客数が急増し、今後は数千の異なる顧客ごとに専用モデルを提供する必要が出てきました。限られた予算でこの要件を実現するためには、どのようにデプロイすべきでしょうか。
A) 顧客ごとに個別のエンドポイントを作成する。
B) すべてのモデルを 1 つの巨大なコンテナに格納して常時稼働させる。
C) SageMaker マルチモデルエンドポイントを利用して、必要に応じてモデルをオンデマンドでロードする。
D) SageMaker Batch Transform を利用して夜間に一括推論を行う。
正解:C
解説:
C が正しい理由:
マルチモデルエンドポイントは、数千のモデルを必要に応じてロードできるため、コスト効率とスケーラビリティを両立できます。
A が誤りの理由:
数千のエンドポイントはコスト的にも運用的にも破綻します。
B が誤りの理由:
すべてを常駐させるとメモリ不足や起動時間の増大につながります。
D が誤りの理由:
Batch Transform はオフライン推論向けであり、リアルタイム要件には不適です。
Q10(D4: セキュリティ)
ある保険会社では、顧客データの機密性を最優先に考えています。SageMaker を用いてモデルの学習と推論を実行するにあたり、インターネットを経由した通信を一切禁止し、すべての通信は AWS ネットワーク内で完結させたいという要件があります。また、すべての API 呼び出しは監査証跡として保存する必要があります。
この要件を満たすために最も適切な設計はどれでしょうか。
A) SageMaker ノートブックとトレーニングジョブを VPC 内に配置し、必要なサービス(S3、ECR など)へのアクセスには VPC エンドポイントを使用する。API 呼び出しの記録には CloudTrail を有効化する。
B) SageMaker ノートブックにパブリック IP を付与し、セキュリティグループで外部からのアクセスを制限する。
C) モデルデータを公開 S3 バケットに保存し、IAM ポリシーでアクセスを制御する。
D) CloudTrail を無効化し、代わりに手動でログを収集する。
正解:A
解説:
A が正しい理由:
VPC 内で SageMaker を実行し、S3/ECR などは VPC エンドポイント経由でアクセスすることで完全に閉じたネットワーク環境を構築できます。さらに CloudTrail により すべての API 呼び出しを監査できます。
B が誤りの理由:
パブリック IP を付与する時点でインターネット接続が許容されてしまい、要件違反です。
C が誤りの理由:
公開 S3 バケットは機密データ要件に真っ向から反します。
D が誤りの理由:
CloudTrail を無効化すると監査要件を満たせません。
Q11(D1: データエンジニアリング)
ある保険会社では、事故報告のテキストデータと請求額の数値データを組み合わせて不正請求検知モデルを構築しようとしています。現在、事故報告は社内システムから毎日 CSV ファイルとして Amazon S3 にアップロードされ、請求額データはオンプレミスの Oracle データベースに格納されています。チームはこれらを統合し、特徴量ストアに蓄積したうえで定期的に学習ジョブを実行したいと考えています。ただし、運用チームは少人数であるため、スキーマ管理やデータ取り込みをできるだけ自動化したいという要望があります。
この場合、最も適切な構成はどれでしょうか。
A) Glue クローラを用いて S3 の CSV と JDBC 接続した Oracle データをカタログ化し、Glue ETL ジョブで特徴量を生成する。
B) S3 と Oracle データを両方 Redshift にロードし、SQL クエリで特徴量を作成する。
C) DynamoDB に両方のデータをロードし、SageMaker Processing ジョブで特徴量を作成する。
D) Aurora に CSV をインポートし、Oracle データをレプリケートしてから特徴量を作成する。
正解:A
解説:
A が正しい理由: Glue クローラでS3 と JDBC 接続データを自動カタログ化し、Glue ETL ジョブで統合するのが最も低運用。さらに SageMaker Feature Store に出力可能。
B Redshift は強力だが、ロードやスキーマ管理が手動になりやすい。
C DynamoDB は構造化・分析向けではなく、特徴量生成処理に不向き。
D Aurora へのインポートやレプリケーションは複雑で、管理負荷が高い。
Q12(D2: 探索的データ分析)
あるオンラインゲーム企業は、プレイヤーの行動ログを用いてチート行為の検出モデルを構築しようとしています。データを確認すると、特定の国からのログにはタイムスタンプの欠損が 20% 程度存在しており、これをどう扱うかが課題になっています。チームは「欠損値を処理しないとモデルが利用できない」と考えていますが、単純に平均で補完するのは分布を歪める可能性があると懸念しています。
この場合、最も適切な対応はどれでしょうか。
A) 欠損のある行をすべて削除する。
B) タイムスタンプ列を削除し、他の特徴量のみでモデルを学習する。
C) 他の特徴量(例:ログ送信元 IP やプレイ時間帯)を利用して教師ありモデルで欠損を補完する。
D) 欠損部分を一律で中央値で補完する。
正解:C
解説:
C が正しい理由: 他の特徴量を活用した補完はより現実的で分布を維持できる。EDA フェーズでは「欠損を単純に処理するか、関係情報を使うか」を判断する力が求められる。
A 欠損行削除は 20% の情報喪失につながり、偏りも生じる。
B 重要な時間情報を捨てるとモデル性能が落ちる。
D 中央値補完は簡便だが分布を歪める。
Q13(D3: モデリング)
ある広告配信プラットフォームでは、広告のクリック率(CTR)を予測するモデルを構築しています。特徴量は数百万のユーザー ID、広告 ID、Web サイト ID を含んでおり、大部分が疎なカテゴリカル変数です。SageMaker の組み込みアルゴリズムの中で、このような特徴量を効率的に扱えるものを選ぶ必要があります。
どのアルゴリズムを選ぶのが最も適切でしょうか。
A) XGBoost
B) Linear Learner
C) Factorization Machines
D) K-means
正解:C
解説:
C が正しい理由: Factorization Machines は疎な高次元カテゴリカルデータを扱うのに最適。CTR 予測の典型例。
A XGBoost でも可能だが、巨大な疎行列では前処理が必要になりやすい。
B Linear Learner は単純な線形関係しか捉えられない。
D K-means はクラスタリングで CTR 予測のような教師ありタスクには不適。
Q14(D3: 評価指標)
ある医療研究機関は、患者の診断データを用いて疾患の有無を予測するモデルを構築しています。対象疾患は非常に稀で、全体の 1% 未満しか存在しません。研究者は「モデルがどれだけ疾患を検出できるか」に強い関心を持っています。一方で、誤検出によるコストはそこまで大きくありません。
この場合、最も適切な評価指標はどれでしょうか。
A) Accuracy(正解率)
B) Recall(再現率)
C) Precision(適合率)
D) RMSE
正解:B
解説:
B が正しい理由: 目的は「見逃しを最小化すること」なので再現率が重要。不均衡データにおいては Recall を優先するのが一般的。
A 不均衡下では Accuracy は意味がない。
C Precision は誤検出の影響を見る指標だが、ここでは優先度が低い。
D RMSE は回帰タスク用。
Q15(D4: デプロイ)
ある e コマース企業では、SageMaker 上で構築した商品推薦モデルを顧客向けアプリにリアルタイムで提供しています。利用者数が急増し、推論リクエストが時間帯によって大きく変動するようになりました。コストを抑えながら需要変動に対応するために最も適切な方法はどれでしょうか。
A) 常に最大需要に合わせたインスタンスタイプを固定し、スケーリングは行わない。
B) 推論処理をすべて Lambda 関数に移行する。
C) SageMaker エンドポイントのオートスケーリングを有効化してリクエスト数に応じてインスタンス数を調整する。
D) 推論をバッチ処理に切り替えて夜間に一括で実行する。
正解:C
解説:
C が正しい理由: SageMaker エンドポイントはオートスケーリングに対応しており、リクエストに応じてインスタンスを増減できるため、コスト効率と応答性を両立できる。
A 常時最大リソースはコスト非効率。
B Lambda は短時間・軽量処理向けであり、大規模推論には適さない。
D バッチ処理ではリアルタイム要件を満たせない。
Q16(D1: データエンジニアリング)
ある製造業の IoT チームは、工場のセンサーから毎秒数百万件のメッセージを収集しています。これらのデータは JSON 形式で Amazon Kinesis Data Streams に送られ、最終的には長期保存のために Amazon S3 にアーカイブされます。データサイエンス部門は、異常検知モデルの学習に利用する特徴量をほぼリアルタイムで生成し、すぐに利用できる状態にしたいと考えています。さらに、今後は新しいセンサーが追加される予定であり、スキーマ変更への対応も自動化したいという要件があります。
この場合、最も適切なアーキテクチャはどれでしょうか。
A) Kinesis Data Firehose を使ってすべてのデータを直接 S3 に配信し、Glue ETL ジョブをスケジュールして特徴量を生成する。
B) Kinesis Data Streams を Amazon Managed Service for Apache Flink に接続し、ストリーム処理で特徴量を生成して S3 に書き込み、Glue クローラでメタデータを更新する。
C) Kinesis Data Streams のデータを直接 DynamoDB に格納し、SageMaker Processing ジョブで特徴量を生成する。
D) S3 に保存されたデータを毎日 Redshift にロードし、SQL クエリで特徴量を生成する。
正解:B
解説:
B が正しい理由: Flink を利用すると、リアルタイムで特徴量を生成可能。Glue クローラと組み合わせればスキーマ変更にも自動対応できる。リアルタイム性+スキーマ進化+低運用のすべてを満たす。
A Firehose + Glue ではジョブの遅延があり、リアルタイム要件を満たせない。
C DynamoDB はスキーマレスだが、分析や複雑な特徴量生成には不向き。
D 日次ロードはリアルタイム要件から外れる。
Q17(D2: 探索的データ分析)
あるヘルスケア企業は、ウェアラブルデバイスから収集した 2 年分の心拍データを用いて不整脈検出モデルを構築しています。EDA の過程で以下のことがわかりました:
サンプリング間隔がデバイスごとに微妙に異なるため、一部の患者では 1 秒ごとの測定値、他の患者では 2 秒ごとの測定値が存在する。
データには外れ値が散見され、例えば心拍数が 0 になっているケースや、1 秒間に 400 を超える値が記録されているケースがある。
不整脈ラベルは専門医の診断に基づき、データ全体の 0.5% 程度にしか存在しない。
この場合、最も適切な前処理戦略はどれでしょうか。
A) 欠損や外れ値をすべて削除し、ラベルのあるデータのみで学習を行う。
B) サンプリング間隔を正規化し、外れ値はドメイン知識に基づいて除去または補正する。不均衡はクラス重みやオーバーサンプリングで対応する。
C) サンプリング間隔の違いは無視し、外れ値をそのまま残すことでモデルが学習するのを期待する。
D) 不整脈ラベルのデータだけを抽出し、正常データは使わずにモデルを学習する。
正解:B
解説:
B が正しい理由: 時系列解析ではサンプリング間隔の統一が必須。心拍数 0 や 400 は物理的に不自然であり、外れ値補正が望ましい。不均衡ラベルは重み付けや合成サンプルで補正する。
A データ削除は情報喪失が大きすぎる。
C モデルに任せるのは危険で、外れ値の影響が強すぎる。
D 正常データを除外すると分類タスク自体が成立しない。
Q18(D3: モデリング)
ある旅行予約サイトは、宿泊施設のレビューをテキストとして収集しています。レビュー文を入力に、宿泊体験が「ポジティブ」か「ネガティブ」かを判定する感情分析モデルを作成したいと考えています。モデルは Amazon SageMaker 上で構築する予定です。
このタスクに最も適したアプローチはどれでしょうか。
A) PCA でレビューを次元削減し、ロジスティック回帰で分類する。
B) K-means クラスタリングでレビューをグループ化し、ポジティブ・ネガティブを割り当てる。
C) BlazingText(テキスト分類モード)を利用して教師ありで学習する。
D) Object2Vec を使ってレビューを埋め込みに変換し、クラスタリングして分類する。
正解:C
解説:
C が正しい理由: BlazingText の分類モードはテキスト入力を直接扱い、教師ありで感情分類を効率的に実装できる。大規模コーパスでも高速に学習可能。
A PCA + ロジスティック回帰ではテキストの意味的特徴をうまく捉えられない。
B K-means は教師なしであり、ラベル付き感情分類には不適。
D Object2Vec は文書・オブジェクト間類似性に強いが、直接的な感情分類には BlazingText の方が適切。
Q19(D3: ハイパーパラメータ最適化)
ある e コマース企業は、商品の売上を予測するための回帰モデルを Amazon SageMaker で構築しています。モデル精度を向上させるため、ハイパーパラメータチューニングを行いたいと考えています。要件は、できるだけ少ない試行回数で最適な組み合わせを探索することです。
最も適切な戦略はどれでしょうか。
A) グリッドサーチを使って全てのパラメータ組み合わせを探索する。
B) ランダムサーチを使って一部のパラメータ組み合わせをランダムに試す。
C) SageMaker のハイパーパラメータ最適化機能を利用し、ベイズ最適化で探索する。
D) デフォルト値を使用し、学習データ量を増やして精度向上を図る。
正解:C
解説:
C が正しい理由: SageMaker の HPO はベイズ最適化を用いて効率的に探索し、少ない試行で高性能パラメータを見つけられる。
A グリッドサーチは計算コストが膨大。
B ランダムサーチはベイズ最適化より効率が悪い。
D データ量増加は精度に寄与する場合もあるが、ハイパーパラメータの調整を無視するのは不適切。
Q20(D4: ML オペレーション)
ある大手金融企業は、SageMaker 上で与信スコアモデルをデプロイしています。規制遵守の観点から、モデルの推論処理を監査可能にし、入力と出力の両方を保存しておく必要があります。さらに、モデルのバージョンを管理し、将来的に新しいモデルへ移行する際には既存の API を変更せずに差し替えたいと考えています。
この要件を満たすために最も適切な方法はどれでしょうか。
A) SageMaker エンドポイントで推論ログを CloudWatch Logs に保存し、モデルを新バージョンでデプロイする際には既存エンドポイントを削除して作り直す。
B) SageMaker Batch Transform を利用して推論を行い、結果を S3 に保存する。
C) SageMaker モデルモニタリングを有効化し、入力・出力を CloudWatch Logs または S3 に保存する。モデルはエンドポイントを更新することでバージョン管理を行う。
D) 推論処理を Lambda でラップし、DynamoDB に入力と出力を保存する。モデルは別のエンドポイントにデプロイし、呼び出しコードを書き換える。
正解:C
解説:
C が正しい理由: SageMaker Model Monitor は推論リクエストの入力・出力を自動収集し、監査ログを保存できる。また、SageMaker モデルのバージョン管理は「エンドポイント更新」で対応でき、API を変更せずに新モデルを差し替え可能。
A ログ保存は可能だが、エンドポイントを削除すると API が変わりダウンタイムが発生する。
B Batch Transform は一括推論には有効だが、リアルタイム要件と監査性を満たせない。
D Lambda + DynamoDB は可能だが運用が煩雑であり、規制遵守やモデルバージョン管理の面で非効率。
Q21(D1: データエンジニアリング)
ある自動車メーカーは、数千台の車両からリアルタイムで送信されるセンサーデータを収集しています。各車両からは毎秒 50 種類以上のメトリクスが送られ、1 日あたり数百 GB に達します。チームはこれらのデータを長期保存し、後日モデル学習に利用したいと考えています。また、学習用に読み出す際には大規模な並列アクセスを可能にし、前処理時間を最小化する必要があります。
この要件に最も適したデータ取り込み方法はどれでしょうか。
A) S3 に保存し、SageMaker の File モードでトレーニングジョブを実行する。
B) S3 に保存し、SageMaker の Pipe モードでデータをストリーミングして学習に供する。
C) DynamoDB に保存し、SageMaker から直接クエリして学習を行う。
D) RDS に保存し、SQL クエリでデータをバッチ抽出して学習に供する。
正解:B
解説:
B が正しい理由: Pipe モードは S3 からストリーミングで直接データを読み込み、EBS のコピー不要で高速かつスケーラブルな学習を可能にする。大規模データに最適。
A File モードはすべてのデータを EBS にコピーするため、前処理時間と容量がボトルネックになる。
C/D DynamoDB や RDS はオンライン取引処理向けで、学習の大規模並列 I/O には適さない。
Q22(D2: 探索的データ分析)
ある SNS 企業は、投稿内容をスパムかどうか判定するモデルを開発しています。EDA の段階で、次のことがわかりました。
「リンク付き投稿」ではスパム率が高い。
「絵文字の多用」はスパム投稿に多く含まれるが、一般ユーザーでもしばしば利用される。
「投稿時間帯」はスパム・非スパムの両方で幅広く分布しており、有効性が低そうに見える。
この観察に基づいて適切な対応はどれでしょうか。
A) リンク付き投稿や絵文字使用を特徴量として残し、投稿時間帯は除外する。
B) すべての特徴量を残し、モデルに学習させて取捨選択させる。
C) 投稿時間帯のみを残し、他の特徴量は除外する。
D) 絵文字の使用は曖昧なので除外し、リンクの有無だけを特徴量に残す。
正解:A
解説:
A が正しい理由: 明確に差がある特徴量は残すべき。一方「時間帯」は情報量が低いため除外候補になる。
B モデルに任せるのも一案だが、EDA の目的は不要な特徴量を事前に見極めること。
C 情報量が低い特徴量だけを残すのは不適。
D 曖昧だが「絵文字多用」は有効特徴の可能性があるため完全除外は早計。
Q23(D3: モデリング)
ある物流企業では、倉庫の在庫数を予測するモデルを構築しています。SKU 数は数千あり、需要には季節性や曜日性の影響があります。過去データには欠品や突発的なイベントによる変動も含まれています。ビジネス要件としては、短期予測(翌週)と中期予測(翌月)をどちらも行えることが求められています。
最も適切なアプローチはどれでしょうか。
A) 線形回帰モデルを用いて全 SKU の在庫数を一括予測する。
B) SageMaker XGBoost を使って回帰モデルを学習させる。
C) Amazon Forecast を利用し、季節性・休日情報を含めた時系列予測を行う。
D) SageMaker k-means で SKU をクラスタリングし、各クラスタの在庫数を予測する。
正解:C
解説:
C が正しい理由: Amazon Forecast は季節性・休日・イベント要因を取り込んだ時系列予測をマネージドで提供し、SKU 単位の短期〜中期予測に対応可能。
A 線形回帰では非線形の需要パターンを捉えにくい。
B XGBoost は回帰に使えるが、複雑な時系列特有の要素(周期性、休日影響)を自動で扱えない。
D k-means はクラスタリングであり、予測モデルにはならない。
Q24(D3: 評価指標)
ある銀行は、融資申請を「承認」または「却下」に分類するモデルを構築しました。ビジネス上の要件は「承認すべき顧客を逃さないこと」が最も重要であり、一方で誤って承認してしまうことのコストも無視はできません。モデルの性能を評価するために最も適切な指標はどれでしょうか。
A) Accuracy(正解率)
B) Precision(適合率)
C) Recall(再現率)と Precision のバランスをとった F1 スコア
D) RMSE
正解:C
解説:
C が正しい理由: 承認逃しを減らすには Recall が重要だが、誤承認のコストもあるため Precision も無視できない。F1 スコアは両者のバランスを評価できる。
A Accuracy は不均衡下では意味が薄い。
B Precision のみだと Recall の改善が犠牲になる。
D RMSE は回帰指標で分類には不適。
Q25(D4: ML オペレーション)
あるオンライン教育サービスでは、SageMaker 上で構築したモデルをエンドポイントとしてデプロイしています。最近、入力データの分布が時間とともに変化していることが懸念され、モデルの精度低下を早期に検知する仕組みを導入したいと考えています。また、監査要件から入力データのサンプルを定期的に保存する必要もあります。
この場合に最も適切な方法はどれでしょうか。
A) SageMaker Model Monitor を有効化し、データ分布のドリフトを検知するとともに入力データを保存する。
B) CloudWatch メトリクスを利用して推論レイテンシを監視する。
C) Batch Transform を利用して定期的に推論を行い、出力を S3 に保存する。
D) Lambda 関数で推論リクエストを複製し、DynamoDB に保存する。
正解:A
解説:
A が正しい理由: Model Monitor はデータドリフト検出と入力サンプル保存をネイティブに提供する。運用要件に直結。
B レイテンシ監視は精度低下の検知にならない。
C Batch Transform はバッチ推論用でリアルタイム監視には不向き。
D Lambda + DynamoDB で保存は可能だが、ドリフト検知機能が不足する。
Q26(D1: データエンジニアリング)
ある小売企業は、全店舗の POS データを Amazon S3 に CSV 形式で毎日保存しています。データ量は急速に増えており、数 TB 規模になりつつあります。データサイエンスチームは、売上予測モデルを構築するためにこのデータを利用しますが、毎回全ファイルを読み込むのではなく必要な列だけを効率的に読み出したいと考えています。さらに、将来的に新しい列が追加される可能性もあるため、柔軟に対応できる形式が望まれています。
この場合、最も適したデータ形式はどれでしょうか。
A) CSV
B) JSON
C) Parquet
D) Avro
正解:C
解説:
C が正しい理由: Parquet は列指向フォーマットで、必要な列だけを効率的に読み出せる。大規模データに適し、スキーマ進化にも対応。
A CSV は単純だが列プルーニングができず非効率。
B JSON は柔軟性があるが冗長で大規模には不向き。
D Avro はスキーマ進化に強いが行指向であり列選択には非効率。
Q27(D2: 探索的データ分析)
ある音楽配信サービスは、楽曲のストリーミング履歴を用いてレコメンドモデルを構築しようとしています。EDA の段階で、次のことが明らかになりました。
一部のユーザーは 1 曲を数百回再生しており、他のユーザーは 1 曲を 1 回しか聴いていない。
全体の 90% 以上の楽曲は再生回数が非常に少なく、長いテール分布を示している。
ユーザー行動には季節性(例:夏はアップテンポ曲が増える)が存在する可能性がある。
この場合、モデル学習前に行うべき前処理として最も適切なものはどれでしょうか。
A) 極端に偏った分布を正規化(例:対数変換)し、季節性を考慮した特徴量を追加する。
B) 頻度の少ない楽曲をすべて削除し、多く再生されている楽曲だけを残す。
C) 季節性を無視し、すべてのデータをそのまま利用する。
D) 全ての楽曲を均等にリサンプリングして分布を一様にする。
正解:A
解説:
A が正しい理由: ログ正規化でスケールを整え、季節性を特徴量化すればモデル性能向上が期待できる。
B 長いテールを削除するとモデルの汎化性能が低下する。
C 季節性を無視すると重要なパターンを捉えられない。
D 一様分布へのリサンプリングは現実の分布を歪めてしまう。
Q28(D3: モデリング)
ある製薬会社は、新薬開発における臨床試験データを使って副作用発生の有無を予測するモデルを構築しています。データには数千の臨床指標が含まれますが、特徴量の多くは相関が高く、多重共線性が懸念されています。モデルはできるだけ解釈性を維持しつつ、高次元データの問題を軽減する必要があります。
この場合に最も適したアプローチはどれでしょうか。
A) k-means クラスタリングで特徴量をまとめる。
B) 主成分分析(PCA)で次元削減を行い、ロジスティック回帰で分類する。
C) ニューラルネットワークで学習し、モデル解釈は無視する。
D) 線形回帰モデルを直接すべての特徴量で学習する。
正解:B
解説:
B が正しい理由: PCA により相関のある特徴量を圧縮しつつ情報を保持でき、ロジスティック回帰で解釈性もある程度維持可能。
A k-means は次元削減ではなくクラスタリング。
C NN は強力だが解釈性要件を満たさない。
D 多重共線性により係数推定が不安定になる。
Q29(D3: 評価指標)
あるマーケティング会社は、メールキャンペーンにおける「クリックあり/なし」を予測するモデルを構築しています。データを確認すると、クリック率は全体の約 5% に過ぎず、不均衡が大きいことがわかりました。ビジネス要件は「できるだけ多くのクリックを予測し、キャンペーン効率を上げること」です。
この場合、モデルを評価するのに最も適切な指標はどれでしょうか。
A) Accuracy
B) ROC-AUC
C) RMSE
D) R²
正解:B
解説:
B が正しい理由: ROC-AUC は不均衡データに強く、分類能力を包括的に評価可能。クリック率予測に適切。
A Accuracy は不均衡で意味をなさない(常に「クリックなし」と予測しても95%の精度)。
C/D は回帰タスク用。
Q30(D4: ML オペレーション)
ある通信会社は、チャーン予測モデルを運用しています。新しいモデルをデプロイする際、ビジネス側は「既存モデルをすぐに置き換えるのではなく、新旧モデルを一部のユーザーで比較し、効果を確認したい」と要求しています。システムは Amazon SageMaker 上で動いています。
この場合、最も適切な方法はどれでしょうか。
A) 新しいモデルを別のエンドポイントにデプロイし、アプリケーションコードを修正して一部のユーザーを振り分ける。
B) 既存エンドポイントを削除し、新モデルをデプロイして完全に置き換える。
C) SageMaker エンドポイントのエイリアスとトラフィックシフト機能を利用し、新旧モデルの推論割合を制御する。
D) SageMaker Batch Transform を利用して新モデルの結果を比較し、リアルタイム推論は旧モデルで続ける。
正解:C
解説:
C が正しい理由: SageMaker のトラフィックシフト機能を使えば**段階的リリース(A/B テスト)**が可能。リスクを抑えて新旧モデル比較ができる。
A アプリケーション側で制御するのは運用が煩雑。
B 即置き換えはリスクが大きい。
D Batch Transform はオフライン比較には使えるがリアルタイム要件を満たさない。
Q31(D3: モデリング)
あるオンライン融資プラットフォームでは、申込時点の与信情報と行動ログから「90 日以内の延滞確率」を出力するモデルを構築しており、営業部門はこの確率を 期待損失(確率×損失額) の計算に直接使いたいと主張しています。過去の運用では ROC-AUC を最大化する方針でモデル選定していましたが、ローン単価が高い案件では予測確率が 0.15 と 0.25 の違いで意思決定が変わるため、数値としての確率の一貫性(キャリブレーション) がビジネス的に重要だと気づきました。データは強い不均衡で、時系列の概念があり、SageMaker 上で学習・評価・チューニングを行います。最も適切なアプローチはどれでしょうか。
A) これまで通り ROC-AUC が最大のモデルを採用し、ビジネス側で閾値をチューニングする。
B) RMSE を最小化する回帰モデルで延滞フラグ(0/1)を直接回帰し、確率として扱う。
C) ロジスティック損失で学習した確率出力モデルを前提に、検証データで確率校正(Platt/Isotonic)を行い、Brier スコアや信頼度曲線で選定する。
D) まずクラスを完全に均衡化して AUC を再最大化する。
正解:C
解説:
C が正しい理由: 期待損失計算には校正された確率が必要。ロジスティック損失で学習し、検証セットで Platt/Isotonic による確率校正を行い、Brier スコアや校正曲線で選ぶのが適切。AUC は順位の良さを測る指標で、確率の絶対値の良さは保証しない。
A AUC 最大化のみでは確率のキャリブレーション品質は担保されない。
B 0/1 を回帰で学習するのは不適切で、確率の特性を満たしにくい。
D 完全なダウンサンプリングで均衡化すると事前確率が歪み、確率解釈が崩れる。
Q32(D1: データエンジニアリング)
サブスクリプション型動画サービスは、リアルタイム推薦のために「直近視聴回数」「ジャンル別視聴時間」などのオンライン特徴量を低遅延で取得しつつ、学習再現性のために同じ特徴量を履歴に沿って過去時点で再構成できることを求めています。イベントは Kinesis Data Streams に到着し、遅延到着や再送が発生します。データサイエンスは SageMaker で学習・推論を行い、トレーニング時のポイントインタイム一貫性を強く要求しています。最も適切な設計はどれでしょうか。
A) DynamoDB をオンライン特徴量 DB とし、学習時は最新スナップショットをエクスポートして使用する。
B) Redshift に全イベントをロードし、推論時は Redshift へ都度クエリして特徴量を取得する。
C) SageMaker Feature Store を採用し、オンライン/オフラインストアの二層構成で取り込み時に record_identifier と event_time を必須化、遅延・重複は最新タイムスタンプで解決し、学習はオフラインストアから「ポイントインタイム結合」を行う。
D) S3 に Parquet で保存し、推論直前に Glue ジョブで特徴量を計算して返す。
正解:C
解説:
C が正しい理由: Feature Store のオンライン/オフライン二層は低遅延取得と学習再現性を両立。event_time による時点整合でリークを防止し、遅延到着や重複も解消できる。
A 最新スナップショットでは過去時点の再現性が失われる。
B 推論で DWH 直叩きはレイテンシとコストが課題。
D 推論直前 Glue は遅延が大きくリアルタイム要件に不適。
Q33(D2: 探索的データ分析)
フードデリバリー企業で配達 ETA 予測モデルを作ろうとしています。EDA の過程で、配達完了時刻から逆算して「過去 30 分平均の交通指数」を特徴量として結合したところ、学習時には高い精度が出る一方、実運用での誤差が急増。調べると、当該交通指数は外部 API のキャッシュ特性により集計に未来の情報が混入している可能性が指摘されました。実運用では推論リクエスト時点までの情報しか利用できないことを踏まえ、正しい対策はどれでしょうか。
A) 訓練・検証を完全ランダム分割にしてサンプルサイズを増やす。
B) 「ポイントインタイム結合」を採用し、特徴量生成をリクエスト時刻以前のデータに限定。検証・テストは時系列前方分割で将来データを厳密に隔離する。
C) 外部 API のキャッシュ時間を伸ばし、未来情報の混入可能性を低下させる。
D) 学習後に予測確率をキャリブレーションして誤差を吸収する。
正解:B
解説:
B が正しい理由: 典型的なリーク(未来情報混入)。時点整合の取れたポイントインタイム結合と前方分割で評価し直すのが正解。
A ランダム分割はリークを温存。
C キャッシュ時間の調整は根本対策にならない。
D キャリブレーションは確率整合の話で、回帰誤差やリークの解決にはならない。
Q34(D3: ハイパーパラメータ最適化)
音声コールセンターの感情分類モデル(テキスト化済み)を SageMaker 上で学習しています。学習は高コストで、過去に似たデータセットで HPO を行った実験資産(トライアル履歴)が残っています。限られた試行回数で効率よく探索しつつ、明らかに悪い試行は早期に打ち切りたいという要求があります。最も適切な戦略はどれでしょうか。
A) 毎回ゼロからグリッドサーチし、全組合せを網羅する。
B) ランダムサーチに切り替え、試行回数を倍増させる。
C) SageMaker HPO のベイズ最適化を利用し、過去ジョブを親として Warm Start を有効化、かつ Early Stopping を設定する。
D) 既存モデルのデフォルト値を固定し、学習データ量だけ増やす。
正解:C
解説:
C が正しい理由: ベイズ最適化+Warm Start で既存知見を再利用し探索を加速。Early Stopping で無駄な計算を抑制できる。
A 計算量が爆発。
B ランダムは初期探索には有効だが既存知見の活用ができない。
D パラメータがボトルネックならデータ増だけでは改善しない。
Q35(D4: 機械学習の実装と運用)
規制産業の企業が、SageMaker で学習したモデルを 開発→検証→本番 の三段階で運用し、人による承認ゲートとアーティファクトの一貫性を担保したいと考えています。各環境は別 AWS アカウントで分離され、モデルの移送は監査可能でなければなりません。アプリ側の呼び出し API は変えずに、承認後にのみ本番へ展開したい。もっとも適切な設計はどれでしょうか。
A) 各環境で個別に学習を実施し、性能が良いモデルを手動で S3 コピーして本番に反映する。
B) 1 つの本番アカウントでのみ学習し、検証は本番環境の別エンドポイントで実施する。
C) SageMaker Pipelines と Model Registry を用い、CodePipeline/CodeBuild でクロスアカウントにモデルパッケージを昇格。承認後に本番アカウントのエンドポイントへデプロイし、エイリアスで API を不変化。
D) すべての環境で手動デプロイし、承認はメールで記録しておく。
正解:C
解説:
C が正しい理由: Model Registry による版管理と承認ワークフロー、クロスアカウント昇格を CI/CD(CodePipeline 等)で自動化すれば、監査可能かつ API を維持したまま本番展開が可能。
A 手作業はトレーサビリティ欠如とヒューマンエラーの温床。
B 環境分離要件に反する。
D 監査要件・再現性を満たさない。
Q36(D2: 探索的データ分析)
あるeコマース企業は「購入金額予測モデル」を開発しています。EDAの過程で、購入金額の分布を確認したところ以下が分かりました:
大多数の顧客は 100 ドル未満の購入が多い
一部の顧客は 10,000 ドル以上の大口購入をしており、外れ値的に見える
ヒストグラムは右に大きく裾を引いた分布(ロングテール)になっている
このデータをモデルに適用する前に、適切な前処理として推奨されるのはどれでしょうか。
A) すべての外れ値を削除してからモデルに入力する
B) 標準化(平均0, 分散1スケーリング)のみを行う
C) 対数変換などでスケールを圧縮し、分布を正規に近づける
D) 大口購入のユーザーを別クラスとして扱い、分類問題に切り替える
正解:C
解説:
C が正しい理由: 金額データは典型的に右裾が長い分布なので対数変換でスケールを圧縮するのが有効。モデルが極端な外れ値に引っ張られるのを防げる。
A 外れ値を単純に削除すると重要顧客の行動を失う。
B 標準化は効果あるが、分布の歪み自体は解消しない。
D 問題設定を変えるのは不適切。
Q37(D1: データエンジニアリング)
国際的なニュースサイトは、記事本文・画像・動画など多様なメディアを扱っています。機械学習パイプラインでは、記事本文を自然言語処理モデル、画像をCNN、動画を別モデルに渡す必要があります。入力形式は JSON でまとめられていますが、学習時に効率的に処理できるようにするためのストレージ戦略を選ぶ必要があります。
最も適切な方法はどれでしょうか。
A) すべてのデータをそのまま JSON に埋め込み、S3 に保存する
B) テキスト・画像・動画をそれぞれ適切な形式で S3 に保存し、メタデータ(パスやラベル)は Parquet 形式で管理する
C) 画像と動画を圧縮して ZIP にまとめ、毎回展開して学習に供する
D) すべてのファイルを DynamoDB に Base64 で格納し、クエリで取り出す
正解:B
解説:
B が正しい理由: マルチモーダルデータでは生データを最適形式でS3に保存し、メタデータを列指向フォーマットで管理するのがベストプラクティス。学習パイプラインのI/O効率も向上する。
A JSON へ直接埋め込むのは非効率かつ冗長。
C ZIP 展開は学習時に大きなオーバーヘッドを生む。
D DynamoDB はバイナリ大量保存に不向き。
Q38(D3: モデリング)
あるオンライン保険会社では、顧客の解約リスクを予測するモデルを構築しています。データセットは数百万件あり、特徴量数は 300 程度です。初期的にロジスティック回帰を使いましたが、非線形関係を捉えきれず性能が頭打ちになりました。一方でモデルの解釈性はある程度残したいという要件があります。
この場合、次に採用すべきアプローチはどれでしょうか。
A) XGBoost や LightGBM などの勾配ブースティング木を利用し、特徴量重要度をもとに部分依存プロットなどで解釈性を担保する
B) 深層学習モデルを構築し、解釈性は完全に諦める
C) 線形回帰に L1 正則化を加えて変数選択だけ行う
D) k-means クラスタリングで顧客をグループ化してリスクを推定する
正解:A
解説:
A が正しい理由: 勾配ブースティング木は非線形を捉えつつ、特徴量重要度や SHAP、PDP である程度の解釈性を提供できる。現実的な妥協案。
B 精度は上がるが解釈性要件に反する。
C 線形に拘ると限界がある。
D k-means は分類モデルではなく解約予測には適用できない。
Q39(D2: 探索的データ分析)
ある IoT 農業システムでは、畑に設置したセンサーから温度・湿度・土壌水分量を 1 分ごとに収集しています。EDA の段階で、センサーの一部に以下の傾向が見つかりました:
24時間を超えて値が一定のまま変わらないセンサーがある
特定の時間帯に欠損値が連続して発生しているセンサーがある
他のセンサーと比較して分布が大きく異なるセンサーがある
このとき、最も適切な対応はどれでしょうか。
A) 異常があるセンサーをすべて削除する
B) センサーの挙動をEDAで特定し、データ品質の問題としてフラグを付与したうえで補間・除外の判断を行う
C) 欠損はすべてゼロで埋める
D) 外れ値はそのまま残してモデルに学習させる
正解:B
解説:
B が正しい理由: データ品質問題をEDAで検知・フラグ化し、ビジネス文脈に応じて補間や除外を判断するのが適切。
A 全削除は情報を失いすぎる。
C ゼロ埋めは誤った情報を導入する。
D 外れ値をそのまま残すとモデルがノイズを学習してしまう。
Q40(D4: ML オペレーション)
ある金融サービス企業は、SageMaker 上で構築したモデルを API 経由で利用しています。最近、利用者数が急増して推論リクエストが急激に増え、応答遅延が発生しています。ビジネス的に SLA が厳格であり、高トラフィック時でもレイテンシを安定化させたいという要件があります。
この場合に最も適切な方法はどれでしょうか。
A) SageMaker マルチモデルエンドポイントを使い、オートスケーリングを有効化する
B) 推論要求をすべて SQS に投入し、バッチ処理に切り替える
C) モデルを単一インスタンスに固定し、最大スペックにスケールアップする
D) 入力リクエストを Lambda に振り分け、裏で SageMaker バッチ推論を呼び出す
正解:A
解説:
A が正しい理由: SageMaker ではエンドポイントのオートスケーリングが可能で、マルチモデル構成でも高トラフィック対応とコスト効率を両立できる。
B バッチ処理にするとリアルタイム要件を満たせない。
C スケールアップだけではピークトラフィックに耐えにくい。
D Lambda 経由でバッチ呼び出しは遅延が大きすぎる。
Q41(D3: モデリング)
ある金融系スタートアップは、口座開設直後の顧客が 6 ヶ月以内にサービスを解約する確率を推定するモデルを開発しています。特徴量には申込情報(年齢、職業)、KYC の判定結果、初回の取引ログ(最初の 7 日間の利用状況)、および外部の信用情報が含まれます。過去データでモデルを学習すると、以下の課題が見つかりました:
外部信用情報は一部の古い顧客について欠損している(取得開始が途中から)。
初回 7 日の利用は強い情報を持つが、直感的に「初日の行動」が極端に重要に見える(初日のクリックや入金の有無が強く効いている)。
ビジネスは「モデルの説明可能性」と「早期判定(初日〜7日で素早く行動をとる)」の両立を求めている。
この状況でモデル設計として最も妥当なアプローチはどれでしょうか?
A) 初日の行動のみを特徴量として用い、高性能な浅い決定木を学習する(説明は部分的に可能)。
B) ラベルを回帰で学び、欠損は行削除で対処する。
C) 初日〜7日までの時系列特徴をまとめて扱う(ウィンドウ集約や要約統計)、外部信用の欠損はモデルベース補完または欠損フラグで処理し、勾配ブースティング(XGBoost/LightGBM)で学習。モデル解釈は SHAP 等で提供する。
D) 深層学習モデル(LSTM)に全時系列を投入し、説明は後回しにする。
正解:C
解説:
なぜ C が正しいか(利点):
初日のみで判断するのは早期判定には有利だが、極端な単一特徴に頼ると過学習や偶発的ノイズに敏感になります。初日〜7日の**ウィンドウ集約(合計、頻度、最近行動など)**を用いることで早期に判断しつつロバスト性を確保できます。
外部信用情報の欠損は、単純削除だとバイアスが生じる。モデルベース補完(別モデルで欠損を予測)や欠損フラグを付けることで欠損自体の情報を利用できます。
勾配ブースティングは扱いやすく高性能で、SHAP 等の手法で個別予測の解釈性も確保できるため、ビジネス要件(説明性と早期判定)を両立する。
なぜ他は誤りか:
A:初日のみでは早期判定はできても情報が偏りすぎる。重要だが単独で使うとノイズや偶然性に弱い。
B:欠損を行削除するとデータ量減/バイアス増。回帰で0/1ラベルを直接回帰するのも確率出力の性質上問題がある(分類ロスのほうが妥当)。
D:LSTM は時系列をそのまま扱えるが、学習コストが高く解釈性が低い。要件に「説明可能性」があるので不適。
Q42(D1: データエンジニアリング)
ある通信事業者は顧客行動ログを継続的に収集し、これをもとに複数の ML チームが並列して特徴量を生成・利用しています。最近、あるチームが過去の学習ジョブを再現しようとしたところ、同じキー(ユーザID)に対して異なるタイムスタンプや値が存在し、当時の学習結果が再現できない問題が発覚しました。原因調査で、データパイプラインの途中で遅延到着するイベントがあり、それを上書きしてしまっていたことが判明しました。運用チームは学習時のポイントインタイム再現性を保証したいと考えています。
最も適切な解決策はどれでしょうか?
A) S3 に保存するファイル名にタイムスタンプを付け、学習時はそのファイルを直接読み込む。
B) Feature Store(例:SageMaker Feature Store)を導入し、各レコードに event_time を付与してオフラインストアからポイントインタイムで復元する。遅延到着は event_time の若い/新しい順で解決する。
C) 全イベントを RDS に入れてトランザクションログから再構成する。
D) 遅延イベントは破棄し、到着順で上書きして問題を回避する。
正解:B
解説:
なぜ B が正しいか(利点):
Feature Store はオンライン(リアルタイム取得)とオフライン(履歴)を分離し、各レコードに event_time を持たせることで「ある時点での特徴量」を再構築できる。これによりポイントインタイム一貫性が確保され、遅延到着や順不同による上書き問題が解消される。
他が誤りの理由:
A:ファイルベースの管理はファイル粒度での再現には役立つが、イベントレベルの遅延や上書きの扱いには弱く、運用が煩雑。
C:RDS+トランザクションログで可能だが、スケーラビリティと管理負担が大きく、分析用途には非最適。
D:遅延イベントを破棄すると情報欠落/バイアスが発生する。
Q43(D2: 探索的データ分析)
あるヘルスケアアプリでは、睡眠トラッキングのセンサーデータを用いて「翌日の疲労度」を予測するモデルを作ろうとしています。EDA を進めると、次のような発見がありました:
デバイスのファームウェア変更により、一部の期間でセンサーのスケールが 2 倍になっている(古いデータと新しいデータで単位が事実上異なる)。
ユーザー群のうち少数はデバイスの設定を手動で変更しており、測定単位が混在している可能性がある。
モデルにそのまま混在データを投げると性能が低下するが、全データを同じスケールに揃えるとデータ量は最大化できる。
この状況で最も適切なデータ前処理の方針はどれでしょうか。
A) すべてのデータを同じスケールに正規化してから学習する(前処理で単位差を吸収)。
B) 単位が確実にわからないデータはすべて削除する。
C) EDA 時点でファームウェアやデバイス設定を示すメタデータを用いてグループ化・正規化を行い、単位不明のサンプルはフラグを付けて別扱いする。
D) 単位の違いはモデルが学習すれば吸収できると期待してそのまま学習する。
正解:C
解説:
なぜ C が正しいか(利点):
ファームウェアや設定メタデータを用いればどの期間/どのデバイスがスケール違いかを確実に識別できる。グループごとに適切なスケーリング・変換を適用し、単位不明サンプルはフラグ化してモデルにその情報を与えると安全。
他が誤りの理由:
A:全体一律正規化は見かけ上のスケール差を減らせるが、根本の単位不一致(例えば温度°Cと°F)が残ると誤変換を招く。
B:削除はデータ量を減らし、外挿力を低下させる。
D:モデル任せはリスクが高く、特に医療系では不適切。
Q44(D3: モデリング)
ある広告配信プラットフォームで、同一ユーザーに対して短時間に同一広告を何度も出すと効果が下がる(疲労効果)が観察されています。これをモデルに組み込むために、エンジニアは「広告ごとの直近 N 回の表示回数」を特徴量として追加しようとしています。ただし、同時に広告主は「モデルのスコアが何に依存しているか」を説明したいと要望しています。
この設計で最も望ましい手法はどれでしょうか。
A) 直近 N 回の表示回数の生データをそのまま特徴量として投入する(高次元だが情報は豊富)。
B) 直近 N 回の表示回数を加重平均などで要約し、追加の「疲労スコア」特徴量を作成する。モデルは木ベースアルゴリズムを採用し、SHAP で説明する。
C) 表示回数の時系列全体を LSTM に投入して学習し、説明は不要とする。
D) 表示回数をバイナリ(直近に表示されたか否か)に変換して単純化する。
正解:B
解説:
なぜ B が正しいか(利点):
生データをそのまま投入すると高次元・スパース化しモデルが複雑化する一方、加重平均や指数移動平均(直近を重視)などで要約すると表現力は残しつつ解釈性を高められる。
木ベース(XGBoost/LightGBM)+SHAP により、どの特徴量(疲労スコア・CTR 等)がどの程度貢献しているかを明示的に示せるため、広告主の説明要求にも応えられる。
他が誤りの理由:
A:高次元化で学習効率・解釈性が低下。
C:LSTMは性能は期待できるが説明が難しくビジネス要求に合わない。
D:二値化は情報損失が大きく、疲労効果の強度を捕捉できない。
Q45(D4: ML オペレーション)
ある金融機関では、SageMaker 上の信用スコアモデルで「説明可能性」のログを保存するため、各推論につきモデルの寄与度(例:SHAP 値)をストアに記録したいと考えています。推論は毎日数百万件に及び、ストレージ・コストと遅延に影響を与えない形で実装する必要があります。
最も適切な実装アーキテクチャはどれでしょうか。
A) 各推論ごとに SHAP を計算し、その結果を直接 S3 に同期書き込みする。
B) リアルタイム推論は高速に処理し、推論イベントのサンプリング(例えば 1%)を行ってそのサンプルのみ詳細な SHAP 値を非同期で計算・保存する。全件はメタ情報(スコア・モデルバージョン等)のみ保存する。
C) すべての推論で詳細な SHAP を計算し、DynamoDB に保存する(低レイテンシで取得可能)。
D) SHAP は本番環境で計算せず、必要時にだけリプレイして Batch Transform で計算する(リアルタイムは保存しない)。
正解:B
解説:
なぜ B が正しいか(利点):
全リクエストに対して詳細 SHAP を計算・保存すると計算コストとストレージが膨大になり、レイテンシやコスト要件を満たせない。**サンプリング(代表サンプルの保存)+全件メタの保存(スコア、モデルID、タイムスタンプ)**というハイブリッド戦略で、説明性・監査性・コストをバランスさせるのが実務的。
非同期で重い処理をバッチ化(もしくは専用の非同期ワーカーで)行えばリアルタイムの応答性を損なわない。
他が誤りの理由:
A:推論ごとの同期 SHAP 計算はレイテンシに致命的影響を与える。
C:DynamoDB に全件保存してもコスト・IOが大きすぎる。
D:Batch のみではリアルタイム説明性や即時監査に対応できない。
Q46(D3: モデリング)
あるオンライン旅行代理店は、ユーザーの検索履歴やクリック履歴をもとにホテルの推薦モデルを開発しています。ベースラインとして協調フィルタリング(Matrix Factorization)を導入しましたが、新規ユーザーに対して推薦がうまく行かない「コールドスタート問題」が発生しました。さらに、同じ都市でも旅行者の意図(観光・出張など)に応じて求めるホテルが異なるため、より文脈依存の推薦を求められています。
最も適切な改善策はどれでしょうか。
A) 既存の協調フィルタリングを維持し、新規ユーザーにはランダムにホテルを提示する。
B) ユーザープロファイル(年齢、目的、位置情報など)やアイテム特徴(ホテルの属性)を追加し、ハイブリッド推薦モデルを導入する。
C) すべての推薦を人気順に切り替える(全ユーザーに同じ)。
D) Matrix Factorization の潜在次元を増やし、学習をやり直す。
正解:B
解説:
B が正しい理由:協調フィルタリング単体では新規ユーザーに弱い。ハイブリッド手法(協調フィルタリング+コンテンツベース)を用いれば、ユーザー特徴やアイテム特徴を組み込むことでコールドスタート問題を軽減できる。さらにコンテキスト依存の推薦にも対応可能。
A:ランダム推薦は精度を著しく損なう。
C:人気順は全体傾向しか反映できず、パーソナライズを失う。
D:潜在次元を増やしてもコールドスタートは解決しない。
Q47(D1: データエンジニアリング)
ある製造業企業では、工場の IoT センサーから 1 秒ごとにデータが収集されます。これを用いてリアルタイムで異常検知を行いたいのですが、同時にデータを長期保存してモデル再学習にも利用したいという要件があります。データ量は膨大であり、1 年以上保存する必要があります。
どのアーキテクチャが最も適切でしょうか。
A) Amazon Kinesis Data Streams を用いてリアルタイム異常検知に入力しつつ、データを Amazon S3 に永続保存する。S3 はライフサイクルポリシーで低コストストレージに移行する。
B) Kinesis Data Streams を Lambda で処理し、結果のみを DynamoDB に保存する。
C) IoT センサーから直接 DynamoDB にデータを保存し、そこからリアルタイム検知を行う。
D) Kinesis Data Firehose でデータを S3 に保存し、リアルタイム処理は別途構築する。
正解:A
解説:
A が正しい理由:リアルタイム処理には Kinesis Data Streams が適切。さらに S3 に長期保存し、ライフサイクルで Glacier などへ移動することで低コストかつ大容量の保管が可能。要件をすべて満たす。
B:結果のみ保存では学習用に必要な「生データ」が欠落する。
C:DynamoDB はトランザクション処理に強いが、大量ストリーミングデータの長期保存には不向き。
D:Firehose はバッチライクでリアルタイム検知には不十分。
Q48(D3: モデリング)
ある保険会社では、顧客の申請内容に基づいて不正請求を検知するモデルを構築しています。特徴量の中には「請求金額」「過去の保険履歴」などがありますが、データは非常に不均衡(不正請求は全体の 0.5%)です。初期モデルは高い精度(accuracy)を示したものの、不正検知率が低いことが判明しました。
この状況で最も適切な改善策はどれでしょうか。
A) データをそのままにし、モデルをより深いニューラルネットワークに置き換える。
B) クラス不均衡を考慮し、適切な評価指標(例:F1、AUC-PR)を採用しつつ、SMOTE やクラス重み付けを導入する。
C) 不正クラスを無視し、正常クラスのみでモデルを構築する。
D) モデルを教師なしクラスタリングに切り替える。
正解:B
解説:
B が正しい理由:クラス不均衡問題では accuracy は役に立たない。代わりに F1 スコアや AUC-PR を使うべき。また、SMOTE などの過サンプリングやクラス重み調整で不正クラスの寄与を増やすことで検出性能が改善する。
A:モデルを複雑化しても不均衡問題は解決しない。
C:不正検知が目的なのに無視しては意味がない。
D:教師なしはラベルを活かさず精度が下がる。
Q49(D2: 探索的データ分析)
ある音楽配信サービスは、ユーザーごとの「再生時間」を特徴量として扱っています。EDA の段階で、ユーザーの一部は再生時間が「0」で記録されていることが確認されました。調査すると、アプリのバックグラウンド再生を無効にしている場合にログが取れない仕様だったことが分かりました。
この状況で最も妥当なデータ処理はどれでしょうか。
A) 再生時間が 0 のケースにフラグを付与し、その情報をモデルに渡す
B) 再生時間が 0 のケースをすべて除外する
C) 再生時間が 0 のケースを平均値で補完する
D) 再生時間が 0 のケースをすべて「1秒」として補完する
正解:A
解説:
A が正しい理由:0 が意味するのは「再生がない」ではなく「バックグラウンド再生が無効で記録されていない」。欠損の理由そのものが情報になるため、フラグを付与してモデルに渡すのが最も妥当。
B:除外するとデータが偏る。
C:平均値補完は意味を持たない数値を導入してしまう。
D:1秒補完も恣意的で誤情報を与える。
Q50(D4: ML オペレーション)
あるEC企業では、商品レコメンドモデルを毎週更新しています。更新されたモデルを本番環境にデプロイする際、既存モデルを即時に置き換えると誤差や性能劣化のリスクがあります。ビジネス部門からは「新旧モデルを比較しながら安全に切り替えたい」という要望が出ています。
この場合に最も適切な方法はどれでしょうか。
A) 新モデルを一度にデプロイし、結果を見て問題があればロールバックする。
B) SageMaker のブルー/グリーンデプロイやシャドーデプロイを用い、新旧モデルを並行稼働させて比較し、徐々に切り替える。
C) 新モデルを別環境に置いてオフラインでのみ評価し、性能が良ければ即切り替える。
D) 新モデルを常に既存モデルとアンサンブルして使う。
正解:B
解説:
B が正しい理由:SageMaker ではブルー/グリーンデプロイ(徐々にトラフィックを移す)やシャドーデプロイ(本番リクエストを新モデルにも投げて結果だけ比較)をサポートしている。これにより安全な移行と性能検証が可能。
A:一度に切り替えるとリスクが大きい。
C:オフライン評価だけでは実運用の挙動を確認できない。
D:常にアンサンブルするのはコストが高く、不要な複雑性を導入する。
Q51(D1: データエンジニアリング)
ある大手小売企業は、POS システムからの取引データを毎時間 Amazon S3 に取り込み、そのデータを用いて売上予測モデルを更新しています。しかし調査の結果、S3 内の同じキー(商品ID)に対して複数の異なるバージョンのレコードが存在し、どの時点のデータを使って学習したか再現できないことが判明しました。経営陣は「数か月前に学習したモデルを、当時と同じ特徴量で完全に再現できる仕組み」を求めています。
最も適切な対応はどれでしょうか。
A) S3 バケットでバージョニングを有効化し、各学習ジョブは特定のバージョン ID を参照して特徴量を構築する。
B) Glue ジョブで定期的に全データを再集計し、最新のスナップショットだけを保持する。
C) DynamoDB に最新レコードだけを保存し、そこから学習データを構築する。
D) Redshift にロードし、上書き形式で保持する。
正解:A
解説:
A が正しい理由:S3 のバージョニングを有効化すると、削除や上書き前のオブジェクトも保持できる。学習時に バージョン ID を指定すれば「当時と同じ状態の特徴量」を再現可能。これがポイントインタイム再現性に最も適している。
B:最新スナップショットだけでは過去再現ができない。
C:最新のみ保持では再現性を担保できない。
D:上書き保存も同様に履歴を失う。
Q52(D2: 探索的データ分析)
ある教育系スタートアップは、学生の学習履歴データを解析して「ドロップアウト予測モデル」を作ろうとしています。EDA の過程で、学習時間やテスト点数の分布に明確な二峰性(バイモーダル)が確認されました。追加調査の結果、同じデータセットには「高校生」と「社会人学習者」が混在していることが分かりました。
このとき取るべき最も適切な前処理はどれでしょうか。
A) すべてのデータを一括で正規化して扱う。
B) 二峰性は無視してそのままモデルに投入する。
C) 対象グループ(高校生/社会人)を示す変数を特徴量に追加し、それぞれの分布を考慮して前処理を行う。
D) 社会人データを除外し、高校生だけでモデルを構築する。
正解:C
解説:
C が正しい理由:二峰性の原因が「異なる集団の混在」であるため、グループを明示的に区別する特徴量を導入するのが適切。これによりモデルは「高校生と社会人で異なる傾向」を学習できる。
A:単一正規化では分布差が消えてしまう。
B:無視するとモデルの性能が落ちる。
D:社会人データを捨てるのは範囲を狭めすぎる。
Q53(D1: データエンジニアリング)
ある eコマース企業は、毎日数 TB 規模のアクセスログを保存しています。このログは後日 BI チームによる分析にも使われ、ML チームの特徴量生成にも利用されます。コスト最適化のため、ストレージ階層化の利用が検討されていますが、ML チームからは「学習に必要な期間(過去 90 日間のデータ)は即座に利用可能であるべき」という要件が出ています。
最も適切なストレージ設計はどれでしょうか。
A) 全データを常に S3 Standard に保存する。
B) 90 日以内のデータは S3 Standard、90 日を超えたものはライフサイクルポリシーで S3 Glacier Deep Archive に移行する。
C) 90 日以内のデータは S3 Standard、90 日を超えたものは S3 Standard-IA(Infrequent Access)や Glacier に移行する。
D) 90 日以内は DynamoDB、90 日以降は S3 に保存する。
正解:C
解説:
C が正しい理由:直近 90 日は学習・分析に頻繁に使うため S3 Standard に保持。それ以降は S3 Standard-IA や Glacier に移行してコストを抑えるのがベストプラクティス。
A:全て Standard はコストが高すぎる。
B:90 日を超えたデータを Deep Archive にすると取り出しが数時間かかり、BI 用途に不向き。
D:DynamoDB はログ保存に不適切。
Q54(D2: 探索的データ分析)
ある医療研究機関は、患者データを用いて病気のリスクスコアモデルを開発しています。EDA の結果、連続変数の一部(血圧、体重など)に外れ値が散見されました。その多くはデータ入力エラーによるものでしたが、一部は実際の極端な患者ケースを反映している可能性があります。
このとき最も妥当な外れ値処理の方針はどれでしょうか。
A) 外れ値の原因を調査し、入力エラーは削除または修正し、医学的に妥当な極端値は保持する。
B) すべての外れ値を削除する。
C) すべての外れ値を平均値に置換する。
D) 外れ値はそのまま保持し、モデルに任せる。
正解:A
解説:
A が正しい理由:EDA の本質は「データの品質を理解して正しく処理すること」。入力エラーは削除・修正すべきだが、医学的に意味のある極端値は学習に必要な情報。両者を区別するのが重要。
B:全削除は情報損失。
C:平均値置換は誤った情報を導入する。
D:入力エラーをそのまま残すとモデル精度を下げる。
Q55(D3: モデリング)
ある配送企業は、トラックの配送時間を予測するモデルを開発しています。過去データを用いた回帰モデルを構築したところ、実際の配送時間よりも常に短めに予測するバイアスが見つかりました。調査すると、学習データには「遅延した配送」が一部欠損しており、オンタイム配送のデータが過剰に含まれていたことが分かりました。
この状況における最も適切な対応はどれでしょうか。
A) 既存のデータだけでモデルを学習し続ける。
B) モデルに正則化を追加して改善を試みる。
C) 遅延配送データを正しく収集・補完し、学習データの代表性を確保した上で再学習する。
D) モデルにランダムノイズを追加してバイアスを減らす。
正解:C
解説:
C が正しい理由:予測のバイアスは 学習データの偏り(欠損) に起因している。欠けていた遅延配送データを収集・補完し、学習データを代表性のあるものにするのが唯一の正しい解決策。
A:問題が解決しない。
B:正則化は過学習対策であり、バイアス補正にはならない。
D:ノイズ追加は根本的解決にならない。
Q56(D1: データエンジニアリング)
あるオンライン学習サービスは、クリックログや動画視聴データを毎分収集し、特徴量ストアに格納しています。モデル学習時に「同じユーザーIDに対して時間的に矛盾した特徴量が混ざる」問題が発生しました。これは特徴量が遅延到着するため、ある時点で学習データと推論データの整合性が崩れることが原因です。
この問題を解決するために最も適切な方法はどれでしょうか。
A) Glue ジョブで毎回最新のデータを再集計して特徴量を作成する。
B) SageMaker Feature Store を利用し、イベントタイムに基づく「ポイントインタイムクエリ」で特徴量を取得する。
C) 到着順に従って最新のデータだけを残し、古いデータはすべて削除する。
D) すべての特徴量をキャッシュし、学習時には最新スナップショットを使う。
正解:B
解説:
B が正しい理由:Feature Store の ポイントインタイムクエリにより、ある時点で利用可能だった特徴量のみを再現できる。これが「トレーニング・サービングスキュー」の防止策として推奨される。
A:再集計では「その時点に存在しなかった特徴量」を混入させる恐れあり。
C:古いデータを削除すると履歴を失い、学習再現性が損なわれる。
D:最新スナップショットは未来情報リークを引き起こす。
Q57(D2: 探索的データ分析)
あるフィットネスアプリは、ユーザーの「1日の歩数」と「体重データ」を収集しています。EDA の段階で、体重が記録されていないユーザーが 30% 存在することが分かりました。さらに調べると、体重未入力ユーザーは課金率が低い傾向にありました。
この場合、体重の欠損値をどのように扱うのが最も妥当でしょうか。
A) 欠損値をすべて平均体重で補完する。
B) 欠損値をゼロで補完する。
C) 欠損を示すフラグ変数を導入し、欠損自体を特徴量としてモデルに活用する。
D) 体重が欠損しているユーザーをすべて除外する。
正解:C
解説:
C が正しい理由:体重欠損は「ランダム欠損」ではなく、課金率と関連がある。欠損そのものが情報となるため、フラグを導入してモデルに渡すのが適切。
A:平均補完では課金との関係性を失う。
B:ゼロ補完は非現実的。
D:30% のデータを削除すると学習に悪影響。
Q58(D2: 探索的データ分析)
ある動画配信サービスは、ユーザーの「動画視聴時間」を解析しています。EDA の結果、多くのユーザーが 0〜10 分の範囲に集中している一方、少数のユーザーは 5 時間以上連続視聴していました。さらに調べると、長時間視聴の多くは「自動再生機能をオンにしたユーザー」に偏っていることが分かりました。
この状況で最も適切な特徴量設計はどれでしょうか。
A) 長時間視聴のデータをすべて外れ値として削除する。
B) 自動再生のオン/オフを示す変数を特徴量として追加する。
C) すべての視聴時間を 0〜60 分の範囲にクリッピングする。
D) 視聴時間の分布を正規化するために平方根変換を適用する。
正解:B
解説:
B が正しい理由:EDA の発見は「長時間視聴が自動再生と強く関連する」という因果関係。したがって、自動再生フラグを導入するのが適切。
A:外れ値扱いでは重要な行動パターンを失う。
C:クリッピングは情報損失。
D:変換だけでは「自動再生」という根本要因を捉えられない。
Q59(D3: モデリング)
ある金融機関は、クレジットカードの不正利用をリアルタイムで検知するモデルを開発しています。現在はランダムフォレストを利用していますが、高速性の観点から推論時間が問題となっています。一方で、精度はある程度維持したいという要件があります。
このとき最も適切なモデル戦略はどれでしょうか。
A) 精度と推論速度のバランスが取れる XGBoost や LightGBM を利用する。
B) ニューラルネットワークに切り替えて GPU で推論する。
C) 線形回帰モデルに切り替える。
D) モデルをクラスタリングに置き換える。
正解:A
解説:
A が正しい理由:勾配ブースティング系はランダムフォレストより高速推論で精度も維持しやすい。特に LightGBM は高速性と精度のバランスがよい。
B:ニューラルネットは学習は強力だが推論は必ずしも軽量でない。GPU コストも高い。
C:線形モデルでは精度が著しく落ちる。
D:クラスタリングは教師なし学習で不正検知には不適切。
Q60(D3: モデリング)
あるEC企業は、商品レビューのテキストを用いた感情分析モデルを開発しています。ベースラインとして Bag-of-Words + ロジスティック回帰を試しましたが、文脈依存の表現(例:「悪くない」→ポジティブ)を捉えられず精度が低いことが分かりました。
この課題を解決するために最も適切なアプローチはどれでしょうか。
A) Bag-of-Words の次元をさらに増やす。
B) TF-IDF を導入して単語の重み付けを強化する。
C) 事前学習済みの Transformer ベースの言語モデル(BERT など)をファインチューニングする。
D) 単語をランダムに並べ替えてデータを増やす。
正解:C
解説:
C が正しい理由:BERT などの Transformer は文脈を理解できるモデルであり、「悪くない」のような否定表現も正しく捉えられる。感情分析には最適。
A:次元増加は精度改善に直結しない。
B:TF-IDF は単語頻度の重み付けにすぎず、文脈理解はできない。
D:単語の並べ替えはデータを破壊する。
Q61(D1: データエンジニアリング)
ある保険会社は、契約者から提出される画像データ(運転免許証や事故写真)を機械学習モデルで解析しています。現在はすべての画像を S3 Standard に保存していますが、ストレージコストが高騰しています。一方で、提出から30日以内は審査で頻繁にアクセスされるため高速アクセスが必須ですが、それ以降はほとんど参照されません。ただし、監査要件により7年間の保管義務があります。
最もコスト効率が高いストレージ戦略はどれでしょうか。
A) すべての画像を S3 Standard に保存し続ける。
B) 30日を超えたらすべて S3 Glacier Deep Archive に移行する。
C) 30日以内は S3 Standard、それ以降は S3 Glacier Flexible Retrieval に移行するライフサイクルポリシーを設定する。
D) 30日以降は削除し、必要に応じてユーザーから再提出を依頼する。
正解:C
解説:
C が正しい理由:30日以内は Standard で高速アクセスを確保し、その後はコストの安い Glacier Flexible Retrieval に移行するのが最適。監査要件にも対応できる。
A:コストが過大。
B:Deep Archive は取り出しに数時間かかるため、業務要件に不適合。
D:監査要件を満たせない。
Q62(D2: 探索的データ分析)
あるモバイルアプリ企業は、ユーザーがアプリを使わなくなる要因を調査しています。EDA の段階で「アプリ利用時間」と「課金額」に相関があることが分かりました。ただし、課金額がゼロのユーザーが大部分を占めるため、全体の相関係数は小さく出ています。一方で「課金経験があるユーザー」に限定すると相関が強く現れることが分かりました。
このときの最も適切な分析アプローチはどれでしょうか。
A) 全ユーザーを一括で分析し、全体の相関係数を報告する。
B) セグメント(課金あり/なし)を分け、それぞれのユーザー群ごとに相関を分析する。
C) 課金ゼロのユーザーをすべて除外して分析する。
D) 課金額を二値化(課金あり/なし)して分析する。
正解:B
解説:
B が正しい理由:課金有無という「セグメント」が相関構造に影響している。EDA の原則として、セグメントごとに分けて分析するのが最適。
A:全体で分析すると相関が見えにくくなる。
C:ゼロユーザーを除外すると母集団が変わってしまう。
D:二値化は「課金額の大小」を無視してしまう。
Q63(D3: モデリング)
ある自動車メーカーは、走行データを用いて車両の故障予測モデルを構築しています。現在はランダムフォレストを用いていますが、モデル解釈性の低さが課題となっています。経営層からは「モデルの予測根拠を説明可能にすること」が強く求められています。
この要件に最も適したアプローチはどれでしょうか。
A) より深いランダムフォレストを構築して性能を上げる。
B) 解釈性の高いアルゴリズム(例:決定木、線形モデル)を利用するか、SHAP や LIME などの手法で説明性を補強する。
C) ニューラルネットに切り替える。
D) アンサンブル学習をさらに強化する。
正解:B
解説:
B が正しい理由:要件は「性能向上」ではなく「解釈性の向上」。単純なモデル(決定木など)を採用するか、SHAP/LIME による特徴量重要度の可視化を導入するのが正解。
A:より複雑にしても解釈性は悪化する。
C:ニューラルネットはさらにブラックボックス化。
D:アンサンブルも解釈性を下げる方向。
Q64(D4: ML オペレーション)
ある広告配信プラットフォームは、リアルタイム入札(RTB)に利用する予測モデルを Amazon SageMaker Endpoint にデプロイしています。最近、推論レイテンシが SLA を超えることが増えてきました。調査すると、モデルの入力サイズが増大し、CPU 推論では処理が追いつかなくなっていることが分かりました。
最も適切な対応はどれでしょうか。
A) SageMaker Endpoint を常に最大インスタンス数にスケールアウトする。
B) GPU 対応インスタンスでエンドポイントを再デプロイし、推論高速化を図る。
C) モデルをさらに複雑化して精度を高める。
D) レイテンシを無視して精度優先で運用する。
正解:B
解説:
B が正しい理由:入力サイズ増大により CPU ボトルネックが発生。GPU インスタンスでデプロイすることで 推論処理を高速化できる。
A:スケールアウトは同時接続には有効だが、単発推論レイテンシを改善できない。
C:複雑化すると逆効果。
D:SLA 違反となり要件を満たさない。
Q65(D4: ML オペレーション)
ある銀行は、与信モデルを本番環境で運用しています。監査チームからは「モデルが差別的な予測をしていないか」「導入から時間が経って精度が劣化していないか」を継続的に監視する仕組みを求められました。
最も適切な対応はどれでしょうか。
A) モデルの初期精度を確認したら、その後は変更せず運用を続ける。
B) 新しいデータを無条件に毎日学習に追加する。
C) SageMaker Model Monitor を用いてデータドリフト・モデル性能を監視し、必要に応じて再学習やバイアス検出を実施する。
D) 監査のタイミングごとに手動で精度を測定する。
正解:C
解説:
C が正しい理由:SageMaker Model Monitor は データドリフトや予測バイアスを自動で監視でき、監査要件・精度劣化への対応を両立できる。
A:精度劣化や不正確な予測を見逃す。
B:無条件追加はデータ品質を損ね、概念ドリフト対応にならない。
D:手動監視ではリアルタイム性に欠ける。
最後に
難易度イメージは:
★:基本~標準レベル(理解していれば正答できる)
★★:やや応用(複数の要件を整理する必要がある)
★★★:本番でも差がつきやすい応用・実践寄り問題
全65問 一覧(ドメイン別 & 難易度付き)
D1: データエンジニアリング(13問)
Q1 ★★
Q6 ★
Q11 ★★
Q14 ★★
Q21 ★★
Q26 ★
Q31 ★★
Q35 ★★
Q36 ★★
Q43 ★
Q51 ★★
Q53 ★
Q61 ★★
D2: 探索的データ分析(16問)
Q2 ★★
Q7 ★
Q12 ★★
Q16 ★★
Q18 ★★★
Q22 ★
Q27 ★★
Q32 ★★
Q37 ★★
Q41 ★
Q44 ★★
Q52 ★★
Q54 ★★
Q57 ★
Q58 ★★
Q62 ★★
D3: モデリング(23問)
Q3 ★
Q4 ★★
Q8 ★★
Q9 ★★
Q13 ★
Q17 ★★
Q19 ★★
Q20 ★★★
Q23 ★
Q24 ★★
Q28 ★★
Q29 ★★
Q30 ★★
Q33 ★★★
Q38 ★★
Q39 ★★
Q42 ★★
Q45 ★★
Q55 ★★
Q59 ★★
Q60 ★★★
Q63 ★★
Q64 ★★
D4: 機械学習の実装と運用(13問)
Q5 ★★
Q10 ★★
Q15 ★★
Q25 ★
Q34 ★★
Q40 ★★★
Q46 ★★
Q47 ★★
Q48 ★
Q49 ★★
Q50 ★★
Q64 ★★
Q65 ★★★
全体の難易度バランス
★:21問(基礎~標準レベルの確認)
★★:36問(本番の大多数を占める応用レベル)
★★★:8問(差がつく難問・本番のひっかけ相当)