SlideShare ist ein Scribd-Unternehmen logo
1 von 14
TorchDataチュートリアル解説
連結可能なDataPipeで保守性を高める
自己紹介
● 名前: 西岡 賢一郎
○ Twitter: @ken_nishi
○ note: 西岡賢一郎@研究者から経営者へ (https://note.com/kenichiro)
○ YouTube: 【経営xデータサイエンスx開発】西岡 賢一郎のチャンネル
(https://www.youtube.com/channel/UCpiskjqLv1AJg64jFCQIyBg)
● 経歴
○ 東京大学で位置予測アルゴリズムを研究し博士 (学術) を取得
○ 東京大学の博士課程在学中にデータサイエンスをもとにしたサービスを提供する株式会社ト
ライディアを設立
○ トライディアを別のIT会社に売却し、CTOとして3年半務め、2021年10月末にCTOを退職
○ CDPのスタートアップと株式会社データインフォームドの2つに所属
○ 自社および他社のプロダクト開発チーム・データサイエンスチームの立ち上げ経験
今回のお話
● PyTorchとTorchData
● TorchDataのDataPipe ← 今日一番持ち帰っていただきたいこと
● TorchDataのチュートリアル
PyTorchとTorchData
PyTorch
● PyTorchとは
○ ディープラーニングフレームワークの一つ
○ GPUアクセラレーションを備える
○ 動的計算グラフをサポート
出典: https://pytorch.org/blog/computational-graphs-constructed-in-pytorch/
TorchData
● 2022年3月10日にfunctorchとともにベータリリース
○ TorchData: 柔軟で高性能なデータパイプラインを構築するためのライブラリ
○ functorch: 構成可能な関数変換を追加するライブラリ
● TorchDataが必要となった背景
○ 既存のDataLoaderは多くの機能を備えていて拡張することが難しい
○ 同じようなデータロードを何回も書き直さないといけないことがある
● TorchDataでは、iterDataPipeとMapDataPipeを組み合わせることでデータ
ロードを可能にする
TorchDataのDataPipe
データロードを構成するDataPipe: IterDataPipeとMapDataPipe
● 「再利用可能なローディングツールのPyTorch Dataset」と「実際のコーパ
ス上に構築されたiterator/accessor」の間で混乱が生じている
● Datasetの名前をDataPipeに変え、データロードを構成できるように再利用
● 2種類のDataPipe
○ IterDataPipe: iteratorを作る
○ MapDataPipe: 変換を加えるMapper
● DataPipeを連結することで変換グラフを作ることができる
IO DataPipe
Grouping
DataPipe
Mapping
DataPipe
Splitting
DataPipe
Combining
DataPipe
Mapping
DataPipe
連結のイメージ
IterDataPipeの例
JsonをパースするDataPipe
1. 他のDataPipeを受け取り
2. 新しいDataPipeのためのイテレータ実装
出典: https://github.com/pytorch/data#what-are-datapipes
DataPipeの2つの使い方
DataPipeのメソッドもしくはインスタンス生成でDataPipeを追加可能
メソッド インスタンス
zip_with_mapとMapKeyZipperはどちら
も同じ挙動となる
DataPipeにメソッドを追加
functional_datapipeデコレータを利用して、datapipeのメソッドに登録できる
出典:
https://github.com/pytorch/data/blob/b6ade8f097bc9ac08460cd403034a35daff09cfa/torchdata/datapip
es/iter/util/combining.py#L116
DataPipeが
zip_with_mapメソッド
を使えるようになる
TorchDataチュートリアル
TorchDataチュートリアル
● ライブコーディングでTorchDataのチュートリアルを解説
○ Torch Data チュートリアル: https://pytorch.org/data/main/tutorial.html
● チュートリアルで利用するビルトインのDataPipe
○ FileLister: ディレクトリにあるファイルをリスト
○ Filter: DataPipeに含まれる要素を絞る
○ FileOpener: Fileを読み込む
○ CSVParser: CSVをparseする
FileLister Filter FileOpener CSVParser
関連情報
● 今回は紹介しなかった、その他DataPipe
○ https://github.com/pytorch/data/tree/main/torchdata/datapipes
○ Shuffler, Zipper, HttpReader, S3FileLister, S3FileLoaderなど (未検証)
○ 使い方はDocstringを読めば十分
● 使用したコードhttps://github.com/knishioka/machine-learning-
workshop/tree/main/pytorch/torchdata

Weitere ähnliche Inhalte

Was ist angesagt?

SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜SSII
 
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜SSII
 
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence ModelingDeep Learning JP
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?hoxo_m
 
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...西岡 賢一郎
 
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...Deep Learning JP
 
Curriculum Learning (関東CV勉強会)
Curriculum Learning (関東CV勉強会)Curriculum Learning (関東CV勉強会)
Curriculum Learning (関東CV勉強会)Yoshitaka Ushiku
 
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)Shota Imai
 
[DL輪読会]Deep Learning 第15章 表現学習
[DL輪読会]Deep Learning 第15章 表現学習[DL輪読会]Deep Learning 第15章 表現学習
[DL輪読会]Deep Learning 第15章 表現学習Deep Learning JP
 
DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜Jun Okumura
 
自己教師学習(Self-Supervised Learning)
自己教師学習(Self-Supervised Learning)自己教師学習(Self-Supervised Learning)
自己教師学習(Self-Supervised Learning)cvpaper. challenge
 
[DL輪読会]Graph R-CNN for Scene Graph Generation
[DL輪読会]Graph R-CNN for Scene Graph Generation[DL輪読会]Graph R-CNN for Scene Graph Generation
[DL輪読会]Graph R-CNN for Scene Graph GenerationDeep Learning JP
 
ICCV 2019 論文紹介 (26 papers)
ICCV 2019 論文紹介 (26 papers)ICCV 2019 論文紹介 (26 papers)
ICCV 2019 論文紹介 (26 papers)Hideki Okada
 
backbone としての timm 入門
backbone としての timm 入門backbone としての timm 入門
backbone としての timm 入門Takuji Tahara
 
OSS強化学習フレームワークの比較
OSS強化学習フレームワークの比較OSS強化学習フレームワークの比較
OSS強化学習フレームワークの比較gree_tech
 
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...Deep Learning JP
 
ICML 2021 Workshop 深層学習の不確実性について
ICML 2021 Workshop 深層学習の不確実性についてICML 2021 Workshop 深層学習の不確実性について
ICML 2021 Workshop 深層学習の不確実性についてtmtm otm
 
Optimizer入門&最新動向
Optimizer入門&最新動向Optimizer入門&最新動向
Optimizer入門&最新動向Motokawa Tetsuya
 
Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)Kazuki Maeno
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてSho Takase
 

Was ist angesagt? (20)

SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集​ 〜 精度向上のための仕組み・倫理や社会性バイアス 〜
 
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
SSII2022 [SS2] 少ないデータやラベルを効率的に活用する機械学習技術 〜 足りない情報をどのように補うか?〜
 
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
[DL輪読会]Decision Transformer: Reinforcement Learning via Sequence Modeling
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?
 
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
 
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
[DL輪読会]Model soups: averaging weights of multiple fine-tuned models improves ...
 
Curriculum Learning (関東CV勉強会)
Curriculum Learning (関東CV勉強会)Curriculum Learning (関東CV勉強会)
Curriculum Learning (関東CV勉強会)
 
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
最新の多様な深層強化学習モデルとその応用(第40回強化学習アーキテクチャ講演資料)
 
[DL輪読会]Deep Learning 第15章 表現学習
[DL輪読会]Deep Learning 第15章 表現学習[DL輪読会]Deep Learning 第15章 表現学習
[DL輪読会]Deep Learning 第15章 表現学習
 
DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜
 
自己教師学習(Self-Supervised Learning)
自己教師学習(Self-Supervised Learning)自己教師学習(Self-Supervised Learning)
自己教師学習(Self-Supervised Learning)
 
[DL輪読会]Graph R-CNN for Scene Graph Generation
[DL輪読会]Graph R-CNN for Scene Graph Generation[DL輪読会]Graph R-CNN for Scene Graph Generation
[DL輪読会]Graph R-CNN for Scene Graph Generation
 
ICCV 2019 論文紹介 (26 papers)
ICCV 2019 論文紹介 (26 papers)ICCV 2019 論文紹介 (26 papers)
ICCV 2019 論文紹介 (26 papers)
 
backbone としての timm 入門
backbone としての timm 入門backbone としての timm 入門
backbone としての timm 入門
 
OSS強化学習フレームワークの比較
OSS強化学習フレームワークの比較OSS強化学習フレームワークの比較
OSS強化学習フレームワークの比較
 
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...
【DL輪読会】DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Dri...
 
ICML 2021 Workshop 深層学習の不確実性について
ICML 2021 Workshop 深層学習の不確実性についてICML 2021 Workshop 深層学習の不確実性について
ICML 2021 Workshop 深層学習の不確実性について
 
Optimizer入門&最新動向
Optimizer入門&最新動向Optimizer入門&最新動向
Optimizer入門&最新動向
 
Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 

Ähnlich wie TorchDataチュートリアル解説

H2Oを使ったノーコードのAutoML
H2Oを使ったノーコードのAutoMLH2Oを使ったノーコードのAutoML
H2Oを使ったノーコードのAutoML西岡 賢一郎
 
Feature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解するFeature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解する西岡 賢一郎
 
H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門西岡 賢一郎
 
Amazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成するAmazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成する西岡 賢一郎
 
Amazon SageMaker JumpStart
Amazon SageMaker JumpStartAmazon SageMaker JumpStart
Amazon SageMaker JumpStart西岡 賢一郎
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習西岡 賢一郎
 
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成西岡 賢一郎
 
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析西岡 賢一郎
 
機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store西岡 賢一郎
 
AutoGluonではじめるAutoML
AutoGluonではじめるAutoMLAutoGluonではじめるAutoML
AutoGluonではじめるAutoML西岡 賢一郎
 
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用するAmazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する西岡 賢一郎
 
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで西岡 賢一郎
 
Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論西岡 賢一郎
 
機械学習の技術的負債
機械学習の技術的負債機械学習の技術的負債
機械学習の技術的負債西岡 賢一郎
 
Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介西岡 賢一郎
 
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性西岡 賢一郎
 
Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介西岡 賢一郎
 
Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習西岡 賢一郎
 
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化するAmazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する西岡 賢一郎
 

Ähnlich wie TorchDataチュートリアル解説 (20)

H2Oを使ったノーコードのAutoML
H2Oを使ったノーコードのAutoMLH2Oを使ったノーコードのAutoML
H2Oを使ったノーコードのAutoML
 
Feature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解するFeature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解する
 
H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門
 
Amazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成するAmazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成する
 
Amazon SageMaker JumpStart
Amazon SageMaker JumpStartAmazon SageMaker JumpStart
Amazon SageMaker JumpStart
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習
 
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
 
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
 
機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store
 
AutoGluonではじめるAutoML
AutoGluonではじめるAutoMLAutoGluonではじめるAutoML
AutoGluonではじめるAutoML
 
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用するAmazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
 
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
 
Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論
 
機械学習の技術的負債
機械学習の技術的負債機械学習の技術的負債
機械学習の技術的負債
 
Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介
 
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性
 
Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介
 
Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習
 
未来のカタチ x AI
未来のカタチ x AI未来のカタチ x AI
未来のカタチ x AI
 
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化するAmazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
 

Mehr von 西岡 賢一郎

リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待西岡 賢一郎
 
リモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのことリモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのこと西岡 賢一郎
 
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきことPMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと西岡 賢一郎
 
機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点
機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点
機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点西岡 賢一郎
 
ストリートビューから地域の豊かさを推定
ストリートビューから地域の豊かさを推定ストリートビューから地域の豊かさを推定
ストリートビューから地域の豊かさを推定西岡 賢一郎
 
大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック
大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック 大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック
大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック 西岡 賢一郎
 
人間の意思決定を機械学習でモデル化できるか
人間の意思決定を機械学習でモデル化できるか人間の意思決定を機械学習でモデル化できるか
人間の意思決定を機械学習でモデル化できるか西岡 賢一郎
 
協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)
協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)
協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)西岡 賢一郎
 
表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」
表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」
表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」西岡 賢一郎
 

Mehr von 西岡 賢一郎 (9)

リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待
 
リモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのことリモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのこと
 
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきことPMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
 
機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点
機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点
機械学習プラットフォーム5つの課題とAmazon SageMakerの4つの利点
 
ストリートビューから地域の豊かさを推定
ストリートビューから地域の豊かさを推定ストリートビューから地域の豊かさを推定
ストリートビューから地域の豊かさを推定
 
大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック
大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック 大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック
大域的探索から局所的探索へデータ拡張 (Data Augmentation)を用いた学習の探索テクニック
 
人間の意思決定を機械学習でモデル化できるか
人間の意思決定を機械学習でモデル化できるか人間の意思決定を機械学習でモデル化できるか
人間の意思決定を機械学習でモデル化できるか
 
協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)
協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)
協力ゲーム理論でXAI (説明可能なAI) を目指すSHAP (Shapley Additive exPlanation)
 
表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」
表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」
表形式データで高性能な予測モデルを構築する「DNNとXGBoostのアンサンブル学習」
 

TorchDataチュートリアル解説

Hinweis der Redaktion

  1. こちらが私のプロフィールとなります。 機械学習には、大学時代の研究から携わっており、自分で立ち上げたスタートアップでも機械学習を使ったサービスを提供していました。 プロダクト開発チームやデータサイエンスチームの立ち上げなどもやっています。
  2. 今回のお話です。 今回は大きく3つに分けてお話します。 まずはじめにPyTorchとTorchDataについてお話します。 次に、TorchDataの主となる機能のDataPipeについてお話します。 TorchDataのDataPipeの挙動が、今日の発表でもっとも持ち帰っていただきたい内容となります。 最後に、10分程度でTorchDataのチュートリアルをライブコーディングを交えて解説していきます。
  3. PyTorchはここにいるみなさんはご存知だと思いますが、ディープラーニングフレームワークの1つとして有名な機械学習ライブラリです。 GPUを使った演算をサポートしており、高速な学習が実現できるので、研究分野で特に人気のようです。 ディープラーニングのフレームワークとしてはTensorFlowも有名です。 TensorFlowとPytorchの違いとしてよく言われるものが計算グラフをどのように作るかです。 TensofrFlowが静的な計算グラフを作るのに対し、PyTorchは計算の条件に合わせて変化させる動的な計算グラフを作成します。
  4. 今回お話するTorchDataはPyTorchの1つのライブラリです。 2022年3月にベータ版がfunctorchとともにリリースされました。 簡単にTorchDataとfunctorchを説明すると、TorchDataは柔軟で高性能なデータパイプラインを構築するためのライブラリ、functorchは構成可能な関数変換を追加するライブラリとなっています。 どちらもベータ版で今後APIが変わる可能性もあるということです。 PyTorchを使っている人にとって、TorchDataはDatasetと何が違うのかが気になるところだと思います。 現在、PyTorch Datasetなどデータローダー周りは、非常に多くの機能を担うことが多く、拡張することが難しくなっています。 そして、同じようなデータロードを何度も書き直す必要が出てきていて、無駄な工数を発生させがちです。 そこで、このような問題に対処するために、TorchDataでは、iteratorスタイルのDataPipeとMapスタイルのDataPipeの2つをベースとしたデータの処理機構を組み合わせてデータロードを実現しています。 この2つのDataPipeにより、改変しやすい保守性の高いデータロードを実現するということです。 今回は、このTorchDataで作成されるDataPipeについてデモとともに紹介します。
  5. TorchDataは、先程述べたように既存のDatasetが抱える問題を解決するために作られたライブラリです。 具体的には、再利用可能なDatasetと実際のコーパス上に構築されたiterator/accesor