-
Notifications
You must be signed in to change notification settings - Fork 10
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
Julia BRT Pipeline and Priority Map #99
Conversation
About masking open water, could the BinaryLayer script be useful? |
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.
Ok on my side with these minor changes.
We'd need an SDM person to review now...
I think it would be important to have spatial resolution as a pipeline input for all SDMs. |
I agree, and this also further highlights why we need a pipeline that is only about validating inputs (i.e. hypothetically the user thinks the spatial res is defined in meters when its in degrees so it goes around the earth several times) |
+ Small comments on pipeline IO, but it needs way more!
The BRT pipeline can now be run on my Windows computer. For now, the two main things to improve would be: |
Otherwise, I'm getting this error from the block3.json in the priority map pipeline: $ids
[1] "esacci-lc-2020"
Error: HTTP status '400'. Invalid parameters provided 1 validation error for SearchPostRequest
bbox
Bounding box must be within (-180, -90, 180, 90) (type=value_error)
No traceback available
Parent job is Cancelling: killing server process...
Parent job is Cancelling: done. |
This is because the bounding box has to in long/lat coordinates for Julia right now as everything is in WGS84 (between -180 and 180 long and -85,85 lat) |
I think Guillaume's recent modifications should have fixed these. |
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.
@gottacatchenall A few clarifications in documentation please before we merge.
Also, most important: the priority map was empty when I ran it.
@@ -0,0 +1,22 @@ | |||
script: pcaLayers.jl | |||
name: PCA Layers | |||
description: "PCAs the layers" |
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.
Lacking documentation
pipelines/SDM/SDM_BRT_julia.json
Outdated
"label": "Bounding box", | ||
"description": "Bounding coordinates of the extent in the order xmin, ymin, xmax, ymax, in degrees", | ||
"type": "float[]", | ||
"example": ["-78", "43", "-68", "65"] |
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.
}, | ||
"pipeline@6": { | ||
"label": "collections_items (for climate uniqueness)", | ||
"description": "Vector of strings, collection name followed by '|' followed by item id", |
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.
Please explain a bit how we are supposed to choose these.
}, | ||
"pipeline@43": { | ||
"label": "k", | ||
"description": "the value of k for the k-means algorithm", |
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.
Please explains what this means, how to choose it, what impacts it has.
"example": 5 | ||
}, | ||
"Block3>weightLayers.yml@44|uncertainty": { | ||
"description": "uncertainty in the inference of some value across space", |
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.
More doc here and in the script. I know this is meant to be generic, but maybe giving an example : an indicator we want to optimize for?
Also, what effect in the priority map?
scripts/Block3/climateVelocity.yml
Outdated
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.
Should be in the folder along with the other climate layers. There should be an explanation differentiating it with Juan's work.
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.
Any reason not to use the R version?
type: image/tiff;application=geotiff | ||
fit_stats: | ||
label: fit_stats | ||
description: JSON of model fit stats and threshold |
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.
Guidance for interpretation of the fit statistics would be appreciated.
scripts/SDM/julia_sdms/fitBRT.yml
Outdated
type: image/tiff;application=geotiff | ||
sdm_uncertainty: | ||
label: sdm_uncertainty | ||
description: map of relative uncertainty |
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.
Guidance for interpretation: 1 uncertain and 0 certain?
scripts/Block3/weightLayers.jl
Outdated
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.
When I ran this, the output priority map was empty.
Other comments were added to GitHub PR.
@gottacatchenall Can you investigate why this produces no result? |
Once PoisotLab/SpeciesDistributionToolkit.jl#227 is merged, I will refactor this to be merged. |
yup |
Hi folks, |
I'm close but no ETA yet -- if all goes well, by the end of June? I'd need to see with @gottacatchenall how much work is needed to port his existing pipeline |
@gottacatchenall Do you have a description somewhere of the procedure you use to obtain the uncertainty layer for the BRT ? Thanks. |
I've added a description of the BRT methodology (including how uncertainty is computed) here . A few things I noticed on revisiting this:
|
replaced with #170 |
This pipeline (
./pipelines/julia_sdm.json
) runs on my machine, few notes before trying to run:docker compose build
Currently this doesn't mask out open-water, which should probably be fixed because the SDM assigns positive probability to some open-water regions, though it fits (or overfits?) much closer to the occurrence pointsthis happens now