「ベスト・プラクティス」の居場所 | MNTSQ, Ltd.
こんにちは。MNTSQ(モンテスキュー)というリーガルテック企業のFounder / CEOをしている板谷です。 MNTSQは最近までステルスで活動していましたが、本日、長島・大野・常松法律事務所とPKSHA Technologyとの資本業務提携を発表させていただきました。 ...
https://www.wantedly.com/companies/mntsq/post_articles/191383
5月からMNTSQにジョインしました、自然言語処理エンジニアの稲村と申します。自然言語処理自体には昔から関心があり、大学院では日本語データセットの自動作成をテーマに比較的基礎寄りの研究をしていました。研究の道には進みませんでしたが、自然言語処理技術を深く理解して使えるようになりたいという想いがあったため、学生時代に十分に取り組めなかった自然言語処理の応用に関われそうな会社にこれまでお世話になってきました。働き始めてから3年目になりますが、振り返ってみると、新卒当初に意識していた機械学習エンジニアやデータエンジニアと呼ばれるシステム開発寄りのキャリアというよりも、自然言語処理に軸足を置いて、最新の研究で得られた成果の検証・導入や、古典的な手法も視野に入れた技術応用の探索がやってきたことの中心となっています。
前職はMNTSQの関連会社である、株式会社PKSHA Technologyとその子会社のBEDOREという会社で2年半ほど働いていました。会社としては製品も保有しているのですが、自分は技術応用の仮説探索を目的としたPoC(Proof of Concept: 技術仮説が実現可能かの検証・またその効果測定を行うこと)の受託開発を主業務として行っていて、それに加えて案件横断で使えるような自然言語処理モジュールの提案・開発などにも取り組んでいました。具体的な業務内容としては、お客様から業務課題をヒアリングして課題仮説を設定し、受領したデータや業務上の知見を活用しながら仮説を検証したり、その応用の効果を示すデモシステムを期間内に納品すること等を目指す仕事でした。
前職の環境では幅広い業界、幅広い自然言語処理の解提案を経験することができて、充実した業務経験だったと感じています。また、実際に案件で使われた手法を自然言語処理モジュールに落とすことで、後の案件で自分で再利用するだけでなく、同僚のエンジニアの分析作業やビジネス側の同僚の解提案の手札として使ってもらったりできたことはやりがいがあって楽しかったです。こういった活動を通じて、用意できるモジュール側から業界ごとの応用事例やその収益性を整理するような取り組みはそれ自体興味深いものでした。研究用途やアドホック分析用途、製品用途などといった自然言語処理の目的別のモジュールデザインに対する解像度も幾分高まったように感じています。
一方で、短期〜中期の受託開発だと深堀れる業務仮説に期間的制約があり、技術的実現性の比重を高く見がちになる結果、技術的視点から見ると似たような応用が目立つ、といった感触を得ていました(研究開発のテーマ策定等でもよくある課題だと思います)。ムーンショット的とまでは言わないほどの応用だとしても、「技術的には可能といえなくもないが期間内にやるには相当大変そう…」という理由で技術採択を行わないというようなことはよくあり、技術のポテンシャルを十分活かしきれてないと感じることもありました。ただし、ここで挙げている受託開発期間と仮説の深さの関係の問題については初期数年間の状況の話で、現在は社内でも認知が進んで改善されつつあると思います。
開発期間の問題だけでなく、業務課題を真に解決するコミットメントの動機づけにも課題を感じていました。顧客課題をもらって解提案をする中で、どうすれば真に効果的な提案がこちらからできるかという点を考えるうちに、結局のところ業界・業務の課題がどこにあるのかを全体像の中で位置づけないと、局所最適な解を提供することに陥りがちだと薄々気づき始めていたことがありました。これは組織ではなく個人の課題ですが、さまざまな業界の技術課題に取り組んでいく中で、特定の業界を選択して業務課題を理解しきるに足る特別な動機が見いだせずにいた点に限界があったのだと思います。実際に特定業界の内部で働いた経験がある方は別ですが、自分のように純粋に技術的背景しか無かった人間にとっては、職責上の関心と好奇心の両面において技術的興味深さにもどうしても目がいってしまい、特定業界の課題理解をしようと気持ちの上では言っても、どこまでも建前感が拭いきれなかったのは実感としてあります。当時の同僚はこの選択をポジションを取ると表現していましたが、自分には特定の業界ポジションを選び切る動機がなかなか見いだせずにいました。
この辺の事情もあって、「特定の企業に入っても既に関心が持たれている自然言語処理の課題って(技術水準的にまず解けそうにないものを除外した上では)数年で解ききってしまうことの方が多いんじゃないか」、「それならば受託企業なり特定業界なりに正社員で働くのと、フリーで中期的に様々な案件に関わるのとの間にどれほど違いがあるのか」、などとキャリアに関して悩む頻度が徐々に増えてきていました。フリーとして独立することにも関心はありましたが、特定サービスを持ったチームに加わることにも強い関心がありました。サービスに関わりたい理由としては、使用者の方に喜んでもらえるのが嬉しいことに加えて、チーム全員の目的が共通していることが組織が一体感を持って高い生産性を出せる必要条件であると考えていたことがありました。チームで働きたいという動機については、個人でできることには限界があるという単純な理由からです。技術の理解者が全くいない中に放り込まれるのも大変な一方で、専門性の偏った小規模すぎる単位で動いてばかりいると、自己の手を動かす力だけを伸ばすインセンティブばかりが強まって長期的な市場価値が先細っていくようにも感じていました。
自然言語処理技術の応用は、深層学習のような新たな応用を開く技術が普及してきたとはいえ、応用のインパクトとしては似たような事例が多い印象です。その要因としては、個人あるいは小規模チームレベルで実現される汎用性のある応用事例は一般に出回り共有知になりやすいけれども、専門性や秘匿性の高い応用の可能性というのは一般に世に出てこないところに存在しているためではないかと考えました。インパクトのある応用とは参入障壁の高いところ、すなわち個人のレベルでできる応用を超えたところにあるのではないかということです。実際に、自然言語処理分野ではドメイン適応のような研究トピックは古くから存在していて、汎用技術といっても仮説が「深い」ドメインに応用先が変わるだけでとたんに上手くいかなくなることが多いという事情があります(機械翻訳などはその典型例です)。汎用技術だけで上手くいかない場合に、ドメイン特化の特殊解を与えられる組織こそが真にインパクトある応用にたどり着けるのではないかと考えるようになりました。
このようなキャリア上の課題意識から、自然言語処理とソフトウェア開発、そして特定ドメインの専門家という深い専門性のコラボレーションを通じて、特定サービスに対するチームの生産性を上げる仕組みに向き合いたい気持ちが高じてきていました。この課題意識をちょうど感じていた頃にMNTSQの記事を目にする機会があり、リーガルテックというこれまで秘匿されてきた法務領域に対する技術適用の機運が高まっている点について非常に参考になりました:
前職の関連会社であったという関係性もあり、MNSTQの役員陣には入社前にお会いしたことがありました。それもあり、ベンチャーへのジョインという一般的には思い切った選択をしているとはいえ、このメンバーなら信頼できる、という点ではあまり不安はありませんでした。入社時・入社後の間で比較しても会社に期待していた点についてはあまり齟齬がありませんでしたが、入社後に特に実感したMNTSQが優れた環境だと感じる点について述べていきます。
MNTSQでは開発メンバーの専門性別に3つの括りが存在していて、アルゴリズムチーム、ソフトウェアチーム、リーガルチームに分かれています。注意してほしい点としては、この括りはあくまでスキル上のグルーピングであり、実際に働くグループ単位とは異なるという点です。実業務の中では、立てられたissue毎にチームが流動的に組まれ、以下で述べるような開発イテレーションを一時的なチーム内で回して全体にマージする、といった業務を繰り返します。問題が発生した際にはチーム内・チーム間で話し合ったり、専門性の高い論点に対してはスキルチーム内で議論したりと、必要に応じて柔軟に解決します。
こういった連携を行いながら改善していこうとする雰囲気に自分はかなり大きく魅力を感じています。というのも、既存業態の自動化・効率化をやる上では、通常限られた参加者の中で課題設定やアプローチ改善を適切に行う必要があるのですが、法務領域のような深い専門性が背景にある業界課題を相手にする場合、機械学習や自然言語処理などのコンピューターサイエンス的素養だけでは全く不十分だということをこれまでの経験から実感しているからです。
役割を越えあった課題解決の質的向上は、日常の業務の中で行われています。例えば、契約条項への自動タグ付けのような契約書の自動解析機能の開発は、アルゴリズムチームとリーガルチームが密に連携して行っています。自動解析のロジックを開発する一連のワークフローを、社内ではイテレーションと読んでいて、その内訳は、「タスクを定義する」・「タスクを解く」・「解法あるいはタスクを見直す(エラー分析)」という順序で改善サイクルを回すことで構成されます。この内、「タスクを解く」部分に限っては、機械学習という帰納的アプローチを取る以上、アルゴリズム開発者だけでもある程度の性能は出せるようになるとは考えています。しかし、タスクを適切に定義することや、解くべきでないエラーの分析、さらには法的洞察を基にしたより省力的な解法の発見などにおいては、リーガルの知識が必要不可欠です。(実際、最近ではリーガルチームから出されたルールのPRで精度改善が達成されました…!)
これはアルゴリズム開発に限った話ではなく、実際の製品を触ってフィードバックを行うことも全社員が行っています。UIの使い勝手や粗探しだけでなく、最近だと検索システムのユーザー実務を踏まえた課題指摘に対する要求が社内では高まっています。検索システムの開発をかじったことがある方は共感してもらえると思うのですが、検索体験の評価というのは大変難しく、実際のユーザーの意図やニーズ、使用文脈をきちんと想定しないと、ユーザー価値に対して的はずれな施策を打ってしまいかねません。一方で改善可能な細かい問題点の指摘がすぐに思い浮かぶのは、実装がイメージできるエンジニアであるという側面もあり、異なる役割同士からの製品に対する多角的なフィードバックが求められています。
日常業務の中でお互い意見を出し合い踏まえ合うことが多いこともあって、MNTSQの社員にはお互いの役割を越えて知識を積極的に吸収して業務に活かしていくことが推薦されています。後述するドキュメント文化は、この点をより強化・促進することを主要意図のひとつに据えています。
社員間のコラボレーションの雰囲気は以前の会社紹介記事でも触れられています:
他の一般的な組織と比べたときに、MNTSQで最も特徴的だと感じる文化は、ドキュメント文化だと思います。これについては自分も日々理解しようとしている途上なのですが、根本動機としては、「異なる専門性を持つメンバーが効果的に協働することを促す目的、組織の生産性や柔軟性が低下していく兆候に抗う目的」を意図した施策です。もう少し具体的な活動に紐付けるとすると、「社内ドキュメントや議論のログを通じて、自社活動に関わるベストプラクティス的知見をストックしつつ常に批判的に改善していく文化」、「追跡可能性を担保しつつ建前を排することで、効果的な行動の検証とより良い行動原理の追求を促すのを意図した慣習」といったところでしょうか。具体でこうすればよい、という方法を提示して終わりというものでは無いのですが、経験上抱いていた組織で働く上での課題意識が、上記にあげた根本動機の部分でとても良く意図されている施策で、この組織で良い慣習を追求していきたいと感じています。
ドキュメント文化の実際については以前のエントリもご参照ください:
この点が満たされていることはそれ自体大変貴重なことなのだと、これまで様々な仕事の話を伺ってきたなかで実感しています。自然言語処理はテキストデータを扱うという点で人間の言語活動とのアナロジーを想像しやすく、ともすれば技術への期待ばかりが膨らみがちな領域だと言えます。しかし、現実の技術水準では人間が行うような柔軟な言語活動を再現することは種々の理由から難しいこともあり、実サービスにおける課題解決方法は業務運用プロセスの見直しなどで迂回されることが多く、自然言語処理技術はその解の材料を与える部分要素にとどまりがちな印象です。
自然言語処理が役に立つ仕事とは何か、という点を追求するにあたり、人間の読み書きの負荷の高い作業の代替、ということができそうです。この読み書きの負荷とは、質的な負荷と量的な負荷に分解することができますが、契約書の管理と読み込みはこの両点において負荷の高い作業である、それでいてデータがテキストに閉じている(知識は閉じていないことに注意する必要はありますが)と理解するに至りました。また、自然言語処理が本質的に必要とされることに支えられて、問われる課題設定・解法選択の質が厳しく問われるという点は、自分にとって魅力的でした。
MNTSQで自然言語処理が必要とされる点については以下のエントリも参照ください:
手を動かせている間は実際に組織・サービスに貢献できているかを最重要視していきたいと思います。今は優秀な役員陣が中心になって事業仮説設定・課題整理や一部コア開発も担当をしていただいていますが、そのリソースをなるべく意思決定に集中してもらえるにはどうすれば良いかについても考えたいです。
また、リーガルテックにおける自然言語処理が提供できる価値については追求していきます。契約書を中心とした法律の知識について学ぶのと並行して、法務領域についての自分なりの理解、特に技術仮説の充実を意識して解像度を高めていきたいです。領域応用を念頭に置きつつ、汎用的なアプローチをとることのご利益と特化型のアプローチのバランスについては注視していきたいと考えています。
データマネジメントや持続可能な改善についても関心があります。データドリブンな開発においてはコードの管理と並行して、継続的に種々の施策を施すことができる形にデータの管理を行う必要性が高いです。このあたりも定まった知見が無く手探りの状況だと認識しているので、積極的に取り組んでいきたいです。
技術の歴史は深くても、まだまだ歴史の浅い潮流の中にいることは日々実感するので、やりがいのある環境で自分たちなりのベストプラクティスを見いだせていけるように、今後も精進していこうと思います。