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.
Juliaを使った

機械学習
2014/02/18 @はじパタLT
twitter: @chezou / github:chezou
自己紹介
Kawasaki.rbやってます
普段は、RubyとRailsのお仕事
機械学習やNLPに興味があります
Juliaとは?
数値計算・科学計算を対象とする動的
型付け言語
MATLABやnumpy/scipyと似た感覚で多
次元配列が簡単に扱える
速度もそれなりに速い
開発環境
Julia + IPython + IJulia + Gadfly
ブラウザベースで対話的に動作が実行で
き、D3.jsを使ってplotもできる
http://qiita.com/chezou/items/
d090f26dcb3181...
デモ
よく見るirisをplot
Pkg.add("RDatasets")	
using RDatasets	
using Gadfly	
iris = data("datasets", "iris")	
head(iris)	
tail(iris)...
k-means
Pkg.add("Clustering")	
using Clustering	
x = rand(100, 10000)	
k = 50	
result = kmeans(x, k; max_iter=50, display=...
SVM
Pkg.add("SVM")	
using SVM	
using RDatasets	

!

# Read iris data	
iris = data("datasets", "iris")	

!

# SVM format ex...
小並感
IJulia使っている時に、`using PyPlot`と`using Gadfly`を
混ぜると`plot()`が混ざって大変危険
怪しくなったら、Kernel restartするのが良い
`Pkg.add()`で入るものが古い(=バグ...
Juliaを使った機械学習
Juliaを使った機械学習
Juliaを使った機械学習
Juliaを使った機械学習
Upcoming SlideShare
Loading in …5
×

Juliaを使った機械学習

6,133 views

Published on

Juliaを使った開発環境を中心に紹介します

Published in: Technology

Juliaを使った機械学習

  1. 1. Juliaを使った
 機械学習 2014/02/18 @はじパタLT twitter: @chezou / github:chezou
  2. 2. 自己紹介 Kawasaki.rbやってます 普段は、RubyとRailsのお仕事 機械学習やNLPに興味があります
  3. 3. Juliaとは? 数値計算・科学計算を対象とする動的 型付け言語 MATLABやnumpy/scipyと似た感覚で多 次元配列が簡単に扱える 速度もそれなりに速い
  4. 4. 開発環境 Julia + IPython + IJulia + Gadfly ブラウザベースで対話的に動作が実行で き、D3.jsを使ってplotもできる http://qiita.com/chezou/items/ d090f26dcb31818d6964
  5. 5. デモ
  6. 6. よく見るirisをplot Pkg.add("RDatasets") using RDatasets using Gadfly iris = data("datasets", "iris") head(iris) tail(iris) plot(iris, x = "SepalWidth", y = "SepalLength", color="Species")
  7. 7. k-means Pkg.add("Clustering") using Clustering x = rand(100, 10000) k = 50 result = kmeans(x, k; max_iter=50, display=:iter) result.assignments
  8. 8. SVM Pkg.add("SVM") using SVM using RDatasets ! # Read iris data iris = data("datasets", "iris") ! # SVM format expects observations in columns and features in rows X = matrix(iris[:, 1:4])’ p, n = size(X) ! # SVM format expects positive and negative examples to +1/-1 Y = [species == "setosa" ? 1.0 : -1.0 for species in iris[:, "Species"]] ! # Select a subset of the data for training, test on the rest. train = randbool(n) ! # We'll fit a model with all of the default parameters model = svm(X[:,train], Y[train]) ! # And now evaluate that model on the testset accuracy = nnz(predict(model, X[:,~train]) .== Y[~train])/nnz(~train)
  9. 9. 小並感 IJulia使っている時に、`using PyPlot`と`using Gadfly`を 混ぜると`plot()`が混ざって大変危険 怪しくなったら、Kernel restartするのが良い `Pkg.add()`で入るものが古い(=バグがある)場合がある ので、`Pkg.update()`で必要に応じて最新版を パッケージ最新版にしても、exampleコードがバグっ て動かない時もある

×