計算機と計算機科学【AI を斬る 2】

  • HOME
  • 計算機と計算機科学【AI を斬る 2】
記事一覧

こんにちは。シミュレーション&マイニング部の豊岡と申します。 AI に対する理解の解像度を高めていく連載「AI を斬る」の2回目になります。

前回は AI を以下のように定義しました。

AI の定義:
計算機および計算機科学を活用することで実現できる諸機能のうちのどれかひとつ。あるいは、諸機能を統合して実現できる機能。

今回はこの中の「計算機・計算機科学」のイメージをより具体的なものにしていきたいと思います。

計算機とは?

AI は計算機(コンピュータ)を土台に動作しますが、計算機とは何をするためのツールなのでしょうか? それは「決められた手続きを大量に・かつ高速に実行する」ことです。

計算機によって世の中の色々なサービスが実現されています:

  • 銀行の送金システム
  • ネットショッピングのECサイト
  • 配送業者の注文管理システム

こうしたシステムは多くの人が利用するもので、決められた(ときに大量の)処理を正確に素早く行うこと、利用者に使いやすいインターフェイスを提供することが価値となっています。 これだけで十分に価値のあるサービスですが、あらかじめ決められた処理を行う、という点において AI と呼ぶにはそぐわないでしょう。

AI に活用される計算機科学とは?

AI の定義では「計算機科学」が活用されるとお伝えしました。 「計算機科学」はコンピュータを支える理論やその実装、グラフ理論・組合せ論など計算機で扱う対象に関する基礎理論を含む幅広い学問領域ですが、応用の際はその中でも「予測」「制御」「最適化」等にかかわる技術が多く活躍します。
例えば、近年計算機の発展とともに実現できるようになった、計算機科学を応用したサービスとして以下のようなものが挙げられます:

  • 銀行における不正取引・口座の検知システム
  • ECサイトにおける商品のレコメンドシステム
  • 配送トラックの経路最適化システム

これらのシステムはより大きなシステムの中の一部として組み込まれるようなものですが、実現するために「検知」「最適化」などのインテリジェントなタスクを行っていることが特徴になります。
筆者はこうした計算機科学の技術群の活用がAIの技術的なコアであると考えています。

「計算機を回す」?

ところで、AI が関わるシステムは計算機の使い方に特徴があります。
前述のようなインテリジェントな挙動を実現するためには多くのデータを読み込んでその特徴を抽出したり、良い振る舞いを行うための方策を探索したりすることが必要です。そのような複雑な処理を行うためには 積極的に計算機を回す必要があります。
「計算機を回す」というのは具体的には長時間かけて大量の(1億回, 1兆回, ...)回数の四則演算やデータの読み書きを行うということです [1] 。計算にかける時間はサービスによります。また、場合によっては手元にある1台のマシンではなく、クラウド環境を活用したり、複数台のマシンで計算を行うこともあります。

以下に「計算機を回す」具体例を挙げます:

  • ECサイトでカートに商品が追加されるたびに関連商品のレコメンドをコンマ数秒で計算する
  • トラックドライバーがその日の業務に使う情報を始業時に5分程度で計算する
  • 翌日の業務に使うデータ処理を深夜の時間帯に数時間かけて計算する
  • 月次のシステムアップデートのため、先月のデータを使ってクラウドサーバ上で2週間ほどかかる計算を行う
  • 大規模言語モデル(LLM)を学習させるため、パラメータ数(モデルが計算機の上に保持する)が数千億あるモデルを大量の計算機で数ヶ月かけて学習させる

通常、人が普通の用途でコンピュータを使っているときに計算時間を意識することはあまり無いと思います [2]。これは計算機の演算速度が十分高速なため、人が認識するほどの処理時間がかからないためです。 一方でAI的な用途でコンピュータを使う場合、複雑な計算を行うために、計算機の持っているパワーをフル活用する必要があるのです。

つづく

今回は、AI の技術的なコアは複雑なタスクを解くための計算機科学技術の応用にあること、活用にあたっては積極的に計算機を使うことが特徴であることを述べました。 この特徴をふまえると、「AI の定義」は次のように言い直しても良いかもしれません:

AI の定義(ラフな言い換え):
計算機を積極的に回して実現できる諸機能のうちのどれかひとつ。あるいは、諸機能を統合して実現できる機能。

次回以降は具体的に AI を構成する技術の中身を覗いていき、どのような機能を実現することができるのかについて掘り下げていきたいと思います。

  • 億や兆と聞くと途方もなく多く感じるかもしれませんが、いまは一般的なPCで1秒あたり数億回の演算ができるため、コンピュータからすると普通に相手のできる数字です。
  • 例えばネットサーフィンをしているときなどに待つと感じることはあるかもしれませんが、これは主としてネットワークアクセスの時間であり、(サーバあるいはクライアントコンピュータでの)計算に要しているわけではないことが多いと思います。
豊岡 祥 株式会社 NTTデータ数理システム シミュレーション&マイニング部所属。
S4 Simulation System の開発のほか、機械学習・シミュレーション・数理最適化を幅広く扱い、分野を横断した問題解決に取り組んでいる。
入社後に競技プログラミングをはじめ、PGBATTLE2023にて企業の部団体3位入賞。

著書: 「XAI(説明可能なAI)──そのとき人工知能はどう考えたのか?」リックテレコム
趣味: 合唱
「数理科学の基礎知識」e-book無料ダウンロードはこちら

関連記事