• 会員限定
  • 2017/11/22 掲載

「Software 2.0」がやってくる? テスラのAI部門長が語るプログラマの「これから」

  • icon-mail
  • icon-print
  • icon-hatena
  • icon-line
  • icon-close-snsbtns
記事をお気に入りリストに登録することができます。
プログラミング言語を用いて開発が行われる従来のソフトウェアを「Software 1.0」とすると、その次にやってくる「Software 2.0」はニューラルネットワークで構成され、プログラマの仕事はニューラルネットワークの学習に使うデータの収集などになっていくだろう。テスラのAI部門長(Director of AI at Tesla)を務めるAndrej Karpathy氏が自身のブログのエントリ「Software 2.0」でそうした意見を記し、海外で話題になっています。

Publickey 新野淳一

Publickey 新野淳一

ITジャーナリスト/Publickeyブロガー。大学でUNIXを学び、株式会社アスキーに入社。データベースのテクニカルサポート、月刊アスキーNT編集部 副編集長などを経て1998年退社、フリーランスライターに。2000年、株式会社アットマーク・アイティ設立に参画、オンラインメディア部門の役員として2007年にIPOを実現、2008年に退社。再びフリーランスとして独立し、2009年にブログメディアPublickeyを開始。現在に至る。



photo

 Andrej Karpathy氏は、スタンフォード大学で機械学習を学び(教師は現在GoogleでAIと機械学習のチーフサイエンティストであるFei-Fei Li氏とのこと)、その後OpenAI社でコンピュータによる画像分析の研究者を経たのちに、現在TeslaのAI部門長として自動運転の実現に取り組んでいる人物です。

「Software 2.0」はニューラルネットワークで記述される

 Andrej Karpathy氏は「Software 2.0」について次のように書いています。

Software 2.0 is written in neural network weights. No human is involved in writing this code because there are a lot of weights (typical networks might have millions), and coding directly in weights is kind of hard (I tried). Instead, we specify some constraints on the behavior of a desirable program (e.g., a dataset of input output pairs of examples) and use the computational resources at our disposal to search the program space for a program that satisfies the constraints.

Software 2.0はニューラルネットワークの重み付けとして記述される。しかしそれを人間が記述することはない。なぜなら多くの重み付けがそこにはあるため(典型的なネットワークでは数百万になるだろう)、直接その重み付けを記述するのは困難だからだ(私は試した)。

その代わり、私たちは望ましいプログラムの振る舞いのための制限などを規定する(例えば入力と出力のサンプルデータのペアなど)ことや、その制限を満たすプログラムを探索するためにコンピュータリソースを用いるといったことになる。

現実の問題解決はコードを書くよりデータを集める方がずっと簡単だ

 なぜKarpathy氏がSoftware 2.0の台頭を予測するかというと、それは現実世界の問題解決においては、プログラムを書くよりも関連するデータを集める方がずっと簡単だからだといいます。だからコードを記述する「Software 1.0」から、データを学習させる「Software 2.0」へ向かうのだと。

It turns out that a large portion of real-world problems have the property that it is significantly easier to collect the data than to explicitly write the program.

これはつまり、現実世界の課題の大部分は、明示的にプログラムを書くよりも、データを収集する方がずっと容易だという性格を持っているからだ。

 そこで将来のプログラマの仕事は、コードを書くことではなく、データを集めることなどになっていくと。

A large portion of programmers of tomorrow do not maintain complex software repositories, write intricate programs, or analyze their running times. They collect, clean, manipulate, label, analyze and visualize data that feeds neural networks.

将来、プログラマの仕事の大部分は、複雑なソフトウェアリポジトリの維持やプログラミングや実行時間を分析することではない。ニューラルネットワークに与えるためのデータを集め、整理し、操作し、ラベル付けや分析、ビジュアル化などを行うのだ。

Software 2.0はSoftware 1.0を置き換えるものではない

 ただしSoftware 2.0はSoftware 1.0を置き換えるものではない、とKarpathy氏は念を押しています。例えばSoftware 1.0で用いられるインフラはSoftware 2.0においても必要です。

 ただしSoftware 2.0の範囲はSoftware 1.0の領域を侵食するとも指摘しており、いくつかの具体例を挙げています。

 例えば画像解析、音声認識、機械翻訳などの分野では、それまで全部もしくは一部が解析アルゴリズムなどで処理されてものが、いまではほとんどニューラルネットワークに置き換えられていると。

 またSoftware 1.0で用いられる複雑なコマンドや命令セット群に比べると、ニューラルネットワークはシンプルな命令の組み合わせであるためシリコンで実現しやすく、かつ処理時間が短くメモリ消費量も小さいと言った利点も挙げられました。

 一方、いまのところニューラルネットワークは多くの領域で90%程度の正確性を持つモデルは理解されているものの、99%の正確性を実現するモデルへの理解は十分でないといった制限もKarpathy氏は指摘しています。

ディープラーニングが従来のソフトウェアを侵食する

この続きは会員限定(完全無料)です

ここから先は「ビジネス+IT」会員に登録された方のみ、ご覧いただけます。

今すぐビジネス+IT会員にご登録ください。

すべて無料!ビジネスやITに役立つメリット満載!

  • ここでしか見られない

    1万本超のオリジナル記事が無料で閲覧可能

  • 多角的にニュース理解

    各界の専門家がコメンテーターとして活躍中!

  • スグ役立つ会員特典

    資料、デモ動画などを無料で閲覧可能!セミナーにご招待

  • レコメンド機能

    ​あなたに合わせた記事表示!メールマガジンで新着通知

関連タグ

関連コンテンツ

あなたの投稿

    PR

    PR

    PR

処理に失敗しました

人気のタグ

投稿したコメントを
削除しますか?

あなたの投稿コメント編集

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

通報

このコメントについて、
問題の詳細をお知らせください。

ビジネス+ITルール違反についてはこちらをご覧ください。

通報

報告が完了しました

コメントを投稿することにより自身の基本情報
本メディアサイトに公開されます

必要な会員情報が不足しています。

必要な会員情報をすべてご登録いただくまでは、以下のサービスがご利用いただけません。

  • 記事閲覧数の制限なし

  • [お気に入り]ボタンでの記事取り置き

  • タグフォロー

  • おすすめコンテンツの表示

詳細情報を入力して
会員限定機能を使いこなしましょう!

詳細はこちら 詳細情報の入力へ進む
報告が完了しました

」さんのブロックを解除しますか?

ブロックを解除するとお互いにフォローすることができるようになります。

ブロック

さんはあなたをフォローしたりあなたのコメントにいいねできなくなります。また、さんからの通知は表示されなくなります。

さんをブロックしますか?

ブロック

ブロックが完了しました

ブロック解除

ブロック解除が完了しました

機能制限のお知らせ

現在、コメントの違反報告があったため一部機能が利用できなくなっています。

そのため、この機能はご利用いただけません。
詳しくはこちらにお問い合わせください。

ユーザーをフォローすることにより自身の基本情報
お相手に公開されます