LINEヤフー Advent Calendar 2023の25日目の記事です。
こんにちは。AIプラットフォーム部でMLOpsエンジニアやプロダクトオーナーを担当している古川新です。
この記事では、AIプラットフォームで提供しているデータ品質管理システム「ACP Data Quality」と、その中核機能であるデータ品質モデル言語「DQML」によるデータ品質管理の取り組みについてご紹介します。
データ品質管理システム「ACP Data Quality」
AIプラットフォームでは、「ACP Data Quality」というデータ品質管理システムを提供しています。「ACP」と呼ばれるAIに特化したKubernetes環境で提供されており、利用者はWeb UIまたはKubernetesカスタムリソースを通じて、データ品質管理プロセスを実行できます。
データ品質管理とは
データ品質とは、「データが目的にどのくらい適しているかの度合い」のことです。
国際標準の規格では、以下のように定義されています。
指定された状況で使用するとき、明示されたニーズおよび暗黙のニーズをデータの特性が満足する度合い。
(参考文献1「JIS X 25012:2013 (ISO/IEC 25012:2008) ソフトウェア製品の品質要求および評価(SQuaRE)− データ品質モデル」より引用)
データが目的に適していない場合(たとえばデータにミスがある、データが取得できない状態になっている)、データを消費しているシステムにも影響が出てきます。そのような場合に備えてデータが「良い」か「悪い」かを測るための基準がデータ品質です。
データ品質管理は、データが正確で信頼性があり適切に利用できる状態を維持するために、データ品質を確保・維持するためのプロセスや活動のことです。データ品質管理には、データの収集、保存、整理、分析、利用に関わるさまざまな段階での品質管理が含まれます。一般的にデータ品質管理はデータ品質の計画、制御、保証、改善のプロセスの継続的なサイクルです。
(参考文献2「ISO 8000-61:2016 Data quality — Part 61: Data quality management: Process reference model」を簡略化した図)
データの品質が悪化してデータを消費しているシステムに影響が出ると、ビジネスにもリスクが波及します。サービス品質の管理、およびビジネス上のリスク管理という観点からも、データに強く依存する機械学習などのシステムを正しく運用するために適切なデータの品質管理が不可欠です。
ACP Data Qualityは、これらのデータ品質管理プロセスを包括的に構築し、継続的に実施するためのさまざまな機能を提供しています。
AI活用特有のデータ品質管理の課題
ACP Data Qualityを開発した背景には、AI活用特有の原因に関連するいくつかの課題があります。
- データ品質の管理責任の所在が不明になりがち
- データ品質を定義するのが難しい
- サイエンティストと運用者のコミュニケーションロス
- データ品質を測定するシステムづくりのコストが大きい
1.データ品質の管理責任の所在が不明になりがち
構造的な課題として、データ品質を誰が管理するべきなのかが明確でないという問題があります。一体誰がデータ品質に責任を持ち、管理するのが良いでしょうか。
データ品質とは、「目的にどの程度適しているかの度合い」です。ポイントは、品質は「目的」によって決まるということです。同じデータでも、利用する目的ごとに品質は異なる場合があります。