Ranking vs machine-learning algorithms

Yuval,

After thinking about this and posting some answers that were probably in the weeds I have a short answer to your question.

For context, some of the things i used to do to weight features in P123 classic’s ranks did not really need my domain knowledge or any knowledge at all really.

This would include radomizing weights in a spreadsheet and putting those weights into the optimizer. I am not sure how people are doing that now days but this used to be a popular method with P123.

Personally, I am happy to let Python do some or all of that. And sometimes, at least, I carry that to the point that I have turned P123 classic into a machine learning program. For me P123 ‘s classic is machine learning. Particularly when I use a Python program to optimize the weights.

For me the line between P123 classic and machine learning became pretty blurry about 10 years ago when InspectorSector uploaded a spreadsheet that would do some of the randomization of feature weights. His algorithm then copied the features and pasted them into the optimizer. The rank performance test then essentially became a selection function in an evolutionary algorithm. Much of this was done manually at the time. I guess it still is by some.

Maybe not yet machine learning at that point-in-time due to the the need for manual operation and the need for the user to look at the rank weights that performed best and re-enter them into InspectorSector’s spreadsheet. But I was happy to turn that over to Python and let Python do that while I slept.

When I do it that way it is machine learning by any definition.

But I am still using P123 classic in the process. I would never criticize P123 classic or doing some of the same things I do with Python by hand either.

@Pitmaster further automated something similar to InspectorSector’s method here: Genetic algorithm to replace manual optimizaton in P123 classic - #41 by pitmaster . And the original post in that thread was about a Genetic algorithm that also fully automates the selection of weights in the ranking system.

Marco has proposed an entirely different way to automate weighting of the features in ranking system here: AI Factor - Designer Model? - #15 by marco

This is now becoming common-place and common knowledge among many members including Marco: P123 can be made into a machine learning model. The origins of this extending back a decade or so to when InspectorSector shared his spreadsheet.

So to directly answer you invitation to give arguments for machine learning I have 3:

  • it works
  • it saves me time
  • I can’t see any degradation in performance compared to when i used a spreadsheet or manual trial and error to optimize a ranking system nearly a decade ago.

I think a lot of people are doing something like that and just like to characterize it according to their affinity for the term machine learning. I don’t care what people call that as long as I have the tools to optimize the ranks weights using Python myself.

And that can be done in a nearly endless number of ways with or without manual steps in the pipeline. I have a program–with a method that new to me, but part of a Python library–doing that for me now, in fact.

1 Like