人工知能の進化は電子空間上の膨大なデータの蓄積によって促されていると思われる

ここ最近はプログラミングの勉強をしており、そういった内容のことを書いてきました。プログラミングについて勉強を進めていくと、この世界にはC言語とかJavaとか様々な種類の言語があることがわかります。

 

その中でExcelVBAというのはエクセルに入っているので、主に事務処理に特化した言語です。仮にこれをある程度勉強したとして、エクセルでの動作以外にもっといろいろなことができるようになるためには別の言語の勉強も必要であろう、

 

その別の言語として、ExcelVBAからステップアップしやすいものにはどんなものがあるのだろうか、と以前から考えていました。人気があるプログラミング言語のランキングや有名どころなどで「C言語」や「Java」という単語をよく目にします。

 

ですから、ExcelVBAの次はそういった言語を勉強した方がいいのだろうかと、言語の種類や性質、機能についてインターネットで調べたりする時がありました。すると、VBA以外に「VB」という言語があることがわかってきました。

 

VBはVBAと同じマイクロソフトが開発したプログラミング言語です。VBAがwordやExcelなど事務処理用のソフトに特化した言語なのに対して、VBはコンピュータ上で動作する一般的なアプリケーションを開発することを目的として開発された言語です。

 

また、VBAはVBをベースとして開発されたため、VBと近い言語体系であり、VBAからVBに移行するのは比較的容易である、と言われているので、

 

「そうか、じゃあVBAの次はVBを勉強するといいのかもしれない」

 

と以前は思っていたのですが、最近その考えがちょっと変わってきました。

 

というのは、最近とある本を読んでいて気づいたことがありました。それは

  • 「プログラミング」
  • 「データベース」
  • 「人工知能の機械学習」
  • 「人工知能の深層学習」

以上に挙げた項目が全て連続して繋がっているということです。

 

以前の自分の感覚では、別々の事象だと思っていました。しかし昨今の技術の進歩とその流れがわかってくると「あ、なるほど、確かに・・・」という感覚を持てるようになってきました。

 

で、1つのプログラミング言語を勉強したら、次は新しいプログラミング言語ではなく「データベース」について勉強した方がいいのだろうか?と考えるようになってきたわけです。

 

今回はこのことについて感じたことを書いていってみます。

4つのレベル

このブログでは社会というのは以下のように変わってきていると書いてきました。

  • 農業社会

   ↓

  • 工業社会

   ↓

  • 情報社会

   ↓

  • 知識社会

 

現在は工業社会から情報社会、情報社会から知識社会へと社会が進歩していっている、またはその過渡期と言われています。

 

現在は知識社会へ移り変わりつつあるということですが、この知識社会というのは、人間の「知識」や「智恵」が重宝される社会と言われており、

 

実際の世界でも、メーカーがつくるような「モノ」は溢れ、競争が激化し、製品の価格が下がってくるようになりました。特に私達の身の回りにある日常的なモノの値段は、体感的にもかなり低くなってきているというのがわかります。

 

一方で人間の知識をベースとしたサービスの値段や仕事の給料などは非常に高いです。経営に関するコンサルティングの料金は何十万とか何百万円なんて数値は普通に見ますし、一般の人でも目に出来る派遣の求人などで、プログラマーやSEに関する仕事の時給は普通に3,000円とか4,000円といったものがあります。

 

そういった日々の身の回りにある環境の変化や数値を見ていると、確かに社会は移り変わっていってるというのは感じます。

 

その知識社会において、ある一定の分野では4段階に細分化できるのではないかと考えました。なぜそのように考えたかというと『決定版 FinTech―金融革命の全貌』という本に次のように書かれていたからです。

P.161

人工知能の進化の過程は大きく4つのレベルで表すことができる。レベル1は単純な制御プログラム。温度があがればスイッチを入れる・切るといった家電の自動制御プログラム等がこれにあたる。

 

レベル2は膨大な入力・出力で探索や知識を活用することで、豊富なパターンを実現するレベル。掃除ロボ等がこれにあたる。

 

レベル3は、データを元にルールなどを自動で学習する機械学習を活用した人工知能。機械学習は以前から研究されていたが、2000年代に入り、学習する元データとなる「ビッグデータ」の発達で進化が加速している。

 

レベル4は、ディープラーニングを活用した人工知能。ディープラーニングとは、機械学習で利用する際のデータの特徴量そのものを自動学習するものである。例えば、画像認識において、動物の「ゾウ(象)」をゾウであると理解するために、「鼻は長い」「色はグレー」「耳が大きい」等のパターンを認識するための特徴量を自動で学習することができる。

 

なるほど、人工知能は4つのレベルで進化してきており、現在はディープラーニングのところまで来ているということです。

 

引用した文章において、自分の中では昨今の電子空間上のデータ量の増加を念頭に置くと、レベル別の内容ごとに次のような言葉に置き換えられるのではないかと考えました。それは

 

  • レベル1:プログラミング
  • レベル2:データベース
  • レベル3:機械学習(人工知能)
  • レベル4:深層学習(人工知能)

 

このことについて自分なりに簡単に説明していってみます。この分野については自分は全然素人なのでその点はご容赦ください。

レベル1

引用した文章に「単純な制御プログラム」とか「スイッチを入れる・切る」とあったので、たぶんプログラミング言語のことが思い浮かびました。

 

VBAを多少なりとも勉強したのでわかるのですが、ONとOFFを切り替える処理なんて言葉が出てきたので、あぁなるほどと。

 

コンピュータやインターネットの歴史において、初期の頃は多くの人が共有できる電子空間も最初はほとんど何もなかったと思われます。

 

そこに何らかの意味あるもの、多くの人が使えるもの、便利なプログラムやシステムを構築するには、人種や文化、価値観が違っても理解できる、何らかの規則的な道具が必要だった、そのために生み出されたのが「プログラミング言語」だったのではないでしょうか。

 

マイクロソフトはwindowsというコンピュータのOSをつくりましたし、Googleは便利な検索エンジンをつくってくれました。それらのシステムの構築にはプログラミング言語なしには考えられなかったでしょう。

 

コメント