Upgrade to Pro — share decks privately, control downloads, hide ads and more …

かんたん機械学習はじめの1歩AzureMachineLearningでTweetをレコメンド

 かんたん機械学習はじめの1歩AzureMachineLearningでTweetをレコメンド

s2terminal

April 16, 2016
Tweet

More Decks by s2terminal

Other Decks in Technology

Transcript

  1. Microsoft Global Azure Boot Camp 2016 in Japan suzuki.sh (@s2terminal)

    かんたん 機械学習 はじめの1歩 Azure Machine Learning で Tweet を レコメンド
  2. 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
  3. Twitter投稿データ  Twitter 800 件分の投稿データ  1,500 件の詳細データ (演奏者、作曲者名などのタグ情報) 

    3,000 回のリツイート(RT)データ  投稿とRTデータを組み合わせて、RTを評価点としてレコメンドしたい → Azure Machine Learning MatchBox Recommendation を使ってみた
  4. Matchbox Recommendationで用いる3つのデータ  item-features  ツイートの詳細データ(作曲者名、曲名、投稿日など)に該当  user-features  Twitterユーザデータに該当(今回は無し)

     user-item-rating  誰がどのツイートをRTしたか?の評価データ これらを使うことで、どんなuserが、どんなitemに評価をするか推測できる データソースにはCSV等いくつかの形式が使用可能
  5. 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のみに絞る ※ ここまで数式もプログラムも一切なし。かんたん!
  6. 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して完成
  7. 課題  取得できる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/  「スタジオ実験時間」「実稼働」に該当するのはどの時間?  無料プランはどこで選択するの?
  8. 参考文献  クラウドではじめる機械学習 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 )」のエ ラーにはまったとき助けられました