Apologies in advance if this question is broad or basic for data science community.


Dataset containing thousands of lines with Apache HTTP Server log file produced in Common Log Format (CLF) from a library search engine: - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08 [en] (Win98; I ;Nav)" 893

with the follwing pattern:

  • IP address of the client (remote host)
  • user_id of the person requesting the document as determined by HTTP authentication
  • time that the request was received
  • request line from the client is given in double quotes
  • HTTP status code
  • size of the object returned to the client
  • Referer (IMPORTANT)
  • User-Agent HTTP request header
  • Session_ID


Design a recommender system using user-user collaborative filtering.

The challenge, however, is that user_id of the users are already removed (anonymized) due to GDPR rules and privacy issues. So I am given thousands of lines of similar to this sample instead: - - [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08 [en] (Win98; I ;Nav)" 893


  1. Due to importance of users in user-user collaborative filtering in recommendation systems, does this idea/approach seem feasible from data science perspective? Or it seems almost impossible and I should rearrange my approach to content-based filtering or something else?

  2. I wonder if using IP address can be somehow an alternative to user_id perhaps in this context?

  3. My current understanding of IP address is that a user in city X has still same IP address of another user in city X regardless of its distance (within ~10 KM depending on the city of course). Therefore IP cannot evidently be used to identify a user and corresponding behavior. Or do I have a wrong understanding?




Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.