Ik ben bezig met de ontwikkeling van een word-indexing systeem (ASP en SQL-Server) dat gebruikt gaat worden om een zoekfunctie te faciliteren. De huidige tabel bevat ongeveer 10.000 woorden, en die worden in een andere tabel gelinkt aan allerlei objecten die op de site bestaan, zoals artikelen. Deze laatste tabel bevat momenteel meer dan 100.000 links. Snelheid is geen enkel probleem, want het werkt als een trein. Ik heb een meer algemeen 'probleem'.
Het word-indexing wil ik ook gebruiken om bepaalde woorden in een stuk tekst te laten vervangen door een hyperlink naar een scherm dat aangeeft welke andere artikelen op dat woord een 'close match' zijn. Ik kan zelf aangeven welke keywords hiervoor in aanmerking komen (ik heb ze maar 'strong keywords' genoemd), maar nu weet ik niet helemaal hoe ik het beste kan bepalen welk artikelen het meest 'matchen'.
Momenteel heb ik voor iedere object-keyword relatie een aantal zaken die ik bijhoud:
1] het aantal keer dat het woord voorkomt in het object
2] het aantal keer dat gebruikers gebruik hebben gemaakt van een link ('hits')
3] een 'multiplier' die handmatig ingesteld wordt om een link precedentie te geven over andere links (laten we dit handmatig bijsturing noemen)
Het lijkt me goed mogelijk tot een soort formule te komen waaruit een waarde rolt waarop alle matches vergeleken kunnen worden. Het lukt me alleen niet een goede formule te verzinnen. Heeft iemand suggesties of zijn er bekende heuristieken voor dit soort functies?
Het word-indexing wil ik ook gebruiken om bepaalde woorden in een stuk tekst te laten vervangen door een hyperlink naar een scherm dat aangeeft welke andere artikelen op dat woord een 'close match' zijn. Ik kan zelf aangeven welke keywords hiervoor in aanmerking komen (ik heb ze maar 'strong keywords' genoemd), maar nu weet ik niet helemaal hoe ik het beste kan bepalen welk artikelen het meest 'matchen'.
Momenteel heb ik voor iedere object-keyword relatie een aantal zaken die ik bijhoud:
1] het aantal keer dat het woord voorkomt in het object
2] het aantal keer dat gebruikers gebruik hebben gemaakt van een link ('hits')
3] een 'multiplier' die handmatig ingesteld wordt om een link precedentie te geven over andere links (laten we dit handmatig bijsturing noemen)
Het lijkt me goed mogelijk tot een soort formule te komen waaruit een waarde rolt waarop alle matches vergeleken kunnen worden. Het lukt me alleen niet een goede formule te verzinnen. Heeft iemand suggesties of zijn er bekende heuristieken voor dit soort functies?