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
670
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
Submission with Numerai Compute using GCP Batch
regonn
0
550
HelloMoon x Orca=HelloOrca
regonn
0
130
The Challenge of Automatically Configuring Numerai Compute Environment
regonn
0
93
Federated Learning 連合学習
regonn
4
1.7k
PLATEAUをデータベースに取り込んでみた
regonn
0
1.7k
古参Numerai参加者の戯言
regonn
1
2.4k
Nim + Cloud Run + TerraformでGCPにNimのサーバーレス環境を作る
regonn
1
640
S+ Camera Basicと似た環境をラズパイから構築してみる
regonn
0
510
衛星画像のゴルフ場写り込み判定AIモデルを作る
regonn
0
760
Other Decks in Technology
See All in Technology
Claude Codeから我々が学ぶべきこと
s4yuba
4
640
Strands Agents & Bedrock AgentCoreを1分でおさらい
minorun365
PRO
6
160
Claude Codeが働くAI中心の業務システム構築の挑戦―AIエージェント中心の働き方を目指して
os1ma
9
1.4k
メモ整理が苦手な者による頑張らないObsidian活用術
optim
1
190
【2025 Japan AWS Jr. Champions Ignition】点から線、線から面へ〜僕たちが起こすコラボレーション・ムーブメント〜
amixedcolor
1
120
増え続ける脆弱性に立ち向かう: 事前対策と優先度づけによる 持続可能な脆弱性管理 / Confronting the Rise of Vulnerabilities: Sustainable Management Through Proactive Measures and Prioritization
nttcom
1
240
【CEDEC2025】『ウマ娘 プリティーダービー』における映像制作のさらなる高品質化へ!~ 豊富な素材出力と制作フローの改善を実現するツールについて~
cygames
PRO
0
190
モバイルゲームの開発を支える基盤の歩み ~再現性のある開発ラインを量産する秘訣~
qualiarts
0
1.1k
Power Automate のパフォーマンス改善レシピ / Power Automate Performance Improvement Recipes
karamem0
0
280
Findy Freelance 利用シーン別AI活用例
ness
0
120
AI によるドキュメント処理を加速するためのOCR 結果の永続化と再利用戦略
tomoaki25
0
330
ホリスティックテスティングの右側も大切にする 〜2つの[はか]る〜 / Holistic Testing: Right Side Matters
nihonbuson
PRO
0
450
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Balancing Empowerment & Direction
lara
1
520
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
GraphQLとの向き合い方2022年版
quramy
49
14k
Code Review Best Practice
trishagee
69
19k
The Invisible Side of Design
smashingmag
301
51k
How STYLIGHT went responsive
nonsquared
100
5.7k
Being A Developer After 40
akosma
90
590k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Mobile First: as difficult as doing things right
swwweet
223
9.8k
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 に明るい未来を! ありがとうございました