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

Check matrix properties (5 out of 7 implemented in 0.97) #72

Open
pjotrp opened this issue Aug 20, 2017 · 3 comments
Open

Check matrix properties (5 out of 7 implemented in 0.97) #72

pjotrp opened this issue Aug 20, 2017 · 3 comments
Assignees

Comments

@pjotrp
Copy link
Member

pjotrp commented Aug 20, 2017

GEMMA should give hints if matrix properties are invalid, such as discussed in #45 (comment). E.g.

  1. Fail if K has negative eigen values
  2. Fail if K is not symmetric
  3. Fail if K is not positive definite
  4. Warn in eigen values are very small
  5. Warn if K is ill conditioned
  6. Warn on related pairs
  7. Warn on MAF problems

@xiangzhou @pcarbo anything else we can think of?

Failures and warnings should be reported in the log file. These checks can be disabled with the --no-checks switch (i.e., dangerous mode but faster).

@pjotrp
Copy link
Member Author

pjotrp commented Aug 20, 2017

Implemented points 1..5 in PR #73

@pcarbo
Copy link
Collaborator

pcarbo commented Aug 21, 2017

@pjotrp That is a great summary. The cholesky factorization methods in most libraries has a check for a matrix being s.p.d. (symmetric positive definite), so you could use this to implement item 4.

pjotrp added a commit to genenetwork/GEMMA that referenced this issue Aug 22, 2017
- Matrix checks as described in genetics-statistics#72
- introduces -strict switch which will exit on certain conditions
- zero small eigenvalues in EigenDecomp_Zeroed which also checks for negative values
- commented out float versions of functions in lapack.cpp (pre-removal)
- reverted on disabled regression tests (GEMMA shows its previous behaviour now)
@pjotrp
Copy link
Member Author

pjotrp commented Oct 5, 2017

1-4 have been implemented. 5 and 6 probably show up now as warnings.

@pjotrp pjotrp added this to the 0.99 release milestone Oct 10, 2017
@pjotrp pjotrp changed the title Check matrix properties Check matrix properties (5 out of 7 implemented in 0.97) Dec 19, 2017
@pjotrp pjotrp modified the milestones: 0.99 release, faster-lmm-d Nov 21, 2018
@pjotrp pjotrp removed this from the faster-lmm-d milestone Nov 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants