Ik ben op zoek naar een techniek/algo waarmee je een bepaald document kunt vergelijken met een grote hoeveelheid andere documenten, uiteraard heb ik zelf nagedacht over verschillende opties, maar ik zou hier graag wat over discussieren.
De bedoeling is dat 100% gelijkende documenten gevonden worden, maar dat ook niet 100% gelijkende documenten gevonden worden.
Ik dacht dat de eerste stap zou zijn dat je een Hash maakt van alle opgeslagen documenten. (loss-less), (dus geen MD5 of RCR, dat heeft alleen nut voor 100% gelijke documenten)
Een nuttige hash had ik als volgt bedacht:
Replace elk woord met een ID (vanuit een (eventueel beperkte tot keywords) lijst met woordjes), en controlleer daarna het aantal overeenkomstige ID's. en sorteer dan op hit-rate.
Of, zoek eerst naar documenten die +- 10% langer of korter zijn, en loop daarna gewoon de string door met een word compare functie.
Misschien werkt een vector search engine ook wel aardig, al denk ik dat je daarbij met vrij grote problemen te maken krijgt omdat je dan een complexe vector (die van het te zoeken document) moet gaan vergelijken met een hele grote andere stapel complexe vectoren. (en dan ben je dus niet veel verder dan de eeste oplossing)
Aangezien die nogal een grijs gebied is, en omdat er vast al eens over na gedacht is door de andere devvers hier, dacht ik laat ik het eens vragen.
De bedoeling is dat 100% gelijkende documenten gevonden worden, maar dat ook niet 100% gelijkende documenten gevonden worden.
Ik dacht dat de eerste stap zou zijn dat je een Hash maakt van alle opgeslagen documenten. (loss-less), (dus geen MD5 of RCR, dat heeft alleen nut voor 100% gelijke documenten)
Een nuttige hash had ik als volgt bedacht:
Replace elk woord met een ID (vanuit een (eventueel beperkte tot keywords) lijst met woordjes), en controlleer daarna het aantal overeenkomstige ID's. en sorteer dan op hit-rate.
Of, zoek eerst naar documenten die +- 10% langer of korter zijn, en loop daarna gewoon de string door met een word compare functie.
Misschien werkt een vector search engine ook wel aardig, al denk ik dat je daarbij met vrij grote problemen te maken krijgt omdat je dan een complexe vector (die van het te zoeken document) moet gaan vergelijken met een hele grote andere stapel complexe vectoren. (en dan ben je dus niet veel verder dan de eeste oplossing)
Aangezien die nogal een grijs gebied is, en omdat er vast al eens over na gedacht is door de andere devvers hier, dacht ik laat ik het eens vragen.
openkat.nl al gezien?