Giter Site home page Giter Site logo

alexandre-eymael / hessian Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 0.0 45.12 MB

🌲 Health Evaluation and Surveillance for Sylvan Infirmities using Advanced Neural networks

License: MIT License

Python 3.95% Shell 0.15% HTML 0.89% Dockerfile 0.06% Jupyter Notebook 94.94%

hessian's Introduction

HESSIAN 🌳

πŸ’¬ About the Project

Welcome to HESSIAN, a pioneering initiative led by "The Foresters 🌲" team, dedicated to the health evaluation and surveillance of plant life using cutting-edge analytical networking techniques. Our mission is to leverage advanced algorithms and data analytics to detect, classify, and understand the health of leaves, ultimately contributing to the preservation and care of our vital forest ecosystems.

🌲 Our Team: The Foresters

The Foresters 🌲 team is composed of three members, all in deep love with nature:

  • Alexandre EymaΓ«l (@alexandre-eymael)
  • Badei Alrahel (@BadeiAlrahel)
  • Louis Colson (@colson-louis)

πŸŽ“ Context

The HESSIAN project is carried out as part of the INFO9023 - Machine Learning Systems Design course at ULiège.

πŸ“ Building Blocks

We provide a table detailing all the features implemented in this project, along with their respective implementation locations. Upon navigating to these locations, you will find an additional README.md file in the corresponding subdirectory, which serves to further explain and demonstrate the implemented feature.

# Work package Required? Implemented? Location
1.1 Pick a team βœ… βœ… .
1.2 Communication channel βœ… βœ… .
1.3 Use Case Selection βœ… βœ… USECASE.md
1.4 Use Case Definition βœ… βœ… USECASE.md
- - - - -
1.5 Setup a code versioning repository βœ… βœ… .
1.6 Find a name βœ… βœ… .
- - - - -
2.1 Exploratory Data Analysis βœ… βœ… exploratory_data_analysis.ipynb
2.2 Train your model βœ… βœ… models/
2.3 Evaluate your model βœ… βœ… models/
2.4 Weights and Biases ❌ βœ… models/
- - - - -
3.1 API to serve the model βœ… βœ… deployment/
3.2 Package API in a Docker βœ… βœ… deployment/
3.3 Deploy API in the cloud βœ… βœ… deployment/
- - - - -
4.1 Package model training in a Docker ❌ βœ… deployment_train/
4.2 Run your model training in the cloud ❌ βœ… deployment_train/
4.3 Automated Pipeline ❌ ❌
- - - - -
5.1 Dashboard ❌ βœ… deployment/
5.2 CICD βœ… βœ… .github/workflows/
5.3 CICD: Model Training ❌ βœ… .github/workflows/training.yml
5.4 CICD: Model Deployment ❌ βœ… .github/workflows/deploy.yml
5.5 CICD: Pylint ❌ βœ… .github/workflows/pylint.yml
5.6 CICD: Pytest ❌ βœ… .github/workflows/pytest.yml

🌿 Gitflow Principles

During the development of this project, we strictly adhered to Gitflow principles to maintain a structured and efficient workflow. Our main branch served as the repository's official release history, containing stable and approved code. Whenever we initiated work on a new feature, we created a dedicated branch branching off from the main branch. This allowed us to isolate development efforts and maintain a clean codebase.

Once a feature was fully developed and thoroughly tested, we initiated a pull request to merge the feature branch into the master branch. This integration process ensured that only completed and validated features were merged into the main branch, thereby preserving the stability and integrity of our codebase. By following this approach, we maintained a systematic and organized development cycle, enabling seamless collaboration among team members and facilitating the management of feature implementations.

πŸ“ƒ License

This project is licensed under the MIT License - see the LICENSE file for details.

hessian's People

Contributors

alexandre-eymael avatar badeialrahel avatar colson-louis avatar

Stargazers

Julien Gustin avatar  avatar Thomas Vrancken avatar  avatar

Watchers

 avatar

hessian's Issues

Milestone 1 Feedback

Hi team,

Great job on the MS 1 presentation. Here is some feedback from our side:

  • Outstanding work overall
  • Great application of courses concept
  • Great work on the API logic (and use of Postman to showcase it)
  • Great that you built a simple UI
  • Creative to serve different model sizes
  • Concrete and applicable real world usage
  • Nice use of W&B
  • Could have used Gitflow principles (e.g. feature branches)

You already built most of what is needed for the project.
If you want to work more on it we can discuss at the end of next lessons what is possible.

I recommend following the next course where we'll show how you could have used Cloud Run for your different APIs.

Best regards,
Thomas

Feedback milestone 2

Hi all,

I missed the PR for MS2 so here is our feedback:

Thanks for the work on this project!
You truly did an outstanding implementation. You went above and beyond on pretty much all components of the project. Many best practices were implemented on your own initiative, often before being covered in the class. I hope you still learned useful things during the course and, of course, project.

Here is some feedback per different sprints:

Sprint 1

+Nice context (stat on lost crop to disease)
+Product approach (UX, pricing, …)
+Use of Gitflow (and well documented in README)
-Could have been interesting to comment on who possible users would be

Sprint 2

+Good EDA
+Nice modeling with 3 sizes and prices
+Custom model (Alexnet)
+W&B for tracking training

Sprint 3

+Clean deployment
+Good to have an API key to control access
+Creative to use VPS
+Pytorch prebuilt image
+Secret manager
+Use of PostMan
+Low latency
-It could have been interesting to use a more common cloud provider

Sprint 4

+Vertex AI training (very good)
+CICD triggered training
-ML pipeline missing, though it was not a hard requirement

Sprint 5

+Very clean and thorough use of CICD
+Github secrets
+Train is triggered per commit name (much better than e.g. having a dedicated training branch)
+UI showing probability is nice UI β†’ If incorrect users know why

Extra feedback

+Diagram architecture, super clear how different components interact
+Super clear documentation (README overview, which components from the project description were implemented, use of Gitflow, …)
+β€œThe Foresters” β†’ nice
-One student presented just the data part, less uniform presentation time

You can look back proudly to what you implemented. You show clear potential in software engineering and developing ML Systems.
I suggest showcasing your project when applying to jobs, it’s a good vitrine into what you can do.

Hope you had fun and learned interesting things.

Feel free to reach out if you have any questions.

Best regards,
Thomas Vrancken & Matthias Pirlet

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.