SBTのスベテ

膨大なメールを深層学習して運用効率化ツールを作る1

前川 敦史

前川 敦史

インフラやアプリのシステム運用を主の業務としております前川敦史です。
システム運用者でありながら、業務のほとんどは効率化の為の開発を行っており、現在ではお笑い以外の全てを自動化できると考えています。

システム運用担当者は規模が拡大するにつれ膨らんでいく運用オペレーション作業の負荷を下げるべく効率化を求められます。
そのため業務を効率化する為に開発を習得し、様々なツールを作って定常的な作業の自動化を日々行っている事と思います。

そんなシステム運用者兼開発者が上司から「AI が流行ってるし何か作ってみて」と依頼され、四苦八苦しているというお話をよく耳にします。

しかし、データサイエンス業務の経験がないシステム運用者が、運用中機器の各センサーから大量の情報取得を行い、独学で分析を行っても満足のいく効果を得る事は困難です。
分析を行う為にかなりの時間・コストをかけたあげく、期待していた効果と実効果のギャップを感じた上司から「で?」という反応をされるのが現実かと思います。


機械学習未経験者でもできる「で?」とならない手法

そこで、機械学習のプログラミングを経験する事ができつつ、業務効率化の効果も期待できる手法をご紹介したいと思います。

このようなケースはないでしょうか。

  • ナレッジやインシデント対応履歴が大量に溜まっているが、取り出したい情報を満足に取り出せない
  • 業務のほとんどをメールで行うフローにしてしまった影響でメール量が多くなり、メーラー経由での履歴検索に時間がかかる
  • ヘルプデスク・サポートデスクなどの業務で問い合わせのフォーマットが統一されておらず過去の履歴を追いづらい
  • 溜まったナレッジに対し、検索を行う人間のワードセンスに影響し出したい情報をスムーズに出せない

ソフトバンク・テクノロジー内でも同じような状況が発生しましたが、深層学習を利用したナレッジ検索システムを構築し、効率化に成功した実績があります。
皆様の環境でもこれから紹介させて頂く手法により、データサイエンスの知識がなくとも簡単に検索エンジンを社内に構築する事ができます。
今後紹介させて頂く予定の手法では機械学習・深層学習の知識がなくとも、文章内の単語同士の関係性を解析し、その結果を可視化する事により、インスタ映えも可能なレベルとなりますので上司も「で?」とならないと思われます。

こういったことができるようになります。

学習結果の可視化
Outlook 受信メールの単語を分析した結果を可視化

ご紹介予定の機能について

詳しい説明ややり方については次回からお話しますが、Outlook に入っているメールの文章を Python スクリプト経由で学習をさせ、単語同士の類似性を知る機能を紹介します。
Windows 環境+全てオープンソースソフトウェアのみで構築ができ、機械学習などの知識がなくとも実装が可能です。
以下は私の Outlook に入ったメールを学習させた結果から"再起動"、"地震"、"ランチ"に近い単語を抽出した例です。


抽出結果(単語)
近いと判断した単語順に表示 数値は類似度を表している

この"単語"の類似性を使用し、今度は類似した"文章"を抽出する事ができます。
以下は私の Outlook を学習させたモデルから「東京 地震 影響」という単語リストに近い文章を検索エンジンに要求した際の返答になります。
以下の例ですと東京以外の地域や地震以外の災害についての文章も返しています。"災害について過去にどういう対応がされたか"という目的で検索を行った場合に、通常のテキスト検索ですと 「北海道」や「大雨」といった文章は候補に出ませんが、本人が想像していない文章も候補として提案させる事ができます。
新人オペレーターが対応履歴を探しやすくなるといった効果が期待できます。

抽出結果(文章)


実際のやり方については次回でご紹介していきたいと思います。


関連ページ

膨大なメールを深層学習して運用効率化ツールを作る2
膨大なメールを深層学習して運用効率化ツールを作る3
膨大なメールを深層学習して運用効率化ツールを作る4
膨大なメールを深層学習して運用効率化ツールを作る5

【総合】お問い合わせ

ソリューションに関する全般的なお問い合わせはお気軽にご相談ください。

ピックアップ

セミナー情報
クラウドエンジニアブログ
clouXion
メールマガジン登録