1. Juliaãšã¯äœãïŒ
Juliaã¯ãé«åºŠãªèšç®ãåŸæãšããåçããã°ã©ãã³ã°èšèªã§ãããã®èšç®é床ã¯ãéçåä»ãèšèªãšæ¯èŒããŠãå£ãããæ©æ¢°åŠç¿ãããŒã¿åæãªã©ã®åéã§æ³šç®ãéããŠããŸãã
ãŸããJuliaã¯PythonãCèšèªãšæ¯ã¹ãŠãã·ã³ãã«ãªæ§æã§ãããªããããã©ãŒãã³ã¹ãé«ããšããç¹åŸŽãæã£ãŠããŸããããã«ãããåããŠããã°ã©ãã³ã°ãåŠã¶äººã ã«ããããçŽæçã«ã¢ãããŒãã§ããèšèªãšãªã£ãŠããŸãã
ããããªããç§åŠæè¡èšç®ãããŒã¿åæãæ©æ¢°åŠç¿ã®åéã§åããŠãããªããJuliaã®æ©èœãç解ããèªèº«ã®æè¡ã¹ã¿ãã¯ã«å ããããšãæ€èšãã䟡å€ããããŸãã
1.1 Juliaã®æŽå²ãšç¹åŸŽ
Juliaã¯2012幎ã«MITã«ãã£ãŠéçºãããŸããã ããã°ã©ãã³ã°åéã§çµéšè±å¯ãªJeff Bezansonæ°ãStefan Karpinskiæ°ãAlan Edelmanæ°ãViral B. Shahæ°ã«ããå ±åéçºã§ã2018幎ã«å®å®ç ver. 1.0ãå ¬éãããŸããã
Juliaã®ç¹åŸŽã¯ãåçãªèšèªãªãããCèšèªã«å¹æµããé«éæ§ãåçŽæå¿«ãªå€éãã£ã¹ãããïŒãã«ãã¡ãœããïŒã®å°å ¥ãéçåä»ãã®æ¡çšãå¯èœãPythonãCèšèªã®é¢æ°ã®åŒã³åºããå¯èœãšããé«ãæè»æ§ãšæ¡åŒµæ§ãæã£ãŠããŸãã
Juliaã¯æ°å€è§£æãæ©æ¢°åŠç¿ãªã©ã®è€éãªç§åŠæè¡èšç®äœæ¥ã®å€§å¹ ãªå¹çåãå¯èœã«ããŸãããŸããéçºè ã³ãã¥ããã£ã掻çºã§ããããã®é²æ©ãšæé·ã¯ç¶ããŠããŸãã
1.2 Juliaã泚ç®ãããçç±
Juliaã¯ç¹ã«ç§åŠæè¡èšç®ãæ©æ¢°åŠç¿ã«ãããæ§èœãšæè»æ§ãã广ã泚ç®ãããŠããŸããPythonçã®äžè¬çãªããŒã¿è§£æèšèªãšæ¯èŒããŠåŠçé床ãå€§å¹ ã«éãããŸãPythonãCèšèªãšé£æºããŠå©çšããããšãå¯èœã§ãã
Juliaã¯ããã®é«ãèšç®èœåãšã·ã³ãã«ãªæ§æã«ãããããŒã¿ãµã€ãšã³ã¹ã®åéã§æ¥éã«äººæ°ãéããŠããŸãããŸããJuliaã®ã³ãã¥ããã£ã掻çºã«æé·ãããã®éçºãšæ®åã«å€å€§ãªåŽåã泚ãã§ããŸãã
ãã®çµæãšããŠãJuliaã¯ããŒã¿ãµã€ãšã³ãã£ã¹ããç 究è ã«ãšã£ãŠæ°ããªéžæè¢ãšãªãããã®å¿ èŠæ§ãšäŸ¡å€ãé«ããŠããŸãã
1.3 Juliaã®äœ¿çšç°å¢ãšã€ã³ã¹ããŒã«æ¹æ³
Juliaã¯è€æ°ã®ãã©ãããã©ãŒã ã§åäœããŸããWindowsãmacOSãLinuxã«å¯Ÿå¿ããŠããããã®ã€ã³ã¹ããŒã«ãéåžžã«ã·ã³ãã«ã§ãã
å ¬åŒãŠã§ããµã€ãããææ°ã®å®å®çãããŠã³ããŒãããã€ã³ã¹ããŒã«æé ã«åŸãã ãã§OKã§ãããŸããJupyter Notebookãªã©ã®ã€ã³ã¿ã©ã¯ãã£ããªã³ãŒãã£ã³ã°ç°å¢ããµããŒãããŠããŸãã
ç¶ããŠJuliaã®äœ¿çšãéå§ããã«åœãã£ãŠãå¿ èŠãªã©ã€ãã©ãªãããã±ãŒãžã®å°å ¥ãç°¡åã§ããããããã»ããã¢ããã®ç°¡äŸ¿ãããJuliaãéçºè ããæãããçç±ã®äžã€ã§ãã
1.4 Juliaèšèªã®åºæ¬çãªæ§æãšããŒã¿å
Juliaã®åºæ¬çãªæ§æã¯éåžžã«ã·ã³ãã«ã§ãä»ã®ããã°ã©ãã³ã°èšèªãšå ±éã®èŠçŽ ãå€ãã§ããå€æ°ã®ä»£å ¥ãã«ãŒããæ¡ä»¶åå²ãªã©ãäžè¬çãªããã°ã©ãã³ã°ã®æ§é ããµããŒãããŠããŸãã
Juliaã¯å€æ§ãªããŒã¿åãæã£ãŠããŠãæŽæ°ãå®æ°ãè€çŽ æ°ãæååããã¯ãã«ãè¡åãªã©ãèªç¶ã«æ±ãããšãã§ããŸãããããã®ããŒã¿åã¯ç§åŠèšç®ãããŒã¿åæã«ãããããŸããŸãªèª²é¡ã«å¯Ÿå¿ããŠããŸãã
ãŸããJuliaã¯ãŠãŒã¶ãŒå®çŸ©åããµããŒãããæœè±¡ããŒã¿åãšå€çžåãã·ãŒã ã¬ã¹ã«çµã¿èŸŒãããšãã§ããŸãããã®ãããJuliaã¯æ©èœé¢ã§éåžžã«è±ãã§ãããããªãšãŒã·ã§ã³è±ããªããã°ã©ãã³ã°ã¿ã¹ã¯ã«å¯Ÿå¿ããŸãã
2. Juliaã®æ©èœè©³çŽ°
ããã°ã©ãã³ã°èšèªJuliaã¯ããã®é«éãªèšç®èœåãå€éšã©ã€ãã©ãªãšã®è¯å¥œãªçµ±åãéçåä»ããšåçåä»ãã®äž¡ç«ããããŠãã«ãã¹ã¬ãããšäžŠåèšç®ã®å®¹æããšãã£ãç¹æ§ã«ãããèšç®ç§åŠãããŒã¿åæãªã©ã®ãã£ãŒã«ãã§å€å€§ãªå¯èœæ§ãç§ããŠããŸãã
2.1 é«éãªèšç®èœå: Juliaã®ããã©ãŒãã³ã¹
Juliaã¯é«éãªèšç®èœåãæã€ããšã§ç¥ãããŠããŸãããã®ããã©ãŒãã³ã¹ã¯ãããã€ãã®ãã³ãããŒã¯ã§ãPythonãªã©ä»ã®äžéšã®èšèªã倧ããäžåã£ãŠããããšã蚌æãããŠããŸãããã®ããã倧éã®ããŒã¿ãåŠçããããŒã¿åæãæ©æ¢°åŠç¿ã®åéã§ã¯éåžžã«æå©ã§ãã
ãã®é«éæ§ã¯Juliaã®æ倧ã®è²©å£²ç¹ã®äžã€ã§ããããã®ãã¶ã€ã³ã®äžæ žãæããŠããŸãããã®ãããJuliaã®çç£æ§ãšããã©ãŒãã³ã¹ã¯äºãã«å¿ããŠããã®ã§ãã
ããããé«éæ§ã ãã§ã¯ãªããJuliaã¯ä»ã«ãåªããç¹æ§ãæã£ãŠããŸãããã®äžã€ããå€éšã©ã€ãã©ãªãšã®é£æºã容æã«ããèœåã§ãã
2.2 å€éšã©ã€ãã©ãªãšã®çµ±å
Juliaã¯ãPythonãCèšèªãšãã£ãä»ã®èšèªã®ã©ã€ãã©ãªãšã®é£æºãç°¡åã§ãããšããç¹æ§ãæã£ãŠããŸããããã«ãããæ¢åã®ã©ã€ãã©ãªãå©çšããŠæ°ãã«åŠçãäœæããéã®éå£ã倧ããäžãããŸãã
ããã¯ãæ¢æã®ã©ã€ãã©ãªã掻çšããããšã§éçºæéãå€§å¹ ã«ç¯çŽããããšãå¯èœã§ããããŸã倧èŠæš¡ãªãããžã§ã¯ããã³ã³ãã¬ãã¯ã¹ãªã¿ã¹ã¯ã§ãæ±ãããããªããŸãã
ãã®ç¹æ§ã«ããJuliaã¯ãæ§ã ãªåéã§ã®æ°ããç 究ãéçºã«å€§ãã«è²¢ç®ããããšãå¯èœã§ãã
2.3 éçåä»ããšåçåä»ãã®äž¡ç«
Juliaã¯ãéçåä»ããšåçåä»ããäž¡ç«ããããšãã§ããŸããããã«ãããJuliaã¯åå®å šæ§ã確ä¿ãã€ã€ãæè»ãªã³ãŒãã£ã³ã°ã¹ã¿ã€ã«ãåããŠããŸãã
ãŸãããã®æ©èœã«ããããã°ã©ã ã®ãã°ãäºé²ããã³ãŒãã®è£å®ããªãã¡ã¯ã¿ãªã³ã°ã容æã«è¡ããŸãã
ãã®ããã«ããŠé«ãå®å šæ§ãšå©äŸ¿æ§ãäž¡ç«ããŠããJuliaã¯ãçŸä»£ã®ããã°ã©ãã³ã°èšèªãšããŠåªããç°å¢ãæäŸããŠããŸãã
2.4 ãã«ãã¹ã¬ãããšäžŠåèšç®ã®å®¹æã
Juliaã¯ãã«ãã¹ã¬ãããšäžŠåèšç®ãçšããããšãçŽæçã§ç°¡åã§ãããšããç¹æ§ãæã£ãŠããŸããããã¯ãé«åºŠãªæ°å€èšç®ã倧èŠæš¡ãªããŒã¿åŠçãè¡ãéã«éåžžã«äŸ¡å€ã®ããç¹æ§ãšãªã£ãŠããŸãã
ããã«ãããJuliaãçšããŠããã°ããŒã¿ã®åŠçãé«åºŠãªæ°å€ã·ãã¥ã¬ãŒã·ã§ã³ãè¡ãããšãã§ããŸãããããŠãããã®äœæ¥ã¯Juliaã«ãšã£ãŠèªç¶ãªäœæ¥ã§ãããããç¹å¥ãªç¥èãå¿ èŠãšããªãã®ã§ãã
ãããã®ç¹æ§ã«ãããJuliaã¯èšç®ç§åŠãããŒã¿åæãªã©ã®ãã£ãŒã«ãã§å€å€§ãªå¯èœæ§ãç§ããŠãããšèšããã§ãããã
3. Juliaã§ã§ããããš
Juliaã¯å€æ°ã®ç¹åŸŽãåãã匷åãªããã°ã©ãã³ã°èšèªã§ããããã®æ§æã®çŽææ§ãšé«éãªæ§èœã«ããæ§ã ãªã¿ã¹ã¯ã«æŽ»çšããããšãå¯èœã§ãã
Juliaã®äž»èŠãªçšéã®äžéšã以äžã«ç€ºããŸãã
ããããããã§çŽ¹ä»ããçšéã¯Juliaãæ±ããå šãŠãç¶²çŸ ããŠããããã§ã¯ãªãããšããç解ãã ããã
3.1 äžè¬çãªããã°ã©ãã³ã°
Juliaã¯äžè¬çãªããã°ã©ãã³ã°ã¿ã¹ã¯ã«ã䜿çšå¯èœã§ããããããèšç®èœåãšç°¡çŽ ã§èªã¿ãããæ§æã¯ãæ§ã ãªåé¡ã«å¯Ÿå¿ãããœãããŠã§ã¢ã®äœæãå©ããŸãã
Juliaã¯ãå¶åŸ¡æ§é ããªããžã§ã¯ãæåèšèšããã¡ã€ã«æäœãªã©ãäžè¬çãªããã°ã©ãã³ã°ã¿ã¹ã¯ãå¹ççã«å®è¡ããããã®æ©èœãæäŸããŠããŸãã
ãããã®æ©èœã¯ãJuliaã®é«éæ§ãšçµã¿åãããããšã§ãé«å¹çãªããã°ã©ã ã®èšèšãšå®è£ ãå¯èœã«ããŸãã
3.2 æ©æ¢°åŠç¿ãšæ·±å±€åŠç¿
Juliaã¯ãæ©æ¢°åŠç¿ãšæ·±å±€åŠç¿ã®ããã®å¹ççãªããŒã«ãæäŸããŸãã
ãã®å€éãã£ã¹ãããå¶åºŠã¯ãè€éãªæ©æ¢°åŠç¿ã¢ã«ãŽãªãºã ã®ç°¡åãªå®è£ ãå¯èœã«ãããŸããã®é«éãªæ§èœã¯å€§èŠæš¡ããŒã¿ã»ããã®é«éãªåŠçãå¯èœã«ããŸãã
ãŸããJuliaã¯TensorFlowãPyTorchãªã©ã®ä»ã®æ©æ¢°åŠç¿ãã¬ãŒã ã¯ãŒã¯ãšã®é£æºãå¯èœã§ãå¿ èŠã«å¿ããŠåçš®ã®ããŒã«ãçµã¿åãããŠäœ¿çšããããšãã§ããŸãã
3.3 ããŒã¿è§£æãšããŒã¿å¯èŠå
Juliaã¯ãé«éãªããŒã¿è§£æãšããŒã¿ã®å¯èŠåãå®è¡ã§ããŸãã倧éã®ããŒã¿ãå¹ççã«æ±ããçµ±èšããŒã¿ãã°ã©ãäœæãããŒã¿åæãªã©ã䜿ããããã·ã³ã¿ãã¯ã¹ã§æäŸããŸãã
Juliaã«ã¯ããã€ãã®ããŒã¿åæã©ã€ãã©ãªãååšããStatsBaseãDataFramesãªã©ã¯JuliaãããŒã¿è§£æããŒã«ãšããŠäœ¿ãäžã§éèŠãªããã±ãŒãžã§ãã
ãŸããJuliaã®ããŒã¿å¯èŠåã©ã€ãã©ãªããŸãæ°å€ããã°ã©ãã£ãã¯ãã€ã³ã¿ã©ã¯ãã£ããªããããã3DèŠèŠåãªã©ãããããèŠèŠåãå¯èœã«ããŸãã
3.4 éåã³ã³ãã¥ãŒãã£ã³ã°ãšå åŠã·ãã¥ã¬ãŒã·ã§ã³
Juliaã¯ãéåã³ã³ãã¥ãŒãã£ã³ã°ãå åŠã·ãã¥ã¬ãŒã·ã§ã³ãšãã£ãé«åºŠãªç§åŠèšç®ã§ãå©çšå¯èœã§ãããŸãJuliaã®ããã©ãŒãã³ã¹ã¯ããããã®é åã§ã®è€éãªèšç®ã¿ã¹ã¯ãå¹ççã«åŠçããã®ã«é©ããŠããŸãã
éåã³ã³ãã¥ãŒãã£ã³ã°ã®ããã®ããã±ãŒãžãšããŠã¯Yao.jlãå åŠã·ãã¥ã¬ãŒã·ã§ã³ãªã©ã®ããã®ããã±ãŒãžãšããŠã¯Optim.jlãªã©ããããŸãã
ãããã®ããã±ãŒãžãå©çšããã°ãJuliaã®åãæ倧éã«æŽ»çšããæå 端ã®ç§åŠèšç®ãå¯èœã«ãªããŸãã
4. Juliaãšä»èšèªãšã®æ¯èŒ
ããã°ã©ãã³ã°ã¯ãé©æé©æã§äœ¿ãã¹ãæ§ã ãªèšèªã®äžããæé©ãªãã®ãéžã¶ããšãéèŠã§ããããã§ã¯ãä»ã®äž»èŠãªèšèªãšã®æ¯èŒãéããŠãJuliaã®ç¹åŸŽãèŠãŠãããŸãã
ä»æ¥åãäžããèšèªã¯æ¬¡ã®4ã€ã§ãïŒPythonãRãMatlabããããŠCèšèªã§ãã
ãããã®èšèªãšJuliaãæ¯èŒããããšã§ãJuliaãã©ã®åéã§åãçºæ®ããã©ã®ãããªå Žåã«ã¯ä»ã®èšèªãéžã¶ã¹ãããç解ãæ·±ããŠãããŸãããã
4.1 JuliaãšPythonã®æ¯èŒ
ãŸãã¯ãPythonãšJuliaã®æ¯èŒããå§ããŸããããPythonã¯éåžžã«äººæ°ã®ããèšèªã§ãç¹ã«ããŒã¿ãµã€ãšã³ã¹ã®åéã§åºã䜿ãããŠããŸããããããJuliaã¯é«éãªæ°å€èšç®ãå¯èœã§ãPythonãããåªããããã©ãŒãã³ã¹ãæäŸããŸãã
ãã®äžæ¹ã§ãPythonã¯ãã®æçãããšã³ã·ã¹ãã ãæã€ããšãããJuliaããã倧éã®ã©ã€ãã©ãªãšããŒã«ãå©çšã§ããŸãããããã®å©ç¹ã¯JuliaããŸã è¿œãã€ããŠããªãé åã§ãã
ãããã£ãŠãããã©ãŒãã³ã¹ãéèŠãªå Žåãç§åŠçèšç®ãäž»ãªç®çã®å Žåã«ã¯Juliaããæ¢åã®ã©ã€ãã©ãªã掻çšãããå Žåã«ã¯Pythonãéžã¶ãšè¯ãã§ãããã
4.2 JuliaãšRã®æ¯èŒ
次ã«ãRãšJuliaã®æ¯èŒã«é²ã¿ãŸããRã¯çµ±èšåæãäž»ç®çãšããèšèªã§ããããã®çšéã§åºã䜿ãããŠããŸãã
Juliaã¯Rãããéåžžãèšç®é床ãéãã倧èŠæš¡ãªããŒã¿ã»ããã«å¯ŸããŠå¹ççãªåŠçãå¯èœã§ããäžæ¹ãRã¯è±å¯ãªçµ±èšé¢é£ã®ããã±ãŒãžãå¯èŠåããŒã«ãæã€ããšãããçµ±èšè§£æã«ã¯åŒ·ãã§ãã
ãããã£ãŠã倧èŠæš¡ãªããŒã¿ã»ããã®é«éãªåŠçãç§åŠèšç®ãå¿ èŠãªå Žåã«ã¯Juliaããçµ±èšè§£æãããŒã¿ããžã¥ã¢ã©ã€ãŒãŒã·ã§ã³ãäž»ãªç®çã®å Žåã«ã¯Rãéžã¶ãšè¯ãã§ãããã
4.3 JuliaãšMatlabã®æ¯èŒ
次ã«ãMatlabãšJuliaã®æ¯èŒã§ããMatlabã¯æ°å€è§£æãå°éãšããåçšã®ãœãããŠã§ã¢ã§ã匷åãªæ°å€èšç®æ©èœãæã£ãŠããŸãã
äžæ¹ãJuliaã¯ãªãŒãã³ãœãŒã¹ã®ãœãããŠã§ã¢ã§ãç¡æã§å©çšã§ããŸãããŸããJuliaã¯Matlabãããäžè¬çãªããã°ã©ãã³ã°èšèªã«è¿ãæ§æãæã£ãŠããŸãã
ãããã£ãŠãã³ã¹ããæãã€ã€ãæ±çšçãªããã°ã©ãã³ã°ãå¯èœã§ããã€ããã©ãŒãã³ã¹ãªèšç®ãå¿ èŠãªå Žåã«ã¯Juliaããç¹å®ã®æ°å€è§£æçšéã«ç¹åãã匷åãªããŒã«ãå¿ èŠãªå Žåã«ã¯Matlabãéžã¶ãšè¯ãã§ãããã
4.4 JuliaãšCèšèªã®æ¯èŒ
æåŸã«ãCèšèªãšJuliaã®æ¯èŒã«ã€ããŠèå¯ããŸããCèšèªã¯æ±çšã®ããã°ã©ãã³ã°èšèªã§ããããã®ããã©ãŒãã³ã¹ãšå¹çæ§ã«ã¯å®è©ããããŸãã
Juliaã®å€§ããªç¹åŸŽãšããŠãåçãªåä»ãã®èšèªã§ãããªããCèšèªãšåçãŸãã¯ãã以äžã®é«éãªèšç®ãå¯èœãšããç¹ããããŸãããŸããJuliaã§ã¯åŠçé床ãç¶æãã€ã€ãPythonã®ããã«çããèªã¿ãããã³ãŒããæžãããšãå¯èœã§ãã
ãããã£ãŠãèªã¿ããããšé«éãªèšç®ãæ±ããããå Žåã«ã¯Juliaãé©ããŠãããšèšããŸããäžæ¹ã§ãCèšèªã¯äœã¬ãã«ãªããã°ã©ãã³ã°ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãªã©ãã·ã¹ãã ã¬ãã«ã®éçºã«é©ããŠããŸãã
5. Juliaã®å©çšã·ãŒã³ãšæé©ãªçšé
ããã°ã©ãã³ã°èšèªJuliaã¯ããã®é«éæ§ãšç§åŠçèšç®ãžã®é©åæ§ãããæ§ã ãªã·ãŒã³ã§æŽ»èºããŠãããŸããå ·äœçã«ã©ã®ãããªå Žé¢ã§Juliaããã®åãçºæ®ããã®ããè¿å¹Žã®å©çšåŸåãšãã®æé©ãªçšéã«ã€ããŠè©³ããæ¢ã£ãŠã¿ãŸãããã
5.1 ç 究éçºãå®éšã§ã®å©çš
Juliaã¯ãç 究éçºãå®éšçãªèšç®ã«å€§ãã«åœ¹ç«ã£ãŠããŸããé«åºŠãªç§åŠæè¡èšç®ãå¿ èŠãšããè€éãªæ°å€ã·ãã¥ã¬ãŒã·ã§ã³ãããŒã¿åæãªã©ã®ç 究éçºãã£ãŒã«ãã§ããèŠãããŸãã
ãã®çç±ã®äžã€ã¯ãJuliaãéåžžã«é«ãæŒç®ã¹ããŒããæã€ããšãç¹ã«ãå®æéåŠçã倧èŠæš¡ãªèšç®ãå¿ èŠãšããç 究é åã§ã¯ãã®é«æ§èœã¯å€§ãã«å©ç¹ãšãªããŸãã
ããã«ãJuliaã¯ä»ã®ããã°ã©ãã³ã°èšèªãšã®é£æºã容æã§ãããããæ¢åã®ã·ã¹ãã ããœãããŠã§ã¢ãšã®çµã¿åããã§å¹ççãªç 究éçºãå¯èœã§ãã
5.2 AIéçºã«ãããJuliaã®å©ç¹
è¿å¹ŽãJuliaã¯AIïŒäººå·¥ç¥èœïŒã®éçºã«ã掻çšãããŠããŸããç¹ã«ãæ©æ¢°åŠç¿ã深局åŠç¿ãªã©ã®é«åºŠãªèšç®èŠæ±ããã€é åã§ãã®å¹åãçºæ®ããŠããŸãã
Juliaã®å·§åŠãªèšèšã¯ãé«éãªèšç®ããã©ãŒãã³ã¹ãšãçŽæçãã€è¡šçŸåè±ããªããã°ã©ãã³ã°ã€ã³ã¿ãŒãã§ã€ã¹ãæäŸããããšãå¯èœã«ããŠããŸããããã¯ãæ©æ¢°åŠç¿ã¢ãã«ã®èšç·Žããã€ããŒãã©ã¡ãŒã¿ã®èª¿æŽãªã©ãAIéçºã®åãã§ãŒãºã§å€§ããªå©ç¹ãšãªããŸãã
ãŸããJuliaãæã€æè»ãªåæåŠçæ©èœãå€éšã©ã€ãã©ãªãšã®è¯å¥œãªäºææ§ããè€éã§é£è§£ãªAIéçºäœæ¥ãã¹ã ãŒãºã«é²è¡ãããŸãã
5.3 ããã°ããŒã¿åæãšé«æ§èœèšç®
Juliaã®ãã€åã¯ãããã°ããŒã¿åæãšé«æ§èœèšç®ã®é åã§ç¹ã«éç«ã£ãŠããŸããèšå€§ãªããŒã¿ã»ããããæçãªæ å ±ãæœåºããããè€éãªæ°åŠçåé¡ã解決ããããã«ãžã¥ãªã¢ãåŒãåãã«åºãããããšãå€ãã§ãã
Juliaã®åŒ·åãªããŒã¿åŠçèœåããå€æ§ãªæ°å€èšç®ã©ã€ãã©ãªããããŠãã®é«éãªèšç®æ§èœãããããã®è³æºèŠæ±ãé«ãã¿ã¹ã¯ãå¹æçã«ããªããŸãã
ãŸããJuliaã䜿çšãããšè€éãªåé¡ãé£èºçã«çãã³ãŒãã§å®è£ ã§ãããããéçºè ã®çç£æ§åäžã«ã倧ãã«å¯äžããŸãã
5.4 åå¿è ãåŠçãJuliaãåŠã¶çç±
äžèŠãJuliaã¯å°éçãªããŒãºã«å¯Ÿå¿ããããã®èšèªã®ããã«èŠããŸãããåå¿è ãåŠçã«ãšã£ãŠãåŠç¿äŸ¡å€ã¯éåžžã«å€§ããã§ãã
ãŸã第äžã«ãJuliaã®ææ³ã¯ã·ã³ãã«ã§çŽæçã§ããããã¯åŠç¿æ²ç·ãç·©åããããã°ã©ãã³ã°ã®åºæ¬çãªã³ã³ã»ãããç解ããã®ãå©ããŸãã
ãŸããJuliaã®åŒ·åãªèšç®èœåãåŠç¿ããããšã§ãåå¿è ãåŠçã¯å 端æè¡ã®éçºãã¬ã³ããç解ããèªåèªèº«ã®æè¡ã¹ãã«ã磚ã匷åãªããŒã«ãæã«å ¥ããããšãã§ããŸãã
6. Juliaã®ãã¹ããã©ã¯ãã£ã¹ãšãã³ã
Juliaã®ããã°ã©ãã³ã°ã«åãçµãéã¯äžå®ã®ãã¹ããã©ã¯ãã£ã¹ãšãã³ãããããŸãããããã¯ããã®ããã°ã©ãã³ã°èšèªã®å¹ççãã€æå¹ãªå©çšãå¯èœã«ããŸãããã®ã»ã¯ã·ã§ã³ã§ã¯ãããã°ã©ãã³ã°ã¹ã¿ã€ã«ãé«éåã®ãã¯ããã¯ããã©ãã«ã·ã¥ãŒãã£ã³ã°ã®æ¹æ³ããããŠJuliaã®ãšã³ã·ã¹ãã ãšã³ãã¥ããã£ã«ã€ããŠæ¢ããŸãã
6.1 Juliaã§ã®ããã°ã©ãã³ã°ã¹ã¿ã€ã«
Juliaã¯PythonãCèšèªã«ãã䌌ãã·ã³ã¿ãã¯ã¹ãæã£ãŠããŸããããã®ç¬èªã®ã¹ã¿ã€ã«ããããŸããäžã€ã®æšå¥šäºé ã¯ãæŽãªãããã©ãŒãã³ã¹åäžã®ããã«åã«å¯Ÿãã泚éãè¡ãããšã§ããJuliaã§ã¯ãåçåä»ããå¯èœã§ãããç¹å®ã®ç®æã§éçåä»ããå°å ¥ããããšã¯åé¡ãããå¹æçã«è§£æ±ºããŸãã
ãŸããJuliaã®ããã°ã©ãã³ã°ã§ã¯ãèªã¿ãããç解ããããã³ãŒããæžãããšãæšå¥šããŸããããã¯ä»ã®ããã°ã©ã èšèªã§ãå ±éçãªãã©ã¯ãã£ã¹ã§ãã³ãŒãã®åå©çšæ§ãšã¡ã³ããã³ã¹æ§ãæ¹åããŸãã
åæ§ã«ãJuliaã®ãã«ãã¡ãœãããšå€éãã£ã¹ãããã®æ©èœãç解ã掻çšããããšã¯éèŠã§ãããããã®æ©èœã¯Juliaã«ãããããã°ã©ãã³ã°å¹çã®åäžã«å¯äžããŸãã
6.2 é«éåã®ãã¯ããã¯
Juliaã®åŒ·åãªããã©ãŒãã³ã¹ã¯ãã®é«éåã®ãã¯ããã¯ã«ããéšåã倧ããã§ãããããã®ãã¯ããã¯ã¯ãã¡ã¢ãªã®å¹ççãªå©çšãåã®å®å®æ§ããããŠé©æã³ã³ãã€ã«ã«åºã¥ããŠããŸãã
ã¡ã¢ãªã®å¹ççãªå©çšã¯ç¹ã«å€§èŠæš¡ãªããŒã¿ã»ãããæ±ãéã«éèŠãšãªããŸããããã§ã¯ãäžæçãªãªããžã§ã¯ãã®çæãé¿ããããšããäžå¿ èŠãªã³ããŒãæžããããšãæ±ããããŸãã
ãŸããJuliaã§ã¯åå®å®æ§ãéèŠã§ããå ·äœçã«ã¯ãé¢æ°å ã§å€æ°ã®åãäžè²«ããŠãããã©ãããããã©ãŒãã³ã¹ã«å€§ãã圱é¿ããŸãããã®çš®ã®äžè²«æ§ã¯ãJuliaã®ã³ã³ãã€ã©ãããå¹ççãªã³ãŒããçæããã®ãå©ããŸãã
6.3 Juliaã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°
ããã°ã©ã ã®ãã°ãåé¡ã«çŽé¢ããéãJuliaã¯å€ãã®ããŒã«ãæäŸããŠããŸããäŸãã°ãã@debugããã@infoããã@warnããªã©ã®ãã¯ããå©çšããããšã§ãã³ãŒãã®åäœã远跡ã§ããŸãã
ãŸãããããã¡ã€ã©ã䜿ã£ãŠã³ãŒãã®å®è¡æéãèšæž¬ããããšãå¯èœã§ããããã«ããããã©ãŒãã³ã¹ã®ããã«ããã¯ãç¹å®ãããã®éšåãæé©åããããšãã§ããŸãã
é©åãªãšã©ãŒãã³ããªã³ã°ã®æè¡ãéèŠã§ããJuliaã«ã¯äŸå€åŠçã®ããã¿ããããããã«ãããšã©ãŒãé©åã«åŠçããããã°ã©ã ã®å®å®æ§ãä¿ã€ããšãå¯èœãšãªããŸãã
6.4 Juliaã®ãšã³ã·ã¹ãã ãšã³ãã¥ããã£
Juliaã®ãšã³ã·ã¹ãã ã¯ãŸã æ°ãããã®ã®ãæ¥ã æé·ãç¶ããŠãããå€ãã®ããã±ãŒãžãéçºã»æäŸãããŠããŸãããããã®ããã±ãŒãžã¯Juliaã®ããã©ãŒãã³ã¹ãšçç£æ§ãæ倧åããŸãã
ãŸããJuliaã®ã³ãã¥ããã£ãçãã§ãæ°å€ãã®ãã©ãŒã©ã ããã£ããã«ãŒã ã§è³ªåããããšãè«è°ããããšãã§ããŸããããããå Žæã§ã¯å€ãã®çµéšè±å¯ãªãŠãŒã¶ãŒãéçºè ãããã£ãŒãããã¯ãåŸãããšãå¯èœã§ãã
Juliaã®ãšã³ã·ã¹ãã ãšã³ãã¥ããã£ãå©çšããããšã§ãJuliaã®èœåãæ倧éã«åŒãåºãããšãã§ããŸãããã®ãããããããååã«æŽ»çšããèªèº«ã®èœåãšç¥èãåäžãããããšãæšå¥šãããŸãã