Eu tenho um conjunto de elementos que posso descrever de acordo com características. Portanto:
onde é a avaliação (numérica) do elemento acordo com as características . Portanto, meus elementos podem ser vistos como pontos em um espaço de dimensões.
De acordo com minhas leituras, existem algoritmos como o "Classificador Bayes" que podem me fornecer um tipo de resposta "sim" ou "não" em qualquer elemento do meu conjunto, desde que eu usei um "conjunto de treinamento" elementos do meu conjunto e o resultado esperado do algoritmo. Com base nesses dados, o algoritmo deve ser capaz de pegar qualquer outro elemento, que não faça parte do conjunto de treinamento, e fornecer uma resposta "sim" ou "não" com base no que aprendeu graças ao conjunto de treinamento. Isso é ótimo se você tiver algum tipo de idéia do que espera (conjunto de treinamento), mas não tiver certeza das regras específicas que rendem a esse resultado.
O que eu gostaria de fazer com meus dados não é obter um tipo de resposta "sim" ou "não", mas gostaria de introduzir uma classificação dentro dos elementos. Alguns deles são "melhores" que outros. Assim como no filtro Bayes, tenho uma idéia genérica do que espero. Assim, eu poderia gerar um "ranking de treinamento" retirado de um subconjunto de meus elementos, que eu alimentaria o MLA. Com base nesse treinamento, seria capaz de classificar todo o meu conjunto.
Para fazer isso, vejo duas abordagens:
- Cada elemento receberia uma pontuação pelo MLA e, em seguida, classificaria os elementos de acordo com a pontuação.
- O MLA seria capaz de pegar dois elementos e e determinar qual deles é melhor (comparações em pares). Use quicksort usando essa operação de comparação.
Nota: com base em uma pontuação, a função em pares é trivial para implementar e, com base em uma função em pares, é trivial gerar uma pontuação; portanto, são apenas duas abordagens para produzir os mesmos resultados.
Existem exemplos de MLAs que podem fornecer uma função de pontuação ou uma função de comparação em pares?
EDIT: Para adicionar mais contexto: atualmente meus itens são classificados de acordo com um algoritmo que gera uma pontuação (número real) em cada item, fazendo cálculos no . Embora a classificação gerada esteja correta, geralmente tenho que modificar o algoritmo para ajustá-lo de alguma forma, porque posso ver claramente alguns itens que não estão classificados de acordo com o que eu esperava.
Atualmente, meu processo de design é:
- Tenha uma idéia de qual seria uma classificação perfeita
- Tente (manualmente) derivar um algoritmo que classifique os itens assim
- Observe os resultados
- Adapte o algoritmo
Então, pensei nos MLAs, pois o ponto de partida do meu processo é o que poderia ser usado como dados de treinamento. Eu provavelmente começaria assumindo a classificação atual, trocaria itens de acordo com minhas necessidades e alimentaria isso.