Giter VIP home page Giter VIP logo

cbmf's Introduction

Approximate matrix completion based on the cavity method

This repository includes cavity-based matrix factorization (CBMF) and approximate cavity-based matrix factorization (ACBMF) for matrix completion.

Requirement

  • Installing Almadillo, which is c++ library for linear algebra, is needed to run.
  • Compiling and running was tested under gcc version 4.2.1 (macOS High Sierra).

Usage

Compiling:

Simply use make.

Options:

  • -l: Learning rate. [default: 0.3]
  • -L: Reguralization parameter. [default: 3]
  • -R: Rank. [default: 10]
  • -m: Maximum number of iterations. [default: 100]
  • -r: Filename of dataset for training. [default: dataset/ml_1m_train.txt]
  • -t: Filename of dataset for test. [default: dataset/ml_1m_test.txt]
  • -o: Where output files are to be placed. [default: output/]
  • -c: Exponent of convergence condition. If RMSE < pow(10, convint) is satisfied, it is regarded as convergence. [default: -5]
  • -p: If this option is set, ACBMF is to be performed. Without this option, CBMF is to be done.
  • -h: Show help.

Examples:

Perfoming CBMF using 'dataset/ml_1m_train.txt' as training dataset and 'dataset/ml_1m_test.txt' as test dataset.

./cbmf -r dataset/ml_1m_train.txt -t dataset/ml_1m_test.txt

Perfoming ACBMF using 'dataset/ml_1m_train.txt' as training dataset and 'dataset/ml_1m_test.txt' as test dataset.

./cbmf -p -r dataset/ml_1m_train.txt -t dataset/ml_1m_test.txt

Showing help.

./cbmf -h

Reference

cbmf's People

Contributors

chnoguchi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.