先達はあらまほしきことなり

デジタルテクノロジーの活用と展望

AI本の種類

すでに世の中にAI関連の書籍は数多く出版されており、どれを選んだらよいか分からないという人もいるだろう。

私の経験から言えるのは、書籍のタイトルだけだと期待する中身はうかがえないということだ。
書籍全般に言えることだが、タイトルは盛られていたり、とにかく注目されるように付けられてるケースが多い。
特に人気のあるジャンルやカテゴリーの場合はそれが顕著だ。
自分が探しているあるいは期待するAI本を正確に選び出すのが難しいのはAI分野が人気のせいもある。

失敗を避ける方法は、

  • 立ち読み
  • レビューを読む

だ。
表紙買いやタイトル買いは失敗を招く。

AI本の種類は大まかに次の4種類だ。

  1. AIの歴史・仕組みの概要説明
  2. AIの実社会での活用事例
  3. AIで便利になる未来像を予測したもの
  4. AIの技術者向け技術書

AIの実装を手掛けている私からの注意点としては、AI本はAIの便利な側面やきれいな面しか記されていないこと。
AIの社会実装には、泥臭い工程と作業は避けて通れないが、それが学べる書籍は今のところないと言ってもよいだろう。

AIを導入するメリット・導入しないデメリット

メリット

  • 他社に先駆けてノウハウが溜まり、AI関連投資の費用対効果が年々向上する
  • 将来新たなAI関連技術が登場した場合にすぐに活用できる企業風土を準備できる

デメリット

  • AI活用事例がないまま、社内のAIリテラシーが育たない状況が続き、年々AI導入を躊躇する理由が増える恐れがある
  • 社内にAIを管理運用する部署が確立されず、優秀なAI活用人材を獲得しづらくなる

AI開発会社

AIを開発してくれる会社と言って何社頭に浮かぶだろうか。
AIを開発する会社は主に3種類に分けることができる。

  1. 製造業系
  2. ソフトウェアベンダー系
  3. 研究室からのスピンアウト系

製造業系

有名な大企業や大企業の研究開発部門を独立させたような子会社などがある。
外販を手掛ける一方で、自社や自社のグループ会社向けの事業の比重も少なくない。

ソフトウェアベンダー系

老舗から新興まで幅広い。事業領域は組込み系から業務アプリケーション開発というふうに各社様々。
研究開発事業より社会実装事業がメイン。

研究室からのスピンアウト系

大学の研究室の教授が起業するパターンや卒業生が起業するパターンなどがある。
社会実装を目指している一方で、研究色が強いのが特徴。

もちろん、123に該当しないAI開発会社は存在する。
本記事では、読者の頭の中をまず整理してもらい、その次のステップは、自力で調査できるような拠り所になることが目的だ。

ちなみに、コンサルティング系企業の多くにAI関連事業部があるが、実際に開発で手を動かす部隊は123いずれかの企業に外注していることが多い。

AIの導入コスト

AIを導入するといっても、その種類や形態は様々だ。
いろいろなケースがあるので、ここでは敢えてシンプルに捉えて、コスト構造を紹介してみる。

開発に掛かるコストは、ほとんどが人件費だ。
ソフトウェア開発には原則として物理的な材料費がかからない。
食材が必要な飲食店や、原料が必要な製造業とはコスト構造が大きく異なる。
開発環境に必要なPCやサーバーなどの設備も必要だが、人件費に比べるとよほど特殊なケースを除いて百分の一程度だ。
※特殊なケースとは例えば、スーパーコンピューターを使うような開発

では、何人がかりで開発を行うのか。
そして、どれくらいの期間が必要なのか。

このような発想になるのが一般的なので、見積書もこのような文脈で作られるケースが多い。

本案件ですと、6人のエンジニアが必要で、3ヶ月掛かります。
したがいまして、6人×3ヶ月×100万円/人月=1800万円

という感じで見積書が提示される。
エンジニアのレベルによって単価は違うが、平均で100万円/月だ。
これはいろんな手数料が含まれており、その金額がそのままエンジニアの給料とはならない。

AIに限らず一般的に、ソフトウェア開発を外注すると提示される見積書には

人数×期間×単価

という内訳で開発金額が算出されている。

本記事のテーマはAIの導入コストなので、ここで終わってもよいのだが、実はここから裏話を交えて、見積金額を大幅に削減するテクニックを紹介したい。

どこを値切るか。
単価ではない。

重要なポイントは、人数だ。
単価が100万円/月は概ね妥当な金額であると言ってよい。
人ひとりに支払う給料から逆算すれば、AIを開発できるエンジニアに支払う金額としては決して高くはない。
逆に、30万円/月で見積書が提示されたら、AIを開発できるレベルのエンジニアなのかと疑いたくなる。

注目すべきは、人数だ。
AIを開発できるエンジニアにはプログラミング能力が必須だ。
大きな建物を立てる場合は、大人数の大工が必要だが、プログラミングの世界は違う。

並のプログラマー100人が集まってプログラミングするより、腕の良いプログラマーひとりの方が、出来上がったプログラムを見ると、高品質という例はたくさんある。

ソフトウェア開発においては、労働集約型の作業ではないので、開発に関わるエンジニア一人ひとりの能力が重要だ。
見積書に書いてある人数が6人でも、並のエンジニアばかりで構成されているか、腕の良いエンジニアがいるかで開発の品質や、開発期間が大きく違ってくる。

腕の良いエンジニアが入っているなら、6人もいらないのではないかとの視点も必要だ。

もしかすると、腕の良いエンジニアひとりの他の5人は入社2年以内の見習い色の強いエンジニアが混ざっているかもしれない。
OJTは確かに有効な社員教育だが、その経費を発注者側が負担する必要はない。

開発に参画するエンジニアのレベルが、コストのみならず、出来の良し悪しに大きく関わるので注意が必要だ。

AIの具体的な活用事例

すでにたくさんの事例がある。
この記事ではAI各分野の事例を少しだけ紹介し、読者が興味のある分野の事例を自力で検索・調査できる知識をつけてもらえることを目指す。

AIには様々な分野があり、分野を分ける切り口がたくさんある。
業界別や技術的なアルゴリズム別などがあるが、本記事では扱うデータの種類で分野分けしてみる。
データの種類も細かいことを言い出せばいくらでも細分化できるが、ここではざっくりと下記3分野について見てみる。

  1. テーブルデー
  2. 画像データ
  3. 言語データ

テーブルデー

テーブルデータとは、下記のようなデータだ。

名前 性別 年齢 住所 年収
山田太郎 28 北陸 500
鈴木花子 31 近畿 700
佐藤拓也 33 九州 600

1行あたり様々な属性や指標が並び、1行は1人を意味している場合が多い。

金融業や不動産業で活用されいるケースが多い。
貸付金額や不動産価格を算出する。

融資を希望する人の支払能力を評価するには、様々な条件を聞き取り、過去の実績(良かった例・悪かった例からはじき出される貸し倒れしないギリギリのライン)に照らし合わせて、貸し付けする必要がある。

もう一つ例を挙げる。
小売業のWebサイトのリコメンド機能の後ろ側ではこのようなAIが活用されている。
顧客の嗜好を計るための指標が数十から数百項目用意されていて、同じような購買行動をとる顧客を自動的にグループ化し、AさんとBさんが同じグループなら、Aさんが購入するとBさんにオススメするといった具合だ。

画像データ

画像データとは、静止画あるいは動画のことだ。

AIにより、人数をカウントしたり、特定の物体を検知することができる。
つまり、特定の仕事ができる人工的な目だ。
工場の生産ラインで活用されている例を紹介する。

冷凍食品のえびグラタンを生産する場面で、従来は人がえびがきちんと入っているかを確認する工程があった。
しかし、現在ではカメラが設置され、えびが入っていない商品を検出し、不良品としてはじかれるように自動化されてる。

食品製造に限らず、様々な製造業でAIによる不良品検知システムの実装が進んでいる。
いつ来るかわからない(たまにしか来ない)不良品に人が張り付いて見ているというのは、辛い作業と想像できる。

言語データ

言語データとは、文章や音声データのことだ。

IBMのワトソンのような、自然言語の意味を理解して、応答するというものは古くから研究され、現在はAmazonエコーなど一般家庭にも普及してきた。
言語を発するAIでは、いわゆる人型ロボット(犬型などの動物型も増えている)として顔や表情が付けられた商品が多い。
しかし、顔や表情の部分はAIではなく、人(利用者)にとってAIを身近に感じさせるギミックであるので、AIの技術を調査・研究する上では本質でないので注意されたい。
もちろん、商品としての付加価値を調査・研究するのであれば重要な部分ではある。

本記事がご自身が関わるビジネス分野のAI活用事例を調査・研究する足掛かりになれば幸いだ。

一般のビジネスパーソンが知っておくと良いAIの知識

AIという言葉がこれほど普及している割には、AIについて理解している人は少ない。

確かにAIという言葉・概念・技術はその時々の文脈で異なる使い方がされており、ひと言で説明するのは難しい。
それはAIについて全容を理解することが極めて難しいことを意味する。

しかし、AIの研究者であっても実は、どのように実社会で活用されるか・活用されているかを正確に理解している人は少ないと思われる。コンピュータサイエンスで博士号を取得した人が必ずしも、ビジネス分野でコンピュータサイエンスを上手く活用できるとは限らないのと同じだ。

逆もある。
AI活用が上手いけれども、理論面でそれ程詳しいわけではない人がいる。

要するに、AIに関しては自分の立場で有用な知識を持ち、豊かな発想ができれば十分だ。

では、(主に非エンジニアの)一般のビジネスパーソンがAIについて何を知っておけば良いのかの提案をしてみたい。

結論から言えば、下記の3点だ。

  1. 具体的な活用事例
  2. 導入コスト
  3. AI開発会社

それぞれについては別記事で記すことにする。
sawaqen.hatenablog.com
sawaqen.hatenablog.com
sawaqen.hatenablog.com

システムエンジニアとプログラマーの違い

アプリケーションを設計・保守するのがシステムエンジニア

システムエンジニアの仕事の領域は広範囲だ。システム開発のほぼ全工程はシステムエンジニアによって管理されている。しかし、一人のシステムエンジニアが全領域をカバーして仕事をしているケースはほとんどない。基本的には複数のシステムエンジニアがチームを構成し、分業体制で作業を進めている。システムエンジニアといっても、プログラミングをしないコンサルタント寄りの人と、プログラミングを主軸に設計までを担当しているプログラマー寄りの人など、さまざまなタイプがいるので、「システムエンジニア」という言葉だけでは仕事ぶりをイメージするのが難しい肩書だ。

アプリケーションを製造・改修するのがプログラマー

プログラミングをする人だが、より正確に言えば、アプリケーションをゼロから完成形まで作る人だ。システムエンジニアはすでにあるアプリケーションの設定を変更するような部分的なプログラムを書くことはあっても、製造全般に渡るプログラミングはしない。要件収集、要件定義、設計書作成、製造すべてこなせるプログラマーもいる。そのようなプログラマーシステムエンジニアもいる。

システムエンジニア=IT職全般

システムエンジニアはIT関連に携わってる人が便利に使える肩書だ。システム構成を考える人、要件を収集する人、設計書を作成する人など、IT企業でIT関連のサービスに従事している人なら誰でもシステムエンジニアと名乗れる。領域が広すぎる肩書であるので、その人の仕事がイメージできないケースが多い。