狠狠撸

狠狠撸Share a Scribd company logo
Deep Learningへの取り組み
およびKAMONOHASHIのご紹介
日鉄ソリューションズ株式会社
システム研究開発センター
1.Deep Learningとは
目次 2.Deep Learningへの取り組み
3.AI開発における問題点
4.KAMONOHASHIの紹介
Deep Learningとは
1
3
人工知能の変遷
4
人工知能の注目ニュース
5
? コンピュータ囲碁
? 計算の難易度(局面の数)
– オセロ(10^60) < 将棋(10^220) < 囲碁(10^360)
– あと十年以上は人間が優位だと言われていた
? 2017年 AlphaGOが世界トップ棋士の柯潔を打ち破る
https://free-materials.com/%E5%9B%B2%E7%A2%81%E3%83%BB%E5%AF%BE%E5%B1%80%E3%83%BB%E7%A2%81%E7%9B%A401/
AI技術発展の原動力
6
アルゴリズムの進歩
大量のデータが利用可能
計算リソースの進化
人工知能と機械学習とディープラーニングの関係
? 人工知能がもっとも包括的な概念(厳密な定義なし)
? 機械学習はその中の一つの分野
? ディープラーニングは機械学習の手法のひとつ
7
機械学習(画像認識のケース)
8
? 人間がラベル付けした大量の画像から
? 機械自身が判定するためのルールを作る(学習)
判定学習(犬の例を教える)
これは犬です
ディープラーニング
9
https://www.blog.google/topics/machine-learning/detecting-diabetic-eye-disease-machine-learning/
従来の機械学習
? 「注目する要素」を人がプログラム
– 色の濃さ
– 大きさ?面積
– etc.
ディープラーニング
? 大量のデータをもとに画像の中の
「注目する要素」を学習
画像認識以外のDeep Learningの事例
10
? 機械翻訳:Deep Learning技術により機械翻訳の精度が向上
– 身近なところではGoogle翻訳など
? 画像生成 - 実在しない人物の顔写真を生成
– https://thispersondoesnotexist.com/
? 音声生成 - 1分間の音声サンプルからスピーチを生成
– https://www.youtube.com/watch?v=YfU_sWHT8mo
Deep Learning 開発者の作業内容(その1)
11
? 目的
– 目標精度を満たすAI(学習結果)の作成
? 問題
– 事前にどのように設計すると高い精度が出るのかは誰にもわからない
? アプローチ
– 最初は直感的に入力値を作り、試しにAIを作ってみる
– 結果から入力値を見直し、繰り返し学習を行って精度を改善させていく
GPU
GPU
学習結果
(AI)
データ
モデル
パラメータ
Deep Learning 開発者の作業内容(その2)
12
? 入力値の見直し例
? データ:どのデータ(画像)を使うか
– すべてのデータを使うのが良いとは限らない
– 工場Aの不良品判定に工場Bの画像が役立つかどうかはわからない
? モデル:ネットワークの種類
– ニューラルネットワークの層の数や層の結合のさせ方を変える
? パラメータ:損失関数のチューニング
– 予測した時、間違いがどれほど大きいのかを定量化する関数を調整しなおす
Deep Learningへの取り組み
2
Deep Learning で弊社の提供できる価値
14
? 製造業で培ったDeep Learningの適用コンサルティング
– Deep Learningを製造業に適用する専属部隊
– 製造業向けのDeep Learning適用ノウハウ
– PoC実施および実機開発の導入実績
? 必要な周辺システムの開発までワンストップで提供可能
? 当社ノウハウを凝縮した開発環境 KAMONOHASHI
? Deep Learningを適用する際に直面した問題を解消
? Deep Learningエンジニアの効率を最大化
https://wired.jp/2017/05/28/future-of-go-summit-day5/
Deep Learning 研究開発チームの体制?状況
15
? 20名程度のAI開発者
? Deep Learningを利用した画像認識?自然言語処理
? 1学習にかかる時間は2日~3日
? GPUクラスタ(5~10ノード) を共有して利用
? 2015年10月より本格的な取り組みを開始
– 現在はDeep Learning専属の部隊
狙い
16
工場に蓄積された画像データ、センサーデータを使い
熟練工の力を学習して全工程に展開する
現在は画像認識による不良検知、製品検査に注力
製造業 × Deep Learning
製造業でDeep Learningを活用するメリット
17
? 職人的な業務課題の解決
– 人によって判断基準に相違 → 判断基準を統一
– 技術継承?後進の育成 → 同じ精度を保持。再学習で精度向上
? 全品?リアルタイム検査
– 365日24時間稼働
– 画像1枚 数ms~数十ms
? ライン?拠点間の横展開
弊社取り組みに近い例(錆の検出)
18
? 境界線が曖昧なものを判定する
? 曖昧な領域を指定するマーキングツールと手法を開発
? 判定ミスを指摘するチェックツールを作成して精度を向上
https://nhoilundercoating.com/car-rust-whats-really-happening/
Deep Learning適用事例:日本製鉄殿
? Deep Learning適用による製品管理の高度化を実現
? 対象
– フレームワーク:TensorFlow
– 利用したデータ量:数千枚の教師データ
– マーキング数:約1万
– 学習時間:1学習に2日間
– 判定速度:1GBytes / sec 程度
AI開発における問題点
3
Deep Learning 開発体制の特徴:計算リソースの共有
21
Storage
GPU a
GPU a
GPU b
GPU b
GPU c
GPU c
GPU d
GPU d
GPU e
GPU e
GPU f
GPU f
GPU f
GPU f
GPU g
GPU g
GPU g
GPU g
複数チームが複数の
計算リソースを共有
他多数プロジェクト
22
Deep Learning 開発のプロセスの特徴:繰り返しが多い
学習では試行錯誤を
繰り返す
23
Deep Learning 開発のプロセスの特徴:繰り返しが多い
プロセス全体でも
繰り返しが発生
問題の再設定
環境の追加?変更
データの集め直し
Deep Learning開発は難しい
環境設定
25
?OS,ライブラリの管理
–繰り返しの度に環境設定
–使うノード全てにインストール
–都度バージョンアップ(ダウン)
–チーム間でのツール競合の対応
使うたびに環境構築の
手間が掛かって大変!
26
再現性
学習環境を再構築
どの学習データを利用したか
どのソースコードを利用したか
実験条件は?
手作業でメモしたら
書き忘れも間違いも頻出!
リソース共有
27
? 複数チームでGPUを共有
?GPUを効率的に利用したい
– GPUは高価なので余剰を作りたくない
– 利用状況を知りたい
– GPU単位で共有したい
?チーム間で公平に利用したい
– 特定のチームに占有されてしまうと困る
使い終わったかどうか
分からない!
特定の一人に
リソースが占有されてしまう!
一つのGPUで十分だが
余りを共有できない!!
AI開発者 AI開発者 AI開発者
28
AI開発の問題点まとめ
KAMONOHASHIの紹介
4
30
AI 開発向けのプラットフォーム
31
AIエンジニアをAIチームへ
32
はAI開発の次の3つの課題を解決する
アーキテクチャ
33
S3 NFS Gateway
Model Source
NFS Storage
System Nodes
Database
PostgreSQL
Cluster Manager
Web Application
GPU Nodes
GPU Job
Minio
User
Browser
CLI
Container
学習環境をコンテナ化
34
? 学習環境を容易に
– 環境をポータブルに
– 開発者は好きなフレームワークを利用可能 (TensorFlow, CNTK, etc)
? GPU単位でのアロケーション
– 従来のジョブスケジューラはノード単位で割り当て
35
学習の入出力をすべて記録
学習環境
python, TensorFlow等
リソース
CPU/メモリ/GPU
GPU
GPU
学習結果
(AI)
大量のデータ
(画像等)
学習モデル
(pythonコード)
実行コマンド
(python train.py)
Storage
モデル開発のすべては
ストレージに自動保存
36
リソース割り当ての自動化
開発者はただジョブをKAMONOHASHIに投入するだけ。
Storage A Storage B
ジョブの投入
? 2 GPUs
? 4 CPU
? TensorFlow 1.3
ジョブの投入
? 4 GPUs
? 8CPU
? TensorFlow 1.4
開発者A 開発者A
Container Container
37
ジョブキューで起きる問題
永遠に
はけない
ジョブキュー
A ジ ョ ブ A ジ ョ ブA ジ ョ ブ
A ジ ョ ブ A ジ ョ ブ A ジ ョ ブ
B ジ ョ ブ
Aが終わるまで
待ち続ける
38
ノード割り当て(パーティション)で解決
A ジ ョ ブ A ジ ョ ブ
A ジ ョ ブ A ジ ョ ブ
B ジ ョ ブ
A ジ ョ ブ A ジ ョ ブ
Aにアクセス権がないノードを
設定することで解決
(パーティション管理)
プロジェクトごとに
同時利用リソースの
上限設定も可能
(クォータ管理)
39
Demo
40
まとめ
環境をポータブル化して
構築?破棄を簡単化
競合を気にせず自由に
OS,フレームワークを選択
バージョン変更も
自由自在
既存のコンテナを
そのまま利用可能
試行錯誤履歴を
すべて保存
ReadOnlyで
再現性担保
学習毎に環境を分断
ボタン一つで
過去の学習を再現
GPU単位で切り出し
パーティション管理と
クォータ管理で公平化
41
AI 開発プラットフォーム
KAMONOHASHI
Web: https://kamonohashi.ai
Twitter: @办补尘辞苍辞丑补蝉丑颈冲办辩颈
42
商標についての注記
43
– NS Solutions は、日鉄ソリューションズ株式会社の登録商標です
– KAMONOHASHI及びKAMONOHASHI(ロゴ)は、日鉄ソリューションズ株式会社の
登録商標です
– その他本文記載の会社名及び製品名はそれぞれ各社の商標又は登録商標です

More Related Content

<AI開発者向け>Deep Learningへの取り組み、およびKAMONOHASHIのご紹介

Editor's Notes

  • #6: 宇宙にある原子数(10镑80)をはるかに超える局面数
  • #9: https://www.pakutaso.com/20120535129post-1450.html https://www.pakutaso.com/20170833240post-12987.html https://www.pakutaso.com/20120411106post-1388.html https://www.pakutaso.com/20170355090post-10833.html https://www.pakutaso.com/20170344073post-10645.html https://www.pakutaso.com/20160127013post-6589.html
  • #10: https://pixabay.com/photos/diagnosis-xray-chest-lungs-ribs-1476620/ Image by <a href="https://pixabay.com/users/oracast-2807514/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1476620">oracast</a> from <a href="https://pixabay.com/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1476620">Pixabay</a>
  • #11: 认识?分类のような分野のほか、画像や音声を生成する技术が発展中
  • #29: 次のシートから各问题を説明
  • #34: Browser Logo http://icooon-mono.com/11398-%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%81%AE%E3%82%A2%E3%82%A4%E3%82%B3%E3%83%B3/ Postgres Logo Trademark Policy Inclusion of the name(s) or logo in your software or documentation to indicate that it runs on or with PostgreSQL. Kubernetes Branding GUidelines https://github.com/kubernetes/kubernetes/blob/master/logo/usage_guidelines.md https://www.linuxfoundation.jp/trademark-usage/ Git Logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License. https://git-scm.com/downloads/logos
  • #36: 丸保存してます + コピーできます
  • #38: ノード指定できるとかの説明
  • #39: ノード指定できるとかの説明