連載「Technology Company Internals」では、テックカンパニーの内側で働くエンジニアに、技術に精通したエキスパートが対面で話を聞き、テックカンパニーとは何か?を探るだけでなく、テックカンパニーを目指す企業の指針となることを目指します。
「オートノマス・バックオフィス」a.k.a「会社の自動運転」
-- 本日はお集まりいただきありがとうございます。今回は、「数年後のマネーフォワード」をキーワードに、ビジョンとテクノロジーの話を伺えるということで、大変楽しみです。まずは自己紹介をお願いします。
中出: 中出 匠哉と申します。マネーフォワードの取締役執行役員CTOを務めています。経営メンバーの一人として、テクノロジーで競争力を高めていくことをミッションの一つとして取り組んでいます。
北岸: マネーフォワードラボの所長の北岸 郁雄です。ラボと言っても、真理の探索や探求を目的とはしてなくて、科学的知見や既存技術を新しい問題にどう適用するかを考えるR&D(Research and Development)になります。ざっくり言うと「応用研究」ですね。
関根: 関根 聡です。マネーフォワードでは技術顧問という立場で関わらせていただいています。本職は理化学研究所の革新知能統合研究センターで言語情報アクセス技術チームのチームリーダーを務めています。ニューヨーク大学で博士をとり、准教授を務め、楽天の研究所でも以前働いていました。25歳くらいから、ずっと自然言語処理の研究に携わっています。よろしくお願いします。
-- まずは、マネーフォワードのビジョンについて教えて下さい。
中出: 弊社はB2B向けの会計処理等を効率化するSaaSを提供しているのですが、それらをすべて自動化した先にある世界として、「オートノマス・バックオフィス」(自律化されたバックオフィス)の実現を目指しています。
ごく簡単に言うと、経費精算とか会計処理とか、いわゆる「バックオフィス業務」の完全自動化とも言えます。が、単なる自動化じゃなくて更にその先、「自律化」を目指してるんです。
-- 具体的には、どんなイメージでしょうか?
中出: 私達は今「ユーザーの皆様にとってのわかりやすさ、使いやすさ」という価値を提供すべく頑張っています。ですが本来的には、バックオフィス業務の中には人が手をかけなくても良い部分がたくさんあるはずなんです。
経費精算だとか、契約書のやり取りだとか、請求書や見積書を作ったり、印刷したり、送ったり…こういう仕事って、本業とはかけ離れていて、しかも手間がかかる。こういう作業を可能な限り省力化した先に、「何もしなくてもサービスが勝手にやってくれている」っていうのが究極の目標です。
平たく言えば「会社の自動運転」と言ってもいいかと思います。車の自動運転化は、今もどんどん進んでいます。行き先を入力すると勝手にそこまで連れて行ってくれる…というレベルに到達するのは遠い未来ではありません。
それと同じように、会社も自動運転化したい。会社が実現したい状態を入力すると、サービスが勝手にそこまで連れて行ってくれる。そういうサービスを実現したいな、と考えています。
自動運転車のレベル分けをモチーフとした技術戦略
-- 会社の自動運転化とは壮大なビジョンですが、技術的にはどうアプローチしていくのでしょうか?
北岸: そういう点では、車の自動運転に関するアプローチがかなり類似しています。
自動運転車はレベル0の完全手動運転からレベル5の完全自動運転まで、6段階のレベルに分かれています。今はレベル2とか3というところでしょうか。
しかし私達の場合は最終的に自律化を実現したいと思っており、0から7の8つの段階を設定しています。
自動化というのは、機械やコンピュータが、従来人手でやっていた作業を代替するものですが、我々が目指していきたいのはそうした「オートマティック」ではなく「オートノマス」です。
-- オートマティックとオートノマスの違いを教えて下さい。
オートノマスになってくると、未知の状況下においても予測的に判断して実行していく、更には判断の根拠を説明できなくてはならない、ということになってきます。
例えばシステムがこの先の資金繰りを予測したとしたら、その根拠を言語的に説明できなければ説得力が無いですし、説得力が無ければ次のシステム側の行動には不安が残ると思います。根拠を説明することで、システムに信頼性を持たせていくことができる。我々が目指しているのはそういうところなんです。
-- 自動運転車をモチーフにしたのはとてもわかりやすいです。
北岸: なぜ自動運転なのかという話なのですが、社内で課題のヒアリングをしてみた結果、やるべきことが大きく分けて4つあるなと思いました。
1つめは入力作業からの解放。
2つめは判断能力の拡張。
3つめは企業間取引の安心・安全。
4つめは最後は未来を知りたい。未来予測ということです。
この4つの課題を一言で表現すると、認知・判断・操作・予測というところにたどり着く。これは車(の運転)でも同じことをやっているので、車の自動運転と結びつきました。
8段階の自動化/自律化レベル
-- 8段階のレベルについて、もう少し詳しく教えて下さい。
北岸: 8段階のレベルは大きく2つに分かれていまして、レベル4までは「自動化」、5から7については「自律化」です。まずは条件付きでレベル4を1〜2年で目指しつつ、並行してレベル5以降のR&Dも進めていきます。
-- なぜ、自動化と自律化を並行して追求するんでしょうか?
北岸: 単純に早く開発を進めたいというのと、「自律化」というゴールを最初から見据えておく必要があるからですね。
オートノマスになると、究極的には他者からの制約を受けずに、機械が自ら規律に従って「正しく行動する」ことが求められてくる。だから、オートマティックを目指すのかオートノマスを目指すのかで、アプローチが全然変わってくると考えています。必要となる技術も違うものになってくる。
そして、レベル5以降は私達にとっても未知の世界で、試行錯誤が必要です。それをレベル4の開発と一緒に進めていきましょう、試行錯誤を先んじてやっていこう、という考え方です。
レベル4:「ゼロ・タイピング」
-- 目標が高くてワクワクします。もう少し具体的に伺いたいんですが、まずは「レベル4」の自動化については、どんなイメージですか?
北岸: 例えば会社で立替払いをした時などは、証憑書類を見ながら、金額や支払先などをなどを、精算システムタイピングする作業が発生していますよね。レベル4の1つの姿としては、タイピングの手間を減らし、本業に集中できる時間を増やせれば良いなと思っています。究極的には「タイピングなし」というイメージで「ゼロタイピング」と呼んでいます。
-- なるほど。それは例えば技術的には、OCRだとか、PDFの解析だったりを行うといったことになるんでしょうか。
北岸: はい、情報抽出という技術分野になります。
バックオフィス業務で処理する証憑書類は多種多様で、フォーマットも統一されておらず、文字も印字もあれば手書きもあります。画像として処理しなくてはならないものもあれば、テキストとして処理できるものもあります。こうした要件に対応していくためには、やはりAI/機械学習のアプローチが必要です。
中出: 先程「レベル4は1〜2年で達成する」と申し上げましたが、紙による請求書などの証憑書類のやり取りなどが1〜2年でなくなるわけではないので、最初は限定的だと思います。
車の自動運転でもそうなんですが、最初は条件付きなんです。最初は悪天候には対応しておらず、高速道路などの限定的な条件下で実現していく。
なので私達も、紙じゃなくてデジタルでやりとりするシチュエーションに限定することで、全部自動化したいと思っています。例えば、領収書を読み取ったら勝手に経費精算される。同時にそれをキャンセルするためのボタンが表示されて、やめたければやめることができる。
北岸: 完全自動化が理想ですが、一方でシステムが間違えることを前提とした上での可視化方式や、システムと協調的に修正ができるようにするためのUI/UXも合わせて考えていかなくてはならない、と考えています。
レベル7はSF。しかし目指さなくてはならない
-- レベル5以降についても詳しくお聞かせください。
北岸: レベル5以降は次のように定義しています。
レベル5は「予測・判断」です。少し先の未来がわかる。
自律化のひとつの目安は、「未知の状況下においても、システムが自ら予測的に判断できる」ことです。なので、まずは過去の経験と照らし合わせて予測を行えなくてはならない。ただ、なぜそういう予測をしたのかはまだ説明できない段階です。
レベル6は「発見・説明」です。予測と判断基準について、説明ができるAIです。判断の根拠を「なぜなら」とか「同業他社に比べて…」とか、人間に向けて、人間の言葉で説明することができます。
レベル7は、発見した事実や予測に基づいて、自ら判断基準を見つけてしまうようなイメージをしています。ここまで来ると、人間による判断が不要になってくるので、素晴らしい反面、ある意味SFだとも思います。
レベル7は、今の技術の延長で実現するのは難しいと思っていて、想像の世界という位置づけですね。
中出: でも、レベル7は目指すべきだと思っています。
例えば経費精算一つとっても、従業員からすると「経費を精算する」という面しか見えていませんが、裏ではその経費の値が正しいのか、使用用途として適切か、などのチェックが必要です。このチェックを行えるようになるのがレベル5,6です。
しかしレベル7になると、「会社の売上状況からすると、経費をセーブしなくてはならない」とかシステムが言ってくるわけです。会社全体の情報を元に判断が行われるようになる。
-- SFに出てくる人工知能のように、全てを把握していて判断を行うようなAIのイメージですね。
中出: 人の判断がなくなることはないと思いますけど、大部分を信頼して任せられる、時には人が気づいてない視点からのアドバイスもしてくれる良きパートナーというところまでくればレベル7を達成したと言えるんじゃないでしょうか。
「ディープラーニングはあまり知的な作業をしていない」
-- 関根先生は、ここまでのお話を踏まえていかがでしょうか。
関根: そうですね、私自身の研究につなげてお話させていただくと、レベル6の発見・説明というところはまさに取り組んでいる研究です。
というのは、理研に入ったときからディープラーニングがあまり知的な作業ではない、と感じていたんです。結局ディープラーニングは、過去の経験を大規模に覚えて、それをオプティマイズするというものです。そういう形ででも、今説明された「オートマティック」の最先端なところまでは行けたわけですが。
しかし今のディープラーニングは、答えを出すことはできても、「なんで?」が言えない。90%くらいで当たるんですけども、やはり間違える。当たった理由も間違った理由もわからないので、人からするとなかなか使いにくい。「なぜ(ディープラーニングが)最適と思ったか」っていうことを言葉で説明するための技術が必要なんです。
なので私は、人間が持っている理性的な推論過程を、深層学習にかぶせて実現しなくてはならないと思っていまして、その仕組みだとか知識だとかを作っております。まさにレベル6の世界をどうやって作っていくか、というところで一緒にやらせていただいているという感じです。
北岸: 「パラメータがこうなってるから答えがこう」ではなくて、(判断の理由を)言語で説明していくことが重要なのかなと思っています。
関根: そのとおりです。ディープラーニングが馬を馬として判断したとき、しっぽが赤くなっているとかヒートマップみたいなものを出せるわけですが、あれはインタープリテーションと呼んでまして、説明というよりも解釈です。説明というのは、相手の知識レベルを認識した上で、相手がわかるような言葉で語るということ。そういうことを目指しています。
企業/バックオフィスにおける無数の判断をAIで解決する
-- マネーフォワードは機械学習やディープラーニングをどのように活用していくのでしょうか?
中出: まず、紙やアナログなもの(の画像)を読み取って、構造化されたデータにする、というところがあるかと思います。いわゆる画像解析ですね。
その後で、それが正しくデータ化されたかどうかはもちろん、そもそもオリジナルのデータが間違っていた可能性とかもあると思うので、「そもそもこのデータ正しいんだっけ?」というところをチェックする必要もある。意図的なものだったり、意図していない単なるミスだったりすると思いますが、そういう不正検知に機械学習は有効だと思います。
で、今度は構造化されたデータを分類して仕訳していく段階で、「このお金の使い方とか目的って何だったの?」っていうのを正しく判断して帳簿につける、なんてところでもディープラーニングが使えるかと思います。
その後は予算との乖離とかあったときに「これはまずい」とアラートを上げるとか。要は、人がバックオフィスにおいて判断していることって無数にあると思っていまして、そういうところはAIで解決していけるポイントだと思っています。
ルールベースアプローチとの融合、そして説明可能性
-- レベル5以降にはどうアプローチするんでしょうか?特に、レベル6の説明可能性というところについてお聞かせください。
中出: 先ほどデータの不正検知の例を挙げましたが、そういう処理はある程度ルールベースで書けるわけです。でもそれが追いつかなくなってきたときに、機械学習を使う。そうすると、判断根拠がわからなくなる。システムが不正と判断したときに「なんでなんだ」って言いたくなる。だから説明が必要になるんですよね。
北岸: でもその先に、「機械が判定したことはだいぶ正しい」って人間が思うようになると、説明を求めなくなるってことも起こるのもしれませんね(笑)
関根: でも「機械はいつも正しいから説明はいらない」という世界が来たら人間としてはつまらないので、説明はできるようにしたいですね(笑)
先程中出さんがおっしゃったように、ルールベースである程度のところまではできるけど、そのうち追いつかなくなる。第二次AIブームのときも頑張ってみんなでルールを書いてみたんだけども、それじゃ追いつかないってことで機械学習の流れになった。でもぼくは、ルールベースにちょっと戻ってみたいと思ってるんですね。
ただ、そのまま戻るんじゃ、前に失敗したのと同じことになってしまう。なので、今の機械学習とかディープラーニングとかのレベルがどんどん高くなってきているので、その成果を使って、このルールっていうものをどう作れるかを考えています。
-- 機械学習でルールを作る、というのはとても興味深いです。
関根: 30年前の第二次AIブームから比べると、計算機能力は何万倍と良くなっていて、データも大量にある。クラウドの集合知だとかもいっぱいある。これらを利用すれば、ルールさえも自動的に作っていけるんじゃないか、という発想ですね。実際には「半自動」くらいかな。クラウド上の集合知とかもうまく合わせながら作っていく感じです。
ディープラーニング=小脳=直感、ルールベース=前頭前野=論理
中出: ディープラーニングが判断理由を説明できないのと同様に、人も、自分の判断について説明できないってシチュエーションがよくありますよね。直感に従って判断しているときもたくさんあって、ディープラーニングが出している結果もほとんどそうだと思うんです。
それって、過去の経験に従って直感的に判断しているということだと思うんですよ。人間も一緒で、「なんでそんな判断したの?」って言われて、一生懸命自分で理由を作って説明したりしてますよね。
まずは直感で判断する。そして後付けでもなんでも、判断した理由を説明して、次からそのルールに従う、そういう世界に近いのかなと思います。
関根: 小脳の条件反射と、前頭前野の論理的な考え方、まさにその違いだと思います。ただ、前(前頭前野)のほうがないと、やっぱり会社の経営はできないでしょうね。条件反射で会社の経営やってたらまずいんじゃないかと(笑)
北岸: ルールを機械が自分で書き換えていくってなると、レベル7の世界なのかもしれませんね。創造の世界、クリエイションの世界にどんどん近づいていくんでしょうね。
関根: 私の研究的には、「興味を持つ」とか、「興味の対象を構造化する」とか、人間が知識を形作るところについては、どうしても機械じゃできないんです。そこはうまく人間が設計しないと進まない。そうやって、人間とAIがうまく協調しながら、ルールみたいなものを作っていく、そういうものが一つの解決方法になっていくんじゃないかなと思っています。
-- 本日は、興味深いお話を聞かせてくださってありがとうございました。
中出: この対談を文章にするの、すごく難しいタスクだと思います(笑)でも、私達がやろうとしていることに面白いテーマがありそうだということを、日本中、世界中のAIエンジニアたちに知ってほしいと思っていますので、ぜひよろしくお願いします。