"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

mysql: text finden, der ähnlich ist (wie bei similar_text in php)

kleinerChemiker 17.02.2005 - 22:59 3383 26
Posts

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4281
wenns keine funktion gibt, hab ich an folgendes gedacht:

mit explode in wörter teilen
und dann für jedes wort: $array[$wort]++

funka

Legend
ex-prophet(down below)
Registered: Sep 2000
Location: Vienna / SF
Posts: 6131
atrox es ist schon klar dass man gewisse woerter ignorieren muss

3 moeglichkeiten
* blacklist (per hand oder woerter buch - gibs sicher pages zu dem thema)
* die top 70 aller aktuellen texte raushauen
* grundsaetzlich nur woerter der laenge 4,5 oder gar noch hoeher zaehlen - im endeffekt gehts ja nur darum das man einen gewissen hash bekommt - ob der sinnvoll ist ist sowieso fragwuerdig bei der methode ;)

xTixo

Master of Trinity
Avatar
Registered: Jan 2002
Location: 1150.vie.at
Posts: 535
imho gibts einen LIKE Operator...

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Zitat von xTixo
imho gibts einen LIKE Operator...
na dann mach' mal vor :p

Jehul

Big d00d
Avatar
Registered: Nov 2000
Location: lnz
Posts: 295
@funka:
aber wenn du den text auf einen hash reduzierst hast du wieder das gleiche problem.
der gleiche hash wird wohl nie rauskommen.
und so musst du die ähnlichkeit der hashes vergleichen

funka

Legend
ex-prophet(down below)
Registered: Sep 2000
Location: Vienna / SF
Posts: 6131
jehul jop klar
war schlecht ausgedrueckt

im endeffekt gehts darum dass die liste der haeufigkeiten (abzueglich zu ueblicher woerter) verglichen wird

man kann das ganze dann natuerlich noch sinnfreier machen und sogar einen "ähnlichkeits" wert einfuehren

man vergleich jeweils die gleichen worte - je naeher die haeufigkeit gleicher woerter desto hoeher der wert

das ganze hatten dann noch weniger anspruch auf sinnhaftigkeit aber wie gesagt kann mans ernsthaft nur sehr komplex betreiben

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4281
ich versuche es derzeit mit der zweiten möglichkeit. hab in einem probelauf zwar keine ähnlichen gefunden, aber einige gleiche ^^

atrox

in fairy dust... I trust!
Avatar
Registered: Sep 2002
Location: HTTP/1.1 404
Posts: 2782
Zitat von funka
atrox es ist schon klar dass man gewisse woerter ignorieren muss

mir gehts einfach darum: es gibt wörter, anhand denen sich texte gut unterscheiden lassen, und es gibt welche, die absolut ungeeignet sind. die top50/100/200 sind wohl überwiegend welche der letzten sorte. warum? weil sie fast überrall vorkommen.

wirklich interessant könnten zb die wörter sein, die in max x% der texte vorkommen. also einen guten information-gain bieten.

hingegen sind wörter die oft vorkommen von geringen information-gain, weil sie kein gutes unterscheidungskriterium darstellen.

funka

Legend
ex-prophet(down below)
Registered: Sep 2000
Location: Vienna / SF
Posts: 6131
jop
ich waer aber weniger fuer x%
sondern eher fuer eine ausfuehrliche (vielleicht sogar adaptive) blacklist

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4281
aber kann man aus den wörtern, die oft vorkommen nicht auf den schreibstil zurückschließen?

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Zitat von kleinerChemiker
aber kann man aus den wörtern, die oft vorkommen nicht auf den schreibstil zurückschließen?
schon, aber dann müsstest du auch den satzbau analysieren...

hctuB

Bloody Newbie
Avatar
Registered: Feb 2002
Location: Pampa LL
Posts: 2402
du solltest auch aufpassen wie die worte enden s er e usw. weil das für das Wort selbst keinen Einfluss hat sondern ja nur gramatikalische Feinheiten sind.

Alles in allem eine ziemliche Aufgabe viel Spass ich will es nicht machen/machen müssen
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz