Slide 1

Slide 1 text

(C) mixi, Inc. Developers Summit 2020 Summer 2020年7月21日 株式会社ミクシィ 統括管理本部 CS部 CREグループ 本間 光宣 人の仕事、機械の仕事。 エンジニアによるカスタマーサポート改善 #devsumiC C-6

Slide 2

Slide 2 text

(C) mixi, Inc. #devsumiC ミクシィのカスタマーサポート(CS)について ○ ミクシィCS・CREの紹介 ○ ミクシィCREの目指している姿 エンジニアによるCS改善事例 ○ 問い合わせ対応の効率化事例 ○ 課題と対応について 2 今日話すこと

Slide 3

Slide 3 text

(C) mixi, Inc. #devsumiC ○ 本間 光宣(@_mitsu9) ○ 株式会社ミクシィ・CRE ○ 2018年新卒入社 ○ CSが利用する各種ツールの開発・運用 ○ 新規サービスリリースに伴うCS環境の構築 ○ 機械学習を用いたCSの業務効率化 3 自己紹介

Slide 4

Slide 4 text

(C) mixi, Inc. #devsumiC Customer Reliability Engineer ○ Googleが2016年に提唱した職種 ○ 顧客信頼の最大化を目的としたエンジニア ミクシィCREはCS専属のエンジニア ○ CSの業務に必要なシステムの開発・運用 ○ 問い合わせ調査 ○ 問い合わせ起因のプロダクト開発(バグ修正など) ○ より良いCSを作るためにCSの問題分析やシステム開発 4 CREとは 「CREチームを設立しました!」 https://career.xflag.com/report/engineer/cre/

Slide 5

Slide 5 text

(C) mixi, Inc. #devsumiC ○ 全社横断組織として複数サービスのサポートと健全化を行う ○ CREはCSを支えるエンジニアとして複数サービスに携わる ○ 私は主にゲーム事業のCSに携わっています 5 ミクシィのCSについて CRE CS ゲーム事業 SNS事業 スポーツ事業 ・・・

Slide 6

Slide 6 text

(C) mixi, Inc. #devsumiC 問い合わせ例 ○ 仕様についての質問 ○ 操作がわからない・エラーになる等問題の解決方法について ○ 機種変更時のデータ移行に関する問い合わせ ○ クリアできないなど不満をぶつける問い合わせ 問い合わせの分類 ○ 必要な情報を取得するための問い合わせ ○ 感情を伝えるための問い合わせ 6 ゲームの問い合わせ

Slide 7

Slide 7 text

(C) mixi, Inc. #devsumiC 必要な情報を取得するための問い合わせ ○ 内容: 問題発生時にどうすれば良いのかを聞く等 ○ 期待: 正しい情報を素早く返信されること ○ 対応: テンプレートをベースにユーザーに合わせて微調整 →機械を活用することで効率的・効果的に対応できる問い合わせ 7 基本的な問い合わせ対応方針

Slide 8

Slide 8 text

(C) mixi, Inc. #devsumiC 感情を伝えるための問い合わせ ○ 内容: 喜び・怒り・悲しみなどの感情を伝える ○ 期待: 話をきちんと聞いてくれること ○ 対応: テンプレートは使わず1から作文を行う →人にしか対応できない問い合わせ 8 基本的な問い合わせ対応方針

Slide 9

Slide 9 text

(C) mixi, Inc. #devsumiC CSのクリエイティビティを最大化する ○ 必要な情報を取得するための問い合わせ ○ システムによって効率化できるプロセスを効率化 ○ 感情を伝えるための問い合わせ ○ 人にしかできない対応をサポートするシステムを作る ○ ユーザーのことをより深く理解するための管理ツール作り ○ 暗黙知になりやすいCSのナレッジをデジタル化する ○ 類似ユーザー・類似案件の分析を通してナレッジを活用する 9 ミクシィCREのミッション

Slide 10

Slide 10 text

(C) mixi, Inc. 10 エンジニアによるCS改善事例

Slide 11

Slide 11 text

(C) mixi, Inc. #devsumiC 機械学習を活用してテンプレ対応を効率化した事例 11 本日紹介する事例

Slide 12

Slide 12 text

(C) mixi, Inc. #devsumiC CSの抱える課題 ○ 大量のテンプレを中から適切なテンプレを検索することに時間がかかる ○ テンプレは1000件以上存在する 今日話すこと ○ 構築したシステムの概要 ○ 施策を進めるにあたっての課題と対応 今日話さないこと ○ 機械学習のモデルの詳細 12 機械学習を活用してテンプレ対応を効率化した事例

Slide 13

Slide 13 text

(C) mixi, Inc. #devsumiC ○ チームに機械学習のナレッジがない ○ 過去に機械学習を利用したことがない ○ 問い合わせデータは大量にあるが活用できる形ではない ○ CRMに全て保管されている状態 ○ CS・CREのリソースをあまり割けない ○ CSは既存業務で手一杯 ○ CREもそれぞれの施策を進めている 13 施策開始時のチーム状況

Slide 14

Slide 14 text

(C) mixi, Inc. #devsumiC 効果は小さくても良いからとにかく早く成果を出す 小さな改善をこつこつ積み重ねる 失敗することもあるが失敗するなら早く失敗する 14 テンプレ対応効率化の大方針

Slide 15

Slide 15 text

(C) mixi, Inc. #devsumiC ○ 新規問い合わせに対してシステムがテンプレを推薦 ○ CSスタッフは推薦結果を確認し正解であればシステムで返信 ○ テンプレを検索する時間とテンプレで返信する時間を効率化 15 テンプレ対応効率化施策の概要 新規問い合わせ テンプレ推薦 システムが返信 通常対応 (テンプレ検索→返信) 正解 不正解 CSスタッフ システム ユーザー

Slide 16

Slide 16 text

(C) mixi, Inc. #devsumiC AWSを用いてシステムを構築 16 テンプレ推薦システムの構成 問い合わせデータ 学習済みモデル S3 CodeBuild SageMaker データ分析 学習の実行 推論エンドポイントの構築 テンプレ推薦 CSスタッフがOKを選択した 問い合わせへの返信 CRM 更新・返信 CloudWatch Event 推論リクエスト 定期実行 CRM モデルの学習 推論・CRMとの繋ぎこみ 過去の問い合わせを インポート

Slide 17

Slide 17 text

(C) mixi, Inc. #devsumiC 17 チームが抱えていた課題 機械学習における課題 初めて機械学習に取り組むチームが利用可能なモデルを開発すること システム開発における課題 少ないリソースでできるだけ早くシステム開発をすること

Slide 18

Slide 18 text

(C) mixi, Inc. #devsumiC 18 チームが抱えていた課題 機械学習における課題 初めて機械学習に取り組むチームが利用可能なモデルを開発すること システム開発における課題 少ないリソースでできるだけ早くシステム開発をすること

Slide 19

Slide 19 text

(C) mixi, Inc. #devsumiC できるだけ早く利用可能なモデルを開発するために行った工夫 ○ 取り組む問題を簡単にする ○ 試行回数を増やす ○ 試行の精度を高める 19 機械学習のモデル開発について

Slide 20

Slide 20 text

(C) mixi, Inc. #devsumiC 問題をシンプルにする&要求される精度を下げるように問題を設定する ○ モデルへのインプットは問い合わせ本文のみ ○ まずは1つのテンプレを対象にする ○ テンプレの推薦を行うシステムを作る(自動返信は行わない) 20 取り組む問題を簡単にする

Slide 21

Slide 21 text

(C) mixi, Inc. #devsumiC 社内外のエンジニアに相談し自走するために必要な知識を身につける ○ 自走するために必要な知識は何か考えながら相談する ○ 答えを聞くのではなく考え方を教えてもらう ○ どうしてもできないところは部分的に開発を協力してもらうが、 後から実装を理解する 21 試行回数を増やす

Slide 22

Slide 22 text

(C) mixi, Inc. #devsumiC ドメイン知識を身につけ明確な仮説を持って試行する ○ 一次情報に触れる ○ 問い合わせデータを見て傾向を理解する ○ オペレーションの様子を見てCSの考え方を理解する 22 試行の精度を高くする

Slide 23

Slide 23 text

(C) mixi, Inc. #devsumiC 23 チームが抱えていた課題 機械学習における課題 初めて機械学習に取り組むチームが利用可能なモデルを開発すること →問題を簡単にし精度の高い試行を繰り返すことで必要なモデルを  開発することに成功 システム開発における課題 少ないリソースでできるだけ早くシステム開発をすること 

Slide 24

Slide 24 text

(C) mixi, Inc. #devsumiC 24 チームが抱えていた課題 機械学習における課題 初めて機械学習に取り組むチームが利用可能なモデルを開発すること →問題を簡単にし精度の高い試行を繰り返すことで必要なモデルを  獲得することに成功 システム開発における課題 少ないリソースでできるだけ早くシステム開発をすること

Slide 25

Slide 25 text

(C) mixi, Inc. #devsumiC シンプルな構成で作るものを減らす x マネージドサービスを活用する 今回必要だったものは次の3つ ○ CRMにある過去データを利用するための仕組み ○ モデルの学習・推論を行うための環境構築 ○ CRMにテンプレ推薦・返信をする仕組み 25 システム開発について

Slide 26

Slide 26 text

(C) mixi, Inc. #devsumiC 26 CRMにある過去データを利用するための仕組み CRM CodeBuild S3 Athena SQLで取得 Athenaを活用することでS3のJSONファイルに対してクエリを実行できる データの加工が不要なのでデータを保存するスクリプトの実装のみで実現 1.問い合わせ取得 2.保存 CloudWatch Event 定期実行

Slide 27

Slide 27 text

(C) mixi, Inc. #devsumiC 27 モデルの学習・推論を行うための環境構築 「カスタマーサポートにおける Amazon SageMakerを活用した自然言語処理・ MLシステム構築」 https://pages.awscloud.com/rs/112-TZM-766/images/20191128_mixi_sagemaker-fes10.pdf SageMakerを活用することで必要な環境を簡単に用意できる 必要なものは学習モデルを記述したコードのみ 学習環境の構築 学習したモデルの管理 推論エンドポイントの構築

Slide 28

Slide 28 text

(C) mixi, Inc. #devsumiC バッチ処理でテンプレ推薦・返信を実装する 新規問い合わせに対して推論を行いCRMを更新するスクリプトを定期実行 28 CRMにテンプレ推薦・返信をする仕組み CodeBuild SageMaker CRM 1. 問い合わせ取得 3. テンプレ推薦 CloudWatch Event 2. 推論リクエスト 定期実行 1. 問い合わせ取得 2. テンプレ返信

Slide 29

Slide 29 text

(C) mixi, Inc. #devsumiC 29 チームが抱えていた課題 機械学習における課題 初めて機械学習に取り組むチームが利用可能なモデルを開発すること →問題を簡単にし精度の高い試行を繰り返すことで必要なモデルを  獲得することに成功 システム開発における課題 少ないリソースでできるだけ早くシステム開発をすること →シンプルな構成で作るものを減らす x マネージドサービスを活用する

Slide 30

Slide 30 text

(C) mixi, Inc. #devsumiC 効率化の効果 ○ 問い合わせの約1%をシステムで対応 ○ 1件あたり約3分の効率化 その他の効果 ○ CSスタッフの中でAIに興味を持ってくれる人が増えた ○ 今後AIを活用するためにはどのようなデータを蓄積すると良いのかと いう視点が生まれた 30 施策によって得られた効果

Slide 31

Slide 31 text

(C) mixi, Inc. #devsumiC 人の能力を活かすために機械にできる仕事をできるだけシステム化する ミクシィではCS専属のエンジニアとしてCREがいます 初めて機械学習を使う時はできるだけ簡単な問題に落とし込む 難しい問題を解くよりも問題を簡単にする方が簡単 システム開発は効率化し機械学習に時間を割けるようにする 特に少ないリソースで取り組む場合は取捨選択が大切 効果は小さくてもリリースすることで得られるものは大きい 目にみえるものができることでみんなの考え方が変わる 31 おわりに

Slide 32

Slide 32 text

(C) mixi, Inc. We Are Hiring!! 新卒も!中途も!積極採用中! ミクシィ 採用 検索

Slide 33

Slide 33 text

(C) mixi, Inc. #devsumiC tech meetupの情報を入れる 33 8月27日 オンライン開催 詳細はconnpassをご覧ください!

Slide 34

Slide 34 text

(C) mixi, Inc. 34