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.

2

Share

Download to read offline

Breezeで始めるデータ分析

Download to read offline

scala,breeze

Related Books

Free with a 30 day trial from Scribd

See all

Breezeで始めるデータ分析

  1. 1. Scala breezeで 始めるデータ分析 鈴木雄登
  2. 2. 自己紹介 • 鈴木雄登 • @moc_yuto • Python歴3年くらい • Scala歴1年くらい
  3. 3. 今日話すこと • breezeってなに? • breezeの使い方 • breezeでの成果物
  4. 4. breezeってなに?
  5. 5. こいつです。
  6. 6. そよ風っぽい
  7. 7. breezeってなに?
  8. 8. breezeってなに? 行列計算をやりやすくしたライブラリ
  9. 9. 行列計算って何に使うの?
  10. 10. 機械学習では、たくさんの行列計算を行います。 なので、機械学習を実装する上で 行列計算は避けて通れないのです。
  11. 11. 用途が近いライブラリを 見てみましょう
  12. 12. breezeに用途が似たライブラリ (or 言語)
  13. 13. breezeはその中でもnumpyに影響を受けて作られています。
  14. 14. numpyに影響受けているところ 行列の計算が直感的
  15. 15. numpyに影響受けているところ 行列の変形も直感的
  16. 16. breezeというライブラリは、 ScalaNLPというライブラリ群の一つになっています。
  17. 17. breezeというライブラリは、 ScalaNLPというライブラリ群の一つになっています。
  18. 18. ScalaNLPのNLPってなんだ?
  19. 19. Natural Language Processing N L P NLP=自然言語処理 自然言語処理とは、 人間が扱う日本語や英語を機械で処理する研究分野です。 例)自動翻訳、自動要約、情報抽出
  20. 20. 自然言語処理のために作られたライブラリなんです。
  21. 21. ほかのScalaNLPのライブラリを見てみましょう。
  22. 22. breeze周りのエコシステム epic puck nak breeze-viz scalaplot Junto
  23. 23. breeze-viz 計算したデータを可視化するライブラリです。 現在は、開発が止まってbreeze本体に吸収されています。
  24. 24. nak ・k-means ・教師ありロジスティック回帰 ・SVM ・local sensitive hashing 以下の機械学習モデルが実装されています。
  25. 25. Epicは形態素解析器です。 epic MeCabやNLTKのTokenizerのようなものです。 僕はScalaが大好きです。 僕 名詞,代名詞,一般,*,*,*,僕,ボク,ボク は 助詞,係助詞,*,*,*,*,は,ハ,ワ Scala 名詞,固有名詞,組織,*,*,*,* が 助詞,格助詞,一般,*,*,*,が,ガ,ガ 大好き 名詞,形容動詞語幹,*,*,*,*,大好き,ダイスキ,ダイスキ です 助動詞,*,*,*,特殊・デス,基本形,です,デス,デス 。 記号,句点,*,*,*,*,。,。,。 EOS 【MeCabの出力結果】
  26. 26. puck GPUで計算ができるので、高速に計算できる。(らしい) 秒間4000文を解析できて、Berkley Parserと同じ文法で出力 puckはEpicと同じ形態素解析器。
  27. 27. 実際にbreezeを使ってみましょう
  28. 28. 行列の作成
  29. 29. 行列の切り出し
  30. 30. 行列の四則演算
  31. 31. 行列全体に適用
  32. 32. 乱数分布
  33. 33. breeze 行列操作が直感的にできる 周辺ライブラリが少ない
  34. 34. 重回帰のライブラリが ない!
  35. 35. breezeを使ったライブラリを 作ってみた
  36. 36. 重回帰分析を計算するライブラリ https://github.com/moc-yuto/regression
  37. 37. 回帰分析 犯罪率 街灯数 人口 学校数 0.05 123 20000 23 0.09 24 3024 5 0.01 132 15325 12 0.10 32 8525 2 こんなデータがあります。 ここから犯罪率が街灯数などから影響があるか知りたい
  38. 38. 回帰分析 犯罪率 街灯数 人口 学校数 0.05 123 20000 23 0.09 24 3024 5 0.01 132 15325 12 0.10 32 8525 2 犯罪率=街灯数×a + 人口×b + 学校数×c + d こう置けると仮定します
  39. 39. 回帰分析 犯罪率 街灯数 人口 学校数 0.05 123 20000 23 0.09 24 3024 5 0.01 132 15325 12 0.10 32 8525 2 上のようなデータをたくさん集め、a, b, c, dを求める 犯罪率=街灯数×a + 人口×b + 学校数×c + d
  40. 40. regressionライブラリの導入はこんな感じ
  41. 41. regressionライブラリでは、以下のようにできます。 さっきの表をCSVにして…
  42. 42. 今後もうちょっとドキュメント周りを充実させます。
  43. 43. ただ最近は、Sparkが台頭? ジー
  44. 44. ありがとうございました。
  • kuwaken

    Oct. 12, 2017
  • cbutters400

    Feb. 11, 2016

scala,breeze

Views

Total views

1,532

On Slideshare

0

From embeds

0

Number of embeds

293

Actions

Downloads

2

Shares

0

Comments

0

Likes

2

×