Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Finish transition to models/examples repository #1

Open
3 of 7 tasks
rcurtin opened this issue Mar 19, 2020 · 7 comments
Open
3 of 7 tasks

Finish transition to models/examples repository #1

rcurtin opened this issue Mar 19, 2020 · 7 comments

Comments

@rcurtin
Copy link
Member

rcurtin commented Mar 19, 2020

I just wanted to create an issue to point out that there are some cleanup bits that need to be done in this repository after the changes we decided to make to the repository structure in mlpack/examples#61.

This is the "models" repository, which will contain ready-to-use implementations of popular machine learning model types that aren't available in the normal mlpack codebase. These can be used as bindings.

So, here's a basic todo:

  • update README
  • set up mlpack-bot
  • set up labels
  • remove any "simple" examples and replace with bindings that have CLI support, etc.
  • set up CMake configuration so that the models can be compiled. Maybe that means using git submodules and the mlpack repository's CMake configuration?
  • update any references to the models/ repository
  • update the website to point to this repository
@kartikdutt18
Copy link
Member

kartikdutt18 commented Mar 20, 2020

Thanks @rcurtin for opening this issue. Maybe it makes sense to remove one example at a time and replace it with the new model because when I made the changes earlier for all examples I had added 1700 lines and removed about 6k lines which would be difficult to review, so I'll open a PR tomorrow to replace mnist portion of the repo. I'll also try to write cmake such that it matches for git submodules. Once that is done, I think it will be easier to make changes for the rest. I can do them in 1 PR also if that makes more sense. Thanks a lot.

@rcurtin
Copy link
Member Author

rcurtin commented Mar 20, 2020

Agreed, sounds good. Getting the submodule part set up might require a little bit more work. (@shrit maybe you have some input on the best way to do that?) Basically, if we use submodules, it would probably mean that users can't build from this repository directly. I guess that's okay?

I opened a PR to update the readme in #2.

@shrit
Copy link
Member

shrit commented Mar 21, 2020

@rcurtin The good news is that we can build from the repository itself, even if we add it as a submodule (Assuming as before that mlpack and all other dependencies are installed correctly). In all cases, we need to have a cmake build system for the models, which is going to be used by mlpack cmake to build all the models if a user wants.
I can work on a pull request on mlpack to add this repository as a submodule and compile it directly from mlpack.

@rcurtin
Copy link
Member Author

rcurtin commented Mar 24, 2020

@shrit that sounds good, we can try that and see how it works. It might be good to wait until we finish transitioning this repository so that it has a bunch of bindings that use the CLI framework in it though? Either way is fine I guess. :)

@shrit
Copy link
Member

shrit commented Mar 24, 2020

@rcurtin Yes, I am able to integrate models into mlpack. The main issue so far is the compilation order (models are compiling before mlpack). Since models cmake system is going to be modified in all cases. I think I am going to wait until the model repository converge

@rcurtin
Copy link
Member Author

rcurtin commented Mar 26, 2020

@shrit take a look at the end of src/mlpack/CMakeLists.txt, it could cause some problems. Basically, the if (BUILDING_PYTHON_BINDINGS) section and post_markdown_setup() need to be called after all bindings are added. But we would have to add all models/ bindings before calling this code. So some restructuring of the core mlpack CMake code might be necessary (that's not a problem though).

It looks like the item remove any "simple" examples and replace with bindings that have CLI support, etc. is being handled by #3. Thanks @kartikdutt18!

I'll update the website and references to this repository within the next day.

@mlpack-bot
Copy link

mlpack-bot bot commented Apr 25, 2020

This issue has been automatically marked as stale because it has not had any recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions! 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants