-
Notifications
You must be signed in to change notification settings - Fork 11
Support for clustering detections #818
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
Merged
mihow
merged 47 commits into
deployments/ood.antenna.insectai.org
from
feat/add-clustering
May 7, 2025
Merged
Changes from all commits
Commits
Show all changes
47 commits
Select commit
Hold shift + click to select a range
132f9dc
feat: Added pgvector extension
mohamedelabbas1996 dc48ccc
feat: Added features field to the Classification model
mohamedelabbas1996 8dc0c00
changed taxon and detection to autocomplete fields in the Classificat…
mohamedelabbas1996 4bf07b3
feat: added similar action to the ClassificationViewset
mohamedelabbas1996 b258c9b
chore: changed features vector field name to features_2048
mohamedelabbas1996 9490045
chore: changed features vector field name to features_2048
mohamedelabbas1996 0ff569f
feat: read features vector from processing service ClassificationResp…
mohamedelabbas1996 89a3b6c
test: added tests for PGVector distance metrics
mohamedelabbas1996 9e13cc4
updated docker-compose.ci.yml to use the same postgres image
mohamedelabbas1996 5a51593
updated docker-compose.ci.yml to use the same postgres image as docke…
mohamedelabbas1996 9efff5f
updated docker-compose.ci.yml to use the same postgres image as docke…
mohamedelabbas1996 1c66f34
feat: Added support for clustering detections for source image collec…
mohamedelabbas1996 99a7f3f
feat: Allowed triggering collection detections clustering from admin …
mohamedelabbas1996 83f2c08
fix: show unobserved Taxa in view for now
mihow 5420f85
fix: create & update occurrence determinations after clustering
mihow 6b0020d
feat: add unknown species filter to admin
mihow 856035d
Merge branch 'deployments/ood.antenna.insectai.org' of github.com:Rol…
mihow 036d81d
Merge branch 'deployments/ood.antenna.insectai.org' of github.com:Rol…
mihow 4f8b09b
fix: circular import
mihow d255085
fix: update migration ordering
mihow 2e12b56
Integrated Agglomerative clustering
mohamedelabbas1996 a301dc7
Merge branch 'feat/add-clustering' of https://github.com/RolnickLab/a…
mohamedelabbas1996 10820bb
updated clustering request params
mohamedelabbas1996 225529e
fixed Agglomerative clustering
mohamedelabbas1996 0423523
fix: disable missing clustering algorithms
mihow cb894f4
fix: syntax when creating algorithm entry
mihow 39d9b6c
feat: command to create clustering job without starting it
mihow abd9cf1
feat: increase default batch size
mihow b2a7b3f
fix: better algorithm name
mihow bf67d06
feat: allow sorting by OOD score
mihow ce08f6a
Merge branch 'deployments/ood.antenna.insectai.org' of github.com:Rol…
mihow 853b69d
feat: add unknown species and other fields to Taxon serializer
mihow 6586872
fix: remove missing field
mihow b242079
fix: migration conflicts
mihow fe744f0
feat: fields for investigating occurrence classifications in admin
mihow 4ac88da
fix: filter by feature extraction algorithm
mohamedelabbas1996 6d44bdb
chore: Used a serializer to handle job params instead of reading them…
mohamedelabbas1996 12b4ee4
set default ood threshold to 0.0
mohamedelabbas1996 2c73795
test: added tests for clustering
mohamedelabbas1996 e5d7ff0
chore: migration for new algorithm type
mihow 9ad77f7
Merge branch 'deployments/ood.antenna.insectai.org' of github.com:Rol…
mihow fdbbf75
fix: remove cluster action in Event admin until its ready
mihow 0e92904
chore: move algorithm selection to dedicated function
mihow b26fbe0
fix: update clustering tests and types
mihow 4032aff
chore: remove external network config in processing services
mihow 0f8c544
feat: update GitHub workflows to run tests on other branches
mihow 5fb5c43
fix: hide unobserved taxa by default
mihow File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| # Generated by Django 4.2.10 on 2025-04-24 16:25 | ||
|
|
||
| from django.db import migrations, models | ||
|
|
||
|
|
||
| class Migration(migrations.Migration): | ||
| dependencies = [ | ||
| ("jobs", "0016_job_data_export_job_params_alter_job_job_type_key"), | ||
| ] | ||
|
|
||
| operations = [ | ||
| migrations.AlterField( | ||
| model_name="job", | ||
| name="job_type_key", | ||
| field=models.CharField( | ||
| choices=[ | ||
| ("ml", "ML pipeline"), | ||
| ("populate_captures_collection", "Populate captures collection"), | ||
| ("data_storage_sync", "Data storage sync"), | ||
| ("unknown", "Unknown"), | ||
| ("data_export", "Data Export"), | ||
| ("occurrence_clustering", "Occurrence Feature Clustering"), | ||
| ], | ||
| default="unknown", | ||
| max_length=255, | ||
| verbose_name="Job Type", | ||
| ), | ||
| ), | ||
| ] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| # Generated by Django 4.2.10 on 2025-04-28 11:06 | ||
|
|
||
| from django.db import migrations, models | ||
|
|
||
|
|
||
| class Migration(migrations.Migration): | ||
| dependencies = [ | ||
| ("jobs", "0017_alter_job_job_type_key"), | ||
| ] | ||
|
|
||
| operations = [ | ||
| migrations.AlterField( | ||
| model_name="job", | ||
| name="job_type_key", | ||
| field=models.CharField( | ||
| choices=[ | ||
| ("ml", "ML pipeline"), | ||
| ("populate_captures_collection", "Populate captures collection"), | ||
| ("data_storage_sync", "Data storage sync"), | ||
| ("unknown", "Unknown"), | ||
| ("data_export", "Data Export"), | ||
| ("detection_clustering", "Detection Feature Clustering"), | ||
| ], | ||
| default="unknown", | ||
| max_length=255, | ||
| verbose_name="Job Type", | ||
| ), | ||
| ), | ||
| ] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| # Generated by Django 4.2.10 on 2025-04-28 11:11 | ||
|
|
||
| from django.db import migrations, models | ||
|
|
||
|
|
||
| class Migration(migrations.Migration): | ||
| dependencies = [ | ||
| ("main", "0062_classification_ood_score_and_more"), | ||
| ] | ||
|
|
||
| operations = [ | ||
| migrations.AddField( | ||
| model_name="taxon", | ||
| name="unknown_species", | ||
| field=models.BooleanField(default=False, help_text="Is this a clustering-generated taxon"), | ||
| ), | ||
| ] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel much better about using a serializer for the params! thank you 🙏