1. Qiita
  2. 投稿
  3. Python

人工知能技術やデータサイエンスを専門にしようと考える人たちへ

  • 20
    いいね
  • 0
    コメント

こんにちは,名古屋大学の情報文化学部のミツノです.
人工知能系の技術を手広く扱ってます.

さて,Othloのアドベントカレンダーというせっかくの機会なので,ディープラーニングやデータサイエンスを扱いたい,と考えている人たちに,そういった就活生や技術者の現状をさらっとお話しようと思います.漫然と「人工知能やデータマイニング的なことをやりたい」と考えている方の理解の一助になれればと思います.

アドベントカレンダーでの予定的には人工知能概論的なことを書こうとしていましたが,私の拙い知識よりもっと有意義な記事がたくさんあるので,就活生としての視点で書こうと思います.


最初の概論として主観的な話が並んでいるので技術者の現状だけ知りたいかたは最初の方を飛ばしてください.

人工知能ってそもそも

エンジニアの皆さん,人工知能と聞いて何を思い浮かべるでしょうか.非エンジニアの人たちに人工知能という言葉を出すと,多くの場合は"汎用人工知能"を思い浮かべる方が多いです.しかし実際に現在の開発では,汎用人工知能などまだまだでしょう.

理由は単純であり,人間が管理している知識の上でしか知を走らせることができないからです.つまり自律ができません(もしそれをなしうる技術があるならばぜひ教えてほしいです).
現状の人工知能開発というのは,データマイニングの延長でしかないというのが事実です.この場においてはそれを前提として,データマイニングの技術をあえて人工知能技術と呼びます.

人工知能技術の普及

人工知能の時代が来ると言われて久しい昨今,いろいろな場所で「機械学習」「ディープラーニング」「ニューラルネットワーク」などという言葉を耳にします.これらの言葉を正しく理解している人,企業がどの程度いるでしょうか.私の主観でしかないですが,"単なるBuzzWordとして"よくわからずに,優秀なライブラリとそれに付属するサンプルコードを使って"使っている気になってる"人も少なくないのではないか,と感じます.

そうした人が多いためにデータエンジニアがピンきりと称され,企業の採用においてもデータを扱っているという言葉にあまり価値がないと判断されている現状があります.しかしこれを逆に考えれば,大した理解がなくてもそれなりの解析ができるのが人工知能技術の強みでもあるといえます.というよりも,データサイエンティストがいなくてもデータ学習ができるように,というのが最初のゴールと考える人も少なくありません.

機械学習と深層学習(ディープラーニング)

さて,軽く説明です.機械学習と深層学習,この言葉が別物であることはご存知でしょうか.

機械学習

機械学習とは,人間がどこに着目すべきか,ということを逐次,特徴として与え,それによってデータを学習し,その学習結果をもとに何かしらの判別を行うというものです.つまり,判別のための学習において,データとそれに対応する答え(ラベル)を必須とします.例えば,手書き文字の判別において,3が答えならば3という数字の存在を予め教える必要があります.また,丸みの多さに着目,直線部の距離に着目,といったように焦点を当てるポイントを指定する必要があります.こちらの強みは,着目すべき点がしっかりしていれば,精度の高い判別ができるという点です.

深層学習

では,それに対して深層学習とは何なのか.その説明のために,まずは必須となるニューラルネットワークについて超軽く説明します.人間の脳の情報伝達にはニューロンという細胞が使われていることがわかっています.ニューロンを模した情報伝達構造がニューラルネットです.これを利用して学習能力を高める,というところから始まったのがディープラーニングです.

ここだけ聞いて漠然としてないか,という印象を持たれた方,その通りです.ディープラーニングというのは,ニューラルネットワークを使った学習の総称であり,その中でもいくつかの種類があります.

基本的にディープラーニングといえば,CNNRNNを指すことが多いです.(要検索)




これから人工知能技術を専門にしたいと考えている人たちへ

色々と触りだけ説明してきましたが,この記事における本題です.主に就活生向けです.

はっきり言います.よほどの情熱がなければおすすめしません.

ここからの話は自分が通った道であり,周りの人たちが通るのを見てきた話でもあります.

データサイエンスというのは,当然ですが,手段です.何かデータがあった上でそれを分析する手段でしかありません.このご時世,企業には多くのデータがあり,データをかじっている人間からすれば宝の山です.そのデータを扱いたいと言ってデータサイエンティストになりたいと言う就活生は非常に多いですが,そのスキルは至って凡庸な人が多く,少しかじれば誰でもできる手法,を扱っている人がほとんどです.さて,


データをたくさん持っている優秀な企業がその程度のスキルを扱えないと思いますか?
TensorflowやTheanoでlayer changeしてGPUに放り込むくらいのことができないと思いますか?
アルゴリズムの進化や新たな手法への変化に貪欲に食らいついていけますか?
これまでの天才たちが培ってきたライブラリや手法を高度なものに昇華させるだけの頭脳はありますか?


厳しい表現ではありますが,情熱だけでどうこうできる分野でもないです.データマイニングにおいてひらめきが大事にされてきたのは,ディープラーニングのような一見気づき得ない情報を知る可能性を秘めた演算ができなかったからです.これからはデータマイニングとビッグデータ,人工知能という言葉は同一視されていきます.近い将来誰でもできることを専門に扱っている人を雇いたいと考えるでしょうか?

本気であるならば,博士を目指すことをおすすめします.おそらくそれが一番の近道です.

結局,企業においては問題解決のための一つの手段であり,ブラックボックス的な側面の大きいこの分野は敬遠されがちであるのが現状です.

結論

教養としては知っておくべきです,後のスタンダードになります.
専門でやるなら覚悟してください.修羅の道です.大学受験数学や線形代数で苦戦していたならば本当にやめておいたほうがいいと思います.エンジニアリングとは違います.人も多いです.

この記事に優秀な人達の優秀な論文がまとめてあります.
2016年のディープラーニング論文100選
これを眺めてみてなんとなく心が折れそうだと思った方,他の道を探すことも是非考えてみてください.

簡単にディープラーニングについて学習したいのであれば,Pythonを軽く触れるようになった上で
ゼロから作るDeep Learning――Pythonで学ぶディープラーニングの理論と実装
を読むことをおすすめします.MLP本等は理論メインなので覚えづらいと思います.

最後に

手段として非常に優秀な人工知能技術.
是非とも教養として勉強して手段として活かせそうならば是非活かしてほしいです.

まだノータッチの人も,現状の優秀な技術をすぐに学習できるので,興味がある人は勉強して見てください.

この投稿は OthloTech Advent Calendar 201621日目の記事です。
Comments Loading...