Knowledge Graph によるワランティ分析
非常にシンプルですが、公開されているクレームデータからナレッジグラフを作ってみたので紹介します。
ナレッジグラフとは?
Node, Edge, Attribute で構成されるグラフを用いた Knowledge の表現方法です。
ワランティ分析とは?
多くの企業でワランティ (= 品質保証) コストが問題になっています。一般的には下記のフローで実施されると思います。
- 早く市場での不具合の検知する
- 早期に根本原因を発見する
- 製造工程や開発設計を改善する
自動車が分かりやすい例だと思います。車に以上があれば、ディーラーに報告してメーカーに修理してもらいます。ここで発生するワランティコストを少なくしたり、顧客満足度を向上していく必要があります。
様々なアプローチがありますが、本記事では過去のクレームデータを有効活用するために、グラフデータを作成し可視化する方法を記載します。特に 「2. 早期に根本原因を発見する」に寄与すると思います。他にも新人研究でのノウハウ継承や、開発設計変更時の過去の不具合の検索などにも活用できます。
分析手順
コード
GitHub : konabuta/Warranty-Analytics
にて公開しています。本記事では詳細なコードは割愛しますので、こちらをご参照ください。
... とはいえ、まだまだチューニング不足です。ご容赦ください。
データ準備
サンプルデータとして、国土交通省が公開しているクレームデータから何件かデータをサンプルした recall_sample.csv を利用します。
※ 国土交通省 - 自動車のリコール・不具合情報 (MLIT)
データは 4 つの列から構成されます。
- リコール届出番号
- 不具合の部位(部品名)
- 原因
- 改善措置の内容
このデータからキーフレーズを抽出します。本サンプルでは、Azure Cognitive Services が提供する Azure Text Analytics を利用しています。
※ 実装サンプル : クイック スタート:Text Analytics クライアント ライブラリを使用する
また、今回は共起ネットワークを利用しています。各クレームデータごとにキーフレーズが存在するわけですが、同時に出現するキーフレーズを組み合わせを Node (target & source)、出現回数を Edge の Weight として表現します。
グラフデータの可視化
グラフ分析・可視化に使われる Networkx を利用しています。もうちょっとチューニングが必要ですが、Relational Database では表現が難しいと思われるキーフレーズの関係性が分かります。
凡例
- 不具合の部位:グレー
- 原因:赤
- 対策:青
Power BI での可視化
Power BI のビジュアル Network Navigator を使うとグラフを可視化できます。アニメーション機能と検索機能があるので、複雑なネットワークでも分かりやすいです。
Future Work
今回示したのはナイーブな方法です。近年は BERT などの最新の NLP や推薦アルゴリズムを利用したナレッジの活用も増えています。機会があればキャッチアップして、もっと高度な仕組みを実装してみたいと思います。
参考情報
- Microsoft の Graph への取り組み
- Deep Learning Lab
Discussion