SlideShare une entreprise Scribd logo
1  sur  10
.NET Developer のための
ML.NET - 導入編
畠山 大有 | Daiyu Hatakeyama | @dahatake
Architect && Software Engineer && Applied Data Scientist (目指している)
Microsoft Japan
Built for .NET
developers
.NET のエコシステムの中で
モデル作成
モデル開発生産性の向
上 - AutoML
Visual Studio Model Builder と
CLI で、モデル作成を迅速に
TensorFlow や ONNX
連携
使い慣れた Deep Learning の
Framework との連携
dot.net/ml
ML.NET 1.4
Image Classification
データソースとして RDBMS のサポート
Visual Studio Model Builder の released
aka.ms/mlnet41
• Transfer Learning
• TensorFlow と ONNX の モデルをサポート
https://docs.microsoft.com/ja-jp/dotnet/machine-learning/
二項分類 多クラス分類 回帰 クラスタリング 異常検出 ランキング リコメンデーション
AveragedPerceptronTrai
ner
LightGbmMulticlassTrain
er
LbfgsPoissonRegressionT
rainer
KMeansTrainer RandomizedPcaTrainer LightGbmRankingTrainer MatrixFactorizationTrain
er
SdcaLogisticRegressionBi
naryTrainer
SdcaMaximumEntropyM
ulticlassTrainer
LightGbmRegressionTrai
ner
FastTreeRankingTrainer
SdcaNonCalibratedBinar
yTrainer
SdcaNonCalibratedMulti
classTrainer
SdcaRegressionTrainer
SymbolicSgdLogisticRegr
essionBinaryTrainer
LbfgsMaximumEntropyM
ulticlassTrainer
OlsTrainer
LbfgsLogisticRegressionB
inaryTrainer
NaiveBayesMulticlassTrai
ner
OnlineGradientDescentTr
ainer
LightGbmBinaryTrainer OneVersusAllTrainer FastTreeRegressionTrain
er
FastTreeBinaryTrainer PairwiseCouplingTrainer FastTreeTweedieTrainer
FastForestBinaryTrainer FastForestRegressionTrai
ner
GamBinaryTrainer GamRegressionTrainer
FieldAwareFactorization
MachineTrainer
PriorTrainer
LinearSvmTrainer
https://docs.microsoft.com/ja-jp/dotnet/machine-learning/resources/tasks
https://docs.microsoft.com/ja-jp/dotnet/machine-learning/how-to-choose-an-ml-net-algorithm
ctx.BinaryClassification.Trainers.
• ローカルで実行
• タスク
• 二項分類
• 多クラス分類
• 回帰
• 前処理
• 有用な情報が無い特徴(説明変数)の削除
• 欠損、全て同じ、カーディナリティが低い
• 欠損値の表示と補完
• 追加の特徴(説明変数)の生成
• 例: One-hot encoding やOne-hot hash encoding
• 変換とエンコード
• 終了処理
• 一定時間
• キャンセルトークン
Automated Machine Learning (AutoML)
https://docs.microsoft.com/ja-jp/dotnet/machine-learning/how-to-guides/how-to-use-the-automl-api
ランドマーク パイプラインの数を固定
(例: 20)
タスクの種類 |プライマリ メトリック
アルゴリズム利用の許可または拒否
データセットのサイズ と スパーシティ。
サイズ > ~50k 行の場合、KNN/SVM 自動ブラッ
クリストに登録されるようないくつかのアルゴリ
ズムを自動検知
サブサンプリング: 異なるサンプルのデータを使
用した同じ
パイプライン トレーニング (3%、5%、10%、
20%)
コスト予測: イテレーション タイムアウト内に完
了する可能性が高いパイプラインのみを含める
前回のイテレーションの
プライマリ メトリック スコアに基づい
て
リコメンドされるパイプライン処理
シーケンシャル または 並列実行(リモート)に応じ
て、
次のパイプラインに 1または"n“
(ユーザー指定の「同時実行」入力)を返す
新しいデータセットとアルゴリズムで
定期的に再トレーニング
現在のマトリックス: ~1000 データセット x 数百
万のパイプライン X #primary メトリック
ユーザーデータを内部リコメンデーション モデル
に使用しない:メタデータのみを使用 (完全に難読
化)
ML.NET Model Builder
(Visual Studio)
シンプルな UI ツール
AutoML
トレーニングと推論のコードを生成
http://dot.net/ml
http://aka.ms/mlnetsamples
http://aka.ms/mlnetdocs
http://aka.ms/mlnet

Contenu connexe

Similaire à Microsoft Open Tech Night - .NET Developer のための ML.NET - 導入編

ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
 

Similaire à Microsoft Open Tech Night - .NET Developer のための ML.NET - 導入編 (20)

【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用
【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用
【de:code 2020】 アマダの Azure への取り組みと DevOPS・MLOPS 環境の構築と運用
 
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
本格化するクラウド ネイティブに向けて進化する開発プラットフォームと .NET
 
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
 
Small Language Model Local Launch on AI Tour Tokyo
Small Language Model Local Launch on AI Tour TokyoSmall Language Model Local Launch on AI Tour Tokyo
Small Language Model Local Launch on AI Tour Tokyo
 
Getting Started .NET Core
Getting Started .NET CoreGetting Started .NET Core
Getting Started .NET Core
 
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
.NET Core と Container, そして Azure Web Apps on Linux による Web アプリ開発最前線
 
Net advantage 2012 volume2 最新情報 xaml プラットフォーム編
Net advantage 2012 volume2 最新情報 xaml プラットフォーム編Net advantage 2012 volume2 最新情報 xaml プラットフォーム編
Net advantage 2012 volume2 最新情報 xaml プラットフォーム編
 
.NET 最新ロードマップと今押さえておきたい技術要素
.NET 最新ロードマップと今押さえておきたい技術要素.NET 最新ロードマップと今押さえておきたい技術要素
.NET 最新ロードマップと今押さえておきたい技術要素
 
オープンソースを利用したモデル駆動トライアル
オープンソースを利用したモデル駆動トライアルオープンソースを利用したモデル駆動トライアル
オープンソースを利用したモデル駆動トライアル
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
 
NET5 and Diagnostics
NET5 and DiagnosticsNET5 and Diagnostics
NET5 and Diagnostics
 
DLLab 2018 - Azure Machine Learning update
DLLab 2018 - Azure Machine Learning updateDLLab 2018 - Azure Machine Learning update
DLLab 2018 - Azure Machine Learning update
 
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
 
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
2020/11/19 Global AI on Tour - Toyama プログラマーのための機械学習入門
 
Eclipse xtext 紹介
Eclipse xtext 紹介Eclipse xtext 紹介
Eclipse xtext 紹介
 
.NET Core と .NET Framework (続きは de:code 2016 で!)
.NET Core と .NET Framework (続きは de:code 2016 で!).NET Core と .NET Framework (続きは de:code 2016 で!)
.NET Core と .NET Framework (続きは de:code 2016 で!)
 
俺とHashiCorp
俺とHashiCorp俺とHashiCorp
俺とHashiCorp
 
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~
 
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
 
Eclipse modeling projectの概要
Eclipse modeling projectの概要Eclipse modeling projectの概要
Eclipse modeling projectの概要
 

Plus de Daiyu Hatakeyama

Plus de Daiyu Hatakeyama (20)

ChatGPT Impact - その社会的/ビジネス価値を考える -
ChatGPT Impact - その社会的/ビジネス価値を考える -ChatGPT Impact - その社会的/ビジネス価値を考える -
ChatGPT Impact - その社会的/ビジネス価値を考える -
 
Ethics of AI - AIの倫理-
Ethics of AI - AIの倫理-Ethics of AI - AIの倫理-
Ethics of AI - AIの倫理-
 
郡山 Connect 2022 ハッカソン 基調講演 - Hackathon からサービスインになったらデータを扱いましょう
郡山 Connect 2022 ハッカソン 基調講演 - Hackathon からサービスインになったらデータを扱いましょう郡山 Connect 2022 ハッカソン 基調講演 - Hackathon からサービスインになったらデータを扱いましょう
郡山 Connect 2022 ハッカソン 基調講演 - Hackathon からサービスインになったらデータを扱いましょう
 
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
テクノアカデミー郡山 現役ソフトウェアエンジニアが語る。IT の今と未来
 
Webサイトの最適化
Webサイトの最適化Webサイトの最適化
Webサイトの最適化
 
DXのための内製化のススメ
DXのための内製化のススメDXのための内製化のススメ
DXのための内製化のススメ
 
JDMC Azureアプリ開発入門
JDMC Azureアプリ開発入門JDMC Azureアプリ開発入門
JDMC Azureアプリ開発入門
 
JAZUG12周年 俺の Azure Cosmos DB
JAZUG12周年 俺の Azure Cosmos DBJAZUG12周年 俺の Azure Cosmos DB
JAZUG12周年 俺の Azure Cosmos DB
 
Microsoft の変革
Microsoft の変革Microsoft の変革
Microsoft の変革
 
データ分析概略
データ分析概略データ分析概略
データ分析概略
 
法政大学 MBA 中小企業向けITとの付き合うコツ
法政大学 MBA 中小企業向けITとの付き合うコツ法政大学 MBA 中小企業向けITとの付き合うコツ
法政大学 MBA 中小企業向けITとの付き合うコツ
 
明治大学 データサイエンス・AIに関するオムニバス授業 エバンジェリストというキャリア
明治大学 データサイエンス・AIに関するオムニバス授業 エバンジェリストというキャリア明治大学 データサイエンス・AIに関するオムニバス授業 エバンジェリストというキャリア
明治大学 データサイエンス・AIに関するオムニバス授業 エバンジェリストというキャリア
 
Green Software Foundation Global Summit 2022 Tokyo グリーンソフトウェアとは?
Green Software Foundation Global Summit 2022 Tokyo グリーンソフトウェアとは?Green Software Foundation Global Summit 2022 Tokyo グリーンソフトウェアとは?
Green Software Foundation Global Summit 2022 Tokyo グリーンソフトウェアとは?
 
コミュニケーション戦略を前提にしたOutlookやTeams活用
コミュニケーション戦略を前提にしたOutlookやTeams活用コミュニケーション戦略を前提にしたOutlookやTeams活用
コミュニケーション戦略を前提にしたOutlookやTeams活用
 
Python に行く前に Excel で学ぶデータ分析のいろは
Python に行く前に Excel で学ぶデータ分析のいろはPython に行く前に Excel で学ぶデータ分析のいろは
Python に行く前に Excel で学ぶデータ分析のいろは
 
AI の光と影
AI の光と影AI の光と影
AI の光と影
 
東京大学 メディアコンテンツ特別講義 Sustainability
東京大学 メディアコンテンツ特別講義 Sustainability東京大学 メディアコンテンツ特別講義 Sustainability
東京大学 メディアコンテンツ特別講義 Sustainability
 
Wiz国際情報工科自動車大学校 特別講演 Teams活用しよう!
Wiz国際情報工科自動車大学校 特別講演 Teams活用しよう!Wiz国際情報工科自動車大学校 特別講演 Teams活用しよう!
Wiz国際情報工科自動車大学校 特別講演 Teams活用しよう!
 
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
Wiz国際情報工科自動車大学校_特別講演_ITの織り成す未来
 
東洋経済 製造業DXフォーラム 2022: 製造業のための Sustainability との 向き合い方
東洋経済 製造業DXフォーラム 2022: 製造業のための Sustainability との 向き合い方東洋経済 製造業DXフォーラム 2022: 製造業のための Sustainability との 向き合い方
東洋経済 製造業DXフォーラム 2022: 製造業のための Sustainability との 向き合い方
 

Dernier

Dernier (10)

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 

Microsoft Open Tech Night - .NET Developer のための ML.NET - 導入編

  • 1. .NET Developer のための ML.NET - 導入編 畠山 大有 | Daiyu Hatakeyama | @dahatake Architect && Software Engineer && Applied Data Scientist (目指している) Microsoft Japan
  • 2. Built for .NET developers .NET のエコシステムの中で モデル作成 モデル開発生産性の向 上 - AutoML Visual Studio Model Builder と CLI で、モデル作成を迅速に TensorFlow や ONNX 連携 使い慣れた Deep Learning の Framework との連携 dot.net/ml
  • 3. ML.NET 1.4 Image Classification データソースとして RDBMS のサポート Visual Studio Model Builder の released aka.ms/mlnet41
  • 4. • Transfer Learning • TensorFlow と ONNX の モデルをサポート
  • 6. 二項分類 多クラス分類 回帰 クラスタリング 異常検出 ランキング リコメンデーション AveragedPerceptronTrai ner LightGbmMulticlassTrain er LbfgsPoissonRegressionT rainer KMeansTrainer RandomizedPcaTrainer LightGbmRankingTrainer MatrixFactorizationTrain er SdcaLogisticRegressionBi naryTrainer SdcaMaximumEntropyM ulticlassTrainer LightGbmRegressionTrai ner FastTreeRankingTrainer SdcaNonCalibratedBinar yTrainer SdcaNonCalibratedMulti classTrainer SdcaRegressionTrainer SymbolicSgdLogisticRegr essionBinaryTrainer LbfgsMaximumEntropyM ulticlassTrainer OlsTrainer LbfgsLogisticRegressionB inaryTrainer NaiveBayesMulticlassTrai ner OnlineGradientDescentTr ainer LightGbmBinaryTrainer OneVersusAllTrainer FastTreeRegressionTrain er FastTreeBinaryTrainer PairwiseCouplingTrainer FastTreeTweedieTrainer FastForestBinaryTrainer FastForestRegressionTrai ner GamBinaryTrainer GamRegressionTrainer FieldAwareFactorization MachineTrainer PriorTrainer LinearSvmTrainer https://docs.microsoft.com/ja-jp/dotnet/machine-learning/resources/tasks https://docs.microsoft.com/ja-jp/dotnet/machine-learning/how-to-choose-an-ml-net-algorithm
  • 7. ctx.BinaryClassification.Trainers. • ローカルで実行 • タスク • 二項分類 • 多クラス分類 • 回帰 • 前処理 • 有用な情報が無い特徴(説明変数)の削除 • 欠損、全て同じ、カーディナリティが低い • 欠損値の表示と補完 • 追加の特徴(説明変数)の生成 • 例: One-hot encoding やOne-hot hash encoding • 変換とエンコード • 終了処理 • 一定時間 • キャンセルトークン Automated Machine Learning (AutoML) https://docs.microsoft.com/ja-jp/dotnet/machine-learning/how-to-guides/how-to-use-the-automl-api
  • 8. ランドマーク パイプラインの数を固定 (例: 20) タスクの種類 |プライマリ メトリック アルゴリズム利用の許可または拒否 データセットのサイズ と スパーシティ。 サイズ > ~50k 行の場合、KNN/SVM 自動ブラッ クリストに登録されるようないくつかのアルゴリ ズムを自動検知 サブサンプリング: 異なるサンプルのデータを使 用した同じ パイプライン トレーニング (3%、5%、10%、 20%) コスト予測: イテレーション タイムアウト内に完 了する可能性が高いパイプラインのみを含める 前回のイテレーションの プライマリ メトリック スコアに基づい て リコメンドされるパイプライン処理 シーケンシャル または 並列実行(リモート)に応じ て、 次のパイプラインに 1または"n“ (ユーザー指定の「同時実行」入力)を返す 新しいデータセットとアルゴリズムで 定期的に再トレーニング 現在のマトリックス: ~1000 データセット x 数百 万のパイプライン X #primary メトリック ユーザーデータを内部リコメンデーション モデル に使用しない:メタデータのみを使用 (完全に難読 化)
  • 9. ML.NET Model Builder (Visual Studio) シンプルな UI ツール AutoML トレーニングと推論のコードを生成

Notes de l'éditeur

  1. 2