Submit Search
Upload
コキュートスTfug
•
Download as PPTX, PDF
•
4 likes
•
3,772 views
Natsutani Minoru
Follow
Kerasで組込向けフレームワークを作ろう。コキュートスの紹介
Read less
Read more
Technology
Report
Share
Report
Share
1 of 32
Download now
Recommended
コキュートスSwest19
コキュートスSwest19
Natsutani Minoru
Chainer でのプロファイリングをちょっと楽にする話
Chainer でのプロファイリングをちょっと楽にする話
NVIDIA Japan
20180217 FPGA Extreme Computing #10
20180217 FPGA Extreme Computing #10
Kohei KaiGai
ChainerRL の学習済みモデルを gRPC 経由で使ってみる試み (+アルファ)
ChainerRL の学習済みモデルを gRPC 経由で使ってみる試み (+アルファ)
NVIDIA Japan
機械学習 / Deep Learning 大全 (4) GPU編
機械学習 / Deep Learning 大全 (4) GPU編
Daiyu Hatakeyama
20170518 eureka dli
20170518 eureka dli
ManaMurakami1
20170421 tensor flowusergroup
20170421 tensor flowusergroup
ManaMurakami1
FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化
Kazunori Sato
Recommended
コキュートスSwest19
コキュートスSwest19
Natsutani Minoru
Chainer でのプロファイリングをちょっと楽にする話
Chainer でのプロファイリングをちょっと楽にする話
NVIDIA Japan
20180217 FPGA Extreme Computing #10
20180217 FPGA Extreme Computing #10
Kohei KaiGai
ChainerRL の学習済みモデルを gRPC 経由で使ってみる試み (+アルファ)
ChainerRL の学習済みモデルを gRPC 経由で使ってみる試み (+アルファ)
NVIDIA Japan
機械学習 / Deep Learning 大全 (4) GPU編
機械学習 / Deep Learning 大全 (4) GPU編
Daiyu Hatakeyama
20170518 eureka dli
20170518 eureka dli
ManaMurakami1
20170421 tensor flowusergroup
20170421 tensor flowusergroup
ManaMurakami1
FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化
Kazunori Sato
20171212_GTCJapan_InceptionSummt_HeteroDB
20171212_GTCJapan_InceptionSummt_HeteroDB
Kohei KaiGai
DLLab 2018 - Azure Machine Learning update
DLLab 2018 - Azure Machine Learning update
Daiyu Hatakeyama
20190926_Try_RHEL8_NVMEoF_Beta
20190926_Try_RHEL8_NVMEoF_Beta
Kohei KaiGai
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
Kohei KaiGai
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
ManaMurakami1
GPU クラウド コンピューティング
GPU クラウド コンピューティング
NVIDIA Japan
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
NVIDIA Japan
20171220_hbstudy80_pgstrom
20171220_hbstudy80_pgstrom
Kohei KaiGai
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
ManaMurakami1
Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)
Fixstars Corporation
Maxwell と Java CUDAプログラミング
Maxwell と Java CUDAプログラミング
NVIDIA Japan
Flow in VR Funhouse MOD Kit
Flow in VR Funhouse MOD Kit
NVIDIA Japan
Deep Learning Lab MeetUp 学習編 AzureインフラとBatch AI
Deep Learning Lab MeetUp 学習編 AzureインフラとBatch AI
喜智 大井
CUDAプログラミング入門
CUDAプログラミング入門
NVIDIA Japan
Cuda
Cuda
Shumpei Hozumi
1000: 基調講演
1000: 基調講演
NVIDIA Japan
(JP) GPGPUがPostgreSQLを加速する
(JP) GPGPUがPostgreSQLを加速する
Kohei KaiGai
【Jpug勉強会】10大ニュースで振り返るpg con2013
【Jpug勉強会】10大ニュースで振り返るpg con2013
Daichi Egawa
Cld017 nh シリーズリリース
Cld017 nh シリーズリリース
Tech Summit 2016
Cld017 nh シリーズリリース
Cld017 nh シリーズリリース
Tech Summit 2016
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?
Mr. Vengineer
コキュートスDsf
コキュートスDsf
Natsutani Minoru
More Related Content
What's hot
20171212_GTCJapan_InceptionSummt_HeteroDB
20171212_GTCJapan_InceptionSummt_HeteroDB
Kohei KaiGai
DLLab 2018 - Azure Machine Learning update
DLLab 2018 - Azure Machine Learning update
Daiyu Hatakeyama
20190926_Try_RHEL8_NVMEoF_Beta
20190926_Try_RHEL8_NVMEoF_Beta
Kohei KaiGai
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
Kohei KaiGai
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
ManaMurakami1
GPU クラウド コンピューティング
GPU クラウド コンピューティング
NVIDIA Japan
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
NVIDIA Japan
20171220_hbstudy80_pgstrom
20171220_hbstudy80_pgstrom
Kohei KaiGai
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
ManaMurakami1
Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)
Fixstars Corporation
Maxwell と Java CUDAプログラミング
Maxwell と Java CUDAプログラミング
NVIDIA Japan
Flow in VR Funhouse MOD Kit
Flow in VR Funhouse MOD Kit
NVIDIA Japan
Deep Learning Lab MeetUp 学習編 AzureインフラとBatch AI
Deep Learning Lab MeetUp 学習編 AzureインフラとBatch AI
喜智 大井
CUDAプログラミング入門
CUDAプログラミング入門
NVIDIA Japan
Cuda
Cuda
Shumpei Hozumi
1000: 基調講演
1000: 基調講演
NVIDIA Japan
(JP) GPGPUがPostgreSQLを加速する
(JP) GPGPUがPostgreSQLを加速する
Kohei KaiGai
【Jpug勉強会】10大ニュースで振り返るpg con2013
【Jpug勉強会】10大ニュースで振り返るpg con2013
Daichi Egawa
Cld017 nh シリーズリリース
Cld017 nh シリーズリリース
Tech Summit 2016
Cld017 nh シリーズリリース
Cld017 nh シリーズリリース
Tech Summit 2016
What's hot
(20)
20171212_GTCJapan_InceptionSummt_HeteroDB
20171212_GTCJapan_InceptionSummt_HeteroDB
DLLab 2018 - Azure Machine Learning update
DLLab 2018 - Azure Machine Learning update
20190926_Try_RHEL8_NVMEoF_Beta
20190926_Try_RHEL8_NVMEoF_Beta
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
GPU クラウド コンピューティング
GPU クラウド コンピューティング
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
20171220_hbstudy80_pgstrom
20171220_hbstudy80_pgstrom
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
Fpga online seminar by fixstars (1st)
Fpga online seminar by fixstars (1st)
Maxwell と Java CUDAプログラミング
Maxwell と Java CUDAプログラミング
Flow in VR Funhouse MOD Kit
Flow in VR Funhouse MOD Kit
Deep Learning Lab MeetUp 学習編 AzureインフラとBatch AI
Deep Learning Lab MeetUp 学習編 AzureインフラとBatch AI
CUDAプログラミング入門
CUDAプログラミング入門
Cuda
Cuda
1000: 基調講演
1000: 基調講演
(JP) GPGPUがPostgreSQLを加速する
(JP) GPGPUがPostgreSQLを加速する
【Jpug勉強会】10大ニュースで振り返るpg con2013
【Jpug勉強会】10大ニュースで振り返るpg con2013
Cld017 nh シリーズリリース
Cld017 nh シリーズリリース
Cld017 nh シリーズリリース
Cld017 nh シリーズリリース
Viewers also liked
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?
Mr. Vengineer
コキュートスDsf
コキュートスDsf
Natsutani Minoru
FPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGA
Hiroki Nakahara
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
Hiroki Nakahara
ニューラルチューリングマシン入門
ニューラルチューリングマシン入門
naoto moriyama
Fpgax20170924
Fpgax20170924
Natsutani Minoru
(公開版)Reconf研2017GUINNESS
(公開版)Reconf研2017GUINNESS
Hiroki Nakahara
Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)
Hiroki Nakahara
バイナリニューラルネットとハードウェアの関係
バイナリニューラルネットとハードウェアの関係
Kento Tajiri
Viewers also liked
(9)
TensorFlow XLAは、 中で何をやっているのか?
TensorFlow XLAは、 中で何をやっているのか?
コキュートスDsf
コキュートスDsf
FPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGA
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
2値ディープニューラルネットワークと組込み機器への応用: 開発中のツール紹介
ニューラルチューリングマシン入門
ニューラルチューリングマシン入門
Fpgax20170924
Fpgax20170924
(公開版)Reconf研2017GUINNESS
(公開版)Reconf研2017GUINNESS
Tensor flow usergroup 2016 (公開版)
Tensor flow usergroup 2016 (公開版)
バイナリニューラルネットとハードウェアの関係
バイナリニューラルネットとハードウェアの関係
Similar to コキュートスTfug
グラフ解析で社長の脳内さらす!
グラフ解析で社長の脳内さらす!
Kazuki Morozumi
Shiva 〜Nextremerをscale upする機械学習環境〜
Shiva 〜Nextremerをscale upする機械学習環境〜
Kazuki Morozumi
スケーラブルな Deep Leaning フレームワーク "Apache MXNet” を AWS で学ぶ
スケーラブルな Deep Leaning フレームワーク "Apache MXNet” を AWS で学ぶ
Amazon Web Services Japan
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
ChainerMNが即座に使える環境を提供するXTREME DNA HPC Cloud
ChainerMNが即座に使える環境を提供するXTREME DNA HPC Cloud
Hirono Jumpei
20131209_buildinsidermeetup
20131209_buildinsidermeetup
kumake
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS Virtualized Infrastructure Operators group ARCHIVES
20180723 PFNの研究基盤 / PFN research system infrastructure
20180723 PFNの研究基盤 / PFN research system infrastructure
Preferred Networks
フレームワークの良さを教えてやろう SAStruts + S2JDBC
フレームワークの良さを教えてやろう SAStruts + S2JDBC
Kazuma Kimura
Azure Antenna AI 概要
Azure Antenna AI 概要
Miho Yamamoto
DLL#3 Microsoft Community & AI Update
DLL#3 Microsoft Community & AI Update
Hirono Jumpei
AWSでGPUも安く大量に使い倒せ
AWSでGPUも安く大量に使い倒せ
Yasuhiro Matsuo
[JAWS-UG AI支部] AWS AIアップデート
[JAWS-UG AI支部] AWS AIアップデート
Yasuhiro Matsuo
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
Kentaro Yoshida
俺とKubernetes
俺とKubernetes
Masayuki KaToH
.net micro framework for toppers
.net micro framework for toppers
Kiyoshi Ogawa
CfnClusterを使って10分強でHPC環境を構築する
CfnClusterを使って10分強でHPC環境を構築する
Daisuke Nagao
[Japan Tech summit 2017] MAI 003
[Japan Tech summit 2017] MAI 003
Microsoft Tech Summit 2017
研究用途でのAWSの利用事例と機械学習について
研究用途でのAWSの利用事例と機械学習について
Yasuhiro Matsuo
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート
Kazumasa Ikuta
Similar to コキュートスTfug
(20)
グラフ解析で社長の脳内さらす!
グラフ解析で社長の脳内さらす!
Shiva 〜Nextremerをscale upする機械学習環境〜
Shiva 〜Nextremerをscale upする機械学習環境〜
スケーラブルな Deep Leaning フレームワーク "Apache MXNet” を AWS で学ぶ
スケーラブルな Deep Leaning フレームワーク "Apache MXNet” を AWS で学ぶ
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
ChainerMNが即座に使える環境を提供するXTREME DNA HPC Cloud
ChainerMNが即座に使える環境を提供するXTREME DNA HPC Cloud
20131209_buildinsidermeetup
20131209_buildinsidermeetup
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
VIOPS09: 圧倒的なコストパフォーマンスを実現するクラウドアーキテクチャの秘密
20180723 PFNの研究基盤 / PFN research system infrastructure
20180723 PFNの研究基盤 / PFN research system infrastructure
フレームワークの良さを教えてやろう SAStruts + S2JDBC
フレームワークの良さを教えてやろう SAStruts + S2JDBC
Azure Antenna AI 概要
Azure Antenna AI 概要
DLL#3 Microsoft Community & AI Update
DLL#3 Microsoft Community & AI Update
AWSでGPUも安く大量に使い倒せ
AWSでGPUも安く大量に使い倒せ
[JAWS-UG AI支部] AWS AIアップデート
[JAWS-UG AI支部] AWS AIアップデート
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
MySQLと組み合わせて始める全文検索プロダクト"elasticsearch"
俺とKubernetes
俺とKubernetes
.net micro framework for toppers
.net micro framework for toppers
CfnClusterを使って10分強でHPC環境を構築する
CfnClusterを使って10分強でHPC環境を構築する
[Japan Tech summit 2017] MAI 003
[Japan Tech summit 2017] MAI 003
研究用途でのAWSの利用事例と機械学習について
研究用途でのAWSの利用事例と機械学習について
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート
More from Natsutani Minoru
robotics42.pptx
robotics42.pptx
Natsutani Minoru
自作プログラミング言語の集い
自作プログラミング言語の集い
Natsutani Minoru
200821 swest
200821 swest
Natsutani Minoru
Kyoto devcafe
Kyoto devcafe
Natsutani Minoru
TFLiteのグラフ構造について
TFLiteのグラフ構造について
Natsutani Minoru
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
Natsutani Minoru
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
Natsutani Minoru
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
Natsutani Minoru
Interpretable ml
Interpretable ml
Natsutani Minoru
不足するAI人材に対する「パソナテックの人材育成ソリューション」
不足するAI人材に対する「パソナテックの人材育成ソリューション」
Natsutani Minoru
ML meetup20190327
ML meetup20190327
Natsutani Minoru
Kyoto dev caffe
Kyoto dev caffe
Natsutani Minoru
Kof
Kof
Natsutani Minoru
Tfug20181105
Tfug20181105
Natsutani Minoru
Rakuten20181027
Rakuten20181027
Natsutani Minoru
Nagosta 20181020
Nagosta 20181020
Natsutani Minoru
Road damge ai
Road damge ai
Natsutani Minoru
パソナテックのAI人材育成の取り組みのご紹介
パソナテックのAI人材育成の取り組みのご紹介
Natsutani Minoru
Fpgax20180217
Fpgax20180217
Natsutani Minoru
なにわテック20180127
なにわテック20180127
Natsutani Minoru
More from Natsutani Minoru
(20)
robotics42.pptx
robotics42.pptx
自作プログラミング言語の集い
自作プログラミング言語の集い
200821 swest
200821 swest
Kyoto devcafe
Kyoto devcafe
TFLiteのグラフ構造について
TFLiteのグラフ構造について
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
AutoMLとQumicoを使って、ラズパイでディープラーニングを動かす話
Interpretable ml
Interpretable ml
不足するAI人材に対する「パソナテックの人材育成ソリューション」
不足するAI人材に対する「パソナテックの人材育成ソリューション」
ML meetup20190327
ML meetup20190327
Kyoto dev caffe
Kyoto dev caffe
Kof
Kof
Tfug20181105
Tfug20181105
Rakuten20181027
Rakuten20181027
Nagosta 20181020
Nagosta 20181020
Road damge ai
Road damge ai
パソナテックのAI人材育成の取り組みのご紹介
パソナテックのAI人材育成の取り組みのご紹介
Fpgax20180217
Fpgax20180217
なにわテック20180127
なにわテック20180127
Recently uploaded
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
Hiroshi Tomioka
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Recently uploaded
(9)
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
コキュートスTfug
1.
Kerasで組み込み向けフレームワークを作ろう - コキュートスの紹介 - 2017/4/21 株式会社パソナテック エンジニアリング事業部 夏谷 1
2.
今回の発表の目的 2 本日は、コキュートスという俺俺自作フレームワークの中で使っているKerasの機能を紹 介します。それをネタに、みなさんも俺俺フレームワークを作ってください。 もしコキュートスより良い物があったら、僕はそっち使います。
3.
アジェンダ 自己紹介 開発の経緯
コキュートスの紹介 コキュートスとは Kerasからの情報取得 Numpyフォーマット データの型を変更する 3
4.
4 自己紹介
5.
自己紹介 夏谷実 株式会社パソナテック
株式会社パソナテック エンジニアリング事業部 エンジニアマネージメントグループ TFUG KANSAI←New! 5/27! 最近は半導体関連の仕事が多い FPGAが好き プログラミングも好き Deep Learningも好き 5
6.
6 公認キャラにライバル登場 安芸乃 てく(通称:てくのたん) CV:高野麻理佳 Twitter→@techno_tan 高知県出身の将来が不安な女の子(ソ^▽^)ナ 技術を身に着けて自由な働き方をしたいと思っており、上京し パソナテックにインターンとして勤務している。 最近はインターンとしてチャットボットの開発をしていたり、Little Bitsなどを触ってみたりしている。 5/24(水)けーすた! 企業が取り組む最新技術動向が分かる、ケーススタディ型ライトニングトーク イべント開催!GMOインターネット株式会社様のキャラクター美雲このはと のコラボ! あ
き の
7.
7 開発の経緯
8.
開発の経緯 8 NPS-Verilog データフローを定義した らFPGAで動くVerilog を作ろう →そもそも機械学習や Deep Learningが分か ってなく、挫折。 NPU 量子化されたデータを 扱う専用プロセッサを 作ろう。 Cのリファレンスモデル がいるよね。 コキュートス NPUのプロジェクトから、 C言語生成ツールのみ スピンアウト Darknetの影響は受けている
9.
コキュートス(嘆きの川) 9 地獄 (組み込み業界) 地上 (クラウド、GPU) 電力が足りず、GPUやクラウドが使えない世界 組込みエンジニア達 嘆きの川 AIサイエンティスト 層構造
10.
開発の現状 10 NPU MNIST(CNN)sampleは動作 突然のVer2.0 API変更 それに合わせて、プロジェクト名をコキュ ートスに InputLayer Conv2D Conv2D MaxPooling2D Conv2D Conv2D MaxPooling2D Conv2D Conv2D Conv2D MaxPooling2D Conv2D Conv2D Conv2D MaxPooling2D Conv2D Conv2D Conv2D MaxPooling2D flatten Dence Dence Dence Output Kerasに付属するVGG16サンプル動作
11.
11 コキュートスの紹介
12.
コキュートスとは 12 Kerasから、Cソースを半自動生成します。今の所学習はしません。
13.
コキュートスのネット対応方法 13 ①MNIST(CNN) Conv2D ReLU MaxPooling 2D Dense Dense softmax 3x3 valid ②VGG16 Conv2D ReLU MaxPooling 2D Dense Dense softmax 3x3 same Input Layer ③YOLO ZeroPaddin g2D MaxPooling 2D Dense Dense softmax LeakReLU Batch Normalize ④SSD Conv2D MaxPooling 2D Conv2D ZeroPooling 2D GlobalAverag ePooling2D Flatten Flatten Flatten Flatten Concatenate Reshape PriorBox カスタムレイヤー
14.
コキュートスが出力するCソースの特徴 14 特徴2:C言語が出来れば参加OKのフレームワークを目指す。 ・組込機器でのデバッグしやすさを優先 ・C++の機能は使わない。 ・関数ポインタ、ポインタのポインタ、ポインターの配列は使わない。 ・出来る限り、べたにループで回す。 ・環境に応じた最適化は出来る人がする。 特徴1:どんなプアーな環境でも動くCソースを出力する。 ・mallocやファイルシステムを前提としない。 ・実行に必要なメモリ使用量が明確 ・ブラックボックスを作らない ・必要なライブラリを最小にする。 ・特別な処理は、直接Cソースを書き換える。 ・環境に応じた最適化は別途行う。 Pythonの知識が無くてもDeep Learningのプロジェクトに楽しく参加できる!
15.
出力ソースの実例 15 https://github.com/natsutan/cocytus/blob/master/example/vgg16/c/cqt_gen/cqt_gen.c デバッグ中に確認したくなるであろう情報は、全てグ ローバル変数で宣言する。デバッガで止めたときに いつでも確認できる。 初期設定 データの並びを画処理のエンジニアが理解し やすい順番に変換
16.
16 Kerasからの情報取得
17.
Kerasからの情報取得 17 Kerasでモデルを作成 し、学習させる。 ①Summaryの表示 ②JSONの出力 ③学習結果(重み)の 出力
18.
①summaryの表示 18 model.summary() を使う ____________________________________________________________________________________________________ Layer (type)
Output Shape Param # Connected to ==================================================================================================== convolution2d_1 (Convolution2D) (None, 26, 26, 32) 320 convolution2d_input_1[0][0] ____________________________________________________________________________________________________ activation_1 (Activation) (None, 26, 26, 32) 0 convolution2d_1[0][0] ____________________________________________________________________________________________________ convolution2d_2 (Convolution2D) (None, 24, 24, 32) 9248 activation_1[0][0] ____________________________________________________________________________________________________ activation_2 (Activation) (None, 24, 24, 32) 0 convolution2d_2[0][0] ____________________________________________________________________________________________________ maxpooling2d_1 (MaxPooling2D) (None, 12, 12, 32) 0 activation_2[0][0] ____________________________________________________________________________________________________ dropout_1 (Dropout) (None, 12, 12, 32) 0 maxpooling2d_1[0][0] ____________________________________________________________________________________________________ flatten_1 (Flatten) (None, 4608) 0 dropout_1[0][0] ____________________________________________________________________________________________________ dense_1 (Dense) (None, 128) 589952 flatten_1[0][0] 学習データの個数 コンボリューション用の3x3のフィルターが32個あります。重み(学習済みデータ)の個数は いくつですか?3×3×32=288個じゃないの? 各フィルターにbias項があるので、32個増えて288+32 = 320個が正解
19.
②jsonの出力 19 with open(‘output/cnn.json’, ‘w’)
as fp: json_string = model.to_json() fp.write(json_string) json_string = open(json_file, 'r').read() model = model_from_json(json_string) {"kernel_regularizer": null, "name": "block1_conv1", "trainable": true, "kernel_constraint": null, "filters": 64, "activity_regularizer": null, "bias_constraint": null, "strides": [1, 1], "bias_regularizer": null, "kernel_size": [3, 3], "activation": "relu", Keras Layerのコンストラクタに与え る引数がjsonに入っている。 カスタムレイヤーの場合は、json出力のために関数を定義する必要がある。
20.
②jsonの出力 20 一度jsonファイルを読み込むと、model.layersから各層の詳細情報が取得できる。
21.
③学習結果の出力 21 model.save('output/cnn.h5') Hdf5形式で保存できる ディレクトリ構造を持ったファイル形式。 コキュートスでは、Kerasのソースコードを流用して、レイヤー単位のnumpy形式 で保存している
22.
22 Numpy形式について
23.
データをnumpy形式でやりとりする。 23 Numpy形式で保存することで、np.loadで簡単に読み込める。 Numpyの統計情報や、matplolibによる可視化が簡単。 デバッグ時に非常に役に立つ。 重みの分布を可視化 ある画像を入れたときの、特 定の層の出力値の可視化
24.
kerasで特定の層の出力を取り出す。 24 from keras import
backend as K # モデルの読み込み model = VGG16(include_top=True, weights='imagenet', input_tensor=None, input_shape=None) # 入力データをxに設定 img = image.load_img(img_file, target_size=(224, 224)) x = image.img_to_array(img) x = np.expand_dims(x, axis=0) # K.funtionで第l層の出力を取り出す関数を作る。 l = 10 get_layer_output = K.function([model.layers[0].input, K.learning_phase()], [model.layers[l].output]) # 出力の取り出し layer_output = get_layer_output([x, 0]) 取り出した出力を、np.saveを使ってnumpyフォーマットで保存する。
25.
numpyフォーマット 25 numpyヘッダー - magic number
x93NUMPY - major version, minor version - HEADER_LEN - python dictionary - 型 <f4 float32 - 配列のサイズ (3, 244, 244) np.save(filename, data, allow_pickle=False) を忘れずに float data[3][224][224]; //fseekでヘッダーを飛ばす fseek(fp, 8+2+hsize, 0); //freadでサイズ分読み込み fread(&data, 4, DATA_NUM, fp); Cソースによるnumpy 読み込み
26.
numpyを使ったデバッグ例① 26 VGG16に犬の画像を入れて、レイヤー0 (InputLayer)の値をnumpy出力して比較した。 青:Kerasの出力 赤:コキュートスの出力 Kerasの入力が、全体的に小さい値になっ ている。調べてみると、VGG16では、RGB に対して(103.939, 116.779, 123.68)を引 かないと行けなかった。 コキュートスの画像変換プロ グラムを修正 修正後には一致
27.
numpyを使ったデバッグ例② 27 3x3のコンボリューションの例: ニューロンの反応する場所はあっているけど、計算結果が違う。 →3x3のxとyの取り方が逆でした。
28.
28 データの型を変更する
29.
コキュートスの型変換方法 29 Conv2D 重み float32 出力 float32 入力 unit8,
or float32 MNISTとVGG16では入力の型が違う。 同じソースで処理したいが、Cの枠組み では扱えない。 将来的には、重みを8bitにしたり、柔軟 な型に対応したい。 さて、どうしましょうか? 解決策1:C++の関数テンプレートを使う。 template<typename T,typename U> T Add(T a,U b){ return a+b; } 技術的には正しい選択だが、C++はいろいろ難易度が高い。 解決策2:ポインターをキャストしもって使う。 Cソースの難易度が上がって、手を入れられなくなる。
30.
コキュートスの型変換方法 30 C++のテンプレート関数の仕組みを、コキュートス内部に実装。 C++テンプレート関数の恩恵を受けながらも、Cのソースを出力する。 int $func_name (CQT_LAYER
*lp, void *inp, void *outp) { $weight_type filter3x3[3][3]; $input_type data3x3[3][3]; $weight_type bias; LY_Conv2D *cnvp; cnvp = lp->param_p; $input_type *ip = ($input_type *)inp; ライブラリ生成時に変換 int CQT_Conv2D_same_3x3_if_of (CQT_LAYER *lp, void *inp, void *outp) { float filter3x3[3][3]; float data3x3[3][3]; float bias; LY_Conv2D *cnvp; cnvp = lp->param_p; float *ip = (float *)inp; ソースを書き換えて型を指定。 関数名は一定のルールでマングリング DLの計算は、四則演算+三角関数程度なので、 C言語の暗黙の型変換で十分対応できる。 将来的には、固定少数点数の桁数が違う関数や、特別な仕組みの量子化にも対応予定
31.
まとめ 31 keras コキュートス 組込みCソース 組込み プロセッサ 向け最適化 DSP 向け最適化 FPGA向け 実装 専用HW 向け実装 中間言語としての C言語
32.
まとめ 誰でも参加できる組込向けフレームワークコキュー トスを作ってます。 今、ラズパイでVGG16が動いてます。
Kerasを使うと、独自フレームワークが簡単に作れます 。 numpyを使ってデバッグの効率アップ いろんな型に対応するためにC++の機能を取り込みま した。 中間言語してのC言語 Pythonと組込みCができるともてる 32 ご静聴ありがとうございました。
Editor's Notes
こうのまりか
Download now