Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Python 機械学習入門

223 views

Published on

Pythonを使った機械学習の入門編です。
githubでソースも公開予定です。

Published in: Technology
  • Be the first to comment

Python 機械学習入門

  1. 1. テキスト 機械学習について 鈴木孝之 2016/05/20
  2. 2. 機械学習とは コンピューターでアルゴリズムを構築し、学習データ を読み込ませることで、自動的に今あるデータを分類 &まだ見ぬデータを予測できるようにするもの ヒトの情報処理能力を超えて、複雑なデータを分類& 予測できるようにするもの
  3. 3. 身の回りにある機械学習の事例 スパム判定: メールがスパムか否かを判定 リコメンド:「この商品を買った人はこんな商品も買 っています」 画像認識: Picasaの顔認識機能など
  4. 4. 機械学習が得意とする問題 大量のデータを使って、未知のデータを分類 ※少量データなら人間が頑張った方が早い ⚪︎⚪︎という単語があればスパム、というパターンを作 成
  5. 5. 機械学習の分類 教師付き 正解データが与えられている 未知のデータに対する予測を行う 教師なし 正解データが与えられていない 未知のデータから規則性を発見する
  6. 6. 教師付きと教師なし学習の違い 教師付き 教師なし 画像データがあるだけで、学 習アルゴリズムは、 このデータだけをみてこのデ ータの性質を探ります。 すると、大体0から9までの10 種類のパターンに大きく分け ることができます。 このよう にデータだけからその規則性 を学び取るのが教師なし学習 です。
  7. 7. 教師付き学習の学習方法(入力) 入力された値に対して、正解のペアをたくさん用意す る たくさん多ければ多いほうが望ましいが1000以上は 欲しい →データのサンプルあり
  8. 8. 教師付き学習の出力の表現 期待する結果を洗い出し、数値化する 数値は意味がある場合と単なるラベリングの場合がある 数値画像の例であれば、0~9の間でラベリングしていく 。 ラベルの例 みかん → 1, りんご → 2, バナナ → 3, …
  9. 9. 今回やること 教師付き学習で積雪の有無を予測する。 気象庁の気象データから、積雪の多い富山県の砺波市の気象デ ータ(CSVファイル)を学習データとして使用 上記の気象庁のサイトでは必要な項目を選べるのですが、気温 、積雪 、風速 、風向 、降水量 を選択しました。 2004年〜2015年3月のデータ 機械学習にはScikit-learnというライブラリを使用する。
  10. 10. Scikit-learnってなに? Pythonで作られた機械学習ライブラリ 無料・有料含めて、コレほど充実したライブラリは他にない 豊富な分類器と(ほぼ)統一化されたAPI 検証作業を支える機能 Numpy, Scipyを使用した高速な演算 http://scikit-learn.org/
  11. 11. CSVデータサンプル 下記のデータが日付の時間ごとで1万行くらいある。 2004/2/1 1:00:00,-0.7,8,1,19,8,1,3.0,8,南南東,8,1,0,8,1 2004/2/1 2:00:00,-2.1,8,1,19,8,1,1.0,8,東,8,1,0,8,1 2004/2/1 3:00:00,-2.7,8,1,19,8,1,1.0,8,南東,8,1,0,8,1 2004/2/1 4:00:00,-0.8,8,1,20,8,1,4.0,8,南南東,8,1,0,8,1 2004/2/1 5:00:00,-0.2,8,1,20,8,1,5.0,8,南南東,8,1,0,8,1 2004/2/1 6:00:00,-3.7,8,1,20,8,1,3.0,8,東,8,1,0,8,1 2004/2/1 7:00:00,-3.3,8,1,19,8,1,2.0,8,南西,8,1,0,8,1 2004/2/1 8:00:00,0.1,8,1,20,8,1,4.0,8,南東,8,1,0,8,1...
  12. 12. 実行の流れ ①気象庁のCSVデータを 読み込んで、雪が積もるパターンを学習。 積雪量(cm)を受け取り、 積雪があれば1、なければ0を返す。 ※1レコード単位で積雪フラグが 立つイメージ。 ②各学習モデルのタイプ別にスコアを 計算し、もっともスコアの高い タイプのオブジェクトをインスタンス変数 として残す。 ③リクエストから送られてきた パラメータから今までの情報を元に積雪に なるか予測する。 pythonのシェルを実行
  13. 13. 勉強してみた感想 pythonはrubyと似た感じで書ける 「;」と「{}」が無いのに違和感を感じる(笑) 環境構築に詰まった。pythonのライブラリ入れたりと か。
  14. 14. 今後やってみたいこと 登録ユーザの属性分析 記事のレコメンド →CSVデータを読み込んで、ラベル付けの基準を書 き換えれば応用ききそう など
  15. 15. 参考文献 http://www.slideshare.net/AtsushiKanaya/scikitlearn?n ext_slideshow=1 http://qiita.com/hiroeorz@github/items/997577f0dbbb9 460957d

×