スイマセン。クソ煽りタイトルですが、下記の記事のタイトル意訳しただけです。草生やして更にクソさを増してはいます。
個人的にはぜひ本文読んでこの記事のクソ煽りっぷりを満喫してほしいのですが、英語読むのもメンドクセという方に、何が書いてあるかをさらっとだけ説明すると。
要はニューラルネットワークって、↓のPythonで11行のコード分の処理やってるだけじゃね? こんなの使いまわした程度で「うはwww俺天才www」みたいな顔すんのやめろ、ってことのようです。
まぁハッキリ言って、クソ記事www煽り乙wwwなんですけど。
でもぶっちゃけ、真実なんですよ。ある面においては。
僕も今の会社に入るまでディープラーニングに関する知識ほぼゼロだったけど、今は少なくとも、自分の業務に支障でない程度には理解できてるつもり。
ただ、ディープラーニングをメインでやってる人達がコンパイラやその下のハードウェア、いわゆる計算機科学の基礎みたいなところを学習するのは結構大変そうで、なんか学習曲線の非対称性みたいなものを感じています。
ディープラーニングが簡単、というより、今あるニューラルネットワークの仕組みや、TensorFlowやPyTorchみたいなツール・フレームワークといった辺りが相当整理されてて、技術がコモディティ化しているんだろうなぁと。
一方で、いわゆる「データサイエンス」とかその裏にある統計学的知識、データ分析のノウハウみたいなものは多分ちょっと文献に目を通したり多少コード書いたりした程度では身につかなくて、僕がもし、そこらへんメインでの仕事についてたら恐らくメチャクチャ苦労してたし、こんなナメた事は言ってないです。
実際、前職では機械学習やデータマイニングを研究しているラボになぜか所属していて、そっち系で一線張ってる人達と専門外の自分との彼我の差は当時すごく感じていたし、Bishop本(これ。和訳はこれとこれ)独学は挫折したし、Hastie本(これ、タダ。和訳はこれ)の社内勉強会もついてくの大変でした。
ただ、僕の今のメインの仕事は、あくまで「ディープニューラルネットワークをハードウェア上に実装するコンパイラ屋」なので、正直そういう苦労は味わわなくて良いんですよ。ハッキリ言って。 大まかな仕組みは、線形代数と高校生レベルの微分の知識があったらとりあえずわかります。
山ほど入門本出てますが、とりあえず、昨年ベストセラーになった以下の本読めば、ホントに基礎の基礎みたいなところはひとまず押さえられます。いやホントに。
ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装
- 作者: 斎藤康毅
- 出版社/メーカー: オライリージャパン
- 発売日: 2016/09/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (18件) を見る
まぁ結局何が言いたいかっていうと、ディープラーニングなんて、大雑把に理解するだけなら簡単だから、コンパイラ屋さん、もっとウチの会社に来て! ってことです。
ご興味ある方は連絡(Twitterとかに)くだせい。
【2/18 追記】ブコメに、僕の仕事内容を「意味不明」と書かれた方がいらっしゃったので。
僕は今、こういうのを作っています。ディープニューラルネットワークを最適化し、主にFPGA向けのHDLに変換して出力するコンパイラの開発です。
www.slideshare.netこの辺の「バックエンド」と呼ばれる辺りも最近色んな所で開発が進んでいて、競争が激化しています。求められるのはコンパイラとプロセッサ設計の知識です。
ということで、よろしこ。
【/追記】