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
Ruby のデータサイエンス対応の現状確認
Search
Kenta Murata
November 30, 2017
Technology
0
1.9k
Ruby のデータサイエンス対応の現状確認
Meguro.rb 2017.11.30
Kenta Murata
November 30, 2017
Tweet
Share
More Decks by Kenta Murata
See All by Kenta Murata
waitany と waitall を作った話
mrkn
0
140
HolidayJp.jl を作りました
mrkn
0
150
Calling Julia functions from Streamlit applications
mrkn
1
370
Red Data Tools で切り開く Ruby の未来
mrkn
3
1.1k
Method-based JIT compilation by transpiling to Julia
mrkn
0
6.8k
Apache Arrow C++ Datasets
mrkn
4
1.5k
Reducing ActiveRecord memory consumption using Apache Arrow
mrkn
0
1.6k
RubyData and Rails
mrkn
0
3k
Tensor and Arrow
mrkn
0
900
Other Decks in Technology
See All in Technology
Lambdaと地方とコミュニティ
miu_crescent
2
370
The Role of Developer Relations in AI Product Success.
giftojabu1
1
130
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
110
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
130
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
Terraform Stacks入門 #HashiTalks
msato
0
360
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
390
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
1
360
TypeScript、上達の瞬間
sadnessojisan
46
13k
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
390
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
180
21k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Designing Experiences People Love
moore
138
23k
RailsConf 2023
tenderlove
29
900
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Embracing the Ebb and Flow
colly
84
4.5k
It's Worth the Effort
3n
183
27k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Happy Clients
brianwarren
98
6.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Transcript
Ruby ךر٦ة؟؎ؒٝأ㼎䘔ך 植朐然钠 Kenta Murata, Speee Inc. 涪鿇 R&D ؚٕ٦ف
Thu, Nov 30, 2017 Meguro.rb 1 / 16
self.introduce Kenta Murata (@mrkn) Full-time CRuby committer at Speee Inc.
CRuby The maintainer of bigdecimal Other OSS pycall.rb, mxnet.rb, enumerable-statistics, vim-cruby Hobby Play with my daughter, Mathematics, Physics, Computer Science, Reading SF, etc. 2 / 16
植㖈ծRuby ךر٦ة؟؎ؒٝأ㼎䘔כ麓床劍דׅկ 劤傈כծוזفٗآؙؑزָ㶷㖈׃ծוז暴䗙ָ ַ֮稱➜׃תׅկ זׁכծמוַֿךفٗآؙؑزח⸇׃גְֹծ Ruby ךر٦ة؟؎ؒٝأ㼎䘔⸇鸞ׅ䔲✲罏חזגְ ְֹדׅկ 3 /
16
Contents SciRuby Ruby Numo pycall.rb mxnet.rb Red Data Tools project
GPGPU ͷରԠঢ়گ RubyData organization 4 / 16
SciRuby NMatrix Λத৺ͱ͢ΔՊֶٕज़ܭࢉ༻ gem ܈ ւ֎Ͱ࠷༗໊ͳ Ruby ͷՊֶٕज़ܭࢉϥΠϒϥϦ܈ ൃىਓͨͪ࠷ۙશ͘։ൃ͓ͯ͠ΒͣɺGSOC ͷϓϩδΣΫτͰֶੜ͕
৭ʑ࡞͍ͬͯΔͷͷدͤूΊঢ়ଶʹͳ͍ͬͯΔ Ұ෦ͷجຊԋࢉ͕͍όά͕͋Δ 5 / 16
Ruby Numo Numo::NArray Λத৺ͱ͢ΔՊֶٕज़ܭࢉ༻ gem ܈ ݩ NArray ͷ࡞ऀͰ͋Δాதণ͞Μ͕ൃىਓͰ͋Γ։ൃͷத৺ʹ͍Δ RubyKaigi
Ͱൃද͞Ε͍ͯͯɺຊͰͦͦ͜͜ΒΕ͍ͯΔͱࢥ͏ ւ֎Ͱ͋·ΓΒΕ͍ͯͳ͍ (?) 6 / 16
SciRuby ה Ruby Numo דדֹֿה σʔλϑϨʔϜϥΠϒϥϦ Daru ͕ NMatrix ʹରԠ͍ͯ͠Δ
[HELP] ୭͔ Numo::NArray ʹରԠ͍ͤͯͩ͘͞͞ Պֶٕज़ܭࢉ༻ͷجૅؔ܈ GSL ͷόΠϯσΟϯά͕ SciRuby ͱ Ruby Numo ͷͦΕͧΕʹରͯ͠ ଘࡏ͢Δ ՄࢹԽ Gnuplot Λ͏ϥΠϒϥϦ͕ SciRuby ͱ Ruby Numo ͷͦΕͧΕʹର ͯ͠ଘࡏ͢Δ rbplotly ͕྆ํʹରԠ͍ͯ͠Δ (ͣ) 7 / 16
pycall.rb Ruby ͔Β Python Λݺͼग़ͤΔ Ruby ͱಉ͡ϓϩηεͰ Python ΠϯλʔϓϦλΛॳظԽ͠ݺͼग़͢ ࣍ͷϦϦʔε͔Β
Python Λݺͼग़͢ࡍʹ GVL Λղ์͢ΔΑ͏ʹͳΔͷ Ͱɺpuma Ͱಈ͘ Rails ΞϓϦέʔγϣϯͰ͑Δʂ ͔͠͠ɺPython ଆͷ GIL ͷ੍ޚΛ·ͩͬͯͳ͍ͷͰɺRuby ଆͷෳͷ εϨου͔Β Python ͷػೳΛݺͼग़ͯ͠ͳΒͳ͍ ཉ͍͠ػೳͷఏҊΛϓϧϦΫΤετͷܗͰืू͍ͯ͠·͢ Ұॹʹ։ൃͯ͘͠ΕΔɺRuby ͱ Python ͷ྆ํʹৄ͍͠ਓืूͯ͠·͢ 8 / 16
mxnet.rb MXNet ͷ Ruby όΠϯσΟϯά 10݄ࠒ͔Βຊؾग़ͯ͠ RubyConf ·Ͱʹͤ͞Α͏ͱ͚ͨ͠ͲແཧͰ͠ ͨʂʂ 3݄ͷԭೄ
RubyKaigi 02 ·ͰʹͳΜͱ͔͢Δ Ruby ͱ MXNet ͷ྆ํʹৄ͍͠ਓͷڠྗΛืू͍ͯ͠·͢ 9 / 16
Red Data Tools project Apache Arrow Λத৺ͱͨ͠σʔλπʔϧΤίγεςϜͷ Ruby ൛ ਢ౻͞Μ্ཱ͕ͪ͛ͨ
ਢ౻͞Μ Apache Arrow ͷ PMC ʹͳͬͨ Red Chainer ͳͲɺApache Arrow ͱؔͳ͍ੜϓϩμΫτͷ։ ൃ࢝·͍ͬͯΔ ͓ͦΒؔ͘ऀશһ͕ຊਓͰ͋Δ ຖ݄ʮOSS Gate ౦ژϛʔτΞοϓ for Red Data ToolsʯͰ։ൃ͕ਐΊΒΕ ͍ͯΔ 12݄ͷΠϕϯτͷҊΛޙͰ͠·͢ 10 / 16
GPGPU פך㼎䘔朐屣 tensorflow.rb Ͱ GPU ͕͑Δ (ͣ) pycall.rb Ͱ Python
ͷ GPGPU ରԠϥΠϒϥϦΛ͑Δ ࠓ 2017 ͷ GSOC Ͱ ArrayFire ͷόΠϯσΟϯά͕࡞ΒΕͨ ࠓ 2017 ͷ Ruby Grant Ͱ GPGPU ରԠϓϩδΣΫτ͕2݅࠾ 1. RbCUDA: ArrayFire ͷόΠϯσΟϯάΛ࡞ͬͨਓͷϓϩδΣΫτͰɺ CUDA ϥϯλΠϜϥΠϒϥϦͷ Ruby όΠϯσΟϯά 2. cumo: sonots ͞ΜͷϓϩδΣΫτͰɺcupy ͷ Ruby ൛Λ Numo::NArray ʹରͯ͠࡞Δ mxnet.rb ͕͑ΔΑ͏ʹͳΔͱɺ͜Ε GPGPU ʹରԠ͢Δ 11 / 16
Ruby דر٦ة؟؎ؒٝأׅ橆㞮知⽃ ח鑐ׅ倯岀 ࣮ Docker image Λ࡞ͬͯ͋Δɻ docker run --rm
-it -p 8888:8888 rubydata/notebooks ͜ΕͰɺJupyter notebbok ্ཱ͕͕ͪΔͷͰɺIRuby kernel ͷϊʔτϒοΫ Λ࡞ΕࢼͤΔɻ 12 / 16
RubyData organization SciRubyɺRuby NumoɺRed Data ToolsɺͳͲෳͷϓϩδΣΫτʹਓ͕ ࢄ͍ͯ͠Δݱঢ়ɺ७ਮͳར༻ऀ͕ށ͍͍͢ ϓϩδΣΫτʹؔͳ͘ɺRuby ͱσʔλπʔϧΛΈ߹Θ͓ͤͯ͏ͱ͠ ͍ͯΔਓ͕ू·ͬͯใަ͕Ͱ͖Δ͕ඞཁͩΖ͏
ͱ͍͏Θ͚Ͱɺࢲ͕࡞Γ࢝Ί·ͨ͠ http://ruby-data.org/ ·ͩϥϯσΟϯάϖʔδ͔͠ͳ͍ʂʂ 13 / 16
RubyData needs helps!! ҎԼͷΑ͏ͳਓΛืूͯ͠·͢ ίϛϡχςΟӡӦ (ਓͷू·ΓΛ੍ޚ͢Δ͜ͱ) ͕ಘҙͳਓ (ࢲ mrkn ͕
Ұ൪ෆಘҙͳ͜ͱ) AWS ʹৄ͍͠ਓ (discourse ͷ্ཱͪ͛ͱӡӦΛखͬͯཉ͍͠) ࣗવݴޠͰͷܧଓతͳใൃ৴͕ಘҙͳਓ (ʮRuby ͰσʔλαΠΤϯ εʯతͳใൃ৴Λεέʔϧ͍ͤͨ͞) ӳޠ͕ಘҙͳਓ (ͨͪͷมͳӳޠΛͯ͠ཉ͍͠) docker-stacks ͷҡ࣋ͱൃలΛੵۃతʹͬͯ͘ΕΔਓ 14 / 16
זָׁ➙ּׅדֹֿה 1. ͬͯόάใࠂ 2. ຊʹดͯ͡ΔϓϩμΫτΛւ֎͚ʹӳޠͰհ͢Δ 3. ར༻ऀ͕૿͑ΔΑ͏ͳϒϩάهࣄΛॻ͘ (ͬͯΈͨܥ) 4. ։ൃऀ͕૿͑ΔΑ͏ͳϒϩάهࣄΛॻ͘
(։ൃڥΛ࡞ΔɺίʔυΛಡΜͰ Έͨܥ) 5. طଘͷϥΠϒϥϦʹϓϧϦΫΛૹͬͯ։ൃʹࢀՃ͢Δ 6. RubyData ͷӡӦνʔϜʹೖͬͯಘҙͳ͜ͱΛΔ 7. OSS Gate for Red Data Tools ʹࢀՃͯ͠։ൃ͢Δ 15 / 16
OSS Gate for Red Data Tools in Speee 2017.12.19 Red
Data Tools ϓϩδΣΫτͷ։ൃऀ͕ू·Γ·͢ɻ ॴ: ຊ4-1-4 ࠇ࡚Ϗϧ 5F Speee Inc. ηϛφʔϧʔϜ ࣌ؒ: 201712݄19 19:00 ։ 19:30 ։࢝ https://speee.connpass.com/event/72926/ 16 / 16