[jira] [Issue Comment Deleted] (SOLR-8542) Integrate Learning to Rank into Solr

2016-12-23 Thread adeppa (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-8542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

adeppa updated SOLR-8542:
-
Comment: was deleted

(was: Hi Team,

while deploying feature into feature store getting error like below ,current 
environment is solr 6 with branch_6x commit of LTR   

BAN7265:solr-6.3.0-setup athondur$ curl -XPUT 
'http://localhost:8983/solr/drupal/schema/feature-store' --data-binary "@ 
./Users/athondur/Desktop/solr_6.3/solr-6.3.0-setup/contrib/ltr/example/techproducts-features.json"
 -H 'Content-type:application/json' 
Warning: Couldn't read data from file " 
Warning: ./Users/athondur/Desktop/solr_6.3/solr-6.3.0-setup/contrib/ltr/example
Warning: /techproducts-features.json", this makes an empty POST.
{
  "responseHeader":{
"status":500,
"QTime":3},
  "error":{
"msg":"Bad Request",
"trace":"Bad Request (400) - Empty request body!\n\tat 
org.apache.solr.rest.RestManager$ManagedEndpoint.parseJsonFromRequestBody(RestManager.java:420)\n\tat
 
org.apache.solr.rest.RestManager$ManagedEndpoint.put(RestManager.java:340)\n\tat
 org.restlet.resource.ServerResource.doHandle(ServerResource.java:447)\n\tat 
org.restlet.resource.ServerResource.doConditionalHandle(ServerResource.java:359)\n\tat
 org.restlet.resource.ServerResource.handle(ServerResource.java:1044)\n\tat 
org.restlet.resource.Finder.handle(Finder.java:236)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.routing.Router.doHandle(Router.java:422)\n\tat 
org.restlet.routing.Router.handle(Router.java:639)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.engine.application.StatusFilter.doHandle(StatusFilter.java:140)\n\tat
 org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:202)\n\tat 
org.restlet.engine.application.ApplicationHelper.handle(ApplicationHelper.java:75)\n\tat
 org.restlet.Application.handle(Application.java:385)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.routing.Router.doHandle(Router.java:422)\n\tat 
org.restlet.routing.Router.handle(Router.java:639)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.routing.Router.doHandle(Router.java:422)\n\tat 
org.restlet.routing.Router.handle(Router.java:639)\n\tat 
org.restlet.routing.Filter.doHandle(Filter.java:150)\n\tat 
org.restlet.routing.Filter.handle(Filter.java:197)\n\tat 
org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:202)\n\tat 
org.restlet.Component.handle(Component.java:408)\n\tat 
org.restlet.Server.handle(Server.java:507)\n\tat 
org.restlet.engine.connector.ServerHelper.handle(ServerHelper.java:63)\n\tat 
org.restlet.engine.adapter.HttpServerHelper.handle(HttpServerHelper.java:143)\n\tat
 org.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:1117)\n\tat 
javax.servlet.http.HttpServlet.service(HttpServlet.java:790)\n\tat 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:845)\n\tat 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:583)\n\tat
 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)\n\tat
 
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:566)\n\tat
 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)\n\tat
 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1160)\n\tat
 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)\n\tat 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)\n\tat
 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1092)\n\tat
 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)\n\tat
 org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:199)\n\tat 
org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:74)\n\tat 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:312)\n\tat
 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:254)\n\tat
 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)\n\tat
 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581)\n\tat
 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)\n\tat
 

[jira] [Issue Comment Deleted] (SOLR-8542) Integrate Learning to Rank into Solr

2016-12-07 Thread adeppa (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-8542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

adeppa updated SOLR-8542:
-
Comment: was deleted

(was: Hi Team,

I am working on LTR master branch with solr 6.3, when i try to integrate code 
in eclipse showing to me compile time errors in couple of class i.e 
FieldLengthFeatureWeight,LTRScoringQuery ,After adding the unimplemented  
methods to couple of class i.e 
FieldValueFeatureWeight,SolrFeatureWeight,ValueFeatureWeight ,

In the LTRScoringQuery class showing error on  
@Override
  public ModelWeight createWeight(IndexSearcher searcher, boolean needsScores, 
float boost)
  throws IOException 

Note :if i remove @Override  error is went off ,is it any impact 


and FieldLengthFeatureWeight class showing error on
public FieldLengthFeatureScorer(FeatureWeight weight,
  NumericDocValues norms) throws IOException {
super(weight, norms);

Note : Here super (weight,norms ) method showing error 
and 
 @Override
  public float score() throws IOException {

final long l = norms.longValue();
Note : norms.longValue(); statement is showing error 
please help me for the above error resolution  

Thanks
Adeppa
)

> Integrate Learning to Rank into Solr
> 
>
> Key: SOLR-8542
> URL: https://issues.apache.org/jira/browse/SOLR-8542
> Project: Solr
>  Issue Type: New Feature
>Reporter: Joshua Pantony
>Assignee: Christine Poerschke
>Priority: Minor
> Attachments: SOLR-8542-branch_5x.patch, SOLR-8542-trunk.patch, 
> SOLR-8542.patch
>
>
> This is a ticket to integrate learning to rank machine learning models into 
> Solr. Solr Learning to Rank (LTR) provides a way for you to extract features 
> directly inside Solr for use in training a machine learned model. You can 
> then deploy that model to Solr and use it to rerank your top X search 
> results. This concept was previously [presented by the authors at Lucene/Solr 
> Revolution 
> 2015|http://www.slideshare.net/lucidworks/learning-to-rank-in-solr-presented-by-michael-nilsson-diego-ceccarelli-bloomberg-lp].
> [Read through the 
> README|https://github.com/bloomberg/lucene-solr/tree/master-ltr-plugin-release/solr/contrib/ltr]
>  for a tutorial on using the plugin, in addition to how to train your own 
> external model.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Issue Comment Deleted] (SOLR-8542) Integrate Learning to Rank into Solr

2016-04-27 Thread Ahmet Anil Pala (JIRA)

 [ 
https://issues.apache.org/jira/browse/SOLR-8542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ahmet Anil Pala updated SOLR-8542:
--
Comment: was deleted

(was: Hi, thanks for the answer.


Well, not in particular. I have experimented with NNs and SVM with RBF kernels 
and they are promising especially in the cases where the target attribute is 
result of a complex interaction of inputs which is likely to be the case if you 
are after modelling some customer behavior. What is different in the SVM with 
polynomial kernels is that although training can be done in a pairwise fashion 
(constraint training), in the 'live phase' the distance of an example form the 
separating hyperplane can be used to score the documents. This is possible 
because we can 'distribute' the W over the polynomial kernel as you did above:


W(K(V(D_1), V(D_2)) > 0
W(V(D_1) - V(D_2)) > 0 where K(A,B) = A - B
W*V(D_1) - W*V(D_2) > 0


However, some kernels do not allow this. For example, RBF kernel. RBF(D_1, D_2) 
= e^||D1-D2||. This is also an example of 'kernel trick' where the non-linear 
feature mapping kernel does is implicit. In this case, we cannot use SVM as a 
scorer as our learned W is supposed to be multiplied by the kernel value of the 
document pair in the 'live phase' for the predictions. Therefore, In his paper 
Joachims didn't use  SVM with kernels. He explains it as follows:

"If Kernels are not used, this property makes the application of the learned 
retrieval function very efficient. Fast algorithms exists for computing 
rankings based on linear functions by means of inverted indices"


As you said lambdaMart is a promising model. I like it especially because it is 
a hierarchical model. so the LTR can treat different search cases differently 
(e.g different hours of day, different ranking formula). However, I'd love to 
be able to at least use my pairwise NN model (used fann library) in Solr using 
LTR. But then, 'reordering' of the products will be based on a classifier and 
some near-optimal algorithm for using a classifier for reordering must be used. 
There do exist solutions for them although I don't know the performance 
implications of this. The following paper covers some of them : 
http://arxiv.org/pdf/1105.5464.pdf


)

> Integrate Learning to Rank into Solr
> 
>
> Key: SOLR-8542
> URL: https://issues.apache.org/jira/browse/SOLR-8542
> Project: Solr
>  Issue Type: New Feature
>Reporter: Joshua Pantony
>Assignee: Christine Poerschke
>Priority: Minor
> Attachments: README.md, README.md, SOLR-8542-branch_5x.patch, 
> SOLR-8542-trunk.patch
>
>
> This is a ticket to integrate learning to rank machine learning models into 
> Solr. Solr Learning to Rank (LTR) provides a way for you to extract features 
> directly inside Solr for use in training a machine learned model. You can 
> then deploy that model to Solr and use it to rerank your top X search 
> results. This concept was previously presented by the authors at Lucene/Solr 
> Revolution 2015 ( 
> http://www.slideshare.net/lucidworks/learning-to-rank-in-solr-presented-by-michael-nilsson-diego-ceccarelli-bloomberg-lp
>  ).
> The attached code was jointly worked on by Joshua Pantony, Michael Nilsson, 
> David Grohmann and Diego Ceccarelli.
> Any chance this could make it into a 5x release? We've also attached 
> documentation as a github MD file, but are happy to convert to a desired 
> format.
> h3. Test the plugin with solr/example/techproducts in 6 steps
> Solr provides some simple example of indices. In order to test the plugin 
> with 
> the techproducts example please follow these steps
> h4. 1. compile solr and the examples 
> cd solr
> ant dist
> ant example
> h4. 2. run the example
> ./bin/solr -e techproducts 
> h4. 3. stop it and install the plugin:
>
> ./bin/solr stop
> mkdir example/techproducts/solr/techproducts/lib
> cp build/contrib/ltr/lucene-ltr-6.0.0-SNAPSHOT.jar 
> example/techproducts/solr/techproducts/lib/
> cp contrib/ltr/example/solrconfig.xml 
> example/techproducts/solr/techproducts/conf/
> h4. 4. run the example again
> 
> ./bin/solr -e techproducts
> h4. 5. index some features and a model
> curl -XPUT 'http://localhost:8983/solr/techproducts/schema/fstore'  
> --data-binary "@./contrib/ltr/example/techproducts-features.json"  -H 
> 'Content-type:application/json'
> curl -XPUT 'http://localhost:8983/solr/techproducts/schema/mstore'  
> --data-binary "@./contrib/ltr/example/techproducts-model.json"  -H 
> 'Content-type:application/json'
> h4. 6. have fun !
> *access to the default feature store*
> http://localhost:8983/solr/techproducts/schema/fstore/_DEFAULT_ 
> *access to the model store*
> http://localhost:8983/solr/techproducts/schema/mstore
> *perform a query using the model, and retrieve the features*
>