Comments (15)
Hello! What other specific similarity classes we would like to tackle here?
Are for example AfterEffect
, AfterEffectB
, Normalization
be good candidates?
[Legacy Jira: Mayya Sharipova (@mayya-sharipova) on Nov 26 2017]
from stargazers-migration-test.
@mayyas It looks like there is room for improvement in those classes indeed.
In general I think doing the following in our core similarities, like BM25Similarity
does, would be nice
- include the formula that was used to compute the score
- give back constructor args with a nice description (eg.
NormalizationH1
does not explain itsc
parameter, and theAxiomatic
similarity includes them in the description but with poor descriptions)
[Legacy Jira: Adrien Grand (@jpountz) on Nov 28 2017]
from stargazers-migration-test.
thanks @jpountz, will work on the classes you suggested
[Legacy Jira: Mayya Sharipova (@mayya-sharipova) on Nov 29 2017]
from stargazers-migration-test.
GitHub user mayya-sharipova opened a pull request:
https://github.com/apache/lucene-solr/pull/280
LUCENE-8011: Improve similarity explanations
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/mayya-sharipova/lucene-solr LUCENE-8011-improve-similarity-explanations
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/lucene-solr/pull/280.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #280
commit c389c4992b66b5ae750ba7aa5b37937ebedc6615
Author: Mayya Sharipova <[email protected]>
Date: 2017-12-01T01:03:39Z
LUCENE-8011: Improve similarity explanations
[Legacy Jira: ASF GitHub Bot on Dec 01 2017]
from stargazers-migration-test.
Github user jpountz commented on the issue:
https://github.com/apache/lucene-solr/pull/280
Thanks @mayya-sharipova, this looks like great progress to me. Maybe we could go even further and do the following:
-
in the Axiomatic similarity, add abstract methods to allow sub classes to explain how tf, ln, etc. are computed,
-
make BasicModel.explain abstract to force sub classes to have their own explanation and include the formula,
-
make sure that our own sub classes of SimilarityBase extend explain (the one that returns an explanation) and include the formula in the explanation.
For the record, there is not too much concern to have about backward compatibility since most of those classes (eg. Axiomatic, BasicModel) are very expert classes and this changes targets master.
[Legacy Jira: ASF GitHub Bot on Dec 01 2017]
from stargazers-migration-test.
Github user mayya-sharipova commented on the issue:
https://github.com/apache/lucene-solr/pull/280
@jpountz thank you Adrien, I will work on these classes as well
[Legacy Jira: ASF GitHub Bot on Dec 01 2017]
from stargazers-migration-test.
Github user jpountz commented on the issue:
https://github.com/apache/lucene-solr/pull/280
Thank you Mayya, it's much easier to see where these scores come from now. I tried running tests on your PR, but I'm getting failures. It seems to be due to the fact that some of the explanations that you added look like `computed as x from: ` while the test framework expects `computed as x from:` (no trailing whitespace). Removing these trailing whitespaces in explanations should fix the issue.
[Legacy Jira: ASF GitHub Bot on Dec 05 2017]
from stargazers-migration-test.
Github user mayya-sharipova commented on the issue:
https://github.com/apache/lucene-solr/pull/280
@jpountz Thanks, Adrien, sorry for that. I will correct this, and next time make sure to run the tests before submitting a PR.
[Legacy Jira: ASF GitHub Bot on Dec 05 2017]
from stargazers-migration-test.
Github user jpountz commented on a diff in the pull request:
https://github.com/apache/lucene-solr/pull/280#discussion_r155453742
— Diff: lucene/core/src/java/org/apache/lucene/search/similarities/AfterEffectL.java —
@@ -34,11 +34,14 @@ public final double score(BasicStats stats, double tfn) {
}
`@Override`
+ // TODO: add explanation for tfn
+ // Currently not possible, as CheckHits.verifyExplanation fails because
+ // in case of a single sub-expl the test expects
+ // the sub-expl's score to be equal to the parent expl's score
— End diff –
this should be possible by rebasing or merging master back, I modified CheckHits yesterday so that it allows the score to be different from the parent explanation if the explanation matches `.**, computed as .** from:`
[Legacy Jira: ASF GitHub Bot on Dec 07 2017]
from stargazers-migration-test.
Github user jpountz commented on the issue:
https://github.com/apache/lucene-solr/pull/280
Thanks @mayya-sharipova, this looks great. `ant precommit` complains from some missing docs (the build requires that all public/protected APIs have some minimal documentation), could you fix it?
[Legacy Jira: ASF GitHub Bot on Dec 12 2017]
from stargazers-migration-test.
Github user mayya-sharipova commented on the issue:
https://github.com/apache/lucene-solr/pull/280
@jpountz Adrien thanks for your help. Sorry, I will make sure to run `ant precommit` before committing next time. I have pushed another change to address this.
[Legacy Jira: ASF GitHub Bot on Dec 12 2017]
from stargazers-migration-test.
Github user jpountz commented on the issue:
https://github.com/apache/lucene-solr/pull/280
No need to be sorry!
[Legacy Jira: ASF GitHub Bot on Dec 12 2017]
from stargazers-migration-test.
Commit 6771886cf3303a9a2c3cb86c8d0329e55ee0feaa in lucene-solr's branch refs/heads/master from @mayya-sharipova
https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=6771886
LUCENE-8011: Improve similarity explanations
Closes #280
Signed-off-by: Adrien Grand <[email protected]>
[Legacy Jira: ASF subversion and git services on Dec 13 2017]
from stargazers-migration-test.
Github user asfgit closed the pull request at:
https://github.com/apache/lucene-solr/pull/280
[Legacy Jira: ASF GitHub Bot on Dec 13 2017]
from stargazers-migration-test.
Github user jpountz commented on the issue:
https://github.com/apache/lucene-solr/pull/280
Merged, thank you @mayya-sharipova.
[Legacy Jira: ASF GitHub Bot on Dec 13 2017]
from stargazers-migration-test.
Related Issues (20)
- Code Cleanup: Use entryset for map iteration wherever possible - part 2 possible. [LUCENE-8979] HOT 5
- Optimise SegmentTermsEnum.seekExact performance [LUCENE-8980] HOT 9
- Update javadocs to reflect experimental status of Kuromoji DictionaryBuilder [LUCENE-8981] HOT 3
- Make NativeUnixDirectory pure java now that direct IO is possible [LUCENE-8982] HOT 31
- PhraseWildcardQuery - new query to control and optimize wildcard expansions in phrase [LUCENE-8983] HOT 13
- SynonymGraphFilter cannot handle input stream with tokens filtered. [LUCENE-8985] HOT 12
- Add asf.yaml to our git repo [LUCENE-8986] HOT 7
- Move Lucene web site from svn to git [LUCENE-8987] HOT 58
- Maximal -- Minimum Based Early Termination For TopFieldCollector [LUCENE-8988]
- IndexSearcher Should Handle Rejection of Concurrent Task [LUCENE-8989] HOT 10
- IndexOrDocValuesQuery can take a bad decision for range queries if field has many values per document [LUCENE-8990] HOT 8
- disable java.util.HashMap assertions to avoid spurious vailures due to JDK-8205399 [LUCENE-8991] HOT 13
- Share minimum score across segments in concurrent search [LUCENE-8992] HOT 7
- Change Maven POM repository URLs to https [LUCENE-8993] HOT 15
- Code Cleanup - Pass values to list constructor instead of empty constructor followed by addAll(). [LUCENE-8994] HOT 5
- TopSuggestDocsCollector#collect should be able to signal rejection [LUCENE-8995] HOT 1
- Add type of triangle info to ShapeField encoding [LUCENE-8997] HOT 4
- OverviewImplTest.testIsOptimized reproducible failure [LUCENE-8998] HOT 5
- expectThrows doesn't play nicely with "assume" failures [LUCENE-8999] HOT 12
- Cannot resolve classes from org.apache.lucene.core plugin and others [LUCENE-9000] HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from stargazers-migration-test.