Hva er en inferensmotor?
En inferensmotor er et programvaresystem som er designet for å trekke konklusjoner ved å analysere problemer i lys av en database med ekspertkunnskap den trekker på. Den når logiske utfall basert på lokalene dataene etablerer. Noen ganger er inferensmotorer også i stand til å gå utover streng logisk prosessering, og bruker sannsynlighetsberegninger for å komme til konklusjoner om at kunnskapsdatabasen ikke strengt støtter, men i stedet bare innebærer eller antyder.
De fleste inferensmotorer designet innen kunstig intelligens er basert på begrepet ekspertsystemet. Et ekspertsystem er bygget for å løse problemer i et spesifikt og til tider smalt definert felt, for eksempel visse medisinske spesialiteter. Inferensmotorkomponenten i et ekspertsystem er kontrollstrukturen som produserer innledende utgang basert på hva data som for øyeblikket finnes i kunnskapsbasen og programmeringsreglene i ekspertsystemet, og bruk den deretter på det spesifikke problemet i et meningsfullt way. Fordi inferensmotorresultater er et resultat av dataene, endres de når dataene blir oppdatert, og kan også endres ettersom dataene blir søkt på forskjellige måter av selve inferensmotoren. Hvis dataene i systemet vektes mot en eller flere konklusjoner over en annen, kan dette endre resultatene som inferensmotoren genererer.
Programvare som bruker en inferensmotor kan sees på som en aktiv selektiv mekanisme, der behandlingshandlinger er rettet av den mest nåværende tilstanden til dataene. Ekspertsystemer har to generelle måter å behandle disse lagrede dataene, referert til som fremoverkjeding eller bakoverkjeding. I fremoverkjeding analyserer reglene for ekspertsystemet data som er matet til det av inferensmotoren, og resultatene blir ført tilbake i systemets datalagring som nye data. Dette utløser nye løsninger på problemer når systemet foredler dataene og veier dem ved induktiv inference, noe som betyr at konklusjoner som er oppnådd, ikke nødvendigvis vil gjenspeile de opprinnelige dataene eller premissene som ble brukt til å starte analysen.
Bakoverkjeding er mer sannsynlighetsorientert, med lagrede data vektet for verdi fra starten. Regler brukes til å teste forholdene for dataene for gyldighet i lys av det gitte problemet, og som dette er gjort, tildeles nye sannsynlighetsverdier til dataene. Også referert til som hypotesedrevet, bakoverkjeding trekker ikke strenge konklusjoner før kontinuerlig testing av dataene mot forhold som er fastsatt av reglene for ekspertsystemet, oppfyller et minimumsnivå for bevis for spørsmålet eller problemet som studeres.
Bayesian-logikk er en av de sannsynlighetsorienterte formene for inferensmotorprogramvare som bruker bakoverkjeding, oppkalt etter Thomas Bayes, en engelsk matematiker av midten av 18 th Century. Slik logikk bruker et kunnskapsbase for tidligere hendelser for å forutsi fremtidige utfall gjennom gjentatte tester av kunnskapenLedge, og det faktorer i ytterligere bevis på resultatene av forsøkene til nye forsøk, med målet om å gi mer og mer nøyaktige resultater. Fuzzy logic programvarearkitektur kan også stole på inferensmotoren som en del av systemet. Forskjellen med uklar logikk er at utgangen er et uklar sett eller utvalg av mulige løsninger som deretter blir samlet inn i en gruppe og gjennom logikk og sannsynlighet smalt til en optimal konklusjon eller handling.