
ç§ãã¡ã®ç ç©¶ãããžã§ã¯ãã®åŠçã®åæ¥ãããžã§ã¯ãã«ã€ããŠã®ç§ãã¡ã®æ°ãã話ã¯ãä»å¹ŽæåŸã®è©±ã§ããä»åã¯ãã¯ãããŒã¯ããã¯ãããªã¹ããã¯ãã¹ãã£ã¢ã®3äœåãã玹ä»ããŸãããããã¯2幎éã®ç ç©¶ã®çµæã«åºã¥ãã忥ãããžã§ã¯ãã§ããã審æ»å¡ã¯ããããæé«ã®äœåãšããŠéžæããŸããããŸãããã¯ãããŒã¯ããã¯ãããªã¹ããã¯ãã¹ãã£ã¢ã®ãã¬ãŒãã³ã°ããã°ã©ã ã«ã¯ç¬èªã®å°éåéããããéåžžã«ç°ãªã£ãŠããããšããç¥ããããŸãã
åã®åºçç©ïŒ1ã2ã3ã4ã5ã
ãããžã§ã¯ããæè·ããåŠçããããã®æè¡ã«è§Šããã®ã¯ãããåããŠã§ãããããžã§ã¯ãã¯1åŠæããããŸããèšäºã®ç®çã¯ãæè²ããã»ã¹ãšåŠçã®äœæ¥ã®çµæã瀺ãããšã§ãã
ãã¯ãããªã¹ããã§ã€ã¹ããã¯
é¡ã«ããåçæ€çŽ¢ãµãŒãã¹ã
å€§èŠæš¡ãªã€ãã³ãïŒäŒè°ãäŒæ¥ãäŒæ¥ããŒãã£ãŒãçµå©åŒïŒã§ã¯ãæ°åãšã¯èšããªããŸã§ãæ°çŸã®åçãæ®åœ±ãããŸãããããŠãããªããšããªãã®å人ã芪æãåããåçãèŠã€ããã®ã«éåžžã«é·ãæéãããããŸãããã®ããããããžã§ã¯ãããŒã ã¯ãç¹å®ã®é¡ãå«ãåçããã°ããèŠã€ããããã®ãµãŒãã¹ãäœæããããšã«ããŸããã
ãã®ã·ã¹ãã ã¯ããã¥ãŒã©ã«ãããã¯ãŒã¯ã䜿çšããŠãæåã«åç §ç»åå ã®é¡ãèªèããæ¬¡ã«èŠã€ãã£ã人ã ã«ããåçã®ããŒã¹ãã¯ã©ã¹ã¿ãŒåããŸãããã®ãµãŒãã¹ã¯ãVKontakteãOdnoklassnikiãYandex.DiskãGoogleDriveãªã©ã®å€éšãœãŒã¹ãšé£æºã§ããŸãã
åŠçãããã¢ã«ãã ã¯ãã©ãããã¯ã®ã»ããã§ãããåããã¯ã«ã¯1人ã®åçãå«ãŸããŠããŸããåŠçãããã¢ã«ãã ã®ããŒãžã§ããŠãŒã¶ãŒã¯ç¹å®ã®ãã©ãããã¯ã®åçã衚瀺ããããããã€ã¹ã«ããŠã³ããŒãããããåéãšå ±æãããã§ããŸãã人ç©ã®åçãã¢ããããŒãããããšã§ãåŠçæžã¿ã®ã¢ã«ãã ãæ€çŽ¢ã§ããŸãã


ãã®ãµãŒãã¹ã¯ãRESTAPIãåããã¯ã©ã€ã¢ã³ããµãŒããŒã¢ããªã±ãŒã·ã§ã³ã§ãããµãŒããŒéšåã¯ã2ã€ã®äž»èŠãªã³ã³ããŒãã³ãã§æ§æãããŠããŸããJavaã¢ããªã±ãŒã·ã§ã³ããµãŒãã¹ãšã®ãŠãŒã¶ãŒå¯Ÿè©±ã®ããžãã¯ãå®è£ ããŸããåçã®é¡ãèå¥ãããã¥ãŒã©ã«ãããã¯ãŒã¯ã䜿çšããŠãããã®åºæã®ç¹åŸŽãæœåºããããã®Pythonã¢ããªã±ãŒã·ã§ã³ã
èè ã¯ã¹ã±ãŒã©ããªãã£ã«éç¹ã眮ãããããããŒããã©ã³ãµãŒã䜿çšããŠããã¯ãšã³ãã®è² è·ã忣ããRedisã¡ãã»ãŒãžãã¥ãŒã䜿çšããŠJavaã¢ããªã±ãŒã·ã§ã³ãšPythonã¢ããªã±ãŒã·ã§ã³éã®å¯Ÿè©±ãè¡ããšããããã®ã³ã³ããŒãã³ãã®ã€ã³ã¹ã¿ã³ã¹ã®æ°ãåå¥ã«å€æŽã§ããŸãã
ãã¹ãŠã®ãµãŒãã¹ã¯åå¥ã®Dockerã³ã³ããã«ãããã€ãããdocker-composeã䜿çšããŠãããããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŸããã¢ããªã±ãŒã·ã§ã³ã®ã¯ã©ã€ã¢ã³ãåŽãå®è£ ããããã«ãTypeScriptãšReactã䜿çšããŸããã PostgreSQLããŒã¿ããŒã¹ã¯æ°žç¶çãªããŒã¿ã¹ãã¬ãŒãžãšããŠäœ¿çšãããŸãã

å°æ¥çã«ã¯ã忥çã¯èªèã®ç²ŸåºŠãåäžãããæ§å¥ãšå¹Žéœ¢ã«ãããã£ã«ã¿ãŒã远å ããFacebookãšGoogleã®åçããµããŒãããããšèããŠããŸããç¡æã®æ©èœãå¶éããåºåãå°å ¥ããããšã§ãµãŒãã¹ãåçåããããã®ã¢ã€ãã¢ããããŸãã
ãããžã§ã¯ãããŒã ïŒVadim DyachkovãEgor ShakhminãNikolay Rubtsov
ãããžã§ã¯ãä¿è·ä»ãã®ãããªã
ãã¬ã€ã¡ãŒã«ãŒããã¯ãããŒã¯
ã¹ããŒããã¬ãŒãã³ã°ãã®ã³ã°çšã® ããŒããŠã§ã¢ããã³ãœãããŠã§ã¢ãœãªã¥ãŒã·ã§ã³ã
ãããžã§ã¯ãããŒã ã®ãã¹ãŠã®ã¡ã³ããŒãã¹ããŒãã奜ããªã®ã¯å¶ç¶ã§ããããžã ã«æ¥ãŠã人ã ããã¬ãŒãã³ã°ãšé²æç¶æ³ãèšé²ããã®ãèŠãŠãåŠçã¯ãã®ããã»ã¹ãæ¹åã§ãããã©ããçåã«æããŸããã調æ»ãšèª¿æ»ã®çµæãããŒã ã¯ãæ¢åã®ã¯ãŒã¯ã¢ãŠãã¢ããªã®UXãè€éãããŠãåžå Žã«åºåã£ãŠãããŠã§ã¢ã©ãã«ããã€ã¹ããäž»ã«ã«ãŒãã£ãªã¯ãŒã¯ã¢ãŠãïŒã©ã³ãã³ã°ãæ¥åãªã©ïŒã§ããŸãæ©èœããããšã«æ°ä»ããŸããããã®çµæã圌ãã¯åœŒãã®ä»äºã®èšç»ãçå®ããŸããïŒ

æ¢åã®ãœãªã¥ãŒã·ã§ã³ïŒMiBandãªã©ïŒãšã®çµ±åã«ã¯éåžžã«æéããããããšã倿ãããããããã€ã¹ã¯ç¬ç«ããŠäœæãããŸãããæèšããã¬ã¹ã¬ããã®å Žåãéçºè ã¯æéŠã®é çœ®ã«æºè¶³ã§ãããåãã®ãã¿ãŒã³ã«é¢ããæ å ±ãå°ãªããªããŸããã
ESP32-devkit-v1ã®äžéšãšããŠESP32-WROOMã¢ãžã¥ãŒã«ãéžæããŸãããç¹å®ã®èŠä»¶ãæºãããPythonã§ã³ãŒããšãã¡ãŒã ãŠã§ã¢ãçæããããã®ãŠãŒãã£ãªãã£ãäœæãããŸãããããã«ãä»ã®ArduinoããŒããšåæ§ã«ArduinoIDEããããã°ã©ã ã§ããŸããAmperka IMUã¢ãžã¥ãŒã«ã¯ãå é床èšãšãžã£ã€ãã¹ã³ãŒããå«ãã»ã³ãµãŒã®åœ¹å²ã®ããã«éžæãããŸãããã»ã³ãµãŒãšã®ãã¹ãŠã®éä¿¡ã¯ãI2Cãããã³ã«ã䜿çšããŠå®è¡ãããŸãã
ãããã¿ã€ãå³ïŒ


ããã€ã¹ã®æ¬¡ã®ããŒãžã§ã³ã§ã¯ãããŒãå°å·ãšã³ã³ããŒãã³ãã®ã¯ãã ä»ããäžåœã§æ³šæãããŸããã


次ã«ãããŸããŸãªéåãèªèããããã«ç¥çµå路網ãèšç·Žããå¿ èŠããããŸããããã ããèº«äœæŽ»åäžã®å é床èšãšãžã£ã€ãã¹ã³ãŒãããã®æç³»åãå«ããªãŒãã³ããŒã¿ã»ããã¯å€ããããŸããããããŠããããã®ã»ãšãã©ã¯ã©ã³ãã³ã°ããŠã©ãŒãã³ã°ãªã©ãã«ããŒããŠããã ãã§ãããã®çµæãç§ãã¡ã¯èªåãã¡ã§ãã¬ãŒãã³ã°ã»ãããäœãããšã«ããŸãããç¹å¥ãªè£ åãå¿ èŠãšããªã3ã€ã®äž»èŠãªãšã¯ãµãµã€ãºãéžæããŸããïŒããã·ã¥ã¢ãããã¹ã¯ã¯ããããã€ã¹ãã
ãã£ã«ã¿ãªã³ã°åŸã®å é床èšããŒã¿ã


ãã£ã«ã¿ãªã³ã°åŸã®ãžã£ã€ãã¹ã³ãŒãããŒã¿ã
LSTMã¢ãŒããã¯ãã£ãåããå埩ãã¥ãŒã©ã«ãããã¯ãŒã¯ã¯ãæŒç¿ã®åé¡ãæ åœããŸããæç³»åãèŠèŠåããããã«ãäž»æååæïŒPCAïŒã䜿çšããŸããã

ãã¥ãŒã©ã«ãããã¯ãŒã¯ã®çµæïŒãªã¬ã³ãžè²ã®ç·-ããã·ã¥ã¢ãããè¡ã確çãç·è²-ã¹ã¯ã¯ããïŒã
ç¹°ãè¿ãåæ°ãã«ãŠã³ãããããã«ãããŒã¹ä¿¡å·ã¬ãã«ãèæ ®ããŠã極倧å€ãã«ãŠã³ãããæ¹æ³ã䜿çšãããŸãããæºè¶³ã®ããçµæãåŸãããåŸãã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ãæ¡çšããŸãããæ¡ä»¶ã®1ã€ã¯ãã¹ããŒããã©ã³ãšã®å¯Ÿè©±ãæå°éã«æãããããªã€ã³ã¿ãŒãã§ã€ã¹ã®éçºã§ããããã¶ã€ã³ãã¿ãŒã³ãšããŠMVPãéžæããŸããã
ã¢ããªã±ãŒã·ã§ã³ã€ã³ã¿ãŒãã§ã€ã¹ïŒ



ã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ã«å ããŠãèè ã¯ããã¥ãŒã©ã«ãããã¯ãŒã¯ããã¬ãŒãã³ã°ããããã®ããŒã¿ã®èšé²ãšããŒã¯ã¢ããã容æã«ããBatcherãŠãŒãã£ãªãã£ããã°ã©ã ãéçºããŸããã

ããã«ãèè ã¯ãããããããŒã¿ããŒã¹ã«ä¿åããåŸã«ããããæ€èšŒããããã®ã¡ã«ããºã ãäœæããŸããã
æç³»åãä¿åããããã«ããã®ãããªã¿ã¹ã¯ã«é©åããInfluxDBããŒã¿ããŒã¹ãéžæãããŸãããæ©æ¢°åŠç¿ãµãŒãã¹ãå®è£ ããããã«ãPythonãDjangoãCeleryããæšæºã¹ã¿ãã¯ãéžæããŸãããã¿ã¹ã¯ãã¥ãŒã«ãããã¡ã€ã³ã¢ããªã±ãŒã·ã§ã³ã€ã³ã¿ãŒãã§ã€ã¹ããããã¯ããããšãªããåé¡ã¿ã¹ã¯ãéåæã§å®è¡ã§ããŸããã
ãŠãŒã¶ãŒããŒã¿ãä¿åããããã«ã圌ãã¯Postgresãæ¡çšããŸãããã¢ããªã±ãŒã·ã§ã³èªäœã®ããã¯ãšã³ãã¯ãGinãã¬ãŒã ã¯ãŒã¯ã䜿çšããŠGoã«å®è£ ãããŸããã

äžè¬çãªã¢ãŒããã¯ãã£ã
ãã®çµæãããŒã ã¯ç®æšãéæãã補åã®MVPããŒãžã§ã³ãéçºããŸãããããã«ããããã¿ã³1ã€ã§ãã¬ãŒãã³ã°ã®ãã°èšé²ã®ã¿ã¹ã¯ã解決ã§ããŸããçŸåšãåŠçã¯ããã€ã¹ã®ã³ã¹ããšãµã€ãºãåæžãããã¥ãŒã©ã«ãããã¯ãŒã¯ã®ç²ŸåºŠãåäžããããµããŒããããŠããäžé£ã®æŒç¿ãæ¡åŒµããããã«åãçµãã§ããŸãã
ãããžã§ã¯ãããŒã ïŒOleg SolovievãTemirlan RakhimgalievãVladimir ElfimovãAnton Martynov
ãããžã§ã¯ãä¿è·ä»ãã®ãããªã
GestureAppãTechnosphere
éæ¥è§Šã€ã³ã¿ãŒãã§ãŒã¹ã®ãã¬ãŒã ã¯ãŒã¯ã
äœ¿ãæ £ããè§ŠèŠã€ã³ã¿ãŒãã§ãŒã¹ã䜿çšããããšãäžäŸ¿ãŸãã¯æãŸãããªãå ŽåããããŸããããšãã°ãè»ãé転ãããšãã¯ãATMãæ¯æã端æ«ã䜿çšããããæãæ±ããŠããã ãã§ãããã®åé¡ã解決ããããã«ãèè ã¯ããžã§ã¹ãã£ãŒã§ã¢ããªã±ãŒã·ã§ã³ãå¶åŸ¡ã§ããéæ¥è§Šã€ã³ã¿ãŒãã§ãŒã¹ãã¬ãŒã ã¯ãŒã¯ãäœæããŸããã
GestureAppãæ©èœããã«ã¯ããããªã«ã¡ã©ãå¿ èŠã§ãããããªã«ã¡ã©ããã®ä¿¡å·ã¯ããŠãŒã¶ãŒã®ãžã§ã¹ãã£ãŒãèªèããããã«ãªã¢ã«ã¿ã€ã ã§åŠçãããŸãããŸãããžã§ã¹ãã£ãŒã«å¿ããŠããã¬ãŒã ã¯ãŒã¯ã¯ã¢ããªã±ãŒã·ã§ã³ã«é©åãªã³ãã³ããæäŸããŸãã

èšç®è² è·ã¯æ¯èŒçäœãããã¬ãŒã ã¯ãŒã¯ã¯ããªã匱ãããã€ã¹ã§åäœã§ããç¹å¥ãªæ©åšãå¿ èŠãšããŸããã
ãžã§ã¹ãã£ã¯ããã¥ãŒã©ã«ãããã¯ãŒã¯MobileNet3Dã«ãã£ãŠèªèãããŸãããã¥ãŒã©ã«ãããã¯ãŒã¯ã¯ããžã§ã¹ãã£ã®ã¯ã©ã¹ã®ç¢ºçãšãããžã§ã¹ãã£ãªããã®ç¹å¥ãªã¯ã©ã¹ãæäŸããŸãããã®ã¢ãŒããã¯ãã£ã«ãããéçãžã§ã¹ãã£ãšåçãžã§ã¹ãã£ã®äž¡æ¹ãèªèã§ããŸãããã¥ãŒã©ã«ãããã¯ãŒã¯ã¯ãJesterããŒã¿ã»ããã§ãã¬ãŒãã³ã°ãããŸããã F 1 = 0.92ã®äºæž¬ç²ŸåºŠãéæãããŸããã
ãã£ããã£ã¹ããªãŒã ã¯ããã³ãã«ã¡ã©ãããã¬ãŒã ãåä¿¡ãããªã¹ãã®æåŸã«é 眮ããŸãããã®é·ãã32ãè¶ ããå Žåããã£ããã£ã¹ã¬ããã¯ã¢ãã«å®è¡ã¹ã¬ããããŠã§ã€ã¯ã¢ããããŸãããªã¹ãã®æåãã32ãã¬ãŒã ããããã¯ã©ã¹ãäºæž¬ããŠãããèŠçŽ ã1ã€æ®ããŸã§ãæåŸããèŠçŽ ãåé€ããŸããããã«ããã倧éã®åæãäžèŠã«ãªããããã©ãŒãã³ã¹ãå€§å¹ ã«åäžããŸããiPhone11ã§ã¯20 FPSãiPhone XSMaxã§ã¯18FPSãiPhoneXRã§ã¯15FPSã§ãããŸããååŠçãšåŸåŠçã®ããã®ã¹ããŒããã€ãã©ã€ã³ã«ããããšãã«ã®ãŒæ¶è²»ãæå°éã«æããããŸãã
ãããŸã§ã®ãšããããã¬ãŒã ã¯ãŒã¯ã¯iOSãšWindowsã§ã®ã¿æ©èœããŸããéçºã§ã¯ãPyTorchãã¬ãŒã ã¯ãŒã¯ãTwentyBNãã©ãããã©ãŒã ãããã³Swiftèšèªã䜿çšããŸããã
èšç»ã«ã¯ãèªèå質ã®åäžããã¹ãŠã®ã¢ãã«ãåãã¬ãŒãã³ã°ããã«æ°ãããžã§ã¹ãã£ã®èªèã远å ãããAndroidçšã®ããŒãžã§ã³ãäœæããããã¿ã³ãžã§ã¹ãã£ã ãã§ãªããã¹ã©ã€ããŒãžã§ã¹ãã£ã远å ããããšãå«ãŸããŸãã
ãããžã§ã¯ãããŒã ïŒMaxim MatyushinãBoris KonstantinovskyãMiroslav Morozov
ãããžã§ã¯ãä¿è·ä»ãã®ãããªã
ããªãã¯ãã®ãªã³ã¯ã§ç§ãã¡ã®æè²ãããžã§ã¯ãã«ã€ããŠãã£ãšèªãããšãã§ããŸãããããŠãTechnostreamãã£ãã«ã«ã¢ã¯ã»ã¹ããããšãå€ããããã°ã©ãã³ã°ãéçºããã®ä»ã®åéã«é¢ããæ°ãããã¬ãŒãã³ã°ãããªã宿çã«è¡šç€ºãããŸãã