教師なし学習応用

階層的クラスタリング(凝集型)を用いて大規模なテキストドキュメント群をクラスタリングしたところ、途中で計算が極めて遅くなりました。この問題が起こる理由として最も適切なものはどれか?

A.テキストドキュメントの埋め込みベクトル次元数が高すぎるため、k-meansの方が適切である
✗ テキスト埋め込み次元数の高さは計算の遅さの直接的な原因ではありません。また、k-meansも高次元データで遅くなる可能性があります。クラスタリング手法の選択とは別の問題です。
B.凝集型は毎回、クラスタ間距離行列全体を更新する必要があり、計算量がO(n²)〜O(n³)に達するため← 正解
✓ 正解です。凝集型クラスタリングは毎ステップで新たなクラスタペア間距離を計算し行列を更新する必要があり、O(n²)からO(n³)の計算量に達するため、大規模データでは著しく遅くなります。
C.ドキュメントの言語処理にNLPモデルを使用しているため、クラスタリング自体とは無関係に処理時間が増加している
✗ NLPモデルの処理時間が長いことは別の問題ですが、質問は「クラスタリング途中で遅くなる」という現象に関するもので、事前処理ではなく当該アルゴリズムの性質が問題です。
D.階層的クラスタリングはランダムサンプリングを行わないため、すべてのデータポイント間の比較が必須になり遅延する
✗ 階層的クラスタリングがランダムサンプリングを避けることは正確ですが、「すべてのデータポイント間の比較」が直接的な遅延原因ではなく、クラスタ間距離行列の繰り返し更新が主因です。

この問題のポイント

凝集型クラスタリングは毎ステップで新たなクラスタペア間距離を計算し行列を更新する必要があり、O(n²)からO(n³)の計算量に達するため、大規模データでは著しく遅くなります。

AI-900:Microsoft Azure AI Fundamentals の問題一覧