Hvordan innhold oppdagelse motorer, som Zemanta og Open Calais arbeid?

stemmer
5

Jeg lurte på hvordan så semantisk tjeneste som Åpne Calais tallene ut navnene på selskapene, eller personer, tech konsepter, søkeord, etc. fra en del av teksten. Er det fordi de har en stor database at de samsvarer med teksten mot?

Hvordan ville en tjeneste som Zemanta vet hva bildene for å foreslå for en del av teksten for eksempel?

Publisert på 22/08/2008 klokken 10:51
kilden bruker
På andre språk...                            


3 svar

stemmer
9

Michal Finkelstein fra OpenCalais her.

Først takk for din interesse. Jeg skal svare her, men jeg oppfordrer deg til å lese mer på OpenCalais fora; det er mye informasjon der inkludert - men ikke begrenset til: http://opencalais.com/tagging-information http://opencalais.com/how-does-calais-learn Også gjerne følge oss på Twitter (@OpenCalais ) eller kontakt oss på team@opencalais.com

Nå til svar:

OpenCalais er basert på et tiår med forskning og utvikling innen Natural Language Processing og tekst Analytics.

Vi støtter full "NLP Stack" (som vi liker å kalle det): Fra tekst tokenization, morfologisk analyse og POS tagging, til grunne parsing og identifisere nominelle og verbale uttrykk.

Semantikk spiller inn når vi ser etter Entities (aka Entity Utvinning, oppkalt enhetsgjenkjenning). For dette formålet har vi et avansert regelbasert system som kombinerer funn regler samt leksika / ordbøker. Denne kombinasjonen gjør at vi kan identifisere navnene på bedrifter / personer / filmer osv, selv om de ikke finnes i alle tilgjengelige listen.

For de mest fremtredende enheter (slik som mennesker, bedrifter) vi også utføre anafor oppløsning, kryssreferanser og navn canonization / normalisering på artikkelnivå, så vi vet at 'John Smith' og 'Mr. Smith', for eksempel, er sannsynligvis henviser til samme person. Så det korte svaret på spørsmålet ditt er - nei, det er ikke bare om målrettet mot store databaser.

Hendelser / Fakta er virkelig interessant, fordi de tar våre funn regler ett nivå dypere; vi finner relasjoner mellom enheter og merke dem med riktig type, for eksempel M & As (relasjoner mellom to eller flere selskaper), Sysselsetting Endringer (relasjoner mellom bedrifter og mennesker), og så videre. Unødvendig å si, er Hendelse / Fact utvinning ikke mulig for systemer som er basert utelukkende på leksika. For det meste, er vårt system innstilt til å være presisjon-orientert, men vi prøver alltid å holde en rimelig balanse mellom nøyaktighet og helhet.

Forresten er det noen kule nye metadata evner som kommer ut senere denne måneden, så følg med.

hilsen,

Michal

Svarte 04/05/2009 kl. 19:45
kilden bruker

stemmer
7

Jeg er ikke kjent med de spesifikke tjenester som er oppført, men innen naturlig språk prosessering har utviklet en rekke teknikker som muliggjør denne typen informasjon utvinning fra generell tekst. Som Sean oppgitt, når du har kandidat vilkår, er det ikke vanskelig å søke etter de vilkår med noen av de andre enhetene i sammenheng og deretter bruke resultatene av dette søke å bestemme hvor trygg du er at begrepet hentet er en faktisk enhet av renter.

OpenNLP er et flott prosjekt hvis du har lyst til å leke seg med naturlig språk prosessering. Evnene du har navngitt ville trolig være best oppnås med navngitte Entity kjennerne (NER) (algoritmer som finner egennavn, generelt, og noen ganger datoer i tillegg) og / eller Word Sense Disambiguation (WSD) (f.eks: ordet 'bank' har ulike betydninger avhengig av det er sammenheng, og som kan være svært viktig når trekke ut informasjon fra tekst Gitt setninger:. "flyet banked venstre", "brøyte var høy" og "de ranet banken" kan du se hvordan dissambiguation kan spille en viktig rolle i språkforståelse)

Teknikkene vanligvis bygger på hverandre, og NER er en av de mer komplekse oppgaver, så for å gjøre NER vellykket, vil du vanligvis trenger nøyaktige tokenizers (naturlig språk tokenizers, mind you - statistiske metoder tendens til å fare best), streng Stemmers ( algoritmer som conflate lignende ord til felles røtter: så ord som informant og informant blir behandlet likt), setningsdeteksjon ( 'Mr. Jones var høy.' er bare en setning, så du kan ikke bare se etter tegnsetting), delvis av -speech taggere (POS-taggere) og WSD.

Det er et python-porten på (deler av) OpenNLP kalt NLTK ( http://nltk.sourceforge.net ), men jeg har ikke mye erfaring med det ennå. Mesteparten av arbeidet mitt har vært med Java og C # porter, som fungerer godt.

Alle disse algoritmene er språkspesifikke, selvfølgelig, og de kan ta betydelig tid å kjøre (selv om det er generelt raskere enn å lese materialet du behandler). Siden state-of-the-art er i stor grad basert på statistiske teknikker, er det også en betydelig feilrate for å ta hensyn til. Videre, fordi feilraten påvirker alle scener, og noe som NER krever mange stadier av behandlingen, (tokenize -> setning oppdage -> POS tag -> WSD -> NER) den feilrater forbindelsen.

Svarte 30/08/2008 kl. 03:56
kilden bruker

stemmer
0

Åpne Calais sannsynligvis bruke språket parsing teknologi og språk statikk å gjette hvilke ord eller setninger er navn, steder, selskaper etc. Deretter er det bare et nytt skritt for å gjøre noen form for søk etter disse enhetene og returnere metadata.

Zementa gjør sannsynligvis noe lignende, men matcher uttrykk om meta-data knyttet til bilder for å skaffe relaterte resultater.

Det er absolutt ikke lett.

Svarte 22/08/2008 kl. 17:58
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more