Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Kaggle の Julia Kernel が動く Docker を 1.0 に対応させる
Search
regonn
September 15, 2018
Technology
0
560
Kaggle の Julia Kernel が動く Docker を 1.0 に対応させる
Workshop in VR #1 での発表
Kaggle の Julia Kernel が動いている Docker ファイルを Julia 1.0 に対応させた話
regonn
September 15, 2018
Tweet
Share
More Decks by regonn
See All by regonn
HelloMoon x Orca=HelloOrca
regonn
0
84
The Challenge of Automatically Configuring Numerai Compute Environment
regonn
0
47
Federated Learning 連合学習
regonn
4
1.4k
PLATEAUをデータベースに取り込んでみた
regonn
0
1.6k
古参Numerai参加者の戯言
regonn
1
2.1k
Nim + Cloud Run + TerraformでGCPにNimのサーバーレス環境を作る
regonn
1
560
S+ Camera Basicと似た環境をラズパイから構築してみる
regonn
0
430
衛星画像のゴルフ場写り込み判定AIモデルを作る
regonn
0
580
データラーニングギルド での活動と今後
regonn
0
96
Other Decks in Technology
See All in Technology
LangSmith入門―トレース/評価/プロンプト管理などを担うLLMアプリ開発プラットフォーム
os1ma
5
790
cgroup v2 で何が変わったのか / TechFeed Experts Night #28
tenforward
2
120
CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?
kota2and3kan
6
4k
Babylon.js JAPAN活動紹介 (2024/4)
limes2018
1
130
AWS アーキテクチャ作図入門/aws-architecture-diagram-101
ma2shita
16
6.5k
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
190
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
1.1k
成長をサポートするピープルマネジメントのやり方
sioncojp
9
1.4k
コードファーストの考え方。 Amplify Gen2から学ぶAWS次世代のWeb開発体験
yoshiitaka
2
540
M5と自作基板をくっつけてみた〜M5 Japan Tour 2024 Spring 福冈 (Fukuoka|福岡)〜
keropiyo
1
250
Microsoft for Startups Founders Hub_20240429 update
daikikanemitsu
1
2.5k
パスワードを保存しますか?
hanacchi
0
210
Featured
See All Featured
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
The Invisible Customer
myddelton
114
12k
Why Our Code Smells
bkeepers
PRO
331
56k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
245
20k
Become a Pro
speakerdeck
PRO
13
4.6k
[RailsConf 2023] Rails as a piece of cake
palkan
28
4k
Producing Creativity
orderedlist
PRO
338
39k
A better future with KSS
kneath
231
16k
Building Applications with DynamoDB
mza
88
5.6k
The Brand Is Dead. Long Live the Brand.
mthomps
49
29k
Build The Right Thing And Hit Your Dates
maggiecrowley
25
2k
Web Components: a chance to create the future
zenorocha
306
41k
Transcript
Kaggle の Julia Kernel が動く Docker を1.0 に対応させる Workshop in
VR #1 2018/09/15 れごん
自己紹介 • バーチャル俳人データサイエンティスト ◦ Twitter: @regonn_haizine ◦ フリーランス ◦ 2018/03より松江に移住(Iターン)
◦ データサイエンス ▪ Podcast: regonn&curry.fm ▪ YouTube: 田中TOM ◦ ストロングゼロ ▪ Podcast: 今夜も Strong x Strong ◦ クイズ&ゲーム ▪ YouTube: やってみよう! ◦ 俳句 ▪ YouTube: 恋言(VTuber, VRアカデミア)
今回話すネタ データサイエンス絡みのKaggleとJuliaの話
Kaggle? • 世界中のデータサイエンティストが参加するコミュニティ ◦ 例) 一番猫の画像を探し出す AIを作って精度が一番高い人が優勝 • 常にコンペティションが開催されており、日本人で参加している人も多い ◦
kaggler-jaという日本人のSlackコミュニティもある • ランキング上位者にはメダルがもらえてメダルが貯まると称号が手に入る • 自分の解法を公開(Kernel)することができて、良い解法だとメダルもらえる
Julia? • データサイエンスにおいては、PythonとRという言語が2強 • Pythonのように書きやすく、動作も早い言語が求められてJuliaができた • Pythonを早くするにはライブラリをCやC++実装で書く必要がある • Juliaであれば、ライブラリもJuliaで書いても遅くなりにくい(JIT) •
今後のデータサイエンス分野においても活躍が期待されている
Kaggle と Julia の関係 実はKaggleも以前はJulia(Kernel)に対応していたが、Juliaはで きて日が浅く言語仕様の破壊的変更が多かったためメンテされな くなっている。
普段Julia使っている自分としては他の人のJuliaでの解 法(Kernel)がみたい • 最近Juliaが安定版の1.0.0をリリース ◦ これは、チャンス!!!
Julia 0.6 => 1.0.0 へ プルリク出してる Update to 1.0.0 by
regonn · Pull Request #6 · Kaggle/docker-julia https://github.com/Kaggle/docker-julia/pull/6/files 無反応
主な変更点 (Docker) docker pull ubuntu:16.04 docker pull julia:1.0.0 • 今までubuntuイメージから作って、
juliaをビルドしていたが直接juliaの公 式dockerイメージを使うように • 他のPythonとRでも別のイメージ使っ ているので問題なさそう
主な変更点 (パッケージ管理) metadata_packages = [ "BinDeps", "Bootstrap", …] for package=metadata_packages
Pkg.add(package) end Pkg.add(metadata_packages) • いままで Package 一覧の配列を for 文で回す必要があった • 配列のまま渡しても大丈夫になってる • 0.6 だと REQUIRE ファイルでパッ ケージ管理ができたが、1.0だとUUID も管理するようになったので、このよう にしたほうが良さそう
主な変更点 (パッケージキャッシュ) RUN julia -e "Base.compilecache(\"BinDeps\")" RUN julia -e "Base.compilecache(Base.identify_package(\"BinDeps\"))"
• パッケージのキャッシュを 事前に行う際にはUUIDで 指定する必要がでてきた • identify_packageが公式ド キュメントにも載ってなく て、ここが一番詰んだポイ ント
残TODO • 最近になって 1.0.0 がリリースされたので、まだすべてのパッケージが対応してい ない • Gadfly.jl(グラフ描画)等の人気パッケージも1.0.0未対応だったりするので、これが 解決しないとプルリクは取り込まれなさそう •
けど、今までメンテされていなかったパッケージも1.0.0リリースでメンテされるように なってきている
Kaggle と Julia に明るい未来を! ありがとうございました