Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
tfug-kagoshima
Report
tak9029
Follow
Jun. 8, 2018
•
0 likes
1 likes
×
Be the first to like this
Show More
•
1,266 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Check these out next
PENGUIN AI ML-Agents
yosukehirano1
日本語プログラミング言語ワークショップ
kyuuzyuu9yen
プログラミング教育の課題を解決する モブプラ by もぶぷろん
singularitysociety
Python勉強会 2015-12-02
WoodPecker (Shizuoka Univ)
PDLで遊んでみた Yomitan.pm #5 LT
yokoda_toshiaki
[学位(修士)論文公開審査会] 入力支援機能を備えた日本語表記による初学者向けプログラミング学習環境の構築
Ryota Nakamura
Visual Studio による開発環境・プログラミングの進化
Fujio Kojima
議論を描く技術「ファシリテーショングラフィック」
nishikawa_makoto7
1
of
62
Top clipped slide
tfug-kagoshima
Jun. 8, 2018
•
0 likes
1 likes
×
Be the first to like this
Show More
•
1,266 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Engineering
TFUG鹿児島#1で話したスライド
tak9029
Follow
Advertisement
Advertisement
Advertisement
Recommended
TensorFlowで遊んでみよう!
Kei Hirata
12.4K views
•
30 slides
TensorFlowで逆強化学習
Mitsuhisa Ohta
17.5K views
•
28 slides
TensorFlow 入門
Takenori Nakagawa
6.1K views
•
29 slides
機械学習ライブラリ : TensorFlow
エンジニア勉強会 エスキュービズム
1K views
•
19 slides
開発者からみたTensor flow
Hideo Kinami
4.6K views
•
13 slides
思いついたアルゴリズムを TensorFlow で実装してみた話
Shuhei Fujiwara
13K views
•
12 slides
More Related Content
Slideshows for you
(8)
PENGUIN AI ML-Agents
yosukehirano1
•
933 views
日本語プログラミング言語ワークショップ
kyuuzyuu9yen
•
199 views
プログラミング教育の課題を解決する モブプラ by もぶぷろん
singularitysociety
•
550 views
Python勉強会 2015-12-02
WoodPecker (Shizuoka Univ)
•
735 views
PDLで遊んでみた Yomitan.pm #5 LT
yokoda_toshiaki
•
472 views
[学位(修士)論文公開審査会] 入力支援機能を備えた日本語表記による初学者向けプログラミング学習環境の構築
Ryota Nakamura
•
816 views
Visual Studio による開発環境・プログラミングの進化
Fujio Kojima
•
1K views
議論を描く技術「ファシリテーショングラフィック」
nishikawa_makoto7
•
26K views
Similar to tfug-kagoshima
(20)
Using Deep Learning for Recommendation
Eduardo Gonzalez
•
1.1K views
非同期系統の基礎
segayuu
•
398 views
20120927 findjob4 dev_ops
ume3_
•
4.3K views
初学者教育のプロが教える学習のポイント ~できるインフラエンジニアを目指そう~
VirtualTech Japan Inc./Begi.net Inc.
•
1.1K views
TensorFlowによるCNNアーキテクチャ構築
Hirokatsu Kataoka
•
18.4K views
[DL Hacks]Visdomを使ったデータ可視化
Deep Learning JP
•
4.6K views
TensorFlowプログラミングと分類アルゴリズムの基礎
Etsuji Nakai
•
4.7K views
仮想端末管理ソフトウェア
Katsutoshi Nagaoka
•
1.9K views
これからのOpenShiftの話をしよう
Kazuto Kusama
•
3.4K views
オトナのプログラミング勉強会 オトナのDeep Learning 2016-11
Katsuhiro Morishita
•
1.6K views
eZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティス
ericsagnes
•
511 views
ChainerでDeep Learningを試すために必要なこと
Retrieva inc.
•
1.2K views
ChainerでDeep Learningを試す為に必要なこと
Jiro Nishitoba
•
2.3K views
大規模並列実験を支えるクラウドサービスと基盤技術
RyuichiKanoh
•
1.7K views
MTプラグイン入門以前
Hiroshi Yamato
•
2.5K views
CodingTips+ 基礎編
Yusuke Ito
•
515 views
Deep Learning基本理論とTensorFlow
Tadaichiro Nakano
•
7.4K views
ディープラーニングゼミ TensorFlowで学ぶ理論と実践
Yota Ishida
•
2.3K views
今、おさえておきたい DevOps
智治 長沢
•
9.6K views
Tensorgo
YoshitomoYasuno
•
68 views
Advertisement
More from tak9029
(10)
TensorFlowをもう少し詳しく入門
tak9029
•
18.4K views
Interop2017
tak9029
•
1.2K views
Tfug#4
tak9029
•
2.4K views
畳み込みLstm
tak9029
•
19.7K views
深層学習とTensorFlow入門
tak9029
•
36.3K views
Tf勉強会(5)
tak9029
•
13K views
Tf勉強会(4)
tak9029
•
3.9K views
Tensor flow勉強会3
tak9029
•
4.4K views
TensorFlowで会話AIを作ってみた。
tak9029
•
178.4K views
Tensor flow勉強会 (ayashiminagaranotensorflow)
tak9029
•
11.9K views
Recently uploaded
(20)
★可查可存档〖制作贝桑松大学文凭证书毕业证〗
tujjj
•
0 views
《高级时装学院毕业证|学位证书校内仿真版本》
hj123saf
•
2 views
《勒芒大学毕业证|学位证书校内仿真版本》
hj123saf
•
2 views
Radio03(1995).pdf
ivan ion
•
5 views
Radio06(1995).pdf
ivan ion
•
2 views
《戴尔豪斯大学毕业证|学位证书校内仿真版本》
124hdjkhas
•
3 views
★可查可存档〖制作巴黎第十二大大学文凭证书毕业证〗
tujjj
•
0 views
揭秘英国留学:如何获得利物浦大学毕业证?
yatenf
•
2 views
★可查可存档〖制作萨福克大学文凭证书毕业证〗
vvvvv24
•
0 views
《斯旺西大学毕业证|学位证书校内仿真版本》
w124dsa
•
2 views
★可查可存档〖制作乌尔姆大学文凭证书毕业证〗
tujjj
•
0 views
《阳光海岸大学毕业证|学位证书校内仿真版本》
hj123saf
•
2 views
DBチューニング超入門
VirtualTech Japan Inc./Begi.net Inc.
•
5 views
★可查可存档〖制作密德萨斯大学文凭证书毕业证〗
vgfg1
•
0 views
在哪里可以做《巴黎第十二大大学文凭证书|毕业证》
kjds1245
•
2 views
★可查可存档〖制作布克大学文凭证书毕业证〗
mmmm282537
•
0 views
《卡尔顿大学毕业证|学位证书校内仿真版本》
124hdjkhas
•
3 views
今さら聞けない人のためのDevOps超入門
VirtualTech Japan Inc./Begi.net Inc.
•
8 views
★可查可存档〖制作俄亥俄大学文凭证书毕业证〗
fgfg45
•
0 views
★可查可存档〖制作奥克兰商学院文凭证书毕业证〗
tujjj
•
0 views
Advertisement
tfug-kagoshima
深層学習・機械学習と TensorFlow TFUG Kagoshima
自己紹介 新村 拓也(Takuya Shimmura) ・鹿児島県姶良市出身 ・シンギュラリティ株式会社
CTO ・著書「TensorFlowではじめるDeepLearning実装入門」
機械学習とか深層学習 でちょいちょいってやって よ!いつものお仕事 ・・・ お客様のビジネス課題を機械学習などを 駆使してちょいちょいっと解決するお仕事
これから話すこと • 巷で話題の機械学習、深層学習とは何か? • よく用いられる深層学習の手法、モデル •
TensorFlowに関する横断的な解説
機械学習とは? Wikipediaによると・・・ 人間が自然に行っている学習能力と同様の機能を コンピュータで実現しようとする技術・手法のことである。
機械学習とは? 明示的にプログラムしなくても学習する能力を コンピュータに与える研究分野 by アーサー・サミュエル
機械学習とは? コンピュータプログラムが、ある種のタスクTと評価尺度Pにおいて、 経験Eから学習するとは、タスクTにおけるその性能をPによって 評価した際に、経験Eによってそれが改善されている場合である。 トム・M・ミッチェル
機械学習とは? • 推論と正解の誤差を用いてモデルを構成するパラメータを自動更新 するシステム 入力 モデル 部屋の広さ:
80m^2 駅からの距離: 100m 築年数: 3年 階数: 10階 5000万円! 推論 正解 9000万円 誤差 4000万円 モデル更新(学習)
機械学習のモデル • 機械学習のモデルにもいろいろなものがある 決定木法
線形回帰、ロジスティック回帰 SVM ニューラルネットワーク K-means,階層型クラスタリング, MeanShift pLSI, NMF, LDA PFM 混合ガウス分布 Lasso回帰、Ridge回帰、Elastic Net
scikit-learn チートシート
ニューラルネットワークとは? • 形式ニューロンを用いてモデルを構築した機械学習手法 𝑥1 𝑥2 𝑥3 入力 出力
y 𝑤3 𝑏 𝑤2 活性化関数 𝑤1 𝑦 = 𝑓(𝑤1 𝑥1 + 𝑤2 𝑥2 + 𝑤3 𝑥3 + 𝑏)
ニューラルネットワーク 部屋の広さ 80m^2 駅からの距離 100m 築年数 3年 入力層 中間層 出力層 予想価格 5000万 正解価格 9000万 誤差4000万 誤差を元にで学習! 学習対象は重みとバイアス 誤差逆伝播法+確率的勾配降下法
深層学習とは? • 入力層・中間層1・中間層2・出力層のように4層以上のニューラル ネットワークで行う学習のこと
多層ニューラルネットワークの問題点 • データ数に対してモデルパラメータが多すぎることによる過学習 • 勾配消失により入力層に近い層が学習できない •
計算コストが高い
深層学習 • 近年では様々な手法や技術の進歩により多層ニューラルネットワー クの問題点が解決されている データセットの充実 GPUを用いた高速演算 研究によって生み出された新手法
畳み込みニューラルネットワーク(CNN) • 画像のフィルタ処理におけるフィルタの値をニューラルネットワーク のパラメータとして学習する http://deeplearning.stanford.edu/wiki/index.php/Feature_extraction_using_convolution
様々な画像分類ネットワーク GoogLeNet ResNet SENet
DCGAN • 画像の生成やスタイル変換を行うことも可能 D G Z (noise) G(Z)X real fake Vanilla
GAN X Y G F Z (noise) G(Z) Z’ (noise) G(Z) Dy real fake real fake Dx Cycle GAN
再帰的ニューラルネットワーク(RNN) • 時系列を自然に扱えるニューラルネットワーク 翻訳エンジンなどにも採用されている
RNNの手法 h c x U W ・ 中間層入力(
) ・ 中間層出力( ) ・ 中間状態( ) の 3 つがそれぞれのゲート を制御 h c x Long Short Term Memory (LSTM) Attention Mechanism Bi-directional RNN
深層強化学習 • Deep Q
Network • A3C • PPO
AutoML • ニューラルネットワークの構造をRNN+強化学習で生成 • 現在Google
Cloud Platformでα版リリース
TensorFlow入門
TensorFlowとは? • Googleより2015年11月に公開されたOSS • 高性能数値演算ライブラリ •
様々な言語やプラットフォームで動作 • 2018年5月現在v1.8.0
Tensorとは? • 多次元配列のこと
TensorFlowの特徴 • 計算グラフを用いた宣言型プログラミング(命令型もサポート) • 低レベルなものから高レベルなものまで様々なAPIを提供 •
充実したエコシステム • 様々な言語やデバイスで動作 • 大規模分散処理のための様々な機能 • その知名度がために圧倒的な利用ユーザ数、活発なコミュニティ
TensorFlowの特徴 • 計算グラフを用いた宣言型プログラミング(命令型もサポート) • 低レベルなものから高レベルなものまで様々なAPIを提供 •
充実したエコシステム • 様々な言語やデバイスで動作 • 大規模分散処理のための様々な機能 • その知名度がために圧倒的な利用ユーザ数、活発なコミュニティ
計算グラフ • 計算過程をノードとエッジによるグラフで表したもの • ノードが演算処理(Operation)を表す •
エッジがやりとりされる数値(Tensor)を表す const1 val1 add 定数:4 変数:初期値0 加算の結果 a = tf.constant(4) b = tf.Variable(0) add = tf.add(a, b) ・どのTensorがどのオペレーションへの入力である ・出力に対する入力の勾配式 のような、各種メタ情報を保持している。
Why 計算グラフ? • 自動微分の効率化 •
局所計算ができる 勾配計算のたびに lim ℎ→0 𝑓 𝑥+ℎ −𝑓(𝑥) ℎ をパラメータの数計算する 局所的に微分計算をしておき、それを伝播させることで算出 𝑥 𝑦 𝐸 𝜕𝑦 𝜕𝑥 𝐸 VS
宣言型プログラミング • Define and
Runともいう • 対義語は命令型プログラミング(Define by Run) 命令型 宣言型 処理の記述は計算グラフを構築しているだけであり計算は行わない。 5 出力
Why 宣言型? • 計算の最適化 •
こういうモデルにしてということだけ記述して、最適化はTFにお任せ • 分散処理も記述しやすい • 欠点 • 動的なモデルが組めない • デバッグが困難
Eager Execution • 以下のように書くだけで命令型になる パフォーマンスは若干悪くなる まだ全部のAPIが対応しているわけではない 例) 5 出力
TensorFlowの特徴 • 計算グラフを用いた宣言型プログラミング(命令型もサポート) • 低レベルなものから高レベルなものまで様々なAPIを提供 •
充実したエコシステム • 様々な言語やデバイスで動作 • 大規模分散処理のための様々な機能 • その知名度がために圧倒的な利用ユーザ数、活発なコミュニティ
様々なAPI • メリット:ニューラルネットワーク以外にも様々な計算が行える • tf.distributions・・・確率分布を用いた計算 •
tf.spectral・・・フーリエ変換 • tf.contrib.learn.SVM・・・サポートベクトルマシーン • デメリット:同じようなAPIがありどれを使えばいいのか分からない • tf.layer.conv2d と tf.contrib.layers.conv2d • TFのWrapperの「Keras」 と tf.keras
API概要 一番低レベルなAPI tf.nn パッケージなど
低レベルなAPIで書くと • 一つの層を書くだけでこのような感じ
低レベルなAPIで書くと ソースコード全文 全てのパラメータや計算処理を記述するため、詳細なloggingや モデル構築が可能。 ただし書いてて辛い TFが出てきた当初はこれしかなかった!
API概要 すこし高レベルなAPI tf.layers パッケージ
tf.layersパッケージで書くと • 一つの層は1行で記述可能 しかし重みやバイアスの情報が消えているため、重みのログを取る場合などに 工夫する必要がある。 低レベルの場合
API概要 高レベルなAPI Keras, tf.keras パッケージ
tf.kerasで書くと • 1層を1行で書くのはもちろん訓練プロセスや実行も1行で記述可能
API概要 もっとも高レベルなAPI Estimatorパッケージ
Estimatorパッケージで • ネットワーク構築も1ステップで可能 4層で、中間層のユニット10, 10,
クラス数3 EstimatorはPre-made EstimatorとCustomEstimatorの2種類
どのAPIを使えばいいの? • Estimator • 簡単なモデルですぐに試したい •
GCPのCloudMLと連携 • Keras • 標準的なログや成果物を出力して楽に開発 • tf.layers • 訓練自体の制御を行いたい(ログの選定など) • 低レベルAPI • 独自レイヤー開発
その他のAPI • DatasetAPI(tf.data) • データセットの整形、バッチ化をサポートしてくれる超便利API •
Contrib (tf.contrib) • 超便利だけどバグとかあったらゴメンね! • ちゃんと確認したら正式版に移行するかもしれないAPI群 訓練 バッ チ処理 キュ ーに追加 データ 取得 整形・ バッ チ作成 訓練用のスレッ ド Qu eu e( 待ち行列) データ セッ ト 作成用のスレッ ド
TensorFlowの特徴 • 計算グラフを用いた宣言型プログラミング(命令型もサポート) • 低レベルなものから高レベルなものまで様々なAPIを提供 •
充実したエコシステム • 様々な言語やデバイスで動作 • 大規模分散処理のための様々な機能 • その知名度がために圧倒的な利用ユーザ数、活発なコミュニティ
TFX(TensorFlow Extended) • MLはただ学習する以外にもやることが多い Configuration Data
Collection Data Verification Feature Extraction Process Management Tools Analysis Tools Machine Resource Management Serving Infrastructure Monitoring ML Code TensorFlow Serving TensorFlow Transform TensorFlow Model Analysis TFを基盤として周辺機能開発をサポート
TensorBoard • Webベースの各種ログ可視化ツール デバッグや結果の考察に利用 することにより機械学習のイテ レーションをサポートする非常に 強力なツール
TensorFlowHub • 訓練済みモデルを提供するプラットフォーム 簡単に様々なモデルをダウンロードしてきて、実行・転移学習などが可能。
TensorFlowの特徴 • 計算グラフを用いた宣言型プログラミング(命令型もサポート) • 低レベルなものから高レベルなものまで様々なAPIを提供 •
充実したエコシステム • 様々な言語やデバイスで動作 • 大規模分散処理のための様々な機能 • その知名度がために圧倒的な利用ユーザ数、活発なコミュニティ
様々な言語で動作 Go
様々なデバイスで動作 iOS CPU GPU Android Cloud TPU Embedded Devices
TensorFlow Lite/Mobile • スマホ上で動作するような軽量なモデル構築プラットフォーム
TensorFlowの特徴 • 計算グラフを用いた宣言型プログラミング(命令型もサポート) • 低レベルなものから高レベルなものまで様々なAPIを提供 •
充実したエコシステム • 様々な言語やデバイスで動作 • 大規模分散処理のための様々な機能 • その知名度がために圧倒的な利用ユーザ数、活発なコミュニティ
Distributed TensorFlow モデルパラレル GPU1 で実行
GPU2 で実行 データパラレル • 複数のサーバー、複数のデバイスで分散して処理を行うことが可能。
TensorFlowの特徴 • 計算グラフを用いた宣言型プログラミング(命令型もサポート) • 低レベルなものから高レベルなものまで様々なAPIを提供 •
充実したエコシステム • 様々な言語やデバイスで動作 • 大規模分散処理のための様々な機能 • その知名度がために圧倒的な利用ユーザ数、活発なコミュニティ
活発なオープンソースコミュニティ 開発速度の速さ 1,400+ 開発に貢献した人数 200+ 平均コミット数/週 エコシステムの充実度 8,000+ Stack Overflow の質問に対する回答数 100+ コミュニティが報告した
GitHub issues に対するレスポンス数/週 ユーザ数の多さ 98,000+ GitHub のスターの数 33,000+ 「TensorFlow」でヒットする GitHub レポジトリの数
TFUGとは? TFUGはTensorFlow User Groupの 略でTensorFlowのユーザーグルー プです。 2016年10月に立ち上がり、活動を 続けています
TFUG 可能な限り過去のスライドは公開! Youtubeによるライブ配信もやってます!
分科会/地域TFUG 分科会 地域TFUG ● 論文を読む会 ●
ハード部 ● モバイル部 ● Aizu ● Utsunomiya ● Kansai その他にも初心者向けハンズオンやアイディアソン、ハッカソンも開催
まとめ • TensorFlowは開発が盛んなオープンソースプロジェクト • TensorFlowの目指すところ •
Googleと同じレベルの機械学習を実現できるツール • 大規模データを使った分散学習への対応 • 研究開発に使えるレベルの柔軟性 • プロダクションへの投入 • 様々なデバイスで動作/ 強力な可視化ツール/ 様々なレベルのAPI • 皆さんもどんどん使ってTFUG鹿児島を盛り上げていきましょう!
Advertisement