Master new signalmodel review
- added more comments to point to Aaron's technical notes.
- This also fixes the negative happening to some IMBH templates.
- Given the new signal model without KDE, in order to avoid nan values returned, the 2D histogram is not globally normalized to the number of samples,
n
, but pre-normalized in log scale for each SNR column and letnormalize()
take care of some numerical error to be normalized in the end. We can ignoren
as it won't be KDE-ed anyway.
See this review wiki for some discussion about nan
issue.
Merge request reports
Activity
assigned to @leo.tsukada
added 10 commits
-
c63ff739...defc3be3 - 3 commits from branch
master
- 7f85d18a - gstlal-inspiral/python/stats/inspiral_extrinsics.py : add some comments for reference
- 4531ba91 - svd_bank.py : fix the sliced matrix being off by one element
- b0f8430f - svd_bank.py : add comments
- 41cc640c - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- f9d92757 - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute
- ee21deb9 - minor fix
- 27f21a87 - stats/inspiral_extrinsics.py : remove the boundary and introduce logsumexp
Toggle commit list-
c63ff739...defc3be3 - 3 commits from branch
947 947 df = (lambda_sum + lambda_etasq_sum_mismatch)**2 / (lambdasq_sum + 2 * lambdasq_etasq_sum_mismatch) 948 948 bias_correction = (lambda_sum + lambda_etasq_sum_mismatch) / df / norm / snr2 949 949 chi2_grid = numpy.outer(1./bias_correction, rcoss) 950 # arr[snrindices, rcossindices] += gstlalstats.ncx2pdf(chi2_grid, df[:, numpy.newaxis], 1e-20) / bias_correction[:, numpy.newaxis] 951 arr[snrindices, rcossindices] += stats.chi2.pdf(chi2_grid, df[:, numpy.newaxis]) / bias_correction[:, numpy.newaxis] 950 logarr = stats.chi2.logpdf(chi2_grid, df[:, numpy.newaxis]) - numpy.log(bias_correction[:, numpy.newaxis]) 951 arr[snrindices, rcossindices] = numpy.exp(numpy.logaddexp(numpy.log(arr[snrindices, rcossindices]), logarr)) I think you should instead do:
logarr = numpy.logaddexp(logarr, stats.chi2.logpdf(chi2_grid, df[:, numpy.newaxis]) - numpy.log(bias_correction[:, numpy.newaxis]))
(after initializing
logarr
so all components are-inf
) and then, at the end, doarr=np.exp(logarr)
. Then print out the array to make sure that none of the components are zero.changed this line in version 6 of the diff
added 1 commit
- f65d8eda - stats/inspiral_extrinsics.py: try to keep log scale as much as possible and...
added 1 commit
- befac472 - stats/inspiral_extrinsics.py : first attempt to introduce logarr attribute in...
added 1 commit
- e80c5465 - Revert "stats/inspiral_extrinsics.py : remove boundary of the signal
added 1 commit
- f0451942 - move the fast cut to NegInf for nan case from __call__ to internal __getitem__ method
marked the checklist item After talking with Kipp, we decided that it would be straightforward to put here the existing fast cut to
-inf
. as completedmarked the checklist item After talking with Kipp, we decided that it would be straightforward to put here the existing fast cut to
-inf
. as incompleteadded 1 commit
- 71ea1f93 - inspiral_extrinsics.py inspiral_lr.py : make consistent boundary for sampling...
added 4 commits
- 47d9438a - stats/inspiral_lr.py : adjust snr_max and overwrite finish method for the numerator class
- 7452c0f8 - add print statement for debugging
- c0e68251 - inspiral_extrinsics.py : introduce logarr when constructing signal model
- e6b4af4b - inspiral_lr.py : change snr_max for signal model not to give nan
Toggle commit listadded 22 commits
-
190dafde...47bb5bf6 - 4 commits from branch
master
- e63c304c - gstlal-inspiral/python/stats/inspiral_extrinsics.py : add some comments for reference
- 58054722 - svd_bank.py : fix the sliced matrix being off by one element
- bf35e16f - svd_bank.py : add comments
- 70205c31 - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- 758a45d8 - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute
- e28f1f34 - minor fix
- e7f057e0 - stats/inspiral_extrinsics.py : remove the boundary and introduce logsumexp
- 3a6597fd - stats/inspiral_extrinsics.py: try to keep log scale as much as possible and...
- 003454bb - stats/inspiral_extrinsics.py : first attempt to introduce logarr attribute in...
- eff58c0b - Revert "stats/inspiral_extrinsics.py : remove boundary of the signal
- 9c75b1d7 - move the fast cut to NegInf for nan case from __call__ to internal __getitem__ method
- 33dc35c0 - inspiral_extrinsics.py inspiral_lr.py : make consistent boundary for sampling...
- 61ff9b1e - minor fix
- 55ae07d6 - stats/inspiral_lr.py : adjust snr_max and overwrite finish method for the numerator class
- 5932dd27 - add print statement for debugging
- 7782746f - inspiral_extrinsics.py : introduce logarr when constructing signal model
- a38fe117 - inspiral_lr.py : change snr_max for signal model not to give nan
- 6aafe980 - stats/inspiral_lr.py : minor fix
Toggle commit list-
190dafde...47bb5bf6 - 4 commits from branch
added 29 commits
-
6aafe980...7fcc2b6f - 3 commits from branch
master
- 383f17bc - gstlal-inspiral/python/stats/inspiral_extrinsics.py : add some comments for reference
- 013465c8 - svd_bank.py : fix the sliced matrix being off by one element
- 615afda1 - svd_bank.py : add comments
- c941b132 - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- 7cdf31fe - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute
- b174188c - minor fix
- f57f4c68 - stats/inspiral_extrinsics.py : remove the boundary and introduce logsumexp
- 575d0d2f - stats/inspiral_extrinsics.py: try to keep log scale as much as possible and...
- 0527ed7d - stats/inspiral_extrinsics.py : first attempt to introduce logarr attribute in...
- 7b27d562 - Revert "stats/inspiral_extrinsics.py : remove boundary of the signal
- 4bde167a - move the fast cut to NegInf for nan case from __call__ to internal __getitem__ method
- 124519e5 - inspiral_extrinsics.py inspiral_lr.py : make consistent boundary for sampling...
- e74f6c87 - minor fix
- 29a27d6d - stats/inspiral_lr.py : adjust snr_max and overwrite finish method for the numerator class
- f93c1f97 - add print statement for debugging
- bae607c3 - inspiral_extrinsics.py : introduce logarr when constructing signal model
- f31bf5b8 - inspiral_lr.py : change snr_max for signal model not to give nan
- 49ac4510 - stats/inspiral_lr.py : minor fix
- 6c428003 - introduce pre-normalization in log-scale per SNR column for signal model and a...
- 291592cc - far.py : minor fix in fast_path_cut
- 21b239b3 - blah
- 460b4a2f - stats/inspiral_lr.py : lower snr_max and make snr_max for signal model...
- f5edaf20 - gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats : set upper limit...
- 358ab285 - remove the argument of the number of samples for the new signal model
- acdfab08 - remove the argument of the number of samples for the new signal model
- 0a8e86ce - far.py : fix typo
Toggle commit list-
6aafe980...7fcc2b6f - 3 commits from branch
added 1 commit
- 709fa897 - inspiral_extrinsics.py inspiral_lr.py : fix some issues showing up after reabse
added 1 commit
- 50dd0507 - python/far.py: remove debugging print statement
added 30 commits
-
1e8845d4 - 1 commit from branch
master
- e01bbb40 - gstlal-inspiral/python/stats/inspiral_extrinsics.py : add some comments for reference
- d3ae8fe8 - svd_bank.py : fix the sliced matrix being off by one element
- b81774f4 - svd_bank.py : add comments
- f5e3ff09 - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- ee857472 - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute
- d27ce196 - minor fix
- 4135b9a6 - stats/inspiral_extrinsics.py : remove the boundary and introduce logsumexp
- c8abf22a - stats/inspiral_extrinsics.py: try to keep log scale as much as possible and...
- 07bb20dc - stats/inspiral_extrinsics.py : first attempt to introduce logarr attribute in...
- 277a08a4 - Revert "stats/inspiral_extrinsics.py : remove boundary of the signal
- 37252531 - move the fast cut to NegInf for nan case from __call__ to internal __getitem__ method
- 681bd3d8 - inspiral_extrinsics.py inspiral_lr.py : make consistent boundary for sampling...
- df5553f7 - minor fix
- df8b0641 - stats/inspiral_lr.py : adjust snr_max and overwrite finish method for the numerator class
- f0923527 - add print statement for debugging
- 0bc1b383 - inspiral_extrinsics.py : introduce logarr when constructing signal model
- d22df8cf - inspiral_lr.py : change snr_max for signal model not to give nan
- 2b07fb80 - stats/inspiral_lr.py : minor fix
- 3ddc4ffc - introduce pre-normalization in log-scale per SNR column for signal model and a...
- 2d32f57f - far.py : minor fix in fast_path_cut
- e9b21ff6 - blah
- 8d5d3372 - stats/inspiral_lr.py : lower snr_max and make snr_max for signal model...
- 1c3a2e4f - gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats : set upper limit...
- 099326ca - remove the argument of the number of samples for the new signal model
- 9c79d742 - remove the argument of the number of samples for the new signal model
- a2ecdf30 - far.py : fix typo
- 3399216d - inspiral_extrinsics.py inspiral_lr.py : fix some issues showing up after reabse
- 313aab10 - remove trailed white line
- a0c68388 - python/far.py: remove debugging print statement
Toggle commit list-
1e8845d4 - 1 commit from branch
added 1 commit
- e2b41938 - gstlal-inspiral/python/stats/inspiral_lr.py : propagate skip_kde attribute to...
added 48 commits
-
e2b41938...8d5670b7 - 15 commits from branch
master
- 8f123848 - gstlal-inspiral/python/stats/inspiral_extrinsics.py : add some comments for reference
- 451172b5 - svd_bank.py : fix the sliced matrix being off by one element
- 892c7133 - svd_bank.py : add comments
- 95a528e0 - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- f247a3c6 - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute
- 184a76ad - minor fix
- aa503ca6 - stats/inspiral_extrinsics.py : remove the boundary and introduce logsumexp
- 4f3500b8 - stats/inspiral_extrinsics.py: try to keep log scale as much as possible and...
- d479fa3a - stats/inspiral_extrinsics.py : first attempt to introduce logarr attribute in...
- b061ab63 - Revert "stats/inspiral_extrinsics.py : remove boundary of the signal
- 27a1eca8 - move the fast cut to NegInf for nan case from __call__ to internal __getitem__ method
- cd011979 - inspiral_extrinsics.py inspiral_lr.py : make consistent boundary for sampling...
- 02253893 - minor fix
- 0f23e5fe - stats/inspiral_lr.py : adjust snr_max and overwrite finish method for the numerator class
- b0d18f7c - add print statement for debugging
- ed1b538e - inspiral_extrinsics.py : introduce logarr when constructing signal model
- a76a61e8 - inspiral_lr.py : change snr_max for signal model not to give nan
- 7faded44 - stats/inspiral_lr.py : minor fix
- a7048c0e - introduce pre-normalization in log-scale per SNR column for signal model and a...
- 470916ba - far.py : minor fix in fast_path_cut
- 8b346163 - blah
- 74f0c658 - stats/inspiral_lr.py : lower snr_max and make snr_max for signal model...
- aa0e6a0b - gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats : set upper limit...
- de552e1a - remove the argument of the number of samples for the new signal model
- fd6536d9 - remove the argument of the number of samples for the new signal model
- 76fb6ffe - far.py : fix typo
- 26547488 - inspiral_extrinsics.py inspiral_lr.py : fix some issues showing up after reabse
- 475b735d - remove trailed white line
- b0030723 - python/far.py: remove debugging print statement
- 5b6694ec - fix the command line docs
- 6d5467cc - python/stats/inspiral_lr.py : add extra one bin to the snr slice to make sure...
- 921d078d - python/stats/inspiral_extrinsic.py : add extra one bin to the snr slice to...
- 9166b97d - gstlal-inspiral/python/stats/inspiral_lr.py : propagate skip_kde attribute to...
Toggle commit list-
e2b41938...8d5670b7 - 15 commits from branch
added 34 commits
-
a0afba41 - 1 commit from branch
master
- 798e4ad0 - gstlal-inspiral/python/stats/inspiral_extrinsics.py : add some comments for reference
- ff669aa5 - svd_bank.py : fix the sliced matrix being off by one element
- 2e53af2f - svd_bank.py : add comments
- e5dd62e9 - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- 0c639fb5 - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute
- 98027159 - minor fix
- 3b424467 - stats/inspiral_extrinsics.py : remove the boundary and introduce logsumexp
- 535a21be - stats/inspiral_extrinsics.py: try to keep log scale as much as possible and...
- 6611c6cc - stats/inspiral_extrinsics.py : first attempt to introduce logarr attribute in...
- 643baa70 - Revert "stats/inspiral_extrinsics.py : remove boundary of the signal
- ddd248ff - move the fast cut to NegInf for nan case from __call__ to internal __getitem__ method
- 3e60b4db - inspiral_extrinsics.py inspiral_lr.py : make consistent boundary for sampling...
- 18bc3283 - minor fix
- 028cc8db - stats/inspiral_lr.py : adjust snr_max and overwrite finish method for the numerator class
- 652cb9cc - add print statement for debugging
- 62cf8717 - inspiral_extrinsics.py : introduce logarr when constructing signal model
- bc3b5a24 - inspiral_lr.py : change snr_max for signal model not to give nan
- 1073ddac - stats/inspiral_lr.py : minor fix
- 7b4d1b60 - introduce pre-normalization in log-scale per SNR column for signal model and a...
- 96e64cd8 - far.py : minor fix in fast_path_cut
- a6a766af - blah
- c1bef301 - stats/inspiral_lr.py : lower snr_max and make snr_max for signal model...
- 248eab00 - gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats : set upper limit...
- 81e14166 - remove the argument of the number of samples for the new signal model
- cbdc6985 - remove the argument of the number of samples for the new signal model
- 151c6063 - far.py : fix typo
- 60f1df3a - inspiral_extrinsics.py inspiral_lr.py : fix some issues showing up after reabse
- fa62d08f - remove trailed white line
- 7198811d - python/far.py: remove debugging print statement
- bfa04398 - fix the command line docs
- c43d12f1 - python/stats/inspiral_lr.py : add extra one bin to the snr slice to make sure...
- a5fbac29 - python/stats/inspiral_extrinsic.py : add extra one bin to the snr slice to...
- 6775e428 - gstlal-inspiral/python/stats/inspiral_lr.py : propagate skip_kde attribute to...
Toggle commit list-
a0afba41 - 1 commit from branch
added 5 commits
- 17aa795f - inspiral_extrinsics.py, svd_bank.py : fix the bug caused by one sample
- d17dcff8 - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- 983725db - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute so...
- 0472e97a - introduce pre-normalization in log-scale per SNR column for signal model and a...
- 561742c7 - gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats : set upper limit...
Toggle commit listadded 6 commits
-
14e5b093 - 1 commit from branch
master
- fd88d52a - inspiral_extrinsics.py, svd_bank.py : fix the bug caused by one sample
- d395325a - gstlal-inspiral/python/dags/layers/inspiral.py : make config.prior.df...
- 5f523822 - gstlal-inspiral/python/stats/inspiral_lr.py : introduce skip_kde attribute so...
- d34e5866 - introduce pre-normalization in log-scale per SNR column for signal model and a...
- a6545a06 - gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats : set upper limit...
Toggle commit list-
14e5b093 - 1 commit from branch