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

Fanfan #7

Merged
merged 94 commits into from
Feb 28, 2022
Merged

Fanfan #7

merged 94 commits into from
Feb 28, 2022

Conversation

TheoDlmz
Copy link
Owner

No description provided.

This can be dangerous because it is a "hidden" behavior, which can be unexpected by the user. It could default to False, but for the moment I put no default value.
The result is not in the positive orthant.
max_angular_dilatation_factor (add)
Embeddings.dilated_aux (add)
Embeddings.dilated (fix documentation)
Embeddings.dilated_new (add)
* Correct a bug in __new__ / __array_finalize__ : when norm=False, n_voters and n_dim were switched.
* get_center and dilated_aux now work also for non-normalized embeddings.
* Correct bugs in the degerate cases (like when all embeddings are aligned).
* Rewrite recentered using a matrix operation.
* Add `recentered_and_dilated`.
* No need to override the default implementation of `copy`.
* max_angular_dilatation_factor handles better the numerical glitches.
* Add `Embeddings.mixed_with`
* Rename `EmbeddingsGeneratorRandom` to `EmbeddingsGeneratorUniform`.
* Add `EmbeddingsGeneratorFullyPolarized`
* Simplify `EmbeddingsGeneratorPolarized`, based on the above.
Useless since it is now a synonym of self.truth_generator.
* Before, it relied on the ratings themselves, and the covariance was computed inside the class. Advantage of the new version: if you know the true covariance matrix of the noises, you can give it to the rule.
* Add `EmbeddingsFromRatingsCovariance`.
Singular values are not sorted.
Unfortunately, this behavior is implicitly assumed in `RuleSVD`, because of the instruction `s[:matrix_rank]`.
* Singular values are now sorted by decreasing order.
* Indirectly, this fixes a bug in `RuleSVD` for the case where `use_rank` is True.
Minor editing
The new code behaves as if this parameter was always True.
Make a clear distinction between the embedding (which is here a matrix of ratings) and the correlations.
Demonstrated in Aggregator:
the embeddings are a concatenation of a correlation matrix and a history of scores, which is certainly not intended!
It was the sqrt of the singular value (probably by mistake).
* embeddings.copy() or Embeddings(embeddings) also copies the attributes of `embeddings`. This is useful typically for embeddings obtained with `EmbeddingsFromRatingsCorrelation`, which have the attribute `n_sing_val_`.
* `RuleFast` takes as embeddings the correlation matrix (and not the ratings themselves). Hence the default `embeddings_from_ratings` is `EmbeddingsFromRatingsCorrelation()`.
@TheoDlmz TheoDlmz merged commit 1e3579f into TheoDlmz:master Feb 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants