Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
かんたん機械学習はじめの1歩AzureMachineLearningでTweetをレコメンド
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
s2terminal
April 16, 2016
Technology
74
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
かんたん機械学習はじめの1歩AzureMachineLearningでTweetをレコメンド
s2terminal
April 16, 2016
More Decks by s2terminal
See All by s2terminal
TypeScriptでJupyter
s2terminal
0
160
AIをWebアプリに実装するための便利なPythonライブラリ
s2terminal
0
680
NiceGUI is Nice
s2terminal
0
880
段階的なシステムリプレースを実現するデータ同期技術
s2terminal
0
190
1年でモダンなフロントエンドに追いついた話 2019-08-22 Mix Leap Joint #26
s2terminal
0
58
20190706 BCU30 事業を変えるシステムリプレース
s2terminal
0
85
Cognitive Complexity でコードの複雑さを定量的に計測しよう
s2terminal
2
220
MySQLオンラインマイグレーションツールgh-ostで深夜メンテナンスを無くした話
s2terminal
0
95
Microsoft Azureで 女子力を生成する
s2terminal
0
82
Other Decks in Technology
See All in Technology
外国人エンジニアがVueプロトタイプで仕様を合わせている話 / Vue Fes Japan 2026 LT
eluwing
0
380
Vue で書く 空間コンピューティング、TresJS と WebXR を使ったXR デバイスのフロントエンド開発
hiranuma
0
150
eBPF 簡介 2026 版
shunghsiyu
0
160
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
220
[re:Invent2026事前勉強会(有志開催)]続きは、ラスベガスの廊下で / continue-in-the-vegas-hallway
sh_fk2
0
490
生き様としてのSRE
hokkai7go
1
150
キヨさん、67歳。AIコーディングエージェントに挑む
happysamurai294
0
140
Jev の中身は50行で再現できる。でも本物との差はどこにあるのか
hisuzuya
0
280
200人の配信コメント、 全部Jevが仕分けます 〜 マサカリガードを作ってみた 〜
katayamatg
1
510
Systems Manager AgentがインストールされたPCを紛失した時の対策を考えてみた
amarelo_n24
1
110
Deep Data Security 機能解説
oracle4engineer
PRO
3
1k
[FECONF-2026] 신대륙을 향한 카카오페이증권 프론트엔드 항해기 (이주승)
l1ghthouse
0
360
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
550
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
490
Ruling the World: When Life Gets Gamed
codingconduct
0
430
Building Better People: How to give real-time feedback that sticks.
wjessup
371
20k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.6k
Designing for humans not robots
tammielis
254
26k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
620
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.7k
How to make the Groovebox
asonas
2
2.5k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
750
Transcript
Microsoft Global Azure Boot Camp 2016 in Japan suzuki.sh (@s2terminal)
かんたん 機械学習 はじめの1歩 Azure Machine Learning で Tweet を レコメンド
Self Introduction 鈴木就斗 (suzuki.sh) 名古屋のWebエンジニア 合唱音楽の鑑賞が趣味 NinjaSlayer、Splatoon、そしてMicrosoft
Azureがすき twitter: @suzukiterminal facebook: @sh.suzuki.921 GitHub: @s2terminal
Azureを使っているところ はてなブックマークしたURLをPocketに入れるAPI http://s2terminal.hatenablog.com/entry/2015/07/05/165010 Azure API Apps (去年のセッションに触発されて作りました)
Webサービス「合唱音源の新着情報」を運営 http://合唱音源の新着情報.com Azure Virtual Machine + Azure SQL Database Twitter @s2terminal
Twitter投稿データ 合唱音源の新着情報 Azure VM上のアプリケーション(Ruby on Rails)で 登録情報をTwitterに半自動投稿 投稿に含まれる作曲者、曲名などの情報を 詳細データとしてタグ付け管理している
Twitter投稿データ Twitter 800 件分の投稿データ 1,500 件の詳細データ (演奏者、作曲者名などのタグ情報)
3,000 回のリツイート(RT)データ 投稿とRTデータを組み合わせて、RTを評価点としてレコメンドしたい → Azure Machine Learning MatchBox Recommendation を使ってみた
Matchbox Recommendationで用いる3つのデータ item-features ツイートの詳細データ(作曲者名、曲名、投稿日など)に該当 user-features Twitterユーザデータに該当(今回は無し)
user-item-rating 誰がどのツイートをRTしたか?の評価データ これらを使うことで、どんなuserが、どんなitemに評価をするか推測できる データソースにはCSV等いくつかの形式が使用可能
Azure Machine Learningワークスペースを作成 DataSouceをアップロード ML Studio上でDataSource、Train Matchbox Recommendation、Score
Matchboxを配置 Score Matchbox Recommendationの 「Recommended item selection」を 「From Rated Items」→「From All Items」に変更 Project Columnsを配置し、user-item- ratingの評価用出力をuser-idのみに絞る ※ ここまで数式もプログラムも一切なし。かんたん!
結果 Item1 に 「 186 」 がずらり なにかと思ってDBを見てみると… https://twitter.com/s2terminal/status/550310731636158464
最もたくさんRTされた投稿だった 普段は数RTしかされない中で 1個だけ 70 RTを超えているので 誰が考えてもそりゃそうなる。 機械とか関係ない。テクノロジーの欠片もない。 結果はあまり面白くないものの 無事にレコメンドすることができた
WebAPI化 PREPARE WEB SERVICEから、 Web Service Input/Outputを設定 C#、Python、Rの3種類で
サンプルコードが提供される。 今回はRuby on Railsで記述 https://gist.github.com/s2terminal/4a 6d11d90803778e00027d6830e614e7 #file-request_azure_ml-rb ※プログラム書いたのはここだけ! APIを叩くWebサービスを作り Azure VMにdeployして完成
課題 取得できるTweetに偏りがある どのユーザに対しても、単にたくさんRTされたツイートばかり表示される ユーザによってさまざまな結果が出てほしい データを増やしたい
Twitterのお気に入りデータを取得したいが、良いAPIが無い https://twittercommunity.com/t/list-of-people-who-favorited-a-particular-tweet/11083 (料金が正直よくわからない…) https://azure.microsoft.com/ja-jp/pricing/details/machine-learning/ 「スタジオ実験時間」「実稼働」に該当するのはどの時間? 無料プランはどこで選択するの?
まとめ Azure MLでかんたんに機械学習を始めることができる プログラムが必要なのは、WebAPI化時のクライアント側の開発 数学も(最初は)必要ない クラウドサービスなので、スケーラブルな計算リソースや WebベースのGUIツール等が最初から提供される
豊富なサンプルデータが用意されており、すぐに実験できる Why don‘t you use Azure Machine Learning?
参考文献 クラウドではじめる機械学習 Azure MLでらくらく体験 http://www.amazon.co.jp/dp/4897979927 Webブラウザーだけで学ぶ機械学習の「お作法」
http://www.atmarkit.co.jp/ait/articles/1412/01/news104.html Using Train Matchbox Recommender for Data Without Ratings http://www.resolvinghere.com/sm/using-train-matchbox-recommender-for-data- without-ratings.shtml 「Training dataset of user-item-rating triples contains invalid data. . ( Error 0018 )」のエ ラーにはまったとき助けられました