SlideShare a Scribd company logo
1 of 24
Download to read offline
みんな Chainer で
何やってるの?
〜コミュニティのユースケース探索〜
Chainer Meetup #7, 9th
Jun. 2018
Who am I?
● 是枝祐太
● 某電機会社リサーチャー
● 研究歴
– 〜 2015: 医療+ロボット(大学)
– 〜 2016: ロボット+応用機械学習
– 〜現在 : 応用機械学習+自然言語処理
@koreyou_
koreyou
本日はコミュニティのユーザが
どんなものを、どのように開発して
いるのか検証してみました
Method
● GitHub API を使い chainer を使っているレポジトリを検索
● あとは全プロジェクト clone!
– 特にリミットはないらしいし、 sleep 挟んでるから大丈夫(たぶん)
● 正規表現ベースでマッチング
● 実装は https://github.com/koreyou/chainer-usage-analysis
にて公開中!
こんなことがわかりました
(まずはどんなものを開発しているのか)
GitHub に Chainer を使ったレポジトリは
約 3000 件ある
0
5000
10000
15000
20000
25000
GitHubSearchHits
検索ヒット数から /Chainer をインポートしてないプロジェクトは 4% だったので無視できる
別に PyTorch に負けていない
● PyTorch の検索数が取り沙汰されるがプロジェクト数は同レベル
● Awsome PyTorch の論文再現を 10 件無作為抽出すると 50% は
Chainer にも同じ論文の実装あり
画像系ユーザが多い
● 画像 : 言語ユーザの比 7:3 くらい
● どちらでもないの中にはツール等も
含まれている
CNN 系
1311
RNN 系
499
どちらでもない
1311
●
CNN を使っていたら画像系、 RNN を使って
いたら RNN
●
links への正規表現マッチングで抽出
関数名を分解し、頻度を分析してみる
SentencePiece で分割
関数名を分解し、頻度を分析してみる
SentencePiece で分割
GAN
RL
NLP
General
関数名を分解し、頻度を分析してみる
SentencePiece で分割
これは?
例題をやったあと何をしていいのかわ
からないユーザが多いのでは
● MNIST を活用しているユーザが多い
● Chainer を活用したレポジトリ保有者の 77% は 1 つだけしか Chainer
レポジトリがない
MNIST CIFAR-10 Penn Tree Bank CIFAR-100 SVHN Fashion-MNIST
0
50
100
150
200
250
300
350
400
450
使っているプロジェクト数
その他の雑感
● PyTorch とはコミュニティの色が違いそう
– PyTorch は「硬い」レポジトリが多い気がする
– Chainer は「たーのしー」レポジトリが多い気がする
● 「たーのしー」そうなレポジトリの例
– “It can calculate the degrees of moe from your pictures.”
– “ ”ディープラーニングの力で結月ゆかりの声になるリポジトリ
– “eminem, snoop dogg classifier”
– “ ストリートファイター V における画像内のリュウの技を画像ポーズ認識を使い判断す
”る
● 日本では実業よりなレポジトリを公開しない傾向?
– Chainer の最大コミュニティは日本
どのように開発しているのか
Chainer 組み込みの関数のほとんどは
めったに使われない
● どんどん新しい関数がたされている
ので使わなければもったいない
関数名
最近実装されたものや、便利関数など宝の山
links を選ぶのが
ベストプラクティス(そう)
● links/functions 両方の実装があ
る関数において、約 85% のプロジェ
クトは links 側を採用
Links
85%
Functions
15%
links functions
Convolution2D convolution_2d
NStepGRU n_step_gru
LayerNormalization layer_normalization
NStepLSTM 系を使っている人が少ない
● 単なる文分類などであれば
NStepLSTM 系を使ったほうが良いはず
● どっちを使えばよいのか迷うので指針が
あると親切
NStepLSTM
14%
LSTM 系
86%
links LSTM 系 NStepLSTM 系
可変長への対応 △ ◯
Deep 化 △ ◯
両方向化 △ ◯
実装の単純さ ◯ ×
約半数のプロジェクトは
Trainer を使っていない
● Trainer 使うとフレームワークの
恩恵をうけやすい!
使っている
1989
使っていない
1777
どのように公開しているのか
コミュニティ活性化のためにも
ドキュメンテーションをがんばりたい
● README の整備具合は TensorFlow/PyTorch に大きく差をあけられ
ている
0
0.05
0.1
0.15
0.2
0.25
0.3
READMEのデータ量(bytes)
0
0.05
0.1
0.15
0.2
0.25
非英語README率
0
1000
2000
3000
4000
5000
6000
7000
8000
READMEのデータ量(bytes)
※TensorFlow と PyTorch は 100 〜 200 サンプル
みんなもっと星をつけよう
● 日本人は星をつけたがらないのか?(自分もほとんどつけたことない)
0
50
100
150
200
250
300
NumberofStargazers
※TensorFlow と PyTorch は 100 〜 200 サンプル
まとめ
● Chainer ユーザは画像、言語、強化学習などなど多様
● 新規ユーザ獲得、定着のために(コミュニティ)レポジトリのドキュメンテー
ション拡充が急務
● 現在の利用状況から見た知見
– Chainer の新機能を活用できていないのがもったいない
– 特に理由がなければ functions > links
– NStepLSTM はもっと使われても良い
– Trainers をもっと使おう
SentencePiece で分割
Thank you for your attention!

More Related Content

What's hot

Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17
Shinya Okano
 
PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援
H Iseri
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
Takeshi Komiya
 

What's hot (20)

S09 t0 orientation
S09 t0 orientationS09 t0 orientation
S09 t0 orientation
 
Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk
 
S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4
 
オリエンテーション
オリエンテーションオリエンテーション
オリエンテーション
 
210526 Power Automate Desktop Python
210526 Power Automate Desktop Python210526 Power Automate Desktop Python
210526 Power Automate Desktop Python
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17
 
S02 t0 get_started
S02 t0 get_startedS02 t0 get_started
S02 t0 get_started
 
PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援
 
S01 t2 akutsu_my_pythonhistory
S01 t2 akutsu_my_pythonhistoryS01 t2 akutsu_my_pythonhistory
S01 t2 akutsu_my_pythonhistory
 
万年ビギナーによるPythonプログラミングのリハビリ計画
万年ビギナーによるPythonプログラミングのリハビリ計画万年ビギナーによるPythonプログラミングのリハビリ計画
万年ビギナーによるPythonプログラミングのリハビリ計画
 
Pythonのプロファイリング
PythonのプロファイリングPythonのプロファイリング
Pythonのプロファイリング
 
エキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころエキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころ
 
10分でわかるPythonの開発環境
10分でわかるPythonの開発環境10分でわかるPythonの開発環境
10分でわかるPythonの開発環境
 
S10 t0 orientation
S10 t0 orientationS10 t0 orientation
S10 t0 orientation
 
Introduction
IntroductionIntroduction
Introduction
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
 
Stapyユーザーガイド
StapyユーザーガイドStapyユーザーガイド
Stapyユーザーガイド
 
S18 t0 introduction
S18 t0 introductionS18 t0 introduction
S18 t0 introduction
 
Mercari Image search 1st Anniversary
Mercari Image search 1st AnniversaryMercari Image search 1st Anniversary
Mercari Image search 1st Anniversary
 
stapy#23 LT
stapy#23 LTstapy#23 LT
stapy#23 LT
 

Similar to みんなChainerで 何やってるの? 〜コミュニティのユースケース探索〜

Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
Takahiro Fujiwara
 
100622 学術情報セミナー
100622 学術情報セミナー100622 学術情報セミナー
100622 学術情報セミナー
Shuhei Otani
 

Similar to みんなChainerで 何やってるの? 〜コミュニティのユースケース探索〜 (20)

[2023-11-01] GitHub Copilot 使ってみた.pptx
[2023-11-01] GitHub Copilot 使ってみた.pptx[2023-11-01] GitHub Copilot 使ってみた.pptx
[2023-11-01] GitHub Copilot 使ってみた.pptx
 
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築
 
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみたJupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
Jupyterで手順再現!Elasticsearch構築・運用を実行可能ドキュメントで機械化してみた
 
PyData Tokyo Tutorial & Hackathon #1
PyData Tokyo Tutorial & Hackathon #1PyData Tokyo Tutorial & Hackathon #1
PyData Tokyo Tutorial & Hackathon #1
 
スタートアップツールチラ見せ
スタートアップツールチラ見せスタートアップツールチラ見せ
スタートアップツールチラ見せ
 
Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
 
Testing machine learning development
Testing machine learning developmentTesting machine learning development
Testing machine learning development
 
ML system design_pattern
ML system design_patternML system design_pattern
ML system design_pattern
 
Rosbag search system
Rosbag search systemRosbag search system
Rosbag search system
 
Pythonで自動化した話1
Pythonで自動化した話1Pythonで自動化した話1
Pythonで自動化した話1
 
PyData.Tokyo Hackathon#2 TensorFlow
PyData.Tokyo Hackathon#2 TensorFlowPyData.Tokyo Hackathon#2 TensorFlow
PyData.Tokyo Hackathon#2 TensorFlow
 
#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身
 
100622 学術情報セミナー
100622 学術情報セミナー100622 学術情報セミナー
100622 学術情報セミナー
 
Twilio Meetup 2014/11/27
Twilio Meetup 2014/11/27Twilio Meetup 2014/11/27
Twilio Meetup 2014/11/27
 
S09 t4 wrapup
S09 t4 wrapupS09 t4 wrapup
S09 t4 wrapup
 
Py datameetup1
Py datameetup1Py datameetup1
Py datameetup1
 
Pythonコミュニティが私に与えてくれたもの
Pythonコミュニティが私に与えてくれたものPythonコミュニティが私に与えてくれたもの
Pythonコミュニティが私に与えてくれたもの
 
Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...
Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...
Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...
 
コミュニティのある風景
コミュニティのある風景コミュニティのある風景
コミュニティのある風景
 
S10 t1 spc_by_nowfromnow
S10 t1 spc_by_nowfromnowS10 t1 spc_by_nowfromnow
S10 t1 spc_by_nowfromnow
 

Recently uploaded

Recently uploaded (7)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

みんなChainerで 何やってるの? 〜コミュニティのユースケース探索〜