第 3 章 曜日・時間帯ごとの投稿数の変化に着目した行動推定技術の提案
3.3 学習アルゴリズム
3.3.2 投稿パターンモデル構築機能
54
55
図 3.8 投稿パターンベクトル抽出の処理
図 3.8に示すとおり,投稿パターンベクトルの抽出では,まず,ユーザの投稿履歴から1 時間単位の投稿数を集計する.そして,集計した各時間帯の投稿数に対して,抽出対象の 日時を基準に,過去 n 時間分遡った時間帯までの投稿数を抽出し,投稿パターンとしてベ クトル化する.ここで,投稿履歴におけるすべての日付を𝒅𝟏, 𝒅, … , 𝒅𝒉, … , 𝒅𝒛と定義し,日付 𝒅𝒉,曜日𝒘𝒊,時間𝒕𝒋の投稿パターンベクトル𝑽𝒅𝐡𝒘𝒊𝒕𝒋を式 3.5に示す.ここで,nは過去に遡 る時間数を表す.
𝑉𝑑ℎ𝑤𝑖𝑡𝑗 = {𝑃𝑜𝑠𝑡(𝑑ℎ, 𝑤𝑖, 𝑡𝑗), 𝑃𝑜𝑠𝑡(𝑑ℎ, 𝑤𝑖, 𝑡𝑗−1), … , 𝑃𝑜𝑠𝑡(𝑑ℎ, 𝑤𝑖, 𝑡𝑗−𝑛)} (3.5)
投稿履歴 ex.2012-12-20,thu
0 4 8 12 16
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 投
稿 数
V 2012-12-20,thu,12:00 V 2012-12-20,thu,13:00 V 2012-12-20,thu,14:00
V 2012-12-20,thu,15:00 V 2012-12-20,thu,16:00 V 2012-12-20,thu,17:00 n時間
投稿パターンベクトルの抽出
時間
56
式 3.5 において,𝑃𝑜𝑠𝑡(𝑑ℎ, 𝑤𝑖, 𝑡𝑗)は,時間帯𝑡𝑗の投稿数を表す.この投稿パターンベクト ル𝑉𝑑ℎ𝑤𝑖𝑡𝑗をユーザの投稿履歴のすべての日時から抽出する.
(2) 行動確率付与処理
本処理では,行動確率モデルを参照し,投稿パターンベクトルに行動確率を付与する.
行動確率付与処理のイメージを図 3.9に示す.
図 3.9 行動確率付与処理のイメージ 睡眠中:80%
その他:20%
睡眠中:90% 食事中:10%
帰宅中:70% 食事中:30%
・・・
・・・
・ ・
・
・ ・
・ ・ ・ ・
睡眠中:80%
その他:20%
睡眠中:70%
その他:30%
その他:70%
食事中:30%
V
2012-12-20,thu,12:00V
2012-12-20,thu,13:00行動確率モデル
各曜日・時間帯に分類 行動確率の付与 投稿パターンベクトル
曜 日
時間帯
57
図 3.9 では,まず,投稿パターンベクトル𝑽𝒅𝐡𝒘𝒊𝒕𝒋を各曜日・時間帯に分類する.曜日𝒘𝒊, 時間𝒕𝒋に分類した投稿パターンベクトル集合𝑽𝑺𝒆𝒕𝒘𝒊𝒕𝒋を式3. 6に示す.ここで,zはTwitter アカウントの開始日からの経過日数を表す.
𝑉𝑆𝑒𝑡𝑤𝑖𝑡𝑗 = {𝑉𝑑ℎ𝑤𝑖𝑡𝑗, 𝑉(𝑑ℎ−7)𝑤𝑖𝑡𝑗, 𝑉(𝑑ℎ−14)𝑤𝑖𝑡𝑗, … , 𝑉(𝑑ℎ−𝑧)𝑤𝑖𝑡𝑗} (3.6)
そして,投稿パターンベクトル集合𝑉𝑆𝑒𝑡𝑤𝑖𝑡𝑗に行動確率モデルの同曜日・時間帯における 各行動の行動確率を付与する.これにより,投稿パターンベクトルに行動の意味付けを行 う.
(3) 投稿パターンベクトルのクラスタリング処理
本処理では,類似する投稿パターンベクトルをクラスタリングにより類型化し,集約す ることで特徴的なベクトルを抽出する.まず,各曜日・時間帯の投稿パターンベクトル集 合𝑉𝑆𝑒𝑡𝑤𝑖𝑡𝑗 を 分 析 し , ク ラ ス タ リ ン グ に よ っ て 投 稿 パ タ ー ン ベ ク ト ル 𝑉𝑑ℎ𝑤𝑖𝑡𝑗, 𝑉(𝑑ℎ−7)𝑤𝑖𝑡𝑗, 𝑉(𝑑ℎ−14)𝑤𝑖𝑡𝑗, … , 𝑉(𝑑ℎ−𝑧)𝑤𝑖𝑡𝑗を分類する.そして,分類したベクトルの平均値 を求めることで,類似するベクトルを集約した特徴的な投稿パターンベクトルを抽出する.
クラスタリングにより集約した投稿パターンベクトルをそれぞれ𝑉𝑐1, 𝑉𝑐2, … , 𝑉𝑐𝑏, … 𝑉𝑐𝑦と表 す.ここで,yはクラスタの数を表す.
クラスタリングには,階層的クラスタリングと非階層的クラスタリングがある.階層的 クラスタリングと非階層的クラスタリングの特徴の比較を表 3.4に示す.
表 3.4 階層的クラスタリングと非階層的クラスタリングの特徴の比較 階層的クラスタリング 非階層的クラスタリング
長所
・分類するクラスタ数を事前 に決定する必要がない
・初期値に依存しない
・処理時間が短い
短所 ・処理時間が長い
・分類するクラスタ数を事前 に決定する必要がある
・初期値に依存する
非階層的クラスタリングで代表的なk-means法[83]では,初期値にクラスタリングの精度 が依存する問題や分類するクラスタ数が固定である問題がある.特に,本研究では,分類 するクラスタ数を事前に決定することが困難なため,階層的クラスタリングを用いること にした.階層的クラスタリングでは,データの分類が階層的になされ,その結果がデンド ログラム(樹形図)で表される.デンドログラムを図 3.10に示す.
58
図 3.10 デンドログラム
デンドログラムを任意の閾値 α で切ることで,分割するクラスタ数を操作する.この閾 値 α は,事前実験にて決定する.クラスタ間の距離の算出には,階層的クラスタリングの 代表的な手法であるWard法[84]を用いる.Ward法は,クラスタ内のデータの平方和を最小 にするように考慮した手法であり,分類感度が高いことが知られている.Ward法によりク ラスタリングした投稿パターンベクトル𝑉𝑐𝑏を VSM の学習ベクトルとして投稿パターンモ デルに格納する.これらの処理の流れにより,ユーザの習慣行動と投稿パターンの関係を 学習し,投稿パターンモデルを構築する.