機械学習はじめました。

f:id:wataru_boss:20180526141636p:plain こんにちは BOSSといいます。ブログタイトル「機械学習はじめました」とありますが、実際にはまだ始まっていません。

このブログはこれから機械学習始めるぞ!って思い立った私が、勉強したことをout putする場にしようかと考えています。

0スタートです。本記事ではいろんな立ち位置を記しておこうかと思います。

私は何者か

まずは私の立場を明らかにしておきたいと思います。私は機械系の大学院生です。

専門は破壊力学。どうやったら物が壊れるんですかってことを研究しております。

えーっとつまり、機械学習あるいはAIと呼ばれる分野に関しては素人です。

プログラミングの技術ももちろんありません。学部生のときに少しCコードを習ったくらいです。

情報系の学生ではありませんのでアルゴリズムとか全然わかりません。

多少知識があるとしたら初歩的な統計学、あるいは微積の能力くらいでしょうか。               

このブログの立ち位置

こんな私がほぼゼロの状態から機械学習(あるいはPython)について勉強していき、勉強したことを記事にすることで私自身の理解を高めることを目的としたブログにしていこうかと思います。

特に、具体的にいろんな例のプログラムを書いていけたらいいなと思っております。

もちろん、これから機械学習やってみたいんだけど

って方が読んで一緒に理解していくことができる、そういうブログにすることができたらいいなとも考えています。

       

機械学習とは

じゃあそもそも機械学習ってなんなのってところから。

といっても私もあまりよく知りません。ここから学習ですね。まずはWikipediaに聞いてみましょうか。

機械学習 - Wikipedia

機械学習(きかいがくしゅう、英: machine learning)とは、人工知能における研究課題の一つで、人間が自然に行っている学習能力と同様の機能をコンピュータで実現しようとする技術・手法のことである。

ということのようです。 コンピューターで これはキーワードですね。

実はコンピューターってそんなに賢くありません。原理的には簡単な四則演算しかできません。小学3年生レベルです。

しかし、爆速なんです。ありえん量を瞬間的にこなせるんです。賢くないけど反応は早い。それがコンピューターのいいところですよね。

で、機械学習ってのはそんなに賢くないコンピューターさんに少しは自分で考えてよね!ってやらせる手法のことなんですよね。

もう少し具体的に言えばデータサイエンスの一つで、たくさんのデータからコンピューターに学習をさせ、その結果を用いて未来予想を行うということですね。

なぜ機械学習をやるのか?

近年では人工知能あるいはAIという言葉自体が広く浸透しているかと思います。Googleの自動運転技術や将棋、囲碁などのボードゲームなどはAIの典型でしょう。 機械学習はこのAIを扱う一つの手法です。

実は、レイ・カーツワイル博士という方が2045年には技術的特異点を迎えるだろうと予想しています。いわゆる2045年問題です。

技術的特異点とはすごーく簡単に言えばコンピューターがすべての分野で人類を抜き去ることです。

2045年と予想されていますが、私はもうあと10年後には来てるんじゃないかなと思います。根拠はないですけど。

しかし、ここで重要なのはいつ来るかということではありません。この技術的特異点は必ず訪れるということが重要なのです。

さて、たとえば今このタイミングが技術的特異点を迎えたその日だとしましょう。

コンピューターが非常に賢くなって人はコンピューターの意思決定を受け入れないという選択をする根拠が持てない、そんな時代です。その時に2種類の人が存在すると思いませんか?

すなわち、コンピューターに意思決定を委ねる人コンピューターに意思決定をさせる人

コンピューターに意思決定を委ねること自体が悪いとは思いません。人間だって選択を間違えっぱなしなんです。

だったら賢いコンピューターの方が間違いは少ないはずって考えること自体妥当ですし、意思決定をさせる人だって結局コンピューターの意見に従う時代だと思うんです。

この時代において人間の中で上層に立てるのは後者だと私は考えています。

前述の通り、そう遠くない未来にそんな時代が到来すると考えてる私はそれまでに後者の人間になる力を身に付けたい。そう考えて機械学習という手法を自分のものにしたいと考えています。

機械学習を行うためには

機械学習の分野というのはデータサイエンスであると言えます。たくさんのデータを一気に扱うというのはコンピューターの得意とするところ。

まずは機械学習を習得するためのアルゴリズムを扱えるようにする必要があります。「扱える」ようになるということが重要だと私は考えており、何も最初からすべて理解する必要はないと思っています。

というか扱えるならブラックボックスで十分、あとで必要に応じて理解すればいいかなって考えています。

なんでも理解しないと先に進めないという考えは初学習者にとってはハードルが高すぎますし、私なら心折れて辞めます。

Pythonとは

そこでデータサイエンスするためのツールとしてプログラミング言語であるPythonを私は選択しました。
その理由は以下の通りです

  • 機械学習分野で広く用いられている
  • モジュールと呼ばれる便利な機能がたくさんあり、ブラックブックスでもそれらが扱える

ブログでは主にPythonに関しての学習成果のout putをしていきたいと考えています。

これから行いたいこと

前述の通りこのブログのメインターゲットは私自身です。

つまり、勉強したことをout putすることで身に付けていこうという狙いがあります。

そこでこれからはまずはPythonの基礎知識を習得する過程として、プログラムを作りならがら記していこうかなと考えています。その後、徐々にデータサイエンスつまり機械学習の内容にシフトしていこうという予定でいます。

まずは普段の大学院の研究で便利そうなプログラムを組んで、それについて記事にしてout putしていこうかと思っています。

また、Pythonの基礎知識やデータサイエンスのための統計学、あるいは全然関係なく備忘録がわりの雑記を書いたりと

できる限り何かしら毎日更新していけたらなと思います。

それではよろしくお願いします。