Difference between revisions of "MyMediaLite"
Zeno Gantner (talk | contribs) |
Zeno Gantner (talk | contribs) |
||
| (7 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
'''MyMediaLite''' is a lightweight, multi-purpose library of recommender system algorithms, written in C#. | '''MyMediaLite''' is a lightweight, multi-purpose library of recommender system algorithms, written in C#. | ||
Using Mono, it runs on all major computing platforms. | Using Mono, it runs on all major computing platforms. | ||
| + | It also has been ported to [[Java]] to provide the basis of the recommender extension for the RapidMiner data analysis tool. | ||
It addresses the two most common scenarios in [[collaborative filtering]]: | It addresses the two most common scenarios in [[collaborative filtering]]: | ||
| Line 12: | Line 13: | ||
Recommenders may use the collaborative data, plus additionally user/item attributes and user/item relations. | Recommenders may use the collaborative data, plus additionally user/item attributes and user/item relations. | ||
| − | MyMediaLite includes evaluation routines for rating prediction and item prediction; it can measure [[MAE]], [[RMSE]], [[AUC]], [[precision at N]], [[MAP]], [[NDCG]], and [[MRR]]. | + | MyMediaLite includes evaluation routines for rating prediction and item prediction; it can measure [[MAE]], [[RMSE]], [[CBD]], [[AUC]], [[precision at N]], [[MAP]], [[NDCG]], and [[MRR]]. |
It also comes with command line tools that expose most of the library's functionality, accepting data in a simple text-based input format compatible to the one used by [[Mahout]]. | It also comes with command line tools that expose most of the library's functionality, accepting data in a simple text-based input format compatible to the one used by [[Mahout]]. | ||
| Line 24: | Line 25: | ||
== External links == | == External links == | ||
| − | * http:// | + | * http://mymedialite.net/ |
* [http://github.com/zenogantner/MyMediaLite/ MyMediaLite at github.com] | * [http://github.com/zenogantner/MyMediaLite/ MyMediaLite at github.com] | ||
| − | * [http://github.com/ | + | * [http://github.com/jcnewell/MyMediaLiteJava/ Java port of MyMediaLite] by [[Chris Newell]] |
| + | * http://sibyl.prototyping.bbc.co.uk/ -- [[Sibyl]], an experimental recommender system interface based on MyMediaLite | ||
* [http://mloss.org/software/view/282/ MyMediaLite at mloss.org] | * [http://mloss.org/software/view/282/ MyMediaLite at mloss.org] | ||
* Twitter: [http://twitter.com/mymedialite @mymedialite] | * Twitter: [http://twitter.com/mymedialite @mymedialite] | ||
| − | * [http://www. | + | * [https://github.com/timgluz/clj-mml/ clj-mml] -- [[Clojure]] bindings for MyMediaLite |
| + | * [http://www.marrk.nl/post/mymedialite-servicestack/ Using Service Stack to expose MyMedaLite as a web service] blog post by [[Mark Graus]] | ||
* [http://channel9.msdn.com/coding4fun/blog/MyMediaLite-Recommender-System-Library blog post about MyMediaLite] at MSDN Channel 9's Coding4Fun blog | * [http://channel9.msdn.com/coding4fun/blog/MyMediaLite-Recommender-System-Library blog post about MyMediaLite] at MSDN Channel 9's Coding4Fun blog | ||
* [http://bickson.blogspot.com/2011/11/spotlight-zeno-gantner-mymedialight.html interview about MyMediaLite] at [[Danny Bickson]]'s blog | * [http://bickson.blogspot.com/2011/11/spotlight-zeno-gantner-mymedialight.html interview about MyMediaLite] at [[Danny Bickson]]'s blog | ||
| + | * [http://elico.rapid-i.com/recommender-extension.html Recommender extension for RapidMiner] | ||
| + | |||
| + | [[Category: CSharp]] | ||
| + | [[Category: FSharp]] | ||
| + | [[Category: Python]] | ||
| + | [[Category: Ruby]] | ||
| + | [[Category: Java]] | ||
| + | [[Category: Clojure]] | ||
[[Category: Software]] | [[Category: Software]] | ||
Latest revision as of 05:56, 19 December 2012
MyMediaLite is a lightweight, multi-purpose library of recommender system algorithms, written in C#. Using Mono, it runs on all major computing platforms. It also has been ported to Java to provide the basis of the recommender extension for the RapidMiner data analysis tool.
It addresses the two most common scenarios in collaborative filtering:
- rating prediction (e.g. on a scale of 1 to 5 stars), and
- item prediction from implicit feedback (e.g. from clicks or purchase actions).
MyMediaLite is free software (open source software), it can be used and distributed under the terms of the GNU General Public License (GPL).
All recommender implementations in MyMediaLite are based on the same efficient and scalable infrastructure; for each recommendation task, there is an API and a base class that make it easy to implement new recommenders. Recommenders may use the collaborative data, plus additionally user/item attributes and user/item relations.
MyMediaLite includes evaluation routines for rating prediction and item prediction; it can measure MAE, RMSE, CBD, AUC, precision at N, MAP, NDCG, and MRR. It also comes with command line tools that expose most of the library's functionality, accepting data in a simple text-based input format compatible to the one used by Mahout.
Additional features:
- saving and reloading of recommender models
- real-time online updates for many recommenders
- attribute-based diversification of recommendation lists
Literature
- Zeno Gantner, Steffen Rendle, Christoph Freudenthaler, Lars Schmidt-Thieme: MyMediaLite: A Free Recommender System Library, RecSys 2011
External links
- http://mymedialite.net/
- MyMediaLite at github.com
- Java port of MyMediaLite by Chris Newell
- http://sibyl.prototyping.bbc.co.uk/ -- Sibyl, an experimental recommender system interface based on MyMediaLite
- MyMediaLite at mloss.org
- Twitter: @mymedialite
- clj-mml -- Clojure bindings for MyMediaLite
- Using Service Stack to expose MyMedaLite as a web service blog post by Mark Graus
- blog post about MyMediaLite at MSDN Channel 9's Coding4Fun blog
- interview about MyMediaLite at Danny Bickson's blog
- Recommender extension for RapidMiner