人工知能の社会進出
ディープラーニングの登場
最近、人工知能が世間を賑わせている(ような気がする)。技術的発達は今に始まったことではないのだけど、いよいよ世間一般にも当たり前のように人工知能という言葉が出てくるようになった。
それもこれもディープラーニングという技術の登場によってである。コイツの存在によって急激に人工知能分野の知名度は上がった。だから、人によっては人工知能と言えばディープラーニングであると思っている人もいるかもしれない。だけど本当は違う。
ディープラーニングがすごく流行ったから、人工知能という分野が再注目されるようになっているという表現が正しい。
ここで言う「流行った」というのは研究の世界の話である。ここは強調しておくべきところだ。
ディープラーニングは社会進出したか?
ここで先程にも述べたとおり、ディープラーニングがすごく流行ったのは研究の世界の話である。ディープラーニングがどうやら凄いらしいという話は、またたく間に広がって研究者が雪だるま式に募っていった。
それで、では私達の生活のどこにディープラーニングがあるのかというと、もちろんそれほど多くはない(というかほとんど見かけない)。もしかしたら知らないだけなのかもしれないけど、少なくともディープラーニングを生活から取り上げられたらどうにもこうにも困ってしまうようなことはない。
ディープラーニングは社会進出したとはまだ言えない
これがボクの考えである(まあ、本当はディープラーニングであるかどうかの境目なんて曖昧で、どうでも良いと言えばどうでも良いのだが…)。
なぜ人工知能(という言葉)が目立つのか
そうであるとしたら、我々が普段見聞きする人工知能というのは一体何なのだろうか。それがディープラーニングでないとするならば、最近見聞きする人工知能が何者なのかますます気になってくるところである。
これは人工知能という言葉の定義をしっかりしてから議論すべきである。だから本来の議論の順番では、もしかしたら今、人工知能だと呼んでいるものが全て、本当は人工知能なんかではないと否定されるかもしれない。しかし今はそういう形而上学的な話はどうでもいい。
「この製品には人工知能が使われています」などと紹介される際には、その人工知能とは、要するに何らかのアルゴリズム・プログラムである。
なんだそれは、そんなものは今までもあったではないか?と思うはずだ。そうだ、あったのだ。割とありふれている。だから、何でも今は人工知能が入っていますと(各々の定義で)言えてしまうのだ(だからこそ本来ならば定義をしっかり決めなければならないと言ったのだ)。そりゃ人工知能という言葉が目立ってくるに決まっている。
今になって人工知能と呼ばれる理由
こんなものはボクの妄想に過ぎない。だけどある程度的を得ていると思う。理屈はこうだ。
人工知能という分野は今までもずっとあったし、研究もされてきた。原始的な人工知能は社会の中に今までも存在していたと言っていい。しかし、それをわざわざ人工知能と呼ぶのは気が引けた。これ以上の発展は望めないと思っていたし、終わった技術だと思われていたため恥ずかしくて声にもできなかったのだ。
しかし、ディープラーニングの登場で人工知能という分野に光が挿した。人工知能の発展がある程度望めるようになってきたのだ。人工知能の技術に携わっている、人工知能の技術を扱っていることが名誉に思えるようになってきた。
だから、今までは人工知能と呼ばなかったプログラムたちに、改めて人工知能という名前を付与したのだ。今ならば人工知能というのは恥ずかしくない。むしろ名誉なことである。
人工知能が現れたのではなく、人工知能と名付けるようになったのだ
社会進出したのは「人工知能」という新たな技術の実体ではなく、「人工知能」という命名である。
人工知能社会への備え
どれくらい新しいことを学ばなければならないか
もはや未来の話をするので妄想の域を出ないが、自分もその社会の一員であるためそれ相応に真面目に考えている。まず気になるのは、人工知能社会が訪れる時、我々がそれに備えて学ばなければならないことの量である。
人工知能とは一体何なのか。まずはそれを知りたいと思うのが普通だと思うが、実はこれは新たに学ぶことは驚くほど少ない。もちろんそれは、元々の持っている知識に依存するし、数学もコンピュータも全く知らないならたくさん勉強しなければならない。
ただ、「人工知能が叫ばれるようになる以前」と「人工知能が叫ばれるここ最近」とを比較して、人工知能のことを真剣に学ぼうとしたとき(大学で専攻するとか)の労力とかはそれほど変わっていないと思う。
変わったのは人工知能の知名度と、それを学ぼうとする人たちである。今まではニッチな分野であったため、本当にやりたい人しかやらなかった。だから、元々周辺知識を準備してから取り組むような状況ばかりであったと思う。
ここ最近は、「ずぶの素人がいきなり人工知能のことを知りたいです」という話も多い。その人たちにとっては全てが新しく見えるのである。もう一度言うが、本当は新しいことは殆ど無いのだ。中学生が微分積分を学んだら初めての出来事で驚くことだろう。でも微分積分という物自体は随分昔(みんなが生まれる前から)存在している。
人工知能もそうだ。ほとんど新しいことはない。あるいは新しいことで学ぶべきことは非常に限られている(古典的なことが分かっていれば簡単に分かることや、あとはいつ廃れるか分からないヒューリスティクスがほとんどであるからだ)。
学ばなければならないのか
ここまで述べると、まるで人工知能で騒いでいるなんてバカバカしいと言っているように見えるかもしれない。だが、実際には違う。できることならば学んだほうがいいと思っている。
ある友人がこういうことを言ってきた。
「昔の小説は凄い。想像力豊かで未来予知に近いことができるからだ。その当時は考えもしなかったような技術などが物語に組み込まれている。一体どういう頭をしていたのだろうか」
どうだろうか。確かに想像力豊かなのは間違いない。でも、実現していないことなんてたくさんある。例えば小説ではないが鉄腕アトムを想像しよう。あれは21世紀の物語を描いているが、心を持って自由に空を飛ぶアトムのようなロボットは21世紀に入った今でもまだ出来上がっていない。だがロマンは無いだろうか?そんなロボットがいたら凄いと思わないだろうか?
だから小説や漫画に共感し、それを実現しようとする科学者も出てくる。未来予知したのではなく、ロマンを現実にしようとした人たちが居たのだ。
小説や漫画を書いている人は、我々と同じ人間だ。将来へのあこがれを物語に反映している。小説家が未来予知をしているのではなく、共通して憧れる将来に向けて人類が努力した結果が現在なのである。
アトムは居ないがスマホはできたし、電車や自動車もある。まあまあじゃないか。
前置きが長くなったが、要するに「人工知能」というものの発展を目指し、人類が一生懸命努力をしていくという土壌がある程度出来上がってきた今、これが実現する将来が現れてもおかしくないのである。
慌てなくても大丈夫だ。今からでも間に合う。人工知能について少しずつ勉強していこう。
どれくらい深く学ぶのか
正直、多かれ少なかれ人工知能には興味があるはずだ。言葉の響き的にもなにか神秘を感じる。勿論勉強していくうちに、そんな凄まじい超技術ではないことが分かってくるのだが、やはり第一印象には惹かれるものがある。
そんなとき、果たして人工知能についてどこまで深く学ぶべきなのだろうか。このことは割と人工知能(と世間が呼ぶもの)を扱っているプロの人たちでも困る部分だと思われる。
答えはケースバイケースとしか言いようがないのだが、最低限教養として知っておかなければならないことがある。それは人工知能という分野にはたくさんの小分野があるということである。
例えば「エキスパートシステム」だとか「オントロジー」のような一昔前のものや、「ニューラルネットワーク」や「グラフィカルモデル」といった比較的最近のものも全て人工知能と呼ばれる。その中で更に細かい手法に分かれており、掘り下げていけば深淵の世界が待っている。
人工知能と言ったときにそれが具体的にはどういうものなのかをある程度は想像できたほうがいい。ハッキリ言って、エンジニアリングとして準備しなければならないものが全く異なってくるからだ。
その後、興味のある分野を更に深く学べば云いのだが、これ以降は人工知能を使ったビジネスを考えたいのか、人工知能を提供・運用したいのか、人工知能を開発したいのかによってレベル感は変わってくる。また、学ぶべきことや着眼点も変わってくると思われる。
ここはおいおい学びながら自分で見極めるしか無い。
具体的に何をしているのか
自分たちが人工知能をそれほど深く学ばないにしても、その専門家と呼ばれる人たちは一体何をしているのか気になるだろう。ボクはその専門家というわけではないので、ある程度想像だったり、お話を聞いた限りのことしか言えないが、独り言を聞くくらいの感覚で受け取って欲しい。
ちなみにボクは、人工知能の分野の中でも「統計的機械学習」や「ニューラルネットワーク」に限定した話題しか分からないのであしからず。
- プログラミングをしている
みんな多かれ少なかれ、プログラミングをしている。その度合いは人工知能への関わり方しだいで様々だけども、プログラミングを全くしないということはない。多くの場合は言語はPythonだ。もっとコンピュータに近い内部の細かいことをやる場合はC++が用いられたりする。 - 数学をしている
これも多かれ少なかれやっている。最低ラインとしては微分積分、行列の計算ができるというところだろう。大学1年生レベルと言ったところである。いや、細かいことを無視してしまえば、高校3年生レベルでも開始できると思う。ちなみに上を見だしたらきりがない。 - データを収集している
機械学習という分野ではデータが必要だ。人工知能がどんな動作をするのか、その処理だけをあれこれ考えておくことはできない。むしろ、データから必要な処理(関数)を求めさせるの機械学習であるからだ。だからデータは極めて大事だ。性能に直結する。だから何かしらの方法でデータを集めている。 - コンピュータ・システムの管理をしている
今のところ人工知能はコンピュータの中の存在である。だからコンピュータのシステムを適切に扱わなければならない。しかも機械学習ではデータを大量に扱う。そして何らかの重い計算を伴う。これらを効率よく行う方法を考える必要がある。
もちろんこれら全てを1人でやっているわけではないと思う(できる人もいるかもしれないが、分業しているはずだ)。全てをある程度の深さでできる人も入れば、どれか一本に特化している人もいるだろうと思う。
最後に
一応、機械学習をメインに扱っているブログを運営しているので、興味のある人は是非読んで欲しい。
ちなみに最近はオンライン講座で上質な講義を受けることも可能である。以下のUdemyは日本語の講座も豊富であり、セール中には格安で講座を買うことも出来る。無料でも有益な講座は多数あるため、登録しておくと良いと思う。