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

Inconsistent .mutual_information method #140

Open
grfrederic opened this issue Jan 15, 2024 · 1 comment
Open

Inconsistent .mutual_information method #140

grfrederic opened this issue Jan 15, 2024 · 1 comment

Comments

@grfrederic
Copy link
Collaborator

In our samplers .mutual_information() is a callable method, in tasks it is a @property. It would be nice for them to be consistent.

@pawel-czyz pawel-czyz changed the title inconsistend .mutual_information method Inconsistent .mutual_information method Jan 26, 2024
@pawel-czyz
Copy link
Member

@grfrederic The reason for this is the following:

  • ISampler may need additional arguments to calculate mutual information (as we do with BMMs, which collect MC samples. Here one can potentially specify the required number of samples. I also recall that we used it in some discrete-continuous estimators where MI is analytically known as an infinite series and we truncate it after a given number of terms).
  • Task is supposed to already know MI. I.e., for ISampler .mutual_information(k) may have complexity $\mathcal O(f(k))$ and for Task querying .mutual_information property is supposed to be $\mathcal O(1)$.
  • How about adding .mutual_information() to Task for consistency?

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