Riverscapes / riverscapes-tools

Open-source Python 3.0 tools for the Riverscapes organization
https://tools.riverscapes.net/
GNU General Public License v3.0
11 stars 9 forks source link

1. Calibrate VBET transform curves #477

Closed shelbysawyer closed 1 year ago

shelbysawyer commented 2 years ago

Currently, the transform curves have been specified, but not calibrated. Calibration will help VBET output a better prediction of valley bottom extent in all settings.

We want to partition our specification/calibration points so that we can use the same dataset to both calibrate and validate it.

@shelbysawyer I am adding here so these become tracked tasks and can be split into issues if needed: @shelbysawyer please:

joewheaton commented 2 years ago

The old spreadsheet and Slopes first

https://docs.google.com/spreadsheets/d/1rClE5BCK8nBXZBwH7cRRa3MJseE1Vj5xhYutxeHNotE/edit?usp=sharing

We need to play with our slopes that are being too inclusive right now: image

It seems like what we're using at 0.68 is way too high in each case. It also seems like we have too fat of a tail should fall off quicker.

I have just qualitatively tweaked on a 11-19 tab: image

Essentially, I moved the inflection points down a notch and got rid of long table and used half of first inflection point for 0.995 to 0.8 ramp.

@shelbysawyer what we need to do is

  1. Request a few test runs with above.
  2. Interrogate differences.
  3. Actually calibrate these curves to nearest degree with our independent data from above.

And then transferred over to here: https://github.com/Riverscapes/riverscapes-tools/blob/master/packages/vbet/database/data/intersect/intersect/inflections.csv

wally-mac commented 2 years ago

@shelbysawyer please let me know how I can help with generation of the calibration points.

philipbaileynar commented 2 years ago
categoryid displaylabel count
1 Estimated Active Channel 791
2 Highly Likely Active Floodplain 442
3 Likely Active Floodplain 228
4 Possible Active Floodplain 137
5 Possible Inactive Floodplain 305
6 Plausible Valley Bottom Extent 310
8 Very Unlikely Valley Bottom Extent 66
9 Likely Terrace (non-valley bottom) 18
10 Upland (non-valley bottom) 493
select vc.categoryid, vc.displaylabel, count(*) from vbetobservations vo inner join vbetcategories vc on vo.categoryid = vc.categoryid group by vc.categoryid, vc.displaylabel order by categoryid;
philipbaileynar commented 2 years ago

After updating to new categories:

categoryid displaylabel count
11 Active Channel Area 791
12 Active Floodplain 807
13 Inactive Floodplain 615
14 Terrace 18
15 Probably not Valley Bottom 66
16 Definitely not Valley Bottom 493
update vbetobservations set categoryid = 11 where categoryid =1;
update vbetobservations set categoryid = 12 where categoryid in (2,3, 4);
update vbetobservations set categoryid = 13 where categoryid in (5,6);
update vbetobservations set categoryid = 14  where categoryid =9;
update vbetobservations set categoryid = 15 where categoryid =8;
update vbetobservations set categoryid = 16 where categoryid =10;
MattReimer commented 1 year ago

@shelbysawyer where are we with this? I've kind of lost the plot here. Could you either close it or let me know what's still outstanding?

shelbysawyer commented 1 year ago

Hi @MattReimer yes-- I'm on the east coast for 2 weeks of field work but will dive into VBET tasks more fully when I'm back in office on Nov 28th.

joewheaton commented 1 year ago

@shelbysawyer after you and I discuss #674, lets make a new issue regarding VBET transform curve calibration. This one you can refer back to but has gotten a little too big.