In quale area di Intelligenza Artificiale è il mio negozio di conoscenze?

3

Ho un'idea matura riguardo un negozio di conoscenza.

Ai fini di questa domanda, il negozio sarebbe utilizzato da una forza di polizia per la registrazione e l'interrogazione dei crimini. Credo che, storicamente, le forze di polizia usassero tenere vasti sistemi di carte indice, consentendo la correlazione incrociata e l'interrogazione.

L'archivio delle informazioni contiene una raccolta di fatti noti, raccolti in un modo che supporta domande future sconosciute.

Ovviamente se conoscessi le domande future "quanti crimini di questo mese", "quale strumento è più comunemente usato per rompere e inserire" sarebbe abbastanza semplice archiviare, fascicolare e presentare i dati.

Il mio requisito per domande future sconosciute presenta il problema.

Immagino una serie di autori che raccolgono dettagli sui crimini. Presenterebbero i dettagli, facendo un uso pesante delle relazioni: "crimine si è verificato di sera", "ladro usato un mattone", "crimine commesso di Person_A ". Quando si considera un crimine, l'utente entra in "mattone" e viene presentato con conoscenze correlate a quel concetto.

  • usato frequentemente di notte
  • frequentemente usato nel furto con scasso opportunistico
  • usato frequentemente in assalto
  • l'oggetto di accesso più comune utilizzato in D
  • oggetto più utilizzato da Person_A, Person_B

L'utente dovrebbe quindi sfogliare / vagare attraverso il set di informazioni per saperne di più sui crimini passati.

L'archivio delle informazioni sottostanti sembra vicino a quello in un Database Graph - ma non voglio "sleepwalk" nell'usare uno di quelli se esiste una soluzione più naturale basata sull'intelligenza artificiale che non solo risolve il problema di archiviazione / recupero ma che fornisce anche deduzioni di stile del sistema esperto.

    
posta ianmayo 31.01.2013 - 11:05
fonte

2 risposte

1

Descrizione La logica va bene per questo lavoro. Quindi usare OWL e un ragionatore è un buon approccio. In una spiegazione semplificata, OWL full è quasi potente quanto la logica del primo ordine e quindi non avrai bisogno di più. La domanda è quale versione di OWL è adatta al tuo compito, ad esempio, abbastanza potente e allo stesso tempo molto efficiente per interferire con un ragionatore.

Fai attenzione che l'uso di OWL e di un ragionatore sia ancora un argomento giovane. Gli strumenti mi sembrano un po 'come in beta. (difficile trovare informazioni aggiornate, lo strumento interessante può essere sospeso in 5-6 mesi). Avrai bisogno di avere molta familiarità con la logica (logica del primo ordine e della descrizione) per fare tutto ciò che funzionerà. solo un avvertimento: -)

Prolog non è più così popolare (purtroppo così o non?), quindi immagino sia più difficile trovare materiale e strumenti aggiornati per Prolog per questo compito. (anche se Prolog è molto buono! Davvero!)

MODIFICA relativo al commento:

L'esecuzione di query sulle relazioni non è così interessante, in quanto non rappresenta un grande miglioramento rispetto alle basi di dati relazionali. RDF e sparql sono solo un bel modo per combinare diverse fonti di dati sul Web.

Lei è un esempio in pseudo-logica / codice:

Forall x element burglers :
used_brick(x) and left_fingerprints(x) => opportunist_burgler(x)

(la regola precedente verrebbe memorizzata in qualche formato OWL)

Quindi, se un ladro ha usato impronte digitali in mattoni a sinistra, ciò implica che è un ladro opportunista.

Quindi, se l'archivio dati ha le seguenti informazioni:

used_brick(john).
left_fingerprints(john).

quindi esegui il tuo ragionatore OWL (ad es., di notte se hai molti dati). ciò comporterà l'aggiunta dei seguenti dati all'archivio dati:

opportunist_burgler(john).

Ora se interroghi il tuo set di dati "dammi tutti i ladri opportunisti", di conseguenza comparirà "john". Nel tuo set di dati, non è memorizzato che "john" sia un opportunista, questo è dedotto dalle tue regole OWL.

Ora puoi risolvere lo stesso problema nel software di statistica R e utilizzare statistiche descrittive e test statistici, ad es. clustering, componenti principali, anova, ecc. e collegare il software R alla tua app web. Quindi potresti usare anche "Interferenza bayesiana" e "Grafici bayesiani" in R, e questo sarebbe più vicino all'intelligenza artificiale le altre opzioni. Ma la matematica dietro è piuttosto difficile.

    
risposta data 01.02.2013 - 01:55
fonte
5

Sembra un lavoro per Prolog

Se decidi di implementare questo sistema utilizzando Prolog, allora questo articolo ti aiuterà nella scelta di un archivio dati appropriato . Risale al 2002 ma Prolog è stato molto più lungo di così, quindi l'informazione dovrebbe essere ancora utile.

    
risposta data 31.01.2013 - 11:25
fonte