Ruby をデータサイエンス分野に対応させる活動の現況

Ruby をデータサイエンス分野に対応させる活動の現況

沖縄 RubyKaigi 02 で使用したスライド

7cca11c5257fda526eeb4b1ada28f904?s=128

Kenta Murata

March 10, 2018
Tweet

Transcript

  1. 3VCZ׾ر٦ة؟؎ؒٝأⴓꅿ ח㼎䘔ׇׁ׷崞⹛ך植屣 ,FOUB.VSBUB 4QFFF *OD  0LJOBXB3VCZ,BJHJ

  2. "CPVUNF ˖ ,FOUB.VSBUB !NSLO  ˖ 'VMMUJNF$3VCZDPNNJUUFSBU4QFFF *OD ˖ CJHEFDJNBM

    FOVNFSBCMFTUBUJTUJDT QZDBMMSC  NYOFUSC FUD ˖ 3VCZ $$ 1ZUIPO +VMJB FUD ˖ /FP7JNNFS
  3. None
  4. ➙傈ח荚׷תדךة؎يٓ؎ٝ ˖ 䎃䖓⼱։䎃⵸⼱ ˖ 3VCZד،فٔ؛٦ءّٝ׾⡲׏ג׷ךחر٦ة鍑匿כ1ZUIPO׾⢪׻ׂ׷׾䖤זְ ˖ 3VCZדر٦ة؟؎ؒٝأָדֹזְ植朐׾㢌ִ״ֲ ˖ 傀㶷ךخ٦ٕ׾何㊣׃׋׶ծ倜׃ְخ٦ٕ׾⡲׏׋׶׃ג׫׋
 ֿ̤׶ׯ湱䔲儗꟦ַַָ׏ג׃תֲ׊

    ˖ 䎃ך䖓⼱։䎃 ˖ 䊬➂ך肔ח⛦׷׃ַזְ ˖ 䊬➂1ZUIPOך项欵׾3VCZַ׵崞欽׃״ֲ̔QZDBMMSC ˖ 䎃 ˖ 帾㾴㷕统ד׮䊬➂ך肔ח⛦׏ַ׏ג遤ֲֿ̔NYOFUSC
  5. ➙傈ֶ鑧׃ׅ׷ֿה ˖ 3VCZךر٦ة؟؎ؒٝأ㼎䘔ך植㖈 ˖ QZDBMMSCך稱➜ ˖ NYOFUSCך稱➜ ˖ ➙䖓חאְג ˖

    תה׭
  6. 3VCZךر٦ة؟؎ؒٝأ㼎䘔ך植㖈

  7. 㣐猰㷕䪮遭禸فٗآؙؑز 4DJ3VCZ 3VCZ/VNP #JP3VCZ 3FE%BUB5PPMT

  8. 䨽閕ر٦ة؟؎ؒٝأחꟼ⤘ׅ׷ فٗآؙؑزכ如ךא 4DJ3VCZ 3VCZ/VNP 3FE%BUB5PPMT

  9. 4DJ3VCZ IUUQTDJSVCZDPN ˖ 傊/"SSBZח䕦갟ׁ׸ג/.BUSJY׾⡲׏׋+PIO8PPET孑ָ䎃 갦ח甧׍♳־׋فٗآؙؑز ˖ 䎃תדכر٦ة؟؎ؒٝأぢֽךHFN׾Ꟛ涪ׅ׷קר㈓♧ךف ٗآؙؑز׌׏׋ ˖ 嫣䎃(PPHMF4VNNFSPG$PEF׾װ׏גְ׷

    ˖ (4-ծ知⽃ז窟鎘鍑匿ծر٦ةؿٖ٦يזוח㼎䘔 ˖ ر٦ة〳鋔⻉כ֮׷ֽו䓲ְ ˖ HOVQMPU EBSVWJFX EBSVQMPUMZ
  10. 3VCZ/VNP IUUQTHJUIVCDPNSVCZOVNP ˖ 傊/"SSBZ׾涪㾜ׇׁ׋/VNP/"SSBZ׾⚥䗰חծ猰㷕 䪮遭鎘皾ぢֽךHFN׾Ꟛ涪ׅ׷ ˖ 䎃剢ח/"SSBZ⡲罏ך!NBTB 歊⚥ׁ׿ ָ /VNP/"SSBZꟼ鸬ךHFN׾תה׭♳־׷فٗآؙؑز

    ה׃ג甧׍♳־׋ ˖ /"SSBZכ/.BUSJY״׶כ㹋欽涸 ˖ 〳鋔⻉כHOVQMPUך׫
  11. 3FE%BUB5PPMT IUUQTSFEEBUBUPPMTHJUIVCJP ˖ 䎃חչ3VCZך׋׭ךر٦ةⳢ椚خ٦ٕ׾⡲׷պ׋ ׭ח!LPV 갭谏ׁ׿ ָ甧׍♳־׋ ˖ չ3VCZך׋׭ךر٦ةⳢ椚خ٦ٕ׾⡲׷պךכ姻湫הג ׮㣐㢌דꞿְ劍꟦ַַָ׷ך׌ָծ׉׸׾װ׶鹴־׷׋

    ׭חꅾ銲ז葺ְهٔء٦׾䲓־גְ׷ ˖ 鑫稢כ갭谏ׁ׿ָ㊯׏גְ׋ךד満殛
  12. 㣐فٗآؙؑز⟃㢩ך׮ך ˖ MJCMJOFBS MJCTWN TIPHVOךغ؎ٝر؍ؚٝ ˖ ⟃♴ծ猘ך➬✲ ˖ FOVNFSBCMFTUBUJTUJDT ˖

    QZDBMMSCה⟗꟦׋׍ 䖓鶢  ˖ NYOFUSC 䖓鶢  ˖ YHCPPTUSC 〴弨٥➱〴  ˖ SVCZKVMJB ְאַ荈䢧׃׋ְ
  13. 䎃ך⹛ֹ ˖ 3FE%BUB5PPMTفٗآؙؑزָ涪駈 ˖ 3FE"SSPXךꟚ涪ָꟚ㨣׃׋ ˖ 3FE$IBJOFSךꟚ涪ָꟚ㨣׃׋ ˖ QZDBMMSCָٔٔ٦أ ˖

    OVNQZ NBUQMPUMJC QBOEBTזוך⚺銲ر٦ةخ٦ָٕקרⰋג3VCZ ַ׵⢪ִ׷״ֲחז׏׋ ˖ 3VCZ(SBOUזוד5FOTPSPXSCה3VCFYָ⡲׵׸׷ ˖ 3VCZ%BUB8PSLTIPQָ㔐Ꟛ⪵ׁ׸׷
  14. 䎃ך⹛ֹ ˖ 3FE%BUB5PPMTفٗآؙؑزכ➂侧ָ㟓ִג갫锃ח竲ְגְ׷ ˖ 3VCZ(SBOUד$VNPה3C$6%"ָ⡲׵׸גְגծ(1(16פ ך㼎䘔ָ鹌׿דְ׷ ˖ NYOFUSCָ⹛ְ׋ 䖓鶢 

    ˖ 3FE7JTVBMJ[FSָأة٦ز 䖓鶢  ˖ 3VCZ%BUBEJTDPVSTF 䖓鶢  ˖ 3VCZ%BUB8PSLTIPQָ〴弨ה➱〴דꟚ⪵✮㹀
  15. 3VCZכر٦ة〳鋔⻉ָ䓲ְ ˖ 傀㶷ך〳鋔⻉ٓ؎ـٓٔכر٦ةا٦أ /.BUSJY %BSVזו ח 䓼ֻ穠さ׃גְ׷ ˖ 殯ז׷〳鋔⻉ٓ؎ـָٓٔת׏׋ֻ殯ז׷؎ٝة٦ؿؑ؎أ׾ 䭯׏גְ׷ךדծ⢪欽ׅ׷ٓ؎ـٓٔ׾㢌刿ׅ׷׋׭ח〳鋔⻉欽

    ؝٦سך㣐何ꬠָ䗳銲חז׷ ˖ 醱さثٍ٦زכ⽃秪ז׮ךִׁ⡲׸זְ
  16. 3FE7JTVBMJ[FS IUUQTHJUIVCDPNSFEEBUBUPPMTSFEWJTVBMJ[FS

  17. 3FE7JTVBMJ[FSך植朐 ˖ ׁ׏ֹך㔳׌ָֽ㶷㖈ׅ׷ ˖ Ꟛ涪罏׾⹫꧊׃גְתׅ ˖ ♧筰חװ׶ת׃׳ֲ ˖ IUUQTSFEEBUBUPPMTHJUIVCJP

  18. 如㔐ך044(BUF5PLZP.FFUVQ GPS3FE%BUB5PPMTBU4QFFF ˖ 䎃剢傈։ ˖ IUUQTTQFFFDPOOQBTTDPNFWFOU

  19. QZDBMMSC

  20. QZDBMMSCהכ ˖ 3VCZفٗإأⰻח1ZUIPO؎ٝة٦فٔة׾䭯׍ծ 1ZUIPOך$"1*׾⢪׏ג3VCZַ׵1ZUIPOךخ٦ٕ׾ ⵃ欽ׅ׷➬穈׫׾䲿⣘ׅ׷ فٗإأ QZDBMMSC 3VCZ ؎ٝة٦فٔة 1ZUIPO

    ؎ٝة٦فٔة
  21. QZDBMMSCך暴䗙 ˖ 3VCZה1ZUIPOָずׄفٗإأⰻחず㽿׃גְ׷ךד✼ ְחؔـآؙؑز׾⿫撑׃ִ֮׷ ˖ 1ZUIPO⩎ָ⹛ֻהֹח3VCZך(7-׾鍑佝ׅ׷ ˖ 1ZUIPOה3VCZך꟦דךر٦ةך؝ؾ٦׾噰⸂鼘ֽ׷ ˖ 1ZUIPOַ׵3VCZ׾؝٦ٕغحؙדֹ׷

  22. 3VCZַ׵1ZUIPO׾
 ㄎן⳿ׅ➬穈׫ 3VCZךؼ٦ف 1ZUIPOךؼ٦ف 1Z0CKFDU8SBQQFS 1ZUIPOؔـآؙؑز ه؎ٝة׾⿫撑 TFMGGPP  ㄎן⳿׃

  23. 1ZUIPOַ׵3VCZ׾
 ؝٦ٕغحؙ 3VCZךؼ٦ف 1ZUIPOךؼ٦ف 1SPDؔـآؙؑز 3VCZ0CKFDU ه؎ٝة׾⿫撑 TFMG@@DBMM@@ DBMM ㄎן⳿׃

  24. 1ZUIPOַ׵⿫撑ׁ׸׋
 3VCZؔـآؙؑزך($ؖ٦س 3VCZךؼ٦ف 1ZUIPOךؼ٦ف ⟣䠐ךؔـآؙؑز 3VCZ0CKFDU ه؎ٝة׾⿫撑 8FBL3FG 䓲⿫撑 ($ؖ٦س

    ⿫撑׾⥂䭯 䓲⿫撑⯓ך娤❕㜠デ
  25. QZDBMMSCדדֹ׷ֿה ˖ 3VCZַ׵דֹ׷ֿה ˖ 1ZUIPO؝٦سך鐰⣣ ˖ 1ZUIPOךٌآُ٦ٕ׾铣׫鴥׬ ˖ 1ZUIPOךؔـآؙؑزך乼⡲ ˖

    1ZUIPOךꟼ侧ㄎן⳿׃ ˖ 㘗㢌䳔邌ח״׷1ZUIPOך㘗ה3VCZךؙٓأך㼎䘔➰ֽ ˖ את׶ծ׌ְ׋ְךֿהכדֹג׃תֲ
  26. QZDBMMSCך鐰ⴻ

  27. QZDBMMSCך⟗꟦׋׍ ˖ 1ZUIPOךخ٦ٕ׾3VCZַ׵⢪ְװֻׅׅ׷׋׭ך➬穈׫ 㘗㢌䳔邌ך㹀纏זו ׾㼪 Ⰵׅ׷׋׭ךHFN׋׍ ˖ OVNQZSC ˖ /"SSBZװ/.BUSJYהך鸬䵿堣腉׾Ⰵ׸׋ְָ劢滠䩛

    ˖ NBUQMPUMJCSC ˖ *3VCZOPUFCPPLהך鸬䵿堣腉׮䲿⣘ ˖ QBOEBTSC ˖ "DUJWF3FDPSEהך鸬䵿堣腉׮䲿⣘ ˖ ♳鎸⟃㢩ך׮ךծ⢽ִלTDJLJUMFBSOװLFSBTז׿ַ׮⡲׶׋ְ 铩ַ⡲׏ג
  28. QZDBMMSCדת׌דֹזְֿה ˖ 3VCZ⩎ד1ZUIPOךؙٓأך؟ـؙٓأ׾⡲׏׋儗חծ1ZUIPO⩎ ח׮㼎䘔ׅ׷؟ـؙٓأ׾⡲׷ֿה ˖ ֿ׸ָדֹ׷ה$IBJOFS⟃ָ꣬⢪ִ׷״ֲחז׷ ˖ 㘗㢌䳔邌ך嗚稊דؙٓأꥡ㾴׾罋䣁ׅ׷ֿה ˖ 1ZUIPO⩎ד⡲׏׋أٖحسַ׵3VCZؔـآؙؑز׾乼⡲דֹזְ

    ˖ 3VCZח堣腉׾鷄⸇׃ג㼎䘔ׅ׷✮㹀
  29. QZDBMMSCָ䕵ח甧א㜥꬗ ˖ 3VCZד剅ַ׸׋،فٔ؛٦ءַّٝ׵1ZUIPOד剅ַ׸ ׋ر٦ةⳢ椚ءأذي غحثⳢ椚ծ㷕统幥׫堣唒㷕统ٌ رٕծ〳鋔⻉Ⳣ椚ծFUD ׾ㄎן⳿ׅ ˖ كٝثو٦ؙ穠卓ךⳢ椚װ،فٔ؛٦ءّٝךؚٗךⴓ 匿זוծ㹋⹡ד׍׳׏ה׃׋ر٦ةⳢ椚ָ䗳銲ז⡲噟׾

    *3VCZOPUFCPPL♳ד㹋倵׃ծر٦ةⳢ椚׾QBOEBTדծ 〳鋔⻉׾NBUQMPUMJCד遤ֲ
  30. ،فٔ؛٦ءّٝה
 ر٦ةⳢ椚ءأذيך籬ֺ倯 ،فٔ؛٦ءّٝ ر٦ةⳢ椚ءأذي ً؎ٝ%# B ず♧%#׾鋅ׇ׷ػة٦ٝ ،فٔ؛٦ءّٝ ر٦ةⳢ椚ءأذي ً؎ٝ%#

    C ر٦ةⳢ椚㼔欽%#ػة٦ٝ ر٦ةⳢ椚
 㼔欽%# ⡲䧭 ،فٔ؛٦ءّٝ ر٦ةⳢ椚ءأذي ً؎ٝ%# D 湫⴨⻉ر٦ة׾ⵃ欽ׅ׷ػة٦ٝ Ⱏ剣걄㚖 湫⴨⻉ ،فٔ؛٦ءّٝ ر٦ةⳢ椚ءأذي ً؎ٝ%# E 鎉铂꟦ـٔحآ׾⢪ֲػة٦ٝ ر٦ةⳢ椚
 㼔欽%# ⡲䧭 ـٔحآ QZDBMMSCד
 〳腉חז׏׋
  31. QZDBMMSCָぢְגְזְ׮ך  3VCZה1ZUIPO׾걼籕ח遤ֹ勻ׅ׷״ֲזⳢ椚 ˖ ـٔحآ׾鸐麓ׅ׷ؔ٦غ٦قحسָ֮׷׋׭  䱱稊涸ر٦ة鍑匿 ˖ 䱱稊涸ر٦ة鍑匿כծر٦ةך䚍颵׾㷕ןծر٦ةח㼎׃ג黝ⴖזر٦ةⳢ椚 ךװ׶倯׾涪鋅ׅ׷׋׭ך㹋꿀麓玎ד֮׷

    ˖ 䱱稊涸ر٦ة鍑匿ך媮ꥡדכծر٦ة؟؎ؒٝأך垥彊鎉铂ד֮׷1ZUIPO׾ ⢪ֲ倯ָ⡦ַה⤑ⵃ ˖ QBOEBT TDJQZ OVNQZ NBUQMPUMJC TDJLJUMFBSO׾ًؗ׷ה孡䭯׍ְְ
  32. 剑䖓ח儗꟦ָ֮׏׋׵ %FNP׾װ׷׊ IUUQTHJUIVCDPN3VCZ%BUBSVCZLBJHJCMPCNBTUFSQZDBMM@MFDUVSFJQZOC 8&# %#13&44WPM

  33. 3VCZה帾㾴㷕统

  34. 3VCZד帾㾴㷕统כדֹ׷ַ ˖ QZDBMMSC׾⢪ִל,FSBTծ1Z5PSDIծ$IBJOFSYזוָ⢪ִ׷
 ̤1ZUIPOד㷕统׃׋ٌرٕ׾3VCZַ׵ㄎן⳿׃ג䱿锷ׅ׷欽 鷿ה׃גז׵剣欽 ˖ .JDSPTPGU$PHOJUJWF5PPMLJU $/5, ך48*(ח״׷غ؎ٝر؍ ָؚ֮׷


    ̤䎃剢דغ؎ٝر؍ؚٝךꟚ涪ָ姺ת׏גְ׷ ˖ 3FE$IBJOFSָ㸣䧭ׅ׸ל3VCZד׮
 ̤嚂׃ֻ孡ꞿחꟚ涪׃גְ׷׮ך׌ַ׵ծְא$IBJOFSח鷄ְ אֽ׷ךַ劢㹀ד֮׷
  35. 3VCZד׮帾㾴صُ٦ٕٓطحزٙ٦ ؙ׾㹀纏׃ג㷕统ׇׁ׋ְկ肔ח⛦ׇ גֻ׸׷䊬➂ׁ׿כְתׇ׿ַ

  36. ㄎ׿׌

  37. .9/FU ˖ 9HCPPTU׾⡲׏׋%.-$ؚٕ٦فח״׏גꟚ涪ׁ׸גְ׷帾㾴㷕统׮דֹ׷ⴓ侔 鎘皾ؿٖ٦يٙ٦ؙ ˖ 䎃חꟚ涪ָ㨣ת׶ծ䎃ח"QBDIF*ODVCBUPSךفٗآؙؑزחז׏׋ ˖ 醱侧(16׌ֽדזֻ醱侧ظ٦سדך⚛⴨鎘皾ח׮㼎䘔׃גְ׷ ˖ //7.

    57.זוך鎘皾ؚٓؿ鐰⣣ך㛇湍䪮遭ךぢ♳ח״׶ծ(16剑黝⻉׌ֽד זֻ$16剑黝⻉זוח׮㼎䘔 ˖ ⢽鎘皾ؚٓؿ̔--7.*3XJUI.,-̔OBUJWFDPEF ˖ "NB[PO׾㨣׭הׅ׷㢳ֻך⟰噟ח佄䴂ׁ׸גְ׷
  38. //7.57. IUUQUWNMBOHPSHOOWNDPNQJMFSBOOPVODFNFOUIUNM

  39. NYOFUSC ˖ .9/FUך3VCZغ؎ٝر؍ؚٝ ˖ 1ZUIPO晛ךؙٗ٦ٝ׾湡䭷׃גꟚ涪⚥ ˖ 植㖈ךꟚ涪朐屣 ˖ أؙٓحثד㢳㾴ػ٦إفزٗٝ׾㹋鄲׃ג(16♳ד⹛ַׇ׷ ˖

    ֶ׉׵ֻ3//זו׮㹋鄲דֹ׷ 劢然钠  ˖ (MVPOזוך⤑ⵃז➬穈׫כת׌獳嗂׃גְזְ
  40. %FNP IUUQTHJUIVCDPNNSLONYOFUSCUSFFNBTUFSOPUFCPPLT

  41. $16⢪欽         

    
  42. (16⢪欽         

    
  43. ➙䖓חאְג

  44. 侧䎃䖓ך鋅鸐׃ ˖ 3VCZכ3VCZדׁ׵ח鸞ֻז׷ ˖ 3VCZכ+*5׾剣⸬⻉׃זֻג׮傀ח״׶鸞ְ ˖ 3FE%BUB5PPMTך崞⹛ח״׶3VCZך׫ד׮֮׷玎䏝ر٦ة؟ ؎ؒٝأך➬✲ָדֹ׷״ֲחז׏ג׷כ׆ ˖ 1ZUIPOכֶ׉׵ֻ植㖈ず圫ח剑׮ًآٍ٦׌׃ծ1ZUIPOד⡲

    ׵׸׋鼋欵׮㢳侧㶷㖈ׅ׷כ׆ ˖ +VMJBכ➙״׶׮ַז׶ًآٍ٦חז׏גְגծ猰㷕䪮遭鎘皾ⴓ ꅿדכ銽埄׾《׏גְ׷כ׆
  45. ͜͏͍͏ੈք؍ͷ࣮ݱΛ໨ࢦ͍ͨ͠ pycall.rb PyCall.jl / pyjulia julia.rb ͜ Ε ͔ Β

    ࡞ Δ ↓ Arrow
  46. 3VCZ%BUB ˖ IUUQSVCZEBUBPSH ˖ فٗآؙؑز埆倖דر٦ة؟؎ؒٝأⴓꅿד3VCZ׾⢪ֲ➂׋׍ָ꧊ת׷؝ىُصذ؍ח ז׷ֿה׾湡䭷׃גְ׷ ˖ ぐ㖑דٙ٦ؙءّحف׾Ꟛ⪵ ˖ ➙䎃כ〴弨ה➱〴דךꟚ⪵ָ寸㹀幥׫

    ˖ ぐ㖑ד⹧䩛חٙ٦ؙءّحفָꟚ⪵ׁ׸׷崧׸׾⡲׶׋ְ ˖ 3VCZ%BUBךEJTDPVSTFָדֹ׋ ˖ IUUQTEJTDPVSTFSVCZEBUBPSH ˖ 3VCZה044ךر٦ةخ٦ٕ׾穈׫さ׻ׇג⢪ֲ➂׋׍הꟚ涪罏ך陽锷ך㜥ח׃׋ְ
  47. תה׭ ˖ 3VCZ׾ر٦ة؟؎ؒٝأⴓꅿח㼎䘔ׇׁ׷崞⹛ך植朐׾嚊铡׃׋ ˖ QZDBMMSCך黝ⴖז⢪ְ倯ծ黝ⴖדזְ⢪ְ倯ծQZDBMMSCדת׌ דֹגְזְֿה׾铡僇׃׋ ˖ NYOFUSCך植㖈ךꟚ涪朐屣׾铡僇׃ծرٌ׾㹋倵׃׋ ˖ 3VCZךر٦ة؟؎ؒٝأⴓꅿחֶֽ׷➙䖓ך鋅鸐׃׾鶢ץ׋

    ˖ 3VCZ%BUBEJTDPVSTF׾稱➜׃׋
  48. None
  49. 53*$, '*/"- IUUQTHPPHMOWE'DR