At max what you can do is to leave the method definitions of svmranker as blank and start working with Listnet and ListMle class with this architecture.. We can fill the methods of svmranke later..<br><br>A quick glance at the code in the github says:<br>
<br>1. The class definition of methods in featuremanager.cc is still Letor::Internal which should be changed to appropriate class<br>2. you have copy pasted the code from letor::internal to the refactored classes, no you need to declare/define them according to the refactored classes..<br>
3. The ranker.cc should be used to access any subclass like svmranker or future listnetraker rather than declaring SVMRanker directly in letor_internal.cc<br>4. These are small issues of OOP which should be quite straight forward to handle<br>
5. Please draw the OO architecture which we had discussed on the paper and then start correcting these small errors.<br><br>Parth.<br><br><div class="gmail_quote">On Thu, May 31, 2012 at 11:52 AM, Parth Gupta <span dir="ltr">&lt;<a href="mailto:parthg.88@gmail.com" target="_blank">parthg.88@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Rishabh,<br><br>Very nice, As I said, you will need to change the parameters of the methods as you go, you can safely change the questletor accordingly. The linking in C++ might be different than Java, so you should start reading a bit about it and feel free to ask us at the IRC or here if you get stuck. <br>

<br>Basically in the score() or the letor_score() the mset is transformed into the appropriate format for libsvm and it is passed to it to get the predicted label which is set back in the form of Map&lt;docid, score&gt;.<br>

<br>I might not get the chance to look at the code for a couple of days, so best thing would be to just pass through our last discussion at IRC about the code and you should be fine, because in that we discussed the modules in quite detail. You might need to remove or add some variables according to the need. Olly might be able to help you with the linking part.<br>

<br>Parth.<br><br><br><div class="gmail_quote"><div class="im">On Thu, May 31, 2012 at 11:24 AM, Rishabh Mehrotra <span dir="ltr">&lt;<a href="mailto:erishabh@gmail.com" target="_blank">erishabh@gmail.com</a>&gt;</span> wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
Hello,<div><br></div><div>I had updated my fork at Git with the some what refactored code. Some errors still need to be removed. As of now I haven&#39;t modified the prepare_training_file method in letor_internals.cc at all.<br>



<br>letor_score used to return a map&lt;docid,double&gt; and questletor was based on this structure, but when wehave ranklists this needed to change, but then I would have had to change the questletor file which I didn&#39;t want to(you had mentioned that letor.cc and questletor.cc will remain the same). I think this can be done once this refactored code is running properly.</div>



<div><br></div><div>Also, in the SVMRanker.cc file, the rank function should have taken in Ranklist rl only as the parameter but as I wasn&#39;t able to understand the functioning of the code written inside letor_score(= now inside rank()) so as a temporary measure I have passed mset as well inside the rank function.</div>



<div><br></div><div>Please have a look at the overall structure now and let me know the errors(linking part still needs to be done-C++ linking isn&#39;t much similar to Java). Also please have a look at SVMRanker.cc &#39;s rank function and letor_internals.cc&#39;s prepare_training_file function as you would easily get to know what changes needs to be done in these methods, I didn&#39;t get much out of the code written in these modules.</div>



<div><br></div><div>Regards,</div></div><div><div><div><br><br clear="all"><span class="HOEnZb"><font color="#888888"><div><br></div></font></span></div></div><span class="HOEnZb"><font color="#888888"><span><font color="#888888">-- <br>
Rishabh.<br><br>
</font></span></font></span></div>
</blockquote></div><br>
</blockquote></div><br>