機能実行履歴の収集と協調フィルタリングによる ソフトウェア機能推薦システム

大杉 直樹 (0151021)


今日のアプリケーションソフトウェアは非常に多機能であるために,多数の機能の中から有用な機能を発見するために大きな労力が必要となる.本論文では,機能の発見を支援することを目的として,個々のユーザにとって有用であると思われる機能を推薦するシステムを提案する.提案システムは,(1)実行された機能の履歴(機能実行履歴)を複数のユーザからネットワークを介して自動的に収集する,(2)機能実行履歴に対して協調フィルタリングを行い,履歴に含まれる各機能の有用性を予測する,(3)各機能を有用性が高いものから順に並べる,という手順で各ユーザに対して推薦を作成する.

6人のユーザから3〜22ヶ月間にわたって収集した機能実行履歴に対し,3つの代表的な協調フィルタリングアルゴリズム(従来アルゴリズム),及び,機能実行履歴の特性を考慮したアルゴリズム(改良アルゴリズム)を適用し,推薦の精度をndpmNormalized Distance-based Performance Measure)により評価した.その結果,いずれのアルゴリズムもランダムに作成した推薦より平均的に高い精度を示し,中でも改良アルゴズムが最も高い精度を示した.また,従来アルゴリズムは,1人のユーザに対してはランダム推薦より低い精度を示したのに対し,改良アルゴリズムでは,全てのユーザに対してランダム推薦より高い精度を示した.