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
s2terminal
April 16, 2016
Technology
68
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
140
AIをWebアプリに実装するための便利なPythonライブラリ
s2terminal
0
670
NiceGUI is Nice
s2terminal
0
860
段階的なシステムリプレースを実現するデータ同期技術
s2terminal
0
190
1年でモダンなフロントエンドに追いついた話 2019-08-22 Mix Leap Joint #26
s2terminal
0
56
20190706 BCU30 事業を変えるシステムリプレース
s2terminal
0
81
Cognitive Complexity でコードの複雑さを定量的に計測しよう
s2terminal
2
210
MySQLオンラインマイグレーションツールgh-ostで深夜メンテナンスを無くした話
s2terminal
0
88
Microsoft Azureで 女子力を生成する
s2terminal
0
75
Other Decks in Technology
See All in Technology
その指示、Bobにしっかり伝わってる?初心者でも即実践できる プロンプト/コンテキスト設計のコツ
muehara
1
180
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
130
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
260
Backstageでつくるセルフサービスな社内開発基盤
kikunosuke75
1
340
KPIだけでは評価できないプロダクトが考えるべき Evalsという第二の評価系 / Beyond KPIs: Evals as a Second Evaluation Framework for Products #PdEConf
aki_iinuma
4
3.7k
Lakebase ワークショップ / Lakebase-workshop
databricksjapan
PRO
0
100
Driving AI Adoption Using In-House GPUs to Serve Qwen
po3rin
2
460
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
0
1k
Beyond the Hype: Practical AI for Your Oracle Database with MCP
thatjeffsmith
1
270
Hub & Spoke 環境のネットワークルーティングを分解してみる
tsuyataku
1
530
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
110
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
840
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
440
Evolving SEO for Evolving Search Engines
ryanjones
0
280
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
230
Building an army of robots
kneath
306
46k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
490
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Navigating Team Friction
lara
192
16k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
580
From π to Pie charts
rasagy
0
350
Building AI with AI
inesmontani
PRO
1
1.2k
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 )」のエ ラーにはまったとき助けられました