A Framework for Software Function Recommendation based on Collaborative Filtering
Naoki Ohsugi · Institutional Repositories DataBase (IRDB) · 2004
High-Functionality Applications(HFAs) contain a large number of functions.However, most HFA users use only a few functions and are not aware of other useful functions.To let users discover other useful, not previously known (or: previously unknown) functions efficiently, this dissertation proposes a framework for software function recommendation based on Collaborative Filtering (CF).The proposed framework includes an abstract design of a function recommender system and an automated process for producing a recommendation, as well as system implementation techniques and new CF algorithms.To produce a recommendation for a target HFA user, first, histories of software function executions (called usage histories) are collected from many HFA users via the Internet.Next, similarities among users are calculated using the frequencies of the function executions of each user.Then, the potential execution frequencies of the target user 's previously unknown functions are predicted based on similar users' already known frequencies.Finally, a list of functions ranked by their potential frequency is given as a recommendation to the target user.Since this framework does not require a previously constructed "user model" to make a recommendation, it is easily applicable to many HFAs.Typically, the CF algorithm consists of a similarity computation algorithm and a prediction algorithm.This dissertation describes three simple prediction algorithms (lacking similarity computation), ten similarity computation algorithms including two