markovmodel / PyEMMA

đźš‚ Python API for Emma's Markov Model Algorithms đźš‚
http://pyemma.org
GNU Lesser General Public License v3.0
308 stars 118 forks source link

Usage assign_to_centers #243

Closed franknoe closed 9 years ago

franknoe commented 9 years ago

wouldn't if be better to return the discrete trajectories from assign_to_centers rather than the pipeline stage? What's the usecase for having a pipeline stage with fixed centers? Usually a pipeline is required when the estimation needs to be streamed, but for the fixed-centers Assignment there's nothing to be estimated.

marscher commented 9 years ago

you want to assign your terrabytes of trajectories to previously calculated centers?

franknoe commented 9 years ago

Nono, I am talking about the output mode. You could still feed a transformer or pipeline stage into coor.assign_to_centers

Am 13/04/15 um 21:44 schrieb Martin K. Scherer:

you want to assign your terrabytes of trajectories to previously calculated centers?

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92474903.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany

marscher commented 9 years ago

then you're right, we should return dtrajs. It is more convenient. I can do it.

gph82 commented 9 years ago

Hi, shall I wait until you do this for testing ?

On 04/13/2015 09:47 PM, Martin K. Scherer wrote:

then you're right, we should return dtrajs. It is more convenient. I can do it.

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92475645.

Dr. Guillermo Pérez-Hernández Freie Universität Berlin Institute for Mathematics Arnimallee 6 D-14195 Berlin tel 0049 30 838 75776

franknoe commented 9 years ago

Guille, you can go ahead with the testing because it is merged.

Am 13/04/15 um 21:49 schrieb Guillermo Pérez-Hernández:

Hi, shall I wait until you do this for testing ?

On 04/13/2015 09:47 PM, Martin K. Scherer wrote:

then you're right, we should return dtrajs. It is more convenient. I can do it.

— Reply to this email directly or view it on GitHub

https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92475645.

Dr. Guillermo Pérez-Hernández Freie Universität Berlin Institute for Mathematics Arnimallee 6 D-14195 Berlin tel 0049 30 838 75776

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92476073.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany

marscher commented 9 years ago

Its actually a minor change. Do you make heavy usage from this?

gph82 commented 9 years ago

ok

On 04/13/2015 09:50 PM, Frank Noe wrote:

Guille, you can go ahead with the testing because it is merged.

Am 13/04/15 um 21:49 schrieb Guillermo Pérez-Hernández:

Hi, shall I wait until you do this for testing ?

On 04/13/2015 09:47 PM, Martin K. Scherer wrote:

then you're right, we should return dtrajs. It is more convenient. I can do it.

— Reply to this email directly or view it on GitHub

https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92475645.

Dr. Guillermo Pérez-Hernández Freie Universität Berlin Institute for Mathematics Arnimallee 6 D-14195 Berlin tel 0049 30 838 75776

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92476073.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92476258.

Dr. Guillermo Pérez-Hernández Freie Universität Berlin Institute for Mathematics Arnimallee 6 D-14195 Berlin tel 0049 30 838 75776

gph82 commented 9 years ago

define heavy ;)

I don't know, but it's definetely not unsual to want to "re-use" clustercenters with other data different from the ones one used to parametrize them.

But I can wait. Gonna have dinner now, i'll look into it later

On 04/13/2015 09:50 PM, Martin K. Scherer wrote:

Its actually a minor change. Do you make heavy usage from this?

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92476425.

Dr. Guillermo Pérez-Hernández Freie Universität Berlin Institute for Mathematics Arnimallee 6 D-14195 Berlin tel 0049 30 838 75776

marscher commented 9 years ago

I want to introduce a flag return_dtrajs=True in the api function. So it is possible to get the object and access the dtrajs yourself.

franknoe commented 9 years ago

That works already. The difference is that now you do:

A = assign(data, centers) or A = assign(source, centers)

and then A.dtrajs

and instead after the change you will be able to do

dtrajs = assign(data, centers)

directly.

Am 13/04/15 um 21:54 schrieb Guillermo Pérez-Hernández:

define heavy ;)

I don't know, but it's definetely not unsual to want to "re-use" clustercenters with other data different from the ones one used to parametrize them.

But I can wait. Gonna have dinner now, i'll look into it later

On 04/13/2015 09:50 PM, Martin K. Scherer wrote:

Its actually a minor change. Do you make heavy usage from this?

— Reply to this email directly or view it on GitHub

https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92476425.

Dr. Guillermo Pérez-Hernández Freie Universität Berlin Institute for Mathematics Arnimallee 6 D-14195 Berlin tel 0049 30 838 75776

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92478916.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany

franknoe commented 9 years ago

OK

Am 13/04/15 um 21:55 schrieb Martin K. Scherer:

I want to introduce a flag return_dtrajs=True in the api function. So it is possible to get the object and access the dtrajs yourself.

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92479229.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany

marscher commented 9 years ago

see #244

gph82 commented 9 years ago

okay, here we go

On 04/13/2015 10:06 PM, Martin K. Scherer wrote:

Closed #243 https://github.com/markovmodel/PyEMMA/issues/243.

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#event-280131885.

Dr. Guillermo Pérez-Hernández Freie Universität Berlin Institute for Mathematics Arnimallee 6 D-14195 Berlin tel 0049 30 838 75776

gph82 commented 9 years ago

Do we want assign_centers to be visible at the api level? coor.api.assign_centers and coor.api.assign_to_centers?

franknoe commented 9 years ago

I believe we can remove assign_centers because they were not in the last release.

Am 13/04/15 um 23:37 schrieb Guillermo Pérez-Hernández:

Do we want assign_centers to vi visible at the api level? coor.api.assign_centers /and/ coor.api.assign_to_centers?

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92508569.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany

gph82 commented 9 years ago

How's it look? voronoi

franknoe commented 9 years ago

Looks good. Thanks!

Am 13/04/15 um 23:56 schrieb Guillermo Pérez-Hernández:

How's it look? voronoi https://cloud.githubusercontent.com/assets/7518004/7126344/abe660f2-e238-11e4-802d-a93d9959799c.png

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92512082.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany

gph82 commented 9 years ago

Beautified: voronoi

ns = 1
assignment = coor.api.assign_to_centers(Y[0][::20,:n_msm], rs.clustercenters[::ns])
plt.figure(figsize= (10,10))

rand_colors = plt.get_cmap('jet')(np.linspace(0, 1.0, rs.n_clusters))
np.random.shuffle(rand_colors)

for cc in np.unique(assignment[0]):
    this_cell = Y[0][::20,:n_msm][np.argwhere(assignment[0]==cc)].squeeze()
    plt.plot(this_cell[:,0], this_cell[:,1], 'o', 
             markeredgecolor = 'none', markersize = 5,
             color =  rand_colors[cc], alpha = .5)
    plt.plot(rs.clustercenters[::ns, 0][cc], rs.clustercenters[::ns,1][cc], 'o', color = rand_colors[cc])
plt.contour(x, y, F, 15, colors = 'gray', zorder = 10, linestyles = 'solid')
plt.savefig('voronoi.png')
franknoe commented 9 years ago

Beautiful.

Am 14/04/15 um 00:00 schrieb Guillermo Pérez-Hernández:

Beautified: voronoi https://cloud.githubusercontent.com/assets/7518004/7126422/5145c5d8-e239-11e4-8209-82d716b193bc.png

— Reply to this email directly or view it on GitHub https://github.com/markovmodel/PyEMMA/issues/243#issuecomment-92512917.


Prof. Dr. Frank Noe Head of Computational Molecular Biology group Freie Universitaet Berlin

Phone: (+49) (0)30 838 75354 Web: research.franknoe.de

Mail: Arnimallee 6, 14195 Berlin, Germany