SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2023 セッションレポート(AD)

Google Cloudが解説! エンジニアはAI/MLソリューションのレイヤー構造を理解しよう!

【10-A-2】ML/AIソリューションのレイヤー構造を理解しよう!~ エンジニアとして知っておきたいアーキテクチャの全体像

  • このエントリーをはてなブックマークに追加

 AIやML(機械学習)が話題になるとき、「AIは簡単に使えるようになり、民主化が進んでいる」という論調もあれば、「AIを使いこなすには(あれこれ必要で)MLOpsが必要だ」という論調もある。お手軽なのか、壮大なシステムを構築しないといけないのか。「どっちなんだ」と思う人もいるのではないだろうか。混乱するのは見ているレイヤーが違うからだ。AI/MLソリューションのレイヤー構造についてグーグル・クラウド・ジャパン合同会社の中井悦司氏と下田倫大氏が解説する。

  • このエントリーをはてなブックマークに追加

AI/MLソリューションはSaaS、PaaS、IaaSをイメージすると分かりやすい

 AIやMLは誰でも使える簡単なものなのか、MLOpsを作らなくてはいけないのか。グーグル・クラウド・ジャパン合同会社 中井悦司氏はクラウドソリューションのレイヤ(SaaS、PaaS、IaaS)に例えて考えるといいと提案する。

ML/AIソリューションのレイヤー構造
AI/MLソリューションのレイヤー構造

 AIが手軽に使えるという話はクラウドならSaaSに、MLOpsなど複雑な話はIaaSに当てはめると分かりやすい。SaaSに相当するソリューションはMLやAIをバックエンドで使っているものの、目的ごとに完成されたアプリケーションとしてクラウドで提供されている。例えば文書解析のDocument AI、コンタクトセンター向けのContact Center AI、eコマースでのレコメンデーションなどに使うDiscovery AIがある。

 一方、IaaSに相当するソリューションはMLOpsのインフラを構築し、モデルを作り込んでいく。そうしてできあがったビジネスアプリケーションはSaaSのような形でクラウドで提供されてビジネスユーザーが使う。その中間的なものがPaaSで、事前学習済みのモデルや、データを投入すればモデルを作るAutoMLなどがある。

 「かつてAI/MLが流行り始めたころはモデルを作って終わってしまい、PoCから先に進まないという話もありました。冷静に考えると、最終的にビジネスユーザーが利用できるアプリケーションまで作らないと意味がない。そこが課題だったのでは」と中井氏は指摘する。

 そこで全体像を見渡せるように、Google CloudのAIソリューションでSaaSのように完成されたアプリケーション「Document AI」を分解(リバースエンジニアリング)してみることにしよう。これはPDFや画像など、構造化されていない状態のコンテンツを読み込み、テキスト情報を理解し、整理し、構造化された状態のデータに変換する。

 例えば運転免許証の画像。画像なので文字情報にはなってないが、その中には氏名、発行日、有効期限などがある。画像を読み込むことで必要なテキスト情報を抽出して、利用可能な形式にする。

Document AIとは
Document AIとは

 もう少し複雑なプロセスで考えよう。請求書のPDFだと、まずはクラウドのストレージから読み込み、テキスト情報から自然言語処理でエンティティ(重要な要素)を見つけ出し、関係性を理解して処理する。さらに精度を高めるための追加学習、カスタムモデルの作成、専門家による検証や修正の仕組みもDocument AIではサポートしている。

Document AIにおける文書のライフサイクル
Document AIにおける文書のライフサイクル

AI/MLの機能の集合体としての「Document AI」

 ではいよいよ「Document AI」の仕組みを分解して見ていこう。

 最もシンプルな機能となるのがテキストとレイアウトの抽出で、これのモデルにはDocument OCRがある。画像やPDF、手書きであってもテキスト情報を抽出することができる。続いて構造化されたフォームからキーとバリューのペアを抽出する学習済みモデルにはForm Parserがある。請求書や経費など一般的なフォームから構造を理解する。チェックボックスや表形式のコンテンツにも対応している。

 こうした事前学習済みのモデルはあるものの、自社ビジネスでは十分な精度が出せない場合もある。その場合は追加学習することで精度を高めることができる。追加学習は事前学習済みのモデルをベースとして、最小限の学習データでフィールドや言語を追加して「転移学習」することになる。モデルをチューニングするようなイメージだ。そうしてユーザーは追加学習されたモデルを利用可能となる。

追加学習による制度の改善
追加学習による精度の改善

 追加学習で対応できず、一からモデルを作るならDocument AI Workbenchという機能もある。これまで自社専用のカスタムモデルを作るのはデータサイエンティストや専門家の仕事だったが、これを使えばGUIで比較的簡単に作成できてしまう。

 意味のあるテキストを抽出したら、あとは蓄積し、検索可能な形で管理していく必要がある。そのレポジトリとなるのがDocument AI Warehouse。これは文書に特化したストレージサービスとイメージしていいだろう。

Document AIをどのように利用するべきか?
Document AIをどのように利用するべきか?

 ただし単なるストレージサービスではない。Googleの文書のセマンティックサーチ技術が盛り込まれており、検索性能を高めている。鍵となるのがKnowledge Graphで、データを実世界のエンティティと関係性に変換する。例えば「翔泳社」という文字列で検索をかけたとき、Knowledge Graphでは、会社、組織、所在地など実世界の実態に合わせて構造的に情報を保存している。これにより関係性を加味して、より適切な検索結果を返すことができる。

 このようにDocument AIの機能を分解してみると、このサービスが複数のAI/MLの機能の集合体であることがイメージできるのではないだろうか。最初の読み込みはOCRやParser、追加学習はAutoML、変換したデータはDocument AI Warehouseに蓄積され、Knowledge Graphでより適切な検索結果を返すことができる。「Document AI」をSaaSのサービスと考えるなら、複数PaaSを組み合わせて提供されていることになる。

AI/MLソリューションのレイヤー構造
AI/MLソリューションのレイヤー構造

 同 下田倫大氏は「皆さんもPaaSレイヤーのものを組み合わせることでDocument AIのようにビジネスユーザーが使うサービスを作ることが可能です」と話す。なお補足として、図で示したPaaSは似た機能を持つものを挙げており、Document AIを構成するものと全く同じではないことを念頭においてもらいたい。

AI/ML機能を組み合わせ、ビジネスに生かした事例:ポケトークとNew York Times

 現在Google Cloudで提供されている事前学習済みモデル(APIサービス)には、画像分析のVision API、動画分析のVideo Intelligence、テキスト分析のNatural Language API、翻訳のTranslation API、読みあげのText-to-Speech API、音声認識のSpeech-to-Text APIなどがある。

 こうした学習済みのモデルはできることが明確だ。何ができるかを把握したうえで、既存ビジネスプロセスでAPIを利用できるポイントがないかどうか、ビジネス側のユーザーも交えて見いだしていくのがいいだろう。

 ここからは実際に学習済みのモデルを組み合わせた活用事例を紹介する。1つ目はポケトーク。手のひらサイズで外国人との会話をサポートしてくれる頼もしい翻訳機だ。日本語で話すと、自動的に外国語に翻訳して読みあげてくれる。

 このポケトークにはGoogle CloudのAPIサービスが活用されている。何が使われているかは想像しやすいだろう。まずは音声認識(Speech-to-Text API)、次に機械翻訳(Translation API)、そして音声合成(Text-to-Speech API)を順に利用している。Google CloudのAPIを採用した理由は精度と高速なレスポンスだったという。言語のカバレッジも広く、コスト的にもメリットがあったそうだ。

学習済みのモデルの活用事例:ポケトーク
学習済みのモデルの活用事例:ポケトーク

 2つ目はアメリカの新聞社New York Times。歴史ある新聞社なので倉庫には過去の貴重な資料が大量に保存されている。紙や写真、切り抜きや手書きのメモも混在する。デジタルではないために活用し切れていない状態だった。

 中井氏は「ここにはもともと資料(データ)が存在していました。AI/MLで新しい価値を生み出すことを期待する方もいますが、何もないところから価値がうまれることはあまりありません。既存ビジネスの中にある価値を取り出せない時にAI/MLを活用するのがポイントです」と話す。

 同新聞社では片っ端からデジタル化して検索可能にした。スキャン後にAutoMLで画像分類やテキスト文書の解析などの自動モデル構築を進めていった。

AutoMLによる自動モデル構築
AutoMLによる自動モデル構築

 AutoML Tablesは表形式データを用いた汎用(はんよう)的な回帰モデル、分類モデルを作成するものだ。多くのビジネス現場で表形式のデータを扱うので役に立つだろう。ただし既存データの品質がよくなければ、いいモデルにならない。だが再学習とデータ収集を繰り返すことで性能を上げていくことができる。これはMLOpsにも通じる考えとなる。

 今回はAI/MLソリューションのレイヤー構造をテーマに解説した。SaaS的なアプリケーションを構築するには、PaaS的なものを組み合わせることも可能だ。今回IaaSレイヤーにはあまり言及しなかったが、Google CloudにはVertex AIなどMLOpsを支えるソリューションもある。中井氏は「まずは自分たちにとって最も重要な部分から順番に使い、段階的にMLOps環境を作ることもできます」と言う。

 最後に中井氏はデベロッパーやエンジニア向けのGoogle Cloud Innovatorsプログラムを紹介した。登録するとイベント、情報共有、ニュースレターが提供される。サブスクリプション型の新しいプログラムも提供されたところだ。興味があれば登録しておくといいだろう。

Google Cloud Day ’23 Tour

 Google Cloud Dayでは、AI、データの利活用、システムの内製化、生産性向上、コラボレーション、業務効率改善といった、いま、企業で話題のトピックスについて取り上げ、最新情報をお送りします。ぜひ早めの登録をお願いします。

Google Cloud Innovators

 Innovatorsプログラムは、すべての Google Cloud 開発者と技術者のための、役立つ情報を共有しあい、活気あふれるメンバーシップ プログラムです。また、Google Cloudに関する学習と成長を加速させるとともに、活躍するメンバーの認知を高めることもできます。開発者、技術者、学生、クラウドの専門家など、どなたでもご参加いただけます。

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加

提供:グーグル・クラウド・ジャパン合同会社

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/17423 2023/04/03 12:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング