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

Diffusion Maps rebase, new PR for final review #894

Merged
merged 22 commits into from
Jul 20, 2016

Conversation

jdetle
Copy link
Contributor

@jdetle jdetle commented Jul 7, 2016

Fixes #857
I am moving this here because I don't want to overwrite my old diffusion branch just in case the rebasing is deemed overkill and it will make it easier for @richardjgowers @kain88-de to help in reviewing this.

Changes made in this Pull Request:

  • Added a Diffusion Map module for non-linear dimension reduction

Todo:

  • Package import for mdanalysis
  • Document kwargs for dmap
  • Fix sphinx linking
  • Change warning to 5000 frames
  • Document API for metric
  • Change license to Gnu public license v2
  • Change docs to remove reference to fokker-plank
  • remove notebook until integrated repo
  • show how to plot data

PR Checklist

  • Tests?
  • Docs?
  • CHANGELOG updated?
  • Issue raised/referenced?

Eugen Hruska and others added 19 commits July 7, 2016 13:19
style fixes, protection fixes, added docs

fix of some broken areas

fixed selections and updated tests accordingly

switched order of imports [skip ci]
map calculation decided to calculate epsilon as a
function outside of class for maximum usability.

Change of direction in API, more work to be done implementing everything

Changes to docs, functions, tried to make it very evident
how we were following the lafon paper in terms of algorithm.

added timescaling, fixed some parts
DistMatrix is its own AnalysisBases subclass, DiffusionMap still is an AnalysisBase subclass
but only for the actual diffusion map embedding. Previous _conclude function renamed to
kernel_decompose.

Changed things around to get embedding working

Added tests, found bugs, squashed bugs.

Eliminated square of distance, random mistake
Eliminated spectral gap function... for now

Fixed matrix multiplication bug

Fixed save issue

Better single_frame loop

Name changes, styling updates and doc fixes.
Changed code further to make transform a simple iteration.
Provided functionality for doing a diffusion map with just a distance matrix.
…s a scale parameter.

Added exception to be thrown for large distance matrices.

Updated diffusion map after some test-driven development, added error thrown for large frame size.

Change to warning

Removed exception test, fixed typo

Fixed transform, kwargs acceptance, removed Epsilon after accidentally adding it back in.
Minor fixes to docs.

Fixes as suggested to be more pythonic and elegant

Fixes to docs, Transform function.
unneccesarily exponentiating a diagonalizable matrix. Removed
timescaling init, removed tests for anisotropic kernel and
timescaling.
@jdetle
Copy link
Contributor Author

jdetle commented Jul 7, 2016

@kain88-de, the only thing left to do that I see is to check that [Theobald2005]_ is properly linked when the documentation is built, that led me to fixing a problem with my sphinx building, but theobald is properly linked and the pages are building appropriately.

EDIT: Just checked and actually the paper linking isn't working so I have to fix that.


:Authors: Eugen Hruska, John Detlefs
:Year: 2016
:Copyright: GNU Public License v3
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't our default license that is problematic. @euhruska are you ok if we publish this under GPLv2.

@jdetle jdetle force-pushed the diffusion_rebase branch from a92788e to b299d89 Compare July 11, 2016 02:05
@coveralls
Copy link

coveralls commented Jul 11, 2016

Coverage Status

Coverage increased (+0.06%) to 81.073% when pulling b299d89 on jdetle:diffusion_rebase into e801d35 on MDAnalysis:develop.

@jdetle
Copy link
Contributor Author

jdetle commented Jul 11, 2016

Don't merge this I realized the tests are incomplete/ kind of poor.

@kain88-de
Copy link
Member

@jdetle can you say whats missing in the tests.

@jdetle
Copy link
Contributor Author

jdetle commented Jul 11, 2016

In #889 I learned that we should be asserting against a reference value in
all tests and there is a warning I haven't covered. Just landed in Austin
but I'll finish the tests today and get everything done.
On Mon, Jul 11, 2016 at 9:17 AM Max Linke [email protected] wrote:

@jdetle https://github.com/jdetle can you say whats missing in the
tests.


You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
#894 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AKcARtg3At1hQiC_3mQd_pb4n9UWDR_Xks5qUlCMgaJpZM4JHd_i
.

Have a wonderful day,
John J. Detlefs

@coveralls
Copy link

coveralls commented Jul 16, 2016

Coverage Status

Coverage increased (+0.07%) to 81.086% when pulling cc384f1 on jdetle:diffusion_rebase into e801d35 on MDAnalysis:develop.

@jdetle
Copy link
Contributor Author

jdetle commented Jul 18, 2016

@richardjgowers Could you give this a once over? I don't want to bug max while he's on his honeymoon but I think everything is ready for a merge.

@richardjgowers
Copy link
Member

Yep sorry, didn't see you'd finished the new tests.

First load all modules and test data ::

>>> import MDAnalysis as mda
>>> import numpy as np
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we actually use np in the code below

@richardjgowers
Copy link
Member

Ok very minor stuff, otherwise looking good

@jdetle
Copy link
Contributor Author

jdetle commented Jul 18, 2016

Thanks, I'm wiped after Scipy but I'll make these changes first thing
tomorrow

On Mon, Jul 18, 2016 at 3:11 PM Richard Gowers [email protected]
wrote:

Ok very minor stuff, otherwise looking good


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#894 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKcARvsPjZuqyr4vy1Ejboonza3autWJks5qW_olgaJpZM4JHd_i
.

Have a wonderful day,
John J. Detlefs

@jdetle
Copy link
Contributor Author

jdetle commented Jul 19, 2016

:shipit:

@jdetle jdetle force-pushed the diffusion_rebase branch from bf570e7 to 313a174 Compare July 19, 2016 18:37
@coveralls
Copy link

coveralls commented Jul 19, 2016

Coverage Status

Coverage increased (+0.07%) to 81.103% when pulling 313a174 on jdetle:diffusion_rebase into 054a9de on MDAnalysis:develop.

@coveralls
Copy link

coveralls commented Jul 19, 2016

Coverage Status

Coverage increased (+0.07%) to 81.103% when pulling 313a174 on jdetle:diffusion_rebase into 054a9de on MDAnalysis:develop.

@richardjgowers richardjgowers merged commit 6c6510c into MDAnalysis:develop Jul 20, 2016
@kain88-de
Copy link
Member

@jdetle Thanks looks great.

@orbeckst
Copy link
Member

Congratulations @jdetle, major milestone!

Oliver Beckstein
email: [email protected]

Am Jul 20, 2016 um 6:05 schrieb Max Linke [email protected]:

@jdetle Thanks looks great.


You are receiving this because you are on a team that was mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@jdetle
Copy link
Contributor Author

jdetle commented Jul 20, 2016

Thanks! Onwards and upwards!

orbeckst added a commit that referenced this pull request Jul 22, 2016
- see his contributions to #894
- also sent invitation to join MDAnalysis as a collaborator
jdetle pushed a commit to jdetle/mdanalysis that referenced this pull request Aug 14, 2016
- see his contributions to MDAnalysis#894
- also sent invitation to join MDAnalysis as a collaborator
abiedermann pushed a commit to abiedermann/mdanalysis that referenced this pull request Oct 26, 2016
Diffusion Maps rebase, new PR for final review
abiedermann pushed a commit to abiedermann/mdanalysis that referenced this pull request Oct 26, 2016
 q/gHXwgU43h2+Dkye4y3pjLKZ7yN/a/Ffz08WfApOvwen9rzxodFvjawaPd6aPxN
 D3F2e9FvfM7ETEeNva6deCh1C7vsE1mQu38cONkD1bNITQZKQAqEo960aHFtPUAq
 f+P61EuVezLcrsTdrNKTiJhs3hXi4S5QBOQJBQH8I8+mvYpotT2/0yv+oapRMsoy
 dVhB/MWixyA8zAyig5pHV4zKrrok/qqPEZu0DTJoVblqHMNbkc/Z6AkV57w9ade4
 +BmhXwXyYYC4JQiHGp9IRdtJgKAoTDnN6XSgamxo3+pcGDZ0k0G1F0AuTgJwbvqK
 DXrOIq6G1GlUIUwnkqkfkW8GA6z1FuODj/95RxG5YYPrAjP8a9xJ5O8VKoG6Uoqe
 UV4ER73kv8Ujwagdne4LZYif7p1GXRKzOEIVvJlPypQp2vJvjQ2Lbc84WdHquw7Z
 yAxrlrme8tW5upnu9tPpPvLssgMFRBMyhFSKTwGBwxMICKbjRQ5bb4KbRbSo/9Hz
 AhxdK7rDRC2GF3fuPWZ0Cj8bjp6ZllZQjH89smj1mQ4FS76YrYVGbZfu5/89jYTS
 RWhUi+nWSVar6zcsnXGGFvl6eu+HQkOyeciCXQH+cfIWDFYkiuQdzrsjHVAIFUoL
 B0sWtG0q5EfdkuFo9ISM
 =m5vj
 -----END PGP SIGNATURE-----

added @euhruska as author

- see his contributions to MDAnalysis#894
- also sent invitation to join MDAnalysis as a collaborator
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants