Wat doet een kennisingenieur?
Een kennisingenieur onderzoekt, ontwerpt en implementeert computersoftwareprogramma's die een breed scala aan probleemoplossende taken kunnen uitvoeren. Professionals werken met kennisgebaseerde systemen (KBS's) die kunstmatige intelligentie integreren in datamining, gegevensinvoer, berekeningstaken en besluitvormingstoepassingen. Ze proberen codes en programma's te formuleren die op dezelfde manier werken als een menselijke expert voor een bepaalde taak, zoals het oplossen van ingewikkelde fysica-vergelijkingen. De meeste kennisingenieurs zijn in dienst van softwareontwikkelingsbedrijven, hoewel sommige werken voor privébedrijven en adviesgroepen.
Bij het onderzoeken van een nieuw type KBS houdt een kennisingenieur eerst rekening met de beperkingen van de huidige technologieën en de behoefte aan efficiëntere programma's. Hij of zij spreekt mogelijk met programmeurs, softwareontwikkelaars en eindgebruikers om meer te weten te komen over hun zorgen, problemen en behoeften. De ingenieur pakt een nieuw softwareproject aan met hun kritiek in gedachten.
Het bouwen van een nieuw systeem voor kunstmatige intelligentie vereist vaak weken of maanden toegewijd werk. De engineer probeert het systeem via opdrachten en problemen te laten werken, net zoals een expert in een bepaald domein zou doen. Hij of zij stelt logische stappen in die het programma moet gebruiken om een probleem op te lossen of snel een beslissing te nemen. In feite worden tijd en energie bespaard in vergelijking met een programma dat alle mogelijke routes uitput wanneer een algoritmisch antwoord wordt gevonden.
Het is essentieel dat een kennisingenieur zeer detailgericht en georganiseerd is. Bij het schrijven van een nieuw programma moet hij of zij er zeker van zijn dat er geen fouten worden gemaakt. Zelfs een kleine fout in een code kan een heel programma verstoren en de gegevensuitvoer verstoren. Bovendien moet een kennisingenieur de vooruitziende blik hebben om speciale instructies voor het programma op te nemen die door een minder ervaren programmeur over het hoofd kunnen worden gezien. Hij of zij kan bijvoorbeeld veelvoorkomende fouten bij het invoeren van gegevens in een spreadsheet-toepassing voorkomen door de computer te programmeren om te herkennen wanneer een stuk gegevens heel anders is dan eerdere vermeldingen. Als de toepassing detecteert dat er bijvoorbeeld een 100 is ingevoerd in plaats van een 10, kan de gebruiker worden gevraagd of hij of zij zeker weet dat de invoer correct is.
Iemand die geïnteresseerd is om kennisingenieur te worden, kan bacheloropleidingen aan erkende hogescholen en universiteiten bekijken. Relatief weinig scholen bieden graden specifiek in kennistechnologie, maar een programma in informatica of software-engineering kan de juiste training bieden. Veel toekomstige ingenieurs besluiten masteropleidingen of hoger te volgen voordat ze naar banen in de specialiteit zoeken. Een nieuwe kennisingenieur heeft meestal de kans om enkele weken of maanden samen met ervaren professionals te werken om zijn of haar vaardigheden onder de knie te krijgen.