読者です 読者をやめる 読者になる 読者になる

中堅企業IT部門の日常

中堅企業IT部門の中間管理職で半研究者の雑談です。毎週火曜日更新予定

AIでIT部門の仕事はどうなる

ここ数年の第3次人工知能ブームで、Deep Learningはじめさまざまな技術が登場しました。

それらの技術により、自動運転、翻訳等、世界が変わりつつあります。

さて、こんななかユーザー企業のIT部門はどうしていこうかという話です。

 

これまでのITシステム開発

これまでの開発は、基本ロジックの定義です。

たとえば、販売管理や会計のシステムであれば、

  • 税率は8%である
  • 販売価格は税抜き価格である
  • 税込販売価格にするためには、販売価格に108%をかける

という、演繹的なロジックを定義します。

このロジックをもとに

  • 税込販売価格 = 販売価格 × 108%

という式をつくり、コードに落とします。

こういったロジックを見つけるのを要件定義と言っています。

 

ただ、ロジックを見つけるのはそう簡単ではありません。そもそも、その業務を行なっている人が、何かロジカルに行動しているわけではない可能性もあります。

 

人間の脳は、高度に直感で動いているので、自分がやっていることをロジカルにまとめ、言語化することがそう簡単ではありません。

(この辺はベストセラーです。)

ファスト&スロー(上) あなたの意思はどのように決まるか? (ハヤカワ・ノンフィクション文庫)

 

この要件を明確にし確定するのが大変なので、各種テクニック(仕事の仕方)が研究されています。

たとえば、プロジェクト管理手法(PMP等)、開発手法(ウォーターフォール、アジャイル等)、コミュニケーション方法等々。

さまざまなテクニック・方法論を駆使して、ソフトウェアを完成させ、無事稼働させようとします。IT部門は、ベンダーと現場との間のブリッジとなり、あいまいな要望をロジックに落とし込むのを手伝います。

 

AI的なITシステム開発

では、AI的なシステム開発ではどうなるかというと、上記のようなロジックは定義しません。データをもとに統計的処理をします。

 

たとえば、自動運転では、カメラ、センサー等の入力と、アクセル、ハンドル、ブレーキ等の出力の組み合わせデータを大量に用意します。
信号が近づくにつれて車は減速し止まるというような走行データをもとに、統計的処理を行い、システムを構築します。

 

自動運転を実現するのに、ロジック定義をするのはうまくいきません。

例えば、

  • 赤い丸が前方XXメートル、地上からYYメートルにあったとき、それは信号の止まれである
  • 信号が止まれとなっているときは、減速する

などロジックを定義してもうまくいきません。

このやり方だと、前方に太陽がある場合も信号として認識するかもしれません。そうなると、それに対し例外処理するロジックを書かないといけません。例外処理は延々と続き、事実上記述困難です。

 

こういったやり方で自動運転を試みていた時代もありましたが、それは早い段階で限界に達しています。これをブレイクスルーしたのが、今のAIであり、Deep Learningです。

 

AI的(Deep Learning的)な開発では、適切なデータセットを定義し、ネットワークを構成することで、システムを構築します。

これまでIT部門が行って来た要件定義とは大きく異なります。

つづく

 

(Deep Learningの勉強ならこちらがオススメです。ほんと0からわかります。) 

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

 

 

 

 

ブログランキング・にほんブログ村へ