1

Main task

In my bachelor degree's thesis I've developed an algorithm for recommender systems which uses personalized PageRank with some particular features as nodes. In the recommender systems' field, there is the opportunity to understand how good is the algorithm using some accuracy metrics (MAE, RMSE, F-measure, ecc.).

What I want to do

In my case I don't want to limit my analysis on the accuracy field, but I want to extend my work with a proper discussion which will compare the amout of time needed by each of the algorithm that I've implemented. During my degree I've never done something like that so I don't know how to conduct it in a formal and proper way.

The personalized PageRank implementation that I use is already present in a library (java JUNG library), so I don't need to analyze it. Instead I want to compare the different ways of using this algorithm that is the object of my thesis.

What I've thought

Actually I'm calculating (using some Java methods) the time needed by each algorithm in order to complete the specific task. After that, I will draw a plot in which I describe how much you need to pay in time in order to get a specific accuracy level.

Questions

  • Is there some good work from which I can take inspiration from (papers, books, ecc.)?
  • Can you give me some tips or simply tell your experience in the field in order to conduct this kind of analysis in a proper way?

If there is something not clear, please leave me a comment and I'll improve my question. Thank you in advance

Raphael
  • 72,336
  • 29
  • 179
  • 389
  • 1
    When you say that you're calculating the time needed, it sounds a lot like you're measuring the number of seconds. This is not how complexity theory approaches the issue. "Time" complexity is actually something much closer to a measure of the number of instructions that must be run, and it's expressed asymptotically, in terms of "for large enough $n$, an input of size $n$ results in a computation taking at most $f(n)$ steps", for some function $f$. You can't get that kind of information from timing analysis. – David Richerby Aug 21 '14 at 18:23
  • @DavidRicherby you are right. I'm confusing the two thing, I'm so sorry. I'm a real beginner in this field. I'm updating my question in order to make it clear. I'm looking for a way in order to analyze the amout of time needed by a specific algorithm A despite another algorithm B. – Alessandro Suglia Aug 21 '14 at 18:29

0 Answers0