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

Feature/SK-971 | New object detection example #703

Merged
merged 13 commits into from
Oct 11, 2024
Merged

Feature/SK-971 | New object detection example #703

merged 13 commits into from
Oct 11, 2024

Conversation

KatHellg
Copy link
Contributor

Description

New example to stack. Defect detection use case for manufacturing using YOLOv8n model.

Link to JIRA --> https://scaleoutsystems.atlassian.net/browse/SK-971?atlOrigin=eyJpIjoiMzQ0NWJhNDA0NTU2NGUyY2E2MzliNzBlZmUyZTk0NTUiLCJwIjoiaiJ9

@KatHellg KatHellg added feature New feature or request HOLD labels Sep 17, 2024
@KatHellg KatHellg requested a review from Wrede September 17, 2024 13:09
@ahellander ahellander self-requested a review September 17, 2024 21:17
Copy link
Member

@ahellander ahellander left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, nice progress. Can you add a README.rst with more of a complete description of the use-case?

@KatHellg
Copy link
Contributor Author

KatHellg commented Sep 21, 2024

Left to do:

  • add content to readme
  • fix bugs in data.py file
  • rm some hyperparameters in train.py
  • clean up code

@KatHellg KatHellg changed the title add example Feature/SK-971 | New object detection example Sep 24, 2024
@KatHellg KatHellg added HOLD and removed HOLD labels Sep 24, 2024
@KatHellg KatHellg added HOLD and removed HOLD labels Sep 25, 2024
@KatHellg KatHellg removed the HOLD label Sep 25, 2024

### 1. Prerequisites

- `Python >=3.8, <=3.12 <https://www.python.org/downloads>`__
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have it been tested with these versions?


### 4. Running the project on FEDn

To learn how to set up your FEDn Studio project and connect clients, take the quickstart tutorial: https://fedn.readthedocs.io/en/stable/quickstart.html. When activating the first client, you will be asked to provide your login credentials to Kaggle to download the welding defect dataset and split it into separate client folders.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would upload the dataset to scaleout-public bucket instead, so that we are in control of the data. But this is good for now.


## Experiments with results

Below are a few examples of experiments which have been run using this example. A centralized setup has been used as baseline to compare the federated setup to. Two clients have been used in the federated setup and a few different epoch-to-round ratios have been tested.
Copy link
Member

@Wrede Wrede Sep 27, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"A centralized setup has been used as baseline to compare against."

- pip
- setuptools
- wheel
dependencies:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

look at other examples from main branch, use the same environment markers.

- wheel
dependencies:
- torch==2.3.1
- torchvision==0.18.1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why torchvision? Where is it used?

Copy link
Member

@Wrede Wrede left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job! I have not tested to run it but I trust it works, just test for different python versions.

@stefanhellander
Copy link
Collaborator

I think that we should consider having a separate repository for this example, since it uses a library (Ultralytics) with an AGPL-license (can make some users nervous, even if it is not used in FEDn itself).

@KatHellg KatHellg self-assigned this Oct 10, 2024
@KatHellg KatHellg added the HOLD label Oct 10, 2024
@Wrede Wrede merged commit 211ce62 into master Oct 11, 2024
19 checks passed
@Wrede Wrede deleted the feature/SK-971 branch October 11, 2024 13:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request minor
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants