SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
人間では判定できない101すくみじゃんけんを
コンピュータに判定させたい
2017/8/1
ARCANA Meetup #27@スタジオアルカナ
スタジオアルカナ
遠藤勝也
自己紹介
遠藤勝也
スタジオアルカナ
主にフロント
Processing, openFrameworks, Cinder, JS, etc.
そもそもNすくみじゃんけんとは
3すくみ以外の発展じゃんけん
三すくみのじゃんけん以外に、5種、7種の拳と使っ
たじゃんけんなどもあります。
複雑かと思われますが、すくみ数が増えても、結局は
力関係が「勝つ」か「負けるか」か「あいこ」の3種
にわかれるので、慣れると普通のじゃんけんの感覚に
なります。
6種10種のすくみも可能ですが、強い手弱い手が出
来てしまいます。お互い強弱関係を均一にするのは奇
数のすくみ数になる必要があります。
原文ママ
https://japan-rps.jimdo.com/じゃんけん-について/
なんでじゃんけんについて
調べることになったか
わからん
こういうのはコンピュータに
やらせた方が得意なはず
適当に手を出してじゃんけんが
できたら面白そう
とりあえず
5すくみじゃんけんから
実装手順
1. 機械学習を使って出している手を判定
2. 勝ち負け判定
3. Leap Motionを使ったじゃんけんアプリケーション
の開発
機械学習を使って出している手を判定
1. ProcessingからLeap Motionを使って各じゃんけん
の手の情報をCSVで保存
2. PythonでPandasを使ってCSVから必要な情報だけ
を取り出す、もしくは計算してCSVで保存
3. PythonでKerasを使って各じゃんけんの手を学習し
てモデルを保存
4. PythonでFlaskとKerasを使ったWebAPIを開発
グー、チョキ、パーなどじゃんけんの際に出す手のこ
とを、ここではじゃんけんの手と呼ぶ
デモをどうぞ
勝ち負け判定
1. 勝ち負け判定アルゴリズムを実装
2. PythonでFlaskを使ってWebAPIを開発
勝ち負け判定アルゴリズム
罠
並び替え
完成したアプリケーションの
デモ
最後に
101すくみはLeap Motionでは難しそう
本当はWebAPIとか作らずにKeras.jsで実装しよう
と思ってた
(3 < N)すくみじゃんけんの方が人数が多くてもあ
いこになる確率が低いので、人数が多い場合は有
効
ありがとうございました

Mais conteúdo relacionado

Mais de KatsuyaENDOH

人工生命の話
人工生命の話人工生命の話
人工生命の話KatsuyaENDOH
 
メディアとアート
メディアとアートメディアとアート
メディアとアートKatsuyaENDOH
 
Oculus Go アプリ開発ハンズオン
Oculus Go アプリ開発ハンズオンOculus Go アプリ開発ハンズオン
Oculus Go アプリ開発ハンズオンKatsuyaENDOH
 
Oculus Go アプリケーション開発
Oculus Go アプリケーション開発Oculus Go アプリケーション開発
Oculus Go アプリケーション開発KatsuyaENDOH
 
GoogleHomeからの視覚的フィードバックを求めて
GoogleHomeからの視覚的フィードバックを求めてGoogleHomeからの視覚的フィードバックを求めて
GoogleHomeからの視覚的フィードバックを求めてKatsuyaENDOH
 
DeepLab v3触ってみた
DeepLab v3触ってみたDeepLab v3触ってみた
DeepLab v3触ってみたKatsuyaENDOH
 
無料で始めるVTuber
無料で始めるVTuber無料で始めるVTuber
無料で始めるVTuberKatsuyaENDOH
 
Tango Constructorから出力したモデルをちょこっと綺麗にする
Tango Constructorから出力したモデルをちょこっと綺麗にするTango Constructorから出力したモデルをちょこっと綺麗にする
Tango Constructorから出力したモデルをちょこっと綺麗にするKatsuyaENDOH
 
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)KatsuyaENDOH
 
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.jsKatsuyaENDOH
 
A-Frameで作ったギャラリーのお話
A-Frameで作ったギャラリーのお話A-Frameで作ったギャラリーのお話
A-Frameで作ったギャラリーのお話KatsuyaENDOH
 
Reactを使ったVR環境
Reactを使ったVR環境Reactを使ったVR環境
Reactを使ったVR環境KatsuyaENDOH
 
まよいの墓(WebVR編)
まよいの墓(WebVR編)まよいの墓(WebVR編)
まよいの墓(WebVR編)KatsuyaENDOH
 
役に立ちそうだけど、やっぱり役に立たなそうな技術Quine
役に立ちそうだけど、やっぱり役に立たなそうな技術Quine役に立ちそうだけど、やっぱり役に立たなそうな技術Quine
役に立ちそうだけど、やっぱり役に立たなそうな技術QuineKatsuyaENDOH
 
Physical Web導入の話
Physical Web導入の話Physical Web導入の話
Physical Web導入の話KatsuyaENDOH
 
THETA S による身代わりテレビの実装(完結編)
THETA S による身代わりテレビの実装(完結編)THETA S による身代わりテレビの実装(完結編)
THETA S による身代わりテレビの実装(完結編)KatsuyaENDOH
 
THETA S でライブストリーミング(途中経過)
THETA S でライブストリーミング(途中経過)THETA S でライブストリーミング(途中経過)
THETA S でライブストリーミング(途中経過)KatsuyaENDOH
 
THETA S でライブストリーミング
THETA S でライブストリーミングTHETA S でライブストリーミング
THETA S でライブストリーミングKatsuyaENDOH
 
Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)
Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)
Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)KatsuyaENDOH
 
久しぶりにWebエンジニアのためのプロジェクションマッピング
久しぶりにWebエンジニアのためのプロジェクションマッピング久しぶりにWebエンジニアのためのプロジェクションマッピング
久しぶりにWebエンジニアのためのプロジェクションマッピングKatsuyaENDOH
 

Mais de KatsuyaENDOH (20)

人工生命の話
人工生命の話人工生命の話
人工生命の話
 
メディアとアート
メディアとアートメディアとアート
メディアとアート
 
Oculus Go アプリ開発ハンズオン
Oculus Go アプリ開発ハンズオンOculus Go アプリ開発ハンズオン
Oculus Go アプリ開発ハンズオン
 
Oculus Go アプリケーション開発
Oculus Go アプリケーション開発Oculus Go アプリケーション開発
Oculus Go アプリケーション開発
 
GoogleHomeからの視覚的フィードバックを求めて
GoogleHomeからの視覚的フィードバックを求めてGoogleHomeからの視覚的フィードバックを求めて
GoogleHomeからの視覚的フィードバックを求めて
 
DeepLab v3触ってみた
DeepLab v3触ってみたDeepLab v3触ってみた
DeepLab v3触ってみた
 
無料で始めるVTuber
無料で始めるVTuber無料で始めるVTuber
無料で始めるVTuber
 
Tango Constructorから出力したモデルをちょこっと綺麗にする
Tango Constructorから出力したモデルをちょこっと綺麗にするTango Constructorから出力したモデルをちょこっと綺麗にする
Tango Constructorから出力したモデルをちょこっと綺麗にする
 
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js(完)
 
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
人間では判定できない101すくみじゃんけんをコンピュータに判定させたい for Keras.js
 
A-Frameで作ったギャラリーのお話
A-Frameで作ったギャラリーのお話A-Frameで作ったギャラリーのお話
A-Frameで作ったギャラリーのお話
 
Reactを使ったVR環境
Reactを使ったVR環境Reactを使ったVR環境
Reactを使ったVR環境
 
まよいの墓(WebVR編)
まよいの墓(WebVR編)まよいの墓(WebVR編)
まよいの墓(WebVR編)
 
役に立ちそうだけど、やっぱり役に立たなそうな技術Quine
役に立ちそうだけど、やっぱり役に立たなそうな技術Quine役に立ちそうだけど、やっぱり役に立たなそうな技術Quine
役に立ちそうだけど、やっぱり役に立たなそうな技術Quine
 
Physical Web導入の話
Physical Web導入の話Physical Web導入の話
Physical Web導入の話
 
THETA S による身代わりテレビの実装(完結編)
THETA S による身代わりテレビの実装(完結編)THETA S による身代わりテレビの実装(完結編)
THETA S による身代わりテレビの実装(完結編)
 
THETA S でライブストリーミング(途中経過)
THETA S でライブストリーミング(途中経過)THETA S でライブストリーミング(途中経過)
THETA S でライブストリーミング(途中経過)
 
THETA S でライブストリーミング
THETA S でライブストリーミングTHETA S でライブストリーミング
THETA S でライブストリーミング
 
Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)
Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)
Webエンジニアのためのプロジェクションマッピング(とりあえず完結編)
 
久しぶりにWebエンジニアのためのプロジェクションマッピング
久しぶりにWebエンジニアのためのプロジェクションマッピング久しぶりにWebエンジニアのためのプロジェクションマッピング
久しぶりにWebエンジニアのためのプロジェクションマッピング
 

Último

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 

Último (10)

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 

人間では判定できない101すくみじゃんけんをコンピュータに判定させたい