  Cache-enabled device-to-device (D2D) communications can boost network
throughput. By pre-downloading contents to local caches of users, the content
requested by a user can be transmitted via D2D links by other users in
proximity. Prior works optimize the caching policy at users with the knowledge
of content popularity, defined as the probability distribution of request for
every file in a library from by all users. However, content popularity can not
reflect the interest of each individual user and thus popularity-based caching
policy may not fully capture the performance gain introduced by caching. In
this paper, we optimize caching policy for cache-enabled D2D by learning user
preference, defined as the conditional probability distribution of a user's
request for a file given that the user sends a request. We first formulate an
optimization problem with given user preference to maximize the offloading
probability, which is proved as NP-hard, and then provide a greedy algorithm to
find the solution. In order to predict the preference of each individual user,
we model the user request behavior by probabilistic latent semantic analysis
(pLSA), and then apply expectation maximization (EM) algorithm to estimate the
model parameters. Simulation results show that the user preference can be
learnt quickly. Compared to the popularity-based caching policy, the offloading
gain achieved by the proposed policy can be remarkably improved even with
predicted user preference.
