AI導入には人とソフトウェアの“共進化”がマスト。PKSHA Technologyに聞く“AIを社会実装するための事業とエンジニアの考え方”

近年の急速なAI技術の発展に伴い、今後、AIを活用したプロダクトが多岐にわたる領域で展開されていくことが予想されます。しかし、“従来のソフトウェア”の開発・運用と、“AIを利用したソフトウェア”のそれは、どう違うのでしょうか。

今回は、2012年に創業し、ChatGPTの登場以前からAIの社会実装に取り組み続けている株式会社PKSHA Technology(以下、PKSHA)にインタビュー。執行役員 兼 VPoEを務める森下賢志さんに同社における開発組織のありかた、AIを社会実装するうえでの難しさ、そして、AIという新たな技術と向き合うエンジニアが持つべき視点などを伺いました。

アルゴリズムを社会実装するために事業を3つのレイヤーに分ける

――ブログなどでも公開されていますが、PKSHAは事業がレイヤー0~2に分かれています。その内容と、理由、メリットなどを教えていただけますか。

簡単に言うと、「Research」「Solution」「SaaS」の3つの言葉で表せます。レイヤー0がリサーチ、つまり研究です。今、AIの進化は速すぎてどんどん新しい技術やプロダクトが出てきます。すぐに社会へ実装できる技術と、磨かないと実装できない技術を区別し、後者の場合は自分たちで磨き込んで実用的なものにしていきます。

次のレイヤー1のソリューションでは、レイヤー0のリサーチによる最先端の成果と、喫緊の社会ニーズを照らし合わせながら実装の例を作っていきます。大企業の方々と一緒に取り組むケースが多く、企業様で持っている事業やデータと、我々が持っているアルゴリズムモジュールを組み合わせると「どんな未来を創るができるか」を相談しながら事業を変革する事例を作っていくイメージです。

我々も初めて取り組むような課題解決のためにモジュールをカスタマイズしたり、既に活用いただいているソリューションを企業様ごとに調整して横展開していったりと、関わり方は多様です。

レイヤー1のソリューション事業を通じて社会実装に有用なAIの使い方が様々実証されていきますが、我々の中でもこのAIの使い方は広く社会に浸透した方が良いのではと思えるフェーズになると、レイヤー2のAI SaaSが立ち上がります。SaaSはお客様に合わせてオーダーメイドで作るのではなく、我々が提案するAIの使い方をベースに、ある程度のカスタマイズを加えて使っていただく形です。

カスタマイズの自由度はレイヤー1のほうが高いのですが、導入までのスピードなどはレイヤー2が圧倒的に早く、結果的に導入者数も優ります。社会に届ける際に、個社ごとに最適化したい場合と、クイックに広めたい場合とで使い分けています。

レイヤー0~2の棲み分け

――それぞれのレイヤーについて、もう少し詳しく聞かせてください。レイヤー1のソリューションが、いわゆる受託開発と違う点はどのあたりでしょうか。

受託開発は、お客様の要望に沿ったソフトウェアを納品し、使えるようになったら手が離れるのが一般的だと思います。レイヤー1のソリューション事業は、我々が持っているアルゴリズムモジュールをお客様ごとにカスタマイズしてクラウド上に実装して使っていただきます。既存のアルゴリズムモジュールを活用してお客様の課題を解決していくので、ゼロから作る受託開発と比べると、かなり早く実装できるのが強みです。

また、お客様の課題をAIで解決する方法はいくつも存在するはずなので、お客様の案をお伺いしたうえで、言われた通りに作るのではなく、我々から別のやり方を提案させていただくケースも多くあります。そのため、エンジニアが提案の段階からチームに参画して、ビジネスのチームと一緒に未来の姿を考えていきます。

――レイヤー2のAI SaaSのプロダクト数はどれくらいで、具体的にどんなものがあるのでしょうか。

PKSHAグループ全体でみるとAI SaaSのプロダクト数は十以上あり、コミュニケーション領域のプロダクトが中心です。個社特有の課題は使えるデータの形式も多種多様なため、レイヤー1のソリューション事業で解決させていただくことが多いのです。一方で顧客と企業、または企業内のコミュニケーションの課題は各社で共通する課題が発生していることが多く、またテキストや音声といったデータ形式も共通化がしやすいです。そこで、AIを介在させたコミュニケーションの仕方を定義して、プロダクトにしています。

例えば、コンタクトセンターで対応されている方を支援するAI SaaSとしてPKSHA Speech Insight(PSI)があり、オペレーターの方と電話先のお客様の音声対話をAIが認識し、様々な支援をしています。

さらに、我々は親和性の高い会社にグループ参画いただく動きも進めており、例えばRPAのプロダクトを展開する会社にグループ参画いただくことで、AIが社会と関われる方法を増やすなど、社会実装機会の拡大も積極的に行っております。

――レイヤー0のリサーチは、社会実装できる確約がない段階で進めていくのでしょうか。その際に、リサーチをスタートする判断の難しさはありませんか。

我々の場合は、ソリューションやSaaSで社会実装していく過程でお客様の困りごとや技術課題が見えてきますので、確約とまでは言えませんが研究成果の出口は見据えやすい環境だと思います。お客様の課題解決の際に「本当はここまでやりたかったけど、技術的にできなかった」というニーズがレイヤー0にフィードバックされ、リサーチに関わるエンジニアが「最先端の研究の○○を使えば解決できそう」とあたりを付ける。研究の成果を生み出せたら、それをソリューションとして提案したり、AI SaaSの新機能として搭載し、さらなる課題解決につなげます。

事業をレイヤーに分けるメリットと課題

――レイヤーに分ける目的やメリットはどんなところにありますか。

複数のレイヤーを兼務しているエンジニアや横断プロジェクトも多いので明確な壁があるわけではありませんが、事業として分けているのは、2つ理由があります。時間軸が違うことと、それぞれで達成する目標、つまりKPIが違うことです。

レイヤー0はより未来の技術に触れており、レイヤー1は0で生まれた成果の中で実用的なものを今の社会に届けています。より広く社会で役に立つとわかったらレイヤー2でSaaS化する。レイヤー0に近いほど技術的に新しいことに取り組んでいていて、1、2と上がるにつれて社会へのインパクトが増していきます。

事業を分けていないと、「今回は技術開拓が目的なのか?それとも社会に広めるための活動?」と毎回議論することになりかねません。スタートする際にレイヤーを意識することで、目的を見失わずに活動しやすくなります。

――一方で、レイヤーに分けたからこその課題はありますか。

レイヤー間の連携を保つことは強く意識し続けています。AI業界は目まぐるしいスピードで変化するため、それぞれのレイヤーのあるべき姿や、レイヤー同士の境界も変化し続けています。レイヤー0で活動する人が「自分はリサーチだから」と事業のことを考えずにいると、研究成果はあまり事業に貢献できないと思います。レイヤー1と2が協力して課題解決するスピードや、レイヤー1や2の課題がレイヤー0にフィードバックされて戻ってくるまでのスピードを上げることは常に観測し、改善し続けれなければなりません。それぞれのあり方、関わり方を常に横断で最適化して、アップデートしていく必要があると思っています。

例えば、コミュニケーション領域を解決するためにSaaSを実装しようとしたら、「一部のニーズに対応しきれない」という実状が分かったようなとき。SaaSで解決できる部分は解決しつつ、ソリューションで新規機能を作って実装します。さらにはその新規機能に汎用性があり、社会に広めるべきだと判断したらSaaSに組み込んでアップデートする。次に他の企業様が同じ課題解決に取り組む際には、SaaSを利用できる比率が高まっている状態になります。

このように事業を横断した関わり方がAIの進歩に合わせて変化し続けるので、事業は分けているものの、あらゆる課題に対して「どうすれば最も社会実装が進むか」を会社全体で考えて協力していくことは今後も必要だと考えています。

また、我々に限らずどこでもあるとは思いますが、どのレイヤーのどれだけリソースを配分するかは常に難しいポイントです。

AIを社会実装するには独特の難しさがある

――AIを社会実装する際に、他のIT技術よりも難しい点はありますか?

AI独自の難しさとしては2点あります。リリースした後もデータに合わせてAIが進化し続けることと、精度が100%ではなく、『予測が当たることもあれば外れることもある』というAI特有の性質を生かす必要があることです。

AI以前のソフトウェアは、検収時点で十分な性能が出ていれば、その後も基本的に同様の性能を出し続けます。ところがAIのモデルは納品して終わりではなく、使いながら正しく動いたケース、推論が外れたケースなどをデータとして溜めて進化していきます。再学習によって進化する仕組みも組み入れてソフトウェア化することが多いです。

お客様にお渡しする時点で精度が高いだけでなく、1年後や2年後も新たなデータを学習することで環境や事業の変化に合わせて精度を保つことが理想的です。データ不足で精度が低いのをわかった上でリリースした後、データが蓄積するにつれて精度が上がっていく想定で設計することもあります。

精度を上げるためにはソフトウェアを使う方々の協力が不可欠で、AIが間違えたときに間違いを教えてもらわなくてはなりません。AIの精度のために長いレポートを人が書くようなオペレーションは非現実的ですし、「普段の業務がAIのおかげで楽になった」と感じながら、AIが間違ったときに負担なくフィードバックできる仕組みを作る必要があります。それが上手くいった状況はまさに我々が「人とソフトウェアの共進化」と呼んでいる現象が起きるときです。AIのプロダクトは、共進化のループがないと使いにくいままだったり、精度が下がり続けたりする可能性があります。
共進化のループを実現させるためには、人とAI間のコミュニケーションが快適でなくてはなりません。どんな画面でどんな体験をさせるか、UIやUXが以前よりも重要になってきていると思います。

また、AIの進化はそれを使う環境独自のデータによるものだけでなく、世界の技術水準が向上することでも起きるもので、そのスピードは近年異常なレベルに達しています。中でも自然言語処理の進歩は凄まじく、アカデミアの世界や、OpenAIやAnthropic、Googleなどの企業がAIモデルの賢さをどんどんレベルアップさせています。それらのアップデートを取り込むことで、実装済みのソフトウェアに組み込まれているAIの性能を引き上げることもあります。

エンジニアの役割の一つは、最先端技術を社会実装できる方法を考えること

――これからのAIの進化を見据えて、エンジニアの役割や能力としてどんなものが必要になっていくと考えていますか。

様々な方向性がありますが、個人的に必要性が高まり続けると思うのは最新技術を何に使うか考えられるエンジニアです。未来を見据えて、社会にある課題を理解して、どんな技術に何を担わせるかを選定できる能力です。そのためには、速すぎるほどのAIの進化を学び続けて最新技術の使い方を正しく理解しなくてはなりません。自分の知識をアップデートし続けて、常に良いものを提案できる能力が必要でしょう。

また、AIや様々な技術の進歩を目の当たりにしたときに、自分の持つ技術の陳腐化を恐れるのではなく、「自分ができることが増えて嬉しい」というマインドを持てることも大切だと思います。エンジニアは自分が作ったものに対してプライドがあるはずなので、例えば、作ったものが新たなAIで置き換えられてしまったら手放しで喜べないかもしれません。ですが、自分の技術力や作ったもので「社会を変える」ことにKPIを定め、そこに自己顕示欲や自己肯定感を覚える人になっておくと、AIの技術の進歩は提供手段の拡張と受け取るようになり歓迎できると思います。

もちろん今もそうであるように様々なエンジニア像の選択肢が今後もあると思いますが、作れる能力だけでなく作るものを決められる能力が求められる比率は高まるのかなと。

――森下さんが「社会を変えた」と感じた体験があれば教えていただけますか。

最近だと、こどもの不登校の可能性を予測するAIを戸田市様と共に開発した事例です。

こどもが学校へ行けなくなるのはいろいろな理由があると思いますが、事前に先生からの声掛けなど何らかの対応ができたら、未然に防げるケースは多くあるのではないでしょうか。そのため、予測のニーズは以前からあったようですが、精度が出ずに解決が難しかった課題だったと認識しています。その課題に戸田市様が改めて挑むというときに我々も参画させていただき、、既に市に蓄積されていた様々なデータと最新のAI技術を使って予測モデルを開発しました。

例えば、中国では、カメラで生徒の顔を録画して「この生徒は集中力が落ちている」と判別する技術なども出ています。もちろん日本でも、表情のデータを取ったり、スマートウォッチで心拍数を測ったりすれば、より精度の高い予測ができるかもしれません。今そのようなデータがない状況に対して「○○があれば予測可能です」というのは、実際その通りだとしても社会実装に時間がかかるアプローチです。現在も多くの人が悩んでいる課題だからこそ、今の社会で可能な方法でAIを作ることにこだわりました。

結果としてはAIの予測が先生方の予想と合致するだけでなく、先生方が気付いていなかった生徒さんの可能性も挙げることができました。相談をいただいた戸田市様にも喜んでいただきましたが、現場の先生からのお声として、生徒さんに声をかけて相談に乗ることができ、非常に役立っていると聞き、とても嬉しかったですね。

AIを実装するうえで必要なチームの力

――AIを社会実装していくうえで、エンジニアチームとして必要になるものはありますか。

目まぐるしい速度で技術が進化し続ける中で、エンジニアは変化を恐れずに自分のできることややるべきことをアップデートしていく必要があります。そのために、チームの他のエンジニアの持つ知識やスキルにも目を向け、自身のスキルも開示し、お互いに学び合う関係性はとても有用です。技術進歩を自分一人で全て追いかけるのは極めて難しいので、学びを共有しあって効率的に高め合うチームであることは重要だと思います。もちろんあらゆるエンジニアチームで必要なことですが、技術進歩の速い業界であるほどより重要かなと。

また、他の職種に対するリスペクトもとても大切です。例えばPKSHAのAI Solution事業本部ではアルゴリズムエンジニアの他にビジネスデベロッパーやソフトウェアエンジニアがいるのですが、それぞれ「社会の様々な課題に向き合って今AIで解決すべきものを見つける」「AIや再学習の仕組みを安定して継続的に動くソフトウェアとして形にする」といったことのエキスパートです。精度や性能の高いAIを作れるエキスパートだけではなく、複数の職種が異なる考え方をすり合わせることでAIの社会実装ができており、お互いへのリスペクトが不可欠です。

――最後に、人とソフトウェアの共進化について、改めてお考えを教えていただいてもいいでしょうか。

AIが人の代わりに何かをする際、人の役割を奪っていくものだと誤解されがちですが、実際には違います。人はAIによって様々な能力を拡張してさらなる価値発揮をすることが出来ますし、AIもまた人と関わることで出来ることを増やし進化し続けるものです。そのような双方が双方に価値を与え成長し続けるコミュニケーションサイクルを作ることが、人とソフトウェアの共進化だと思います。

我々はそのような能力を持つソフトウェアをこれからも生み出し続けて、社会に人とソフトウェアが共進化するサイクルを増やしていくことを目指しています。

取材・執筆:栃尾江美