SlideShare a Scribd company logo
1 of 64
Download to read offline
協調フィルタリングを利用した
推薦システム構築
2
日本マイクロソフト
テクニカルエバンジェリスト
大田 昌幸 : @masota0517 江田 周平 : @shumach5
自己紹介
大田 昌幸 江田 周平
3
早稲田大学大学院にて
ネットワークセキュリティを専攻
大量のパケットデータを解析し
IPアドレスを偽装したパケットを
判別する手法を研究
大量のデータから特徴を見つ
けるのが好き
マイクロソフト入社後
サポートエンジニアを経て
テクニカルエバンジェリスト
データ解析系案件対応増加中
大阪大学大学院にて
計画数理工学を専攻
Smart Warehouse 等で稼働す
る数百台の搬送ロボットの経
路の最適化する手法を研究。
マイクロソフト入社後
サポートエンジニアとして、主
に Office のデータ解析系の
ツールをサポート。
本セッションの目的
• 機械学習の概要理解
• 推薦システムの基本的な仕組みの理解
• 実装方針の把握
• 自習教材の把握
4
アジェンダ
1. データ解析分野の全体像の把握
2. 機械学習の概要
• 機械学習概要
• 事例紹介
3. 推薦システムの基本的な仕組みの紹介
5
1. データ解析分野の全体像の把握
6
データ活用領域
Hindsight
(見える化)
データ活用度
種類
規模
Insight
(気づき)
Foresight
(予測)
単独システムのデータ 複数システムのデータ 社外データとの連携
② 手軽に始めるクラウドベースの機械学習
• 豊富なアルゴリズムを用いて機械学習を試せる環境を時間単位で手軽に利用可能
• 構築したモデルを他のシステムと連携(API 公開)により直ぐに利用可能
API公開
Azure Machine Learning
① Excel ベースの強力な BI
使い慣れた Excel ベースの UI のため、どの
ユーザー部門でも容易に活用ができ、レポー
ト表示・項目変更もユーザー主導で
Power BI ③-2 データ種類・場所に依存しない Hybrid なデータ結合・共有
• 社内のオンプレ・クラウド環境の構造・非構造データや、
外部のデータを容易に結合できる ETL 機能
• クラウドベースのデータ共有環境(SharePoint OL)
Azure Data Factory
SQL Server Integration Service
③-1 パフォーマンスを最適化するアーキテクチャ
• 最新のインメモリ技術等によるパフォーマンスの最大化
• 大量データの収集(Data Lake)から適切な形での保管
(Data Warehouse)、容易な取り出し(Data Mart)
までを容易に実現できる基盤 Data Lake Data
Warehouse
Data
Mart
2. 機械学習の概要
8
機械学習とは何か
アルゴリズムとして明示的に解法が与えられないタスクに対して、
そのタスクを遂行するための「進化するモデル」を、
学習データから構築すること
タスク : 対象とする問題
モデル : 人間の知的活動をパターン化したもの
学習データ : コンピューターが学習するために使用する実験データ
<出展 : フリーソフトで始める機械学習入門>
9
機械学習の要素 (学習時)
データ
学習用データ/評価用データを
分割する (例: 60% : 40%)
モデルの訓練
(学習アルゴリズムの訓練)
モデル
学習データを使用して、
最適な結果を出すモデルを作成する
データの正規化
(不要・不正なデータの削除)
アウトプット/評価
実世界のデータ
10
機械学習の要素 (使用時)
データ
学習用データ/評価用データを
分割する (例: 60% : 40%)
モデルの訓練
(学習アルゴリズムの訓練)
モデル
データの正規化
(不要・不正なデータの削除)
アウトプット/評価
実世界のデータ
11
用語集
今後学習を進めるうえで理解しておくと便利な用語解説
まず下記のような数式のことを、あるデータ群の性質を表す
”モデル” と呼びます
y = ax1 + ax2 + ax3 …
y の部分を目的変数・結果変数などと呼びます
x の部分を予測変数・説明変数・特徴などと呼びます
複数の x を入力し、y の値が最適な値となるように
適切な a を決定していくことをモデルの訓練(調整)と呼びます
12
機械学習の分類 (手法別)
機械学習
教師あり学習
(正解データがある場合)
中間的手法
教師なし学習
(正解データがない場合)
識別
(カテゴリ分類)
回帰
(数値推測)
モデル推定
(クラスタリング)
パターン
マイニング
データが正解つき/なしの組み合わせ 手法が正解つき/なしの組み合わせ
購買パターン発見音声/文字認識
文章のP/N 判定
売り上げ予測 顧客の分類
ハンズオンの内容
13
14
行動履歴を機械学習で分析し最適なコンテンツ表示
これまで難解だった機械学習を簡
単かつ短期間で導入できることを
証明(2 週間で構築)
Web サイトの表示を改善し、
新しいエクスペリエンスを提供
蓄積データを機械学習によっ
て分析し最適な講座情報を
発見
ビッグデータ(行動履歴)を
クラウドに蓄積
Web サイト
閲覧者
②蓄積
Azure
Machine Learning
Web サイトでの行動履歴
(講座閲覧履歴)を保存
③分析①収集
④反映
Azure SQL DBWeb サイト
閲覧履歴に基づいた講座の
リコメンデーションを表示
15
Excel ベースの顧客分析基盤を幅広い部門へ開放
使い慣れた Excel ベースの UI で
店長やエリアマネージャー、販売部、
商品部等幅広い部門に開放
大量の明細レベルでも快適に
検索・分析可能な基盤を構
築
顧客購買行動を明細レベル
で分析し、適切なタイミングで
オファー・メッセージを送付
ネットとリアルの区別なく、購
入履歴やチェックイン、検索、
SNS・口コミを集約・分析
ログ収集
レコメン
(クラウド)
実店舗
ネットストア
モバイル端末
IDとして利用
オウンドメディア
閲覧ログ
商品閲覧
購入
チェックイン
データ
商品マスタ
店舗マスタ
顧客マスタ
在庫データ
MDシステム
販売データ
マイルデータ
ポイントデータ
DWH
(データ格納場所)
ネットストア
モバイル端末
メール
Marketing Automation
Engine
(将来実装)
口コミ、
ご要望
データソース 蓄積・統合 分析・企画 アプローチ先
マイルサービス
管理システム
アドホック分析
定型レポーティング
(Power BI)
機械学習
(Azure Machine Learning)
オファー
(割引など)
レコメン
SQL Server
3.推薦システムの基本的な仕組みの紹介
16
推薦システムのビジネスメリット
• 売り上げを増やすための新たな接点を創出する
• 同時購入を促すためのアイテム推薦
• ユーザーの興味を想起するニッチな商品の推薦
• ユーザー離脱を防ぐ
• ゲームで負け続けているユーザーに特別なアイテムをプレゼントし離脱防止
17
ビジネスの機会創出を自動化できる
推薦システムの全体像
18
• 大きく4 種類の推薦システムが存在する
レコメンド方式 ルールベース コンテンツベース 協調フィルタリング ベイジアンネットワーク
分析情報 過去の実績
マーケティングデータ
アイテム間の関係性 ユーザーの購買履歴 コンテンツ属性
行動履歴
ロジック 独自ルールに基づき
推薦。
コンテンツ属性を事前
に分析・分類し、関連
性を元に推薦。
購買履歴を自動的に
解析し、ユーザーの嗜
好に応じたアイテムを
推薦。
ユーザーが行動モデ
ルを作成し、確率を計
算した上で、推薦。
メリット 運営者、経営者の意
思を反映しやすい
コンテンツ属性を決定
する際に推薦するもの
を調整できる。
運営者の手間が少な
い。
セレンティビティあり。
目的に応じて、精度の
高い推薦ができる。
デメリット ユーザーの意思が反
映されにくい。
運営者の手間大
セレンティビティなし。
運営者の手間大。
ユーザーの購買履歴
を一定数収集する必
要がある。
計算結果を得られるた
めに時間がかかる。
レコメンド方式 ルールベース コンテンツベース 協調フィルタリング ベイジアンネットワーク
分析情報 過去の実績
マーケティングデータ
アイテム間の関係性 ユーザーの購買履歴 コンテンツ属性
行動履歴
ロジック 独自ルールに基づき
推薦。
コンテンツ属性を事前
に分析・分類し、関連
性を元に推薦。
購買履歴を自動的に
解析し、ユーザーの嗜
好に応じたアイテムを
推薦。
ユーザーが行動モデ
ルを作成し、確率を計
算した上で、推薦。
メリット 運営者、経営者の意
思を反映しやすい
コンテンツ属性を決定
する際に推薦するもの
を調整できる。
運営者の手間が少な
い。
セレンティビティあり。
目的に応じて、精度の
高い推薦ができる。
デメリット ユーザーの意思が反
映されにくい。
運営者の手間大
セレンティビティなし。
運営者の手間大。
ユーザーの購買履歴
を一定数収集する必
要がある。
計算結果を得られるた
めに時間がかかる。
推薦システムの全体像
19
• 大きく4 種類の推薦システムが存在する
推薦システムの全体像
20
 協調フィルタリングの代表的な判別属性は 2 種類
協調フィルタリングの判別属性
1. ユーザーベース
ユーザーの行動履歴を元にユーザー毎の嗜好の類似値を解析し、
他のユーザーが購入した他のアイテムを推薦する。
2. アイテムベース
ユーザーの行動履歴を元にアイテム間の類似値を解析し関連性の高いアイテムを推薦。
参考資料
• http://www.slideshare.net/takahirokubo7792?utm_campaign=profiletracking&utm_med
ium=sssite&utm_source=ssslideview
• http://japan.zdnet.com/article/20373064/
• http://japan.zdnet.com/article/20374062/
ユーザーベースの協調フィルタリング
21
ユーザーベースの協調フィルタリング
推薦のために必要な処理 工夫できるポイント
1.ユーザーどうしの類似性スコアを算出する
1.1 何をもって類似しているとするか定義する
1.2 定義に合わせてデータを準備する
1.3 定義に合わせて算出手法を選定し実装する
1.4 実際に類似性スコアを算出する
• 1.1 類似性の定義 : ビジネス状況・仮説に合わせて定義
• 同じ商品を購入している
• 同じ商品を高く(低く)評価している..etc
• 1.3 類似性スコアの算出方法 : いくつかの手法を比較し、
自社にとって望む結果を算出する算出方法を採用する
• クロス集計
• ユークリッド距離
• ピアソン相関係数..etc
2.類似性スコアで重みをつけて推薦をする
重みをつける : 似ているユーザーの影響度を大きくする
2.1 類似性スコアで重みづけの演算をする
2.2 正規化する
2.3 適切にソーティングして結果を表示 (スコア高い順)
• 2.1 サービスに合わせたゆらぎの挿入
• キャンペーン中は特定商品を優先して推薦する
• 意外性が出るように類似性の低いユーザーのスコア
も使用する
22
ユーザーどうしの類似性を元に他のユーザーへの推薦を行う
1.ユーザーどうしの類似性スコアを算出する
1.1 類似性の定義:同じ商品への評価が高い(低い)と類似性が高い
1.2 データの準備:ユーザーから各アイテムへの評価をリスト化
23
システムに合わせた類似性を定義しデータを用意する
ユニコーン ガンダム This is it
砂金 5.0 3.0
江田 2.0 5.0
南野 1.0 4.0
大田 5.0 2.0
江田
南野
大田 砂金
0
1
2
3
4
5
6
0 1 2 3 4 5 6
ユニコーンガンダム
This is it
1.ユーザーどうしの類似性スコアを算出する
いくつかの方法があるが、例として理解しやすいユークリッド距離を使用
24
1.3 算出方法を選定
1
3 2
大田 (2,5) と 砂金(3,5) の距離 : 1
大田 (2,5) と 江田 (5,2) の距離 :
2 − 5 2 + (5 − 2)2= 9 + 9 = 18 = 3 2
2次元のユークリッド距離は上記のとおり単純な三角比計算
多次元の場合にも同じで、下記のような数式で計算
𝑝1 − 𝑞1
2 + 𝑝2 − 𝑞2
2 + ⋯ + (𝑝 𝑛 + 𝑞 𝑛)2
=
𝑖=1
𝑛
(𝑝𝑖−𝑞𝑖)2
1.ユーザーどうしの類似性スコアを算出する
• 類似している人物ほどユークリッド距離の値が小さくなる
• 類似している人物ほど高いスコアにしたいのため逆数を取る
類似性が最大の人はユークリッド距離が0なので、1 を足す
𝑆𝑐𝑜𝑟𝑒 = 1
(1 + ユークリッド距離)
なお、Score は 0 から 1 までの値を返します
0 は全く類似しておらず、1は類似性が高いことを表します
25
1.3 算出方法を選定
1.ユーザーどうしの類似性スコアを算出する
26
• 1.4 実際に類似性スコアを算出する
大田との類似性スコア
砂金 0.5
江田 0.071
南野 0.055
大田に推薦する場合には、
大田との類似性スコアを算出する
2.類似性スコアで重みをつけて推薦をする
27
2.1 類似性スコアで重みづけ演算をする
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5
江田 0.071
南野 0.055
合計
類似性の合計
スコア
大田が見たことのないアイテムを計算対象とする
(見たことのあるものを推薦対象とすることはないため)
2.類似性スコアで重みをつけて推薦をする
28
2.1 類似性スコアで重みづけ演算をする
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 -
江田 0.071 1.0 5.0
南野 0.055 2.0 4.0
合計
類似性の合計
スコア
各アイテムへのユーザーの評価を読み込む
ユーザーから評価されていないアイテムもある
2.類似性スコアで重みをつけて推薦をする
29
2.1 類似性スコアで重みづけの演算をする
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 -
江田 0.071 1.0 5.0
南野 0.055 2.0 4.0
合計
類似性の合計
スコア
重みづけした値を計算する
2.類似性スコアで重みをつけて推薦をする
30
2.1 類似性スコアで重みづけ演算をする
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 - -
江田 0.071 1.0 0.071 5.0 0.355
南野 0.055 2.0 0.11 4.0 0.44
合計
類似性の合計
スコア その他の値も重みづけして算出
2.類似性スコアで重みをつけて推薦をする
31
2.1 類似性スコアで重みづけ演算をする
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 - -
江田 0.071 1.0 0.071 5.0 0.355
南野 0.055 2.0 0.11 4.0 0.44
合計 2.681
類似性の合計
スコア 合計値を算出
2.類似性スコアで重みをつけて推薦をする
32
2.1 類似性スコアで重みづけ演算をする
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 - -
江田 0.071 1.0 0.071 5.0 0.355
南野 0.055 2.0 0.11 4.0 0.44
合計 2.681 0.795
類似性の合計
スコア その他の合計値も算出
2.類似性スコアで重みをつけて推薦をする
33
2.2 正規化する
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 - -
江田 0.071 1.0 0.071 5.0 0.355
南野 0.055 2.0 0.11 4.0 0.44
合計 2.681 0.795
類似性の合計
スコア
多くの人に評価されるアイテムの点数が高くなる
これを正すための正規化が必要
合計点数を、評価者の類似度の合計で割ります
2.類似性スコアで重みをつけて推薦をする
34
2.2 正規化する
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 - -
江田 0.071 1.0 0.071 5.0 0.355
南野 0.055 2.0 0.11 4.0 0.44
合計 2.681 0.795
類似性の合計 0.626 0.126
スコア
評価者の類似性スコアの合計を出す
0.5 + 0.071 + 0.055 = 0.626
評価者の類似性スコアの合計を出す
0.071+0.055 = 0.126
2.類似性スコアで重みをつけて推薦をする
35
2.2 正規化する
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 - -
江田 0.071 1.0 0.071 5.0 0.355
南野 0.055 2.0 0.11 4.0 0.44
合計 2.681 0.795
類似性の合計 0.626 0.126
スコア 4.282 6.3
正規化
2.681/0.626 = 4.282
正規化
0.795/0.126 = 6.30
2.類似性スコアで重みをつけて推薦をする
36
2.3 適切にソーティングして結果を表示 (スコア高い順)
類似性 Z ガンダム Z ガンダム
(重みづけ)
ワンピース ワンピース
(重みづけ)
砂金 0.5 5.0 2.5 - -
江田 0.071 1.0 0.071 5.0 0.355
南野 0.055 2.0 0.11 4.0 0.44
合計 2.681 0.795
類似性の合計 0.626 0.126
スコア 4.282 6.3
スコアの高い順に作品を紹介
1. ワンピース (6.3)
2. Z ガンダム (4.2)
今回は大田の好きなガンダムシリーズは最上位で推薦されなかった
この「良し悪し」を決めるのはサービス提供者で下記の調整も可能
意外性を求めるのであれば、計算時に類似性低い人を多めに混ぜる
堅実に行きたいのであれば、計算時に類似性高い人を多めに混ぜる
アイテムベースの協調フィルタリング
37
アイテムベースの協調フィルタリング
推薦のために必要な処理 工夫できるポイント
1.アイテムどうしの類似性を算出する
1.1 何をもって類似しているとするか定義する
1.2 定義に合わせてデータを準備する
1.3 定義に合わせて算出手法を選定し実装する
1.4 実際に類似性スコアを算出する
• 1.1 類似性の定義 : ビジネス状況・仮説に合わせて定義
• いつも組み合わせて購入されている
• 評価のされ方の傾向が似ている
• 1.3 類似性スコアの算出方法 : いくつかの手法を比較し、
自社にとって望む結果を算出する算出方法を採用する
• クロス集計
• ユークリッド距離
• ピアソン相関係数..etc
2.類似性スコアで重みをつけて推薦をする
重みをつける : 似ているユーザーの影響度を大きくする
2.1 類似性スコアで重みづけの演算をする
2.2 正規化する
2.3 適切にソーティングして結果を表示 (スコア高い順)
• 2.1 サービスに合わせたゆらぎの挿入
• キャンペーン中は特定商品を優先して推薦する
• 人気商品に偏らないように、表示前に癖のある
ソーティングをする
38
アイテムどうしの類似性を元にユーザーへの推薦を行う
1.アイテムどうしの類似性を算出する
1.1 類似性の定義:評価のされ方が似ていると類似性が高い
1.2 データの準備:ユーザーから各アイテムへの評価をリスト化
39
システムに合わせた類似性を定義しデータを用意する
大田 江田
Zガンダム 5.0 2.0
マクロス 5.0 1.0
ブリーチ 4.0 3.0
・・・ ・・・ ・・・
ワンピース 4.0 4.0
This is it 2.0 5.0
Top of UK 2.0 4.0
Zガンダム
マクロス
ブリーチ
ワンピース
This is it
Top of UK
0
1
2
3
4
5
6
0 1 2 3 4 5 6
江田
大田
例として理解しやすいユークリッド距離を使用
1.アイテムどうしの類似性を算出する
40
1.3 算出方法を選定
1
Zガンダム(5,2) とマクロス(5,1) の距離 : 1
アイテムベースと同じく下記のような数式で計算します
=
𝑖=1
𝑛
(𝑝𝑖−𝑞𝑖)2
また、逆数をとってスコアを出します
𝑆𝑐𝑜𝑟𝑒 = 1
(1 + ユークリッド距離)
評価のされ方が似ている
1.アイテムどうしの類似性を算出する
41
• 1.4 実際に類似性スコアを算出する
Z ガンダム マクロス ・・・ Top of UK
Zガンダム - 0.182 0.012
マクロス 0.182 - 0.122
・・・
This is it 0.020 0.148 0.179
Top of UK 0.012 0.122 -
複数のユーザー、アイテムから算出した仮の値を表にしています
2.類似性スコアで重みをつけて推薦をする
42
2.1 類似性スコアで重みづけ演算をする
森川さんの
評価
Zガンダム 4.5
ブリーチ 4.0
This is it 1.0
合計
スコア
今回は森川さんへの推薦をする
まず、森川さんのこれまで評価したアイテムと
その評価を読み込む
2.類似性スコアで重みをつけて推薦をする
43
2.1 類似性スコアで重みづけ演算をする
森川さんの
評価
マクロス
の類似性
マクロス
(重みづけ)
ワンピース
の類似性
ワンピース
(重みづけ)
Zガンダム 4.5 0.182 0.222
ブリーチ 4.0 0.103 0.091
This is it 1.0 0.148 0.4
合計
スコア
森川さんの見たことのないアイテムと
評価済みアイテムとの類似性スコアを読み込む
類似性スコアはあらかじめ計算しておくことで、
森川さんというユーザーに依存せず、
全てのユーザーで活用できる
2.類似性スコアで重みをつけて推薦をする
44
2.1 類似性スコアで重みづけ演算をする
森川さんの
評価
マクロス
の類似性
マクロス
(重みづけ)
ワンピース
の類似性
ワンピース
(重みづけ)
Zガンダム 4.5 0.182 0.818 0.222 0.999
ブリーチ 4.0 0.103 0.412 0.091 0.363
This is it 1.0 0.148 0.148 0.4 0.4
合計 1.378 1.764
スコア
重みづけの計算を行い、合計を算出する
2.類似性スコアで重みをつけて推薦をする
45
2.1 類似性スコアで重みづけの演算をする
森川さんの
評価
マクロス
の類似性
マクロス
(重みづけ)
ワンピース
の類似性
ワンピース
(重みづけ)
Zガンダム 4.5 0.182 0.818 0.222 0.999
ブリーチ 4.0 0.103 0.412 0.091 0.363
This is it 1.0 0.148 0.148 0.4 0.4
合計 0.433 1.378 0.713 1.764
スコア
正規化のため類似性の合計を算出する
2.類似性スコアで重みをつけて推薦をする
46
2.2 正規化する
森川さんの
評価
マクロス
の類似性
マクロス
(重みづけ)
ワンピース
の類似性
ワンピース
(重みづけ)
Zガンダム 4.5 0.182 0.818 0.222 0.999
ブリーチ 4.0 0.103 0.412 0.091 0.363
This is it 1.0 0.148 0.148 0.4 0.4
合計 0.433 1.378 0.713 1.764
スコア 3.183 2.473
正規化
1.378/0.433 = 3.183
正規化
1.764/0.713 = 2.473
2.類似性スコアで重みをつけて推薦をする
47
2.2 正規化する
森川さんの
評価
マクロス
の類似性
マクロス
(重みづけ)
ワンピース
の類似性
ワンピース
(重みづけ)
Zガンダム 4.5 0.182 0.818 0.222 0.999
ブリーチ 4.0 0.103 0.412 0.091 0.363
This is it 1.0 0.148 0.148 0.4 0.4
合計 0.433 1.378 0.713 1.764
スコア 3.183 2.473
正規化
1.378/0.433 = 3.183
正規化
1.764/0.713 = 2.473
2.類似性スコアで重みをつけて推薦をする
48
2.3 適切にソーティングして結果を表示 (スコア高い順)
森川さんの
評価
マクロス
の類似性
マクロス
(重みづけ)
ワンピース
の類似性
ワンピース
(重みづけ)
Zガンダム 4.5 0.182 0.818 0.222 0.999
ブリーチ 4.0 0.103 0.412 0.091 0.363
This is it 1.0 0.148 0.148 0.4 0.4
合計 0.433 1.378 0.713 1.764
スコア 3.183 2.473
スコアの高い順に作品を紹介
1. マクロス (3.183)
2. ワンピース (2.473)
ユーザーベース vs アイテムベース
• ユーザーベースの協調フィルタリングが向いているシナリオ
• メモリに収まるサイズで変更が頻繁に行われるデータセットが対象
• ユーザーの趣向が独自の値を持っている
• リンクを共有するサイト
• 音楽を推薦するサイト
• 巨大なデータが対象の場合はアイテムベースの協調フィルタリング
の方が良い結果を生み出す
• アイテムが多いと「ユーザー同士」の類似度を出すことが難しいため
• アイテム同士の類似度は事前に計算可能なので、運用環境での推薦が高速なため
• アイテム同士の類似度は変化しづらいので再計算が少なくて済むため
49
推薦システムの構築方針
方針 独自実装 ツールを使った実装
方法 (例) Python, R を使った独自実装 Azure Machine Learning (Azure ML) を使った実装
シナリオ 統計・機械学習のプロを雇い独自実装(内製)
データ解析会社への外注
ツールのサポートを受けながら独自実装(半内製)
データ解析会社への外注
メリット • 自社製品に合わせたカスタマイズが可能
• 学習材料(書籍・サンプルコード)が豊富
• 豊富なライブラリ
• NumPy, SciPy
• 豊富な開発環境
• PyCharm, Visual Studio, Canopy
• 独自のモデルの研究・開発が不要
• Microsoft Research の高度な研究成果を活用可能
• 定期的にモデルが追加され、コストをかけずに
機械学習を活用した新しい製品を開発できる
• データの操作/可視化が容易
• Python, R の独自プログラムを挿入可能
• Web API としての公開が可能
デメリット • 学習コストが非常に高い
• 高度な統計ヘの理解
• 実装言語・ライブラリの使用方法の学習
• 必要なすべてのフローの実装が必要
• データの加工・可視化
• 提供されているモデルの内部を理解することは難解
• データの表示はあらかじめ提供される方式で表示
50
推薦システムの構築方針は2つあります
独自実装
~ Pythonでの実装方法 ~
51
Pythonの特徴
• 簡潔で可読性が高い
• 拡張性が高い
• 豊富な数学・科学系ライブラリ
• データの取得、パース、計算、描画用のライブラリ
• マルチプラットフォーム
• Windows, Linux, Mac
• マルチパラダイム
• オブジェクト指向、手続き型、関数型
• 機械学習勉強用のサンプルコードが多い
52
エクセレントな高水準言語
Pythonの導入
• 公式Webサイトから最新版インストーラーを入手
• https://www.python.org/downloads/
• 2.x系、3.x系の2種類が存在
• 基本的には 3.x 系が推奨されています(2015年4月現在)
• 2.x系のみに対応したライブラリを使用する際には2.x系を選択する
• 詳しくは下記URLをご参照ください
https://wiki.python.org/moin/Python2orPython3
53
Python 3.x のインストールを推奨
Pythonの学習
• 下記URLで学習開始
• http://www.codecademy.com/
• ブラウザで全て完結
• 学習・解説
• コーディング
• 答え合わせ
• 無料で十分に学習可能
54
書籍購入前にcode academyでの学習がオススメ
Pythonの開発環境(IDE)
55
優れた開発環境の紹介
PyCharm
• Jet BRAINS社製のIDE。開発元が同じIntelliJ などと使用感が似ている
• プロジェクト管理、コード補完、対話型ウィンドウなど十分な機能が搭載されている
• Community Editionを無料で使用可能(https://www.jetbrains.com/pycharm/download/)
Visual Studio + Visual Studio tools for Python
• Microsoft社製のIDE+オープンソースのプラグイン(https://pytools.codeplex.com/)
• Visual Studio のパワフルな機能でPython開発を強力にサポート
• Community Editionを無料で使用可能
Canopy
• ENTHOUGH社製のIDE
• NumPy等の科学系パッケージを同時にインストールしてくれるため、解析用環境を容易に構築可能
• EXPRESS Editionを無料で使用可能(https://store.enthought.com/downloads/)
サンプルコードの紹介
Oreillyサイトからサンプルのダウンロードが可能
http://shop.oreilly.com/product/9780596529321.do
56
サンプルコードで具体的な実装方法を学ぼう!
ここからダウンロード
Zipファイル解凍後、chapter2/recommendations.py
をエディタやIDEで開いて実装方法を学びましょう
#python 2.7.x 系での実行がオススメ
実行方法・解説は本を購入してご確認ください
日本語名 : 集合知プログラミング
http://www.oreilly.co.jp/books/9784873113647/
Azure Machine Learning での実装方法
57
Bing maps
launches
家までの最適
なルートは?
Microsoft
Research
formed
Kinect
launches
その動作はど
ういう意味?
Azure Machine
Learning
launches
次に起こるの
は何?
Hotmail
launches
ジャンクメー
ルはどれ?
Bing search
launches
どの検索結果
が最も関連性
があるか?
Skype
Translator
launches
その人は何と
言っている?
Microsoft と Machine Learning
John Platt,
Distinguished scientist at
Microsoft Research
1991 201420091997 201420102008
Machine learning
= 経験(過去データ+人の入力)により賢くなるコンピューティングシステム
“Machine learning is pervasive throughout Microsoft products.”
機械学習はマイクロソフトの製品・サービスで広く使われています
58
Azure MLの紹介
• Microsoft Azure 上にホスト
されており環境構築が不要
• Microsoft Research の開発
した高度なモデルを無償で利
用可能
• Python, R で開発した独自プ
ログラムで拡張可能
• Web API として公開可能
59
GUI ベースの機械学習ソリューション
Training
Data
Web
Service
Azure Machine Learning
Microsoft Azure
Webシステム
Azure Blob
ストレージ
Hive
Azure SQL Database
Azure テーブル
業務システム
HDInsight
( Hadoop )
他システム
Power View 等の
データ分析・可視化
ツール
Azure Blob
ストレージ
Azure SQL
Database
Batch Execution
Service
Request-Response
Service
評価モデル作成
(Training)
60
手順書
61
Azure Machine Learning による
推薦システムの構築手順書
http://bit.ly/azuremlR
本セッションで学んだこと
• 機械学習の概要の理解
• 推薦システムの基本的な仕組みの理解
• 具体的な実装方法の把握
• 自習教材の把握
登壇依頼などお気軽にどうぞ~
by@masota0517, @shumach5
62
参考資料
• 「集合知プログラミング」Toby Segaran 著
• 「データサイエンス講義」 Rachel Schutt, Cathy O’Neil 著
63
本資料作成のための参照した参考資料
オススメの学習資料
• 統計系基礎
• 「Head First Statistics」Dawn Griffiths 著
• 解析系基礎
• 「Head First データ解析」Michael Milton 著
• 解析用データの収集
• 「入門ソーシャルデータ」Matthew A. Russell 著
• 機械学習プログラミング
• 「実践機械学習システム」 Willi Richert, Luis Pedro Coelho 著
• Q&A
• Cross Validated : http://stats.stackexchange.com/
64
今後の自習時に役立つ学習資料
65

More Related Content

What's hot

最適化超入門
最適化超入門最適化超入門
最適化超入門Takami Sato
 
機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門hoxo_m
 
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料洋資 堅田
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?hoxo_m
 
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings  (EMNLP 2021)【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings  (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)Deep Learning JP
 
pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話Classi.corp
 
パターン認識と機械学習入門
パターン認識と機械学習入門パターン認識と機械学習入門
パターン認識と機械学習入門Momoko Hayamizu
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明Satoshi Hara
 
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法Takuya Akiba
 
学習時に使ってはいないデータの混入「リーケージを避ける」
学習時に使ってはいないデータの混入「リーケージを避ける」学習時に使ってはいないデータの混入「リーケージを避ける」
学習時に使ってはいないデータの混入「リーケージを避ける」西岡 賢一郎
 
グラフニューラルネットワークとグラフ組合せ問題
グラフニューラルネットワークとグラフ組合せ問題グラフニューラルネットワークとグラフ組合せ問題
グラフニューラルネットワークとグラフ組合せ問題joisino
 
DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜Jun Okumura
 
実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだこと実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだことnishio
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類Shintaro Fukushima
 
Rで計量時系列分析~CRANパッケージ総ざらい~
Rで計量時系列分析~CRANパッケージ総ざらい~ Rで計量時系列分析~CRANパッケージ総ざらい~
Rで計量時系列分析~CRANパッケージ総ざらい~ Takashi J OZAKI
 
最適輸送入門
最適輸送入門最適輸送入門
最適輸送入門joisino
 
トピックモデルの評価指標 Coherence 研究まとめ #トピ本
トピックモデルの評価指標 Coherence 研究まとめ #トピ本トピックモデルの評価指標 Coherence 研究まとめ #トピ本
トピックモデルの評価指標 Coherence 研究まとめ #トピ本hoxo_m
 
最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向ohken
 

What's hot (20)

最適化超入門
最適化超入門最適化超入門
最適化超入門
 
機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門
 
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?
 
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings  (EMNLP 2021)【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings  (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
 
pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話
 
パターン認識と機械学習入門
パターン認識と機械学習入門パターン認識と機械学習入門
パターン認識と機械学習入門
 
MICの解説
MICの解説MICの解説
MICの解説
 
LDA入門
LDA入門LDA入門
LDA入門
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
 
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法
 
学習時に使ってはいないデータの混入「リーケージを避ける」
学習時に使ってはいないデータの混入「リーケージを避ける」学習時に使ってはいないデータの混入「リーケージを避ける」
学習時に使ってはいないデータの混入「リーケージを避ける」
 
グラフニューラルネットワークとグラフ組合せ問題
グラフニューラルネットワークとグラフ組合せ問題グラフニューラルネットワークとグラフ組合せ問題
グラフニューラルネットワークとグラフ組合せ問題
 
DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜DQNからRainbowまで 〜深層強化学習の最新動向〜
DQNからRainbowまで 〜深層強化学習の最新動向〜
 
実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだこと実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだこと
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類
 
Rで計量時系列分析~CRANパッケージ総ざらい~
Rで計量時系列分析~CRANパッケージ総ざらい~ Rで計量時系列分析~CRANパッケージ総ざらい~
Rで計量時系列分析~CRANパッケージ総ざらい~
 
最適輸送入門
最適輸送入門最適輸送入門
最適輸送入門
 
トピックモデルの評価指標 Coherence 研究まとめ #トピ本
トピックモデルの評価指標 Coherence 研究まとめ #トピ本トピックモデルの評価指標 Coherence 研究まとめ #トピ本
トピックモデルの評価指標 Coherence 研究まとめ #トピ本
 
最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向
 

Viewers also liked

Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...
   Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...   Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...
Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...Yahoo!デベロッパーネットワーク
 
条件付き確率場の推論と学習
条件付き確率場の推論と学習条件付き確率場の推論と学習
条件付き確率場の推論と学習Masaki Saito
 
いまさら聞けない機械学習の評価指標
いまさら聞けない機械学習の評価指標いまさら聞けない機械学習の評価指標
いまさら聞けない機械学習の評価指標圭輔 大曽根
 
小町のレス数が予測できるか試してみた
小町のレス数が予測できるか試してみた小町のレス数が予測できるか試してみた
小町のレス数が予測できるか試してみたJubatusOfficial
 
単語コレクター(文章自動校正器)
単語コレクター(文章自動校正器)単語コレクター(文章自動校正器)
単語コレクター(文章自動校正器)JubatusOfficial
 
発言小町からのプロファイリング
発言小町からのプロファイリング発言小町からのプロファイリング
発言小町からのプロファイリングJubatusOfficial
 
新聞から今年の漢字を予測する
新聞から今年の漢字を予測する新聞から今年の漢字を予測する
新聞から今年の漢字を予測するJubatusOfficial
 
Python 特徴抽出プラグイン
Python 特徴抽出プラグインPython 特徴抽出プラグイン
Python 特徴抽出プラグインJubatusOfficial
 
Jubatus解説本の紹介
Jubatus解説本の紹介Jubatus解説本の紹介
Jubatus解説本の紹介JubatusOfficial
 
かまってちゃん小町
かまってちゃん小町かまってちゃん小町
かまってちゃん小町JubatusOfficial
 
地域の魅力を伝えるツアーガイドAI
地域の魅力を伝えるツアーガイドAI地域の魅力を伝えるツアーガイドAI
地域の魅力を伝えるツアーガイドAIJubatusOfficial
 

Viewers also liked (18)

Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...
   Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...   Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...
Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017 / E...
 
Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017)
Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017)Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017)
Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017)
 
条件付き確率場の推論と学習
条件付き確率場の推論と学習条件付き確率場の推論と学習
条件付き確率場の推論と学習
 
いまさら聞けない機械学習の評価指標
いまさら聞けない機械学習の評価指標いまさら聞けない機械学習の評価指標
いまさら聞けない機械学習の評価指標
 
小町のレス数が予測できるか試してみた
小町のレス数が予測できるか試してみた小町のレス数が予測できるか試してみた
小町のレス数が予測できるか試してみた
 
新機能紹介 1.0.6
新機能紹介 1.0.6新機能紹介 1.0.6
新機能紹介 1.0.6
 
Jubakitの解説
Jubakitの解説Jubakitの解説
Jubakitの解説
 
単語コレクター(文章自動校正器)
単語コレクター(文章自動校正器)単語コレクター(文章自動校正器)
単語コレクター(文章自動校正器)
 
発言小町からのプロファイリング
発言小町からのプロファイリング発言小町からのプロファイリング
発言小町からのプロファイリング
 
Jubatus 1.0 の紹介
Jubatus 1.0 の紹介Jubatus 1.0 の紹介
Jubatus 1.0 の紹介
 
新聞から今年の漢字を予測する
新聞から今年の漢字を予測する新聞から今年の漢字を予測する
新聞から今年の漢字を予測する
 
Python 特徴抽出プラグイン
Python 特徴抽出プラグインPython 特徴抽出プラグイン
Python 特徴抽出プラグイン
 
Jubatus解説本の紹介
Jubatus解説本の紹介Jubatus解説本の紹介
Jubatus解説本の紹介
 
かまってちゃん小町
かまってちゃん小町かまってちゃん小町
かまってちゃん小町
 
小町の溜息
小町の溜息小町の溜息
小町の溜息
 
JUBARHYME
JUBARHYMEJUBARHYME
JUBARHYME
 
銀座のママ
銀座のママ銀座のママ
銀座のママ
 
地域の魅力を伝えるツアーガイドAI
地域の魅力を伝えるツアーガイドAI地域の魅力を伝えるツアーガイドAI
地域の魅力を伝えるツアーガイドAI
 

Similar to 協調フィルタリングを利用した推薦システム構築

RとStanでクラウドセットアップ時間を分析してみたら #TokyoR
RとStanでクラウドセットアップ時間を分析してみたら #TokyoRRとStanでクラウドセットアップ時間を分析してみたら #TokyoR
RとStanでクラウドセットアップ時間を分析してみたら #TokyoRShuyo Nakatani
 
順序データでもベイズモデリング
順序データでもベイズモデリング順序データでもベイズモデリング
順序データでもベイズモデリング. .
 
Azure MLで何かやる
Azure MLで何かやるAzure MLで何かやる
Azure MLで何かやるYuki Igarashi
 
機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編
機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編
機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編Daiyu Hatakeyama
 
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tatsuya Tojima
 
2020/07/04 BSP-Net (CVPR2020)
2020/07/04 BSP-Net (CVPR2020)2020/07/04 BSP-Net (CVPR2020)
2020/07/04 BSP-Net (CVPR2020)Takuya Minagawa
 

Similar to 協調フィルタリングを利用した推薦システム構築 (7)

RとStanでクラウドセットアップ時間を分析してみたら #TokyoR
RとStanでクラウドセットアップ時間を分析してみたら #TokyoRRとStanでクラウドセットアップ時間を分析してみたら #TokyoR
RとStanでクラウドセットアップ時間を分析してみたら #TokyoR
 
順序データでもベイズモデリング
順序データでもベイズモデリング順序データでもベイズモデリング
順序データでもベイズモデリング
 
Azure MLで何かやる
Azure MLで何かやるAzure MLで何かやる
Azure MLで何かやる
 
第28回Tokyo.R
第28回Tokyo.R第28回Tokyo.R
第28回Tokyo.R
 
機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編
機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編
機械学習 / Deep Learning 大全 (3) 時系列 / リコメンデーション編
 
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
 
2020/07/04 BSP-Net (CVPR2020)
2020/07/04 BSP-Net (CVPR2020)2020/07/04 BSP-Net (CVPR2020)
2020/07/04 BSP-Net (CVPR2020)
 

More from Masayuki Ota

Secretary product design
Secretary product designSecretary product design
Secretary product designMasayuki Ota
 
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...Masayuki Ota
 
Ai Expo講演資料
Ai Expo講演資料Ai Expo講演資料
Ai Expo講演資料Masayuki Ota
 
推薦システムを構築する手順書 with Azure Machine Learning
推薦システムを構築する手順書 with Azure Machine Learning推薦システムを構築する手順書 with Azure Machine Learning
推薦システムを構築する手順書 with Azure Machine LearningMasayuki Ota
 
Azure Machine Learning getting started
Azure Machine Learning getting startedAzure Machine Learning getting started
Azure Machine Learning getting startedMasayuki Ota
 
ABC 2014 Winter 登壇資料
ABC 2014 Winter 登壇資料ABC 2014 Winter 登壇資料
ABC 2014 Winter 登壇資料Masayuki Ota
 

More from Masayuki Ota (6)

Secretary product design
Secretary product designSecretary product design
Secretary product design
 
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
現場ではこう使った~Office 365 と Azure Functions、Azure Data Factory、Azure SQL Database,...
 
Ai Expo講演資料
Ai Expo講演資料Ai Expo講演資料
Ai Expo講演資料
 
推薦システムを構築する手順書 with Azure Machine Learning
推薦システムを構築する手順書 with Azure Machine Learning推薦システムを構築する手順書 with Azure Machine Learning
推薦システムを構築する手順書 with Azure Machine Learning
 
Azure Machine Learning getting started
Azure Machine Learning getting startedAzure Machine Learning getting started
Azure Machine Learning getting started
 
ABC 2014 Winter 登壇資料
ABC 2014 Winter 登壇資料ABC 2014 Winter 登壇資料
ABC 2014 Winter 登壇資料
 

協調フィルタリングを利用した推薦システム構築