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
2k
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
270
HolidayJp.jl を作りました
mrkn
0
300
Calling Julia functions from Streamlit applications
mrkn
1
520
Red Data Tools で切り開く Ruby の未来
mrkn
3
1.2k
Method-based JIT compilation by transpiling to Julia
mrkn
0
8k
Apache Arrow C++ Datasets
mrkn
4
1.7k
Reducing ActiveRecord memory consumption using Apache Arrow
mrkn
0
1.8k
RubyData and Rails
mrkn
0
3.3k
Tensor and Arrow
mrkn
0
1k
Other Decks in Technology
See All in Technology
技術の総合格闘技!?AIインフラの現在と未来。
ebiken
PRO
0
250
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
520
Claude Code 10連ガチャ
uhyo
3
650
[JDDStudy #10] 社内Agent勉強会の取り組み紹介
yp_genzitsu
1
130
【AWS reInvent 2025 関西組 事前勉強会】re:Inventの“感動と興奮”を思い出してモチベ爆上げしたいです
ttelltte
0
130
プログラミング言語を書く前に日本語を書く── AI 時代に求められる「言葉で考える」力/登壇資料(井田 献一朗)
hacobu
PRO
0
150
AIでテストプロセスを自動化しよう251113.pdf
sakatakazunori
0
100
【Android】テキスト選択色の問題修正で心がけたこと
tonionagauzzi
0
130
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
330
フライトコントローラPX4の中身(制御器)を覗いてみた
santana_hammer
1
140
ググるより、AIに聞こう - Don’t Google it, ask AI
oikon48
0
820
AIと共に開発する時代の組織、プロセス設計 freeeでの実践から見えてきたこと
freee
3
580
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
54
7.9k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
970
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Six Lessons from altMBA
skipperchong
29
4.1k
What's in a price? How to price your products and services
michaelherold
246
12k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
GraphQLとの向き合い方2022年版
quramy
49
14k
Designing Experiences People Love
moore
142
24k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
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