概要
判別モデルを作成することを前提に、データの収集について説明していきます。
【データの数と精度の図】
データ量
モデル作成にあたり、データの数は多ければ多いほど良いです。
データ量の目安としては、各ラベルごとに1000件あれば、ある程度信頼のできるモデルが作成できるかと思います。
データの数を増やせない、異常データの数が集められないという状況であれば、
後述のアップサンプリングでデータの数を増やしたり、AutoEncoderで正常データのみ学習して、異常値を検知するようなやり方をとります。
データの質
データの偏りのことを質と呼んでいます。
例として、装置A~Fの6種類があって、装置の異常検知を判定するモデルを作成するケースをあげます。
この場合、それぞれの装置で取れるデータ数にバラつきがあったり、異常データの数にバラつきがあると判定結果に影響します。
Aの装置に異常がほとんどなく、Fの装置に異常が偏っていたりしている場合、モデルはデータを無視して装置の種類だけで異常の有無を判別してしまうことがあります。
理想的なのは、データを年数やタイプや条件であったり、様々な条件で分類したときに、それぞれ同じデータ数でラベルの数も偏っていないのがベストです。
収集方法
サービス化を見据えた収集方法を前もって検討しておく必要があります。
人力によるオペレーションは可能な限り最小化して、自動でデータを貯めていけるような仕組みを分析の段階で用意できておけるとよいです。
また、外部データと組み合わせることで作成できる特徴量を増やすことが出来るので、
外部サービスやWebサイトから、天候情報や購買情報なども取得を検討します。
実装
RPAを使用したデータアップロード
後々詳細を載せます。
Webスクレイピングによる外部データの取得
後々詳細を乗せます。
最後に
データについて解説しました。
経験上、どの案件でもデータがある状態からスタートすることはほとんどなく、データの収集で四苦八苦しました。
なにか社内システムを構築することがあるときは、
直近データを使わないにしても、データをため込む仕組みも仕様に追加しておいた方が、未来に役に立つでしょう。