Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
かんたん機械学習はじめの1歩AzureMachineLearningでTweetをレコメンド
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
s2terminal
April 16, 2016
Technology
63
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
130
AIをWebアプリに実装するための便利なPythonライブラリ
s2terminal
0
650
NiceGUI is Nice
s2terminal
0
850
段階的なシステムリプレースを実現するデータ同期技術
s2terminal
0
180
1年でモダンなフロントエンドに追いついた話 2019-08-22 Mix Leap Joint #26
s2terminal
0
51
20190706 BCU30 事業を変えるシステムリプレース
s2terminal
0
72
Cognitive Complexity でコードの複雑さを定量的に計測しよう
s2terminal
2
200
MySQLオンラインマイグレーションツールgh-ostで深夜メンテナンスを無くした話
s2terminal
0
76
Microsoft Azureで 女子力を生成する
s2terminal
0
71
Other Decks in Technology
See All in Technology
設計レビューとAIハーネスで向き合う AIが生み出した新しいボトルネックの対処法 / Design Reviews and AI Harnesses Against New Bottlenecks Created by AI
nstock
4
410
Vポイント分析基盤におけるデータモデリング20年史
taromatsui_cccmkhd
4
700
クラウドを使う側から、作る側へ / 大吉祥寺.pm 2026前夜祭
fujiwara3
3
950
Kaggleで成長するために意識したこと
prgckwb
2
440
Webアプリ認証の全体像 / The Big Picture of Web App Authentication
kitano_yuichi
1
410
Multicaで30個のミニプロジェクトをAIエージェント運用して見えてきたこと
eiei114
1
610
Type-safe IaC for Dart
coborinai
0
180
「休む」重要さ
smt7174
5
1.6k
どこまでAIに任せるか 〜確率論と決定論の境界決定〜
shukob
0
430
副作用のある Lambda でも Lambda Power Tuning は使えるのか / lambda-power-tuning-side-effects
koukihosaka
1
130
AI時代のYAGNI:「爆速で無駄になった機能」からの学び / 20260720 Naoki Takahashi
shift_evolve
PRO
3
510
キャリアLT会#3
beli68
2
230
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
350
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
340
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
230
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
240
Test your architecture with Archunit
thirion
1
2.3k
Bash Introduction
62gerente
615
220k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Become a Pro
speakerdeck
PRO
31
6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Paper Plane
katiecoart
PRO
2
52k
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 )」のエ ラーにはまったとき助けられました