ID.nl logo
Zekerheid & gemak

Hoe werkt machine learning precies?

Software die uit zichzelf kan leren, daar kijken we niet meer van op. Denk aan spraakherkenning die ons telkens beter begrijpt, of een slimme thermostaat die na een tijdje weet wanneer we dagelijks van ons werk komen en dan de verwarming al op tijd wat hoger zet. Maar hoe werkt machine learning precies?

We spreken van machinelearning als een programma in staat is om zonder menselijke inbreng te leren hoe het een specifieke taak kan uitvoeren en beter wordt in die taak hoe meer ervaring het heeft. Er is dus geen mens die een algoritme programmeert om die taak uit te voeren; de mens programmeert een algoritme dat uit zichzelf leert om de taak uit te voeren.

Hoe programmeer je zo’n algoritme om te leren? Kort door de bocht bestaat dat leren eruit dat het algoritme zoveel mogelijk informatie uit een verzameling gegevens haalt en zo een signaal van ‘ruis’ kan onderscheiden in die gegevens. Zo zijn in spraakherkenningstechnologie de gegevens een geluidsopname, terwijl de informatie de uitgesproken woorden zijn. Al de rest van de geluidsopname is ruis.

In de praktijk trainen we de software op een trainingset, een verzameling gegevens die een goede voorstelling vormen van de gegevens die de software zal tegenkomen. Nadat de software op die manier getraind is, kan ze ook onbekende gegevens aan. Wel moet de taak altijd duidelijk afgelijnd zijn. Software die spraak herkent, kun je niet integraal inzetten om muziek te herkennen en al zeker niet om gezichten te herkennen.

Neuraal netwerk

Neurale netwerken (‘artificial neural networks’) vormen een belangrijke aanpak in machinelearning. Ze bootsen de werking van de hersenen na, die een biologisch neuraal netwerk vormen: een kluwen van ontzettend veel verbindingen tussen neuronen (hersencellen). Een kunstmatig neuraal netwerk bestaat meestal uit meerdere lagen: een invoerlaag van neuronen die de invoer van een probleem voorstellen, een uitvoerlaag van neuronen die de oplossing van het probleem voorstellen, en één of meer tussenliggende lagen die berekeningen uitvoeren.

Bij een fully connected neural network krijgt elk neuron invoer van alle neuronen in de laag ervoor en geeft het zijn uitvoer aan alle neuronen in de laag erna. Bij een convolutioneel neuraal netwerk is een neuron niet afhankelijk van alle neuronen in de vorige laag. Een neuraal netwerk programmeer je niet door expliciet aan te geven hoe het een probleem moet oplossen; je ‘traint’ het door het vele voorbeelden van een probleem te geven, waardoor het uit zichzelf de taak leert.

Deep learning

Vooral deeplearning maakt de laatste jaren furore in de wereld van machinelearning. Bij deeplearning gebruikt het algoritme een groot aantal lagen tussen input en output. De invoerlaag verwerkt de input en stuurt die door naar de volgende laag, die zijn input verwerkt en naar de volgende laag doorstuurt, enzovoort, tot er aan het einde de output uitkomt. Dit grote aantal lagen maakt complexe transformaties mogelijk.

Een prominente gebruiker van deeplearning is Google DeepMind. In 2014 nam Google de start-up DeepMind uit Cambridge over. Begin 2016 kwam het in het nieuws met de overwinning van AlphaGo op de menselijke kampioen in het bordspel go. En het systeem van DeepMind blinkt uit in het spelen van games zoals Space Invaders en Pac Man.

Google DeepMind combineert deeplearning op een convolutioneel neuraal netwerk met het zogenoemde Q-learning om spelletjes te leren spelen zonder dat het hoeft te weten wat de goede zet is: het algoritme krijgt alleen informatie over ‘winst’ of ‘verlies’. Google DeepMind noemt hun techniek deep reinforcement learning.

Google heeft het geld voor de mensen en de computers om op grote schaal machine learning te ontwikkelen

-

Wat heeft Google DeepMind dat anderen niet hebben? “Vooral geld,” zegt Sander Bohte, onderzoeker bij het Amsterdamse CWI (Centrum voor Wiskunde & Informatica). “Wanneer je een industrieel onderzoekslabo hebt waar een paar honderd briljante mensen werken, verkrijg je de resultaten van Google DeepMind. Google heeft het geld om de beste mensen ter wereld aan te nemen en ze hebben geld voor krachtige computerclusters. Zij kunnen dus op een heel andere schaal werken dan universiteiten.”

Facebook, Microsoft, Apple...

Google is niet de enige die geld investeert in machinelearning. Facebook heeft een Applied Machine Learning-team dat spam herkent, foto’s automatisch tagt en nog heel wat andere slimme taken uitvoert op het sociale netwerk.

In 2015 kocht Microsoft het bedrijf Equivio, dat patronen in grote hoeveelheden e-mails en documenten doorspit. En Apple nam in 2016 de vooraanstaande onderzoeker Ruslan Salakhutdinov aan als hoofd van zijn AI Research team. Ook Amazon, Twitter en Baidu zijn bezig met machinelearning. En dan is er nog IBM, dat met zijn supercomputer Watson belangrijke toepassingen ontwikkelt.

De kunstmatige neurale netwerken die een belangrijke rol spelen in machinelearning zijn losjes geïnspireerd op de neuronen in onze hersenen. Maar ze werken helemaal niet zo efficiënt, zegt Sander Bohte: “Onze hersenen verbruiken zo’n 25 W energie. Een neuraal netwerk op een pc verbruikt al snel 300 W. Dat kunnen we niet in een drone implementeren, want die verbruikt dan te veel energie om lang in de lucht te blijven op zijn batterijlading."

"En als we een neuraal netwerk ter grootte van de hersenen zouden maken, zou dat 5 MW verbruiken. Onze kunstmatige neurale netwerken zijn dus aanzienlijk minder efficiënt dan hun biologische evenknieën.”

De grote uitdaging is dus om dat verschil te verkleinen. Dat kunnen we volgens Sander Bohte bereiken als we ons nog meer laten inspireren op biologische neurale netwerken: “Neuronen in onze hersenen communiceren met pulsen. Gemiddeld sturen ze één puls per seconde. Maar neuronen zijn niet continu actief. Soms doen ze een seconde niets en soms vuren ze tien keer op een seconde.”

Spiking neural networks

Sander Bohte doet onderzoek naar spiking neural networks, die net zoals biologische neuronen geen energie gebruiken wanneer er niets gebeurt. “We hopen zo neurale netwerken toch een factor 100 energie-efficiënter te maken,” zegt hij. IBM gebruikt dezelfde aanpak in zijn TrueNorth-processor, die met een miljoen neuronen maar 70 mW verbruikt.

Spiking neurale netwerken hebben volgens Sander Bohte nog een ander voordeel: ze zijn compatibel met biologische neuronen omdat ze dezelfde taal spreken. “We kunnen een spiking neuraal netwerk in principe rechtstreeks op ons brein aansluiten. Zo werk ik nu samen met het Leids Universitair Medisch Centrum om cochleaire implantaten te verbeteren. "

"Ik verwacht dat neuroprotheses met spiking neurale netwerken binnen vijf jaar mogelijk zijn. En ik verwacht ook veel van het Amerikaanse DARPA, dat veel geld steekt in projecten binnen het BRAIN Initiative met als doel om 1 miljoen gelijktijdige ‘aansluitingen’ met de hersenen te maken.”

Onbetrouwbare resultaten

Een nadeel van neurale netwerken is dat ze een soort ‘black box’ vormen: wanneer ze een resultaat geven, weet je niet hoe ze tot dat resultaat komen. In sommige domeinen is dat helemaal geen wenselijke eigenschap. Stel dat we software ontwikkelen om een arts te helpen bij het nemen van juiste beslissingen. Als de software een diagnose stelt, maar de arts helemaal niet weet waarop die diagnose gebaseerd is, kan hij daarop niet vertrouwen. Een verkeerde beslissing kan immers een grote impact hebben.

“In zulke domeinen werk je daarom liever met predictieve modellen die voor de expert te begrijpen zijn,” zegt Gilles Vandewiele, doctoraatsstudent aan het Internet Technology and Data Science Lab (IDLab) van de Universiteit Gent – imec. Gilles Vandewiele werkt daarom met decision support systemen.

Wanneer neurale netwerken een resultaat geven, weet je niet hoe ze daartoe zijn gekomen

-

“Dat vereist vaak meer menselijke inbreng dan een neuraal netwerk, omdat we zelf aan feature extraction (het verminderen van de hoeveelheid middelen die nodig zijn om een grote set van gegevens te beschrijven – red.) doen, terwijl dat bij deeplearning automatisch gebeurt. Maar het resultaat is dan wel een begrijpelijk model dat vaak sneller getraind kan worden dan zijn tegenpool, omdat we dan geen miljoenen parameters meer moeten leren.”

Naast de medische sector zijn ook de financiële en juridische sectoren geïnteresseerd in deze aanpak, omdat experts in die domeinen een uitleg moeten kunnen geven bij hun beslissingen. “De nauwkeurigheid ligt bij deeplearning wel nog hoger. Bij de keuze tussen deeplearning- en decision support-systemen maak je altijd de afweging tussen nauwkeurigheid en begrijpelijkheid van het model.”

Ook IBM Watson is op deze aanpak gebaseerd. De DeepQA-software die het hart uitmaakt van Watson kan allerlei gestructureerde en ongestructureerde gegevens combineren en zijn beslissingen uitleggen. IBM heeft Watson dan ook al in meerdere ziekenhuizen ingezet en waagt zich met het systeem ook aan weersvoorspellingen.

Lees verder op de volgende pagina.

Vandewiele wijst ook op Kaggle, een online platform dat programmeerwedstrijden in data science-problemen organiseert. “Op Kaggle vind je heel veel state-of-the-art oplossingen voor machinelearning-problemen. Voor problemen die niet over afbeeldingen, video’s of geluid gaan, is de meest prominente tactiek om hoge classificaties te halen het trainen van heel veel verschillende modellen op basis van geëxtraheerde features en dan de voorspellingen van die modellen gebruiken als nieuwe features voor een finaal model.

Een van de meest voorkomende algoritmes daarvoor is eXtreme Gradient Boosting (XGBoost), een algoritme gebaseerd op beslissingsbomen.” In 2015 en 2016 haalden doctoraatsstudenten van de Universiteit Gent de eerste respectievelijk tweede plaats in de Data Science Bowl van Kaggle.

Bayesiaans netwerk

Nog een andere aanpak in machinelearning vormen de Bayesiaanse netwerken. Een Bayesiaans netwerk is een probabilistisch grafisch model dat de conditionele afhankelijkheden van willekeurige variabelen voorstelt. Zo kun je de relaties tussen ziektes en symptomen voorstellen. Bij het voorkomen van bepaalde symptomen, kun je dan berekenen wat de kans is op allerlei ziektes.

“Voor een Bayesiaans netwerk moet je ontzettend sterke aannames maken over de wereld,” zegt Peter Grünwald van het Amsterdamse CWI. “Je moet aangeven hoe groot de kans is op alle mogelijke toestanden van de wereld, je prior beliefs. Voor complexere problemen gaat dat al snel over een kansverdeling van miljoenen getallen. Het is conceptueel niet zo eenvoudig om je dan voor te stellen waar je nu eigenlijk mee bezig bent.”

Peter Grünwald is daarom voorstander van een informatietheoretische aanpak. “Eigenlijk is dat een veralgemening van de Bayesiaanse methode, maar de interpretatie ervan is helemaal anders, in termen van datacompressie. De kern bestaat uit het minimum description length (MDL) principle. Dit principe zegt dat de beste hypothese voor een bepaalde verzameling gegevens degene is die leidt tot de beste compressie van deze gegevens.”

Als je ruwe data zoals x- en y-coördinaten letterlijk zou opschrijven zonder enige compressie, zouden die veel ruimte innemen. Maar als er een patroon tussen x en y bestaat, bijvoorbeeld y is een functie van x, dan kun je die gegevens kleiner opschrijven. Je schrijft dan de functie op en daarna de x-coördinaten. Die tweede manier comprimeert de gegevens beter dan de eerste en is dus een betere hypothese.

Machine learning en robots

We denken bij machinelearning doorgaans aan ‘virtuele’ oplossingen zoals slimme assistenten en vertaalprogramma’s, maar we zien ook meer en meer oplossingen in robotica, die een effect in de echte wereld hebben. “Het is een hele uitdaging om robots te leren bewegen en ze zo adaptief mogelijk te maken in menselijke situaties,” zegt Francis wyffels, die hiernaar onderzoek doet aan het IDLab van de Universiteit Gent.

Vooral in kleinere bedrijven is die aanpak interessant. Terwijl grotere productiebedrijven vaak grotendeels geautomatiseerde fabrieken hebben met robots die zonder enige menselijke inbreng hun werk doen, gaat het bij mkb’s vaak anders: de robots krijgen steeds wisselende taken en voeren die in nauwe samenwerking met mensen uit. Dat vereist heel wat meer intelligentie én aanpassingsvermogen.

Het is een hele uitdaging om robots te leren bewegen en ze zo adaptief mogelijk te maken in menselijke situaties

-

Om intelligentere robots mogelijk te maken, is ook heel wat fundamenteel onderzoek nodig. Zo bekijken onderzoekers hoe ze de werking van robots meer door biologische processen kunnen laten inspireren. “In onze ruggengraat zitten de Central Pattern Generators (CPG’s), neurale netwerken die de spieren aansturen. Voor motorische controle op hoog niveau zijn de hersenen natuurlijk nog nodig, maar de CPG’s werken op een lager niveau. De controle gebeurt dus door neurale netwerken op verschillende niveaus,” legt Francis wyffels uit.

“We kunnen dan ook allerlei basisbewegingen doen zonder dat onze hersenen dat moeten aansturen. Robots werken daarentegen doorgaans met één centraal programma dat alles aanstuurt. Wat als je nu de bewegingen van een robot ook hiërarchisch laat aansturen, met onafhankelijk werkende motorneuronen zoals in onze ruggengraat? Dit onderzoek staat wel nog in zijn kinderschoenen, maar het is een veelbelovende aanpak.”

Binnen enkele jaren zouden we ons domoticasysteem volgens Francis wyffels niet meer via een aanraakscherm aan de muur of via onze tablet aansturen, maar we zouden ermee op een natuurlijke manier communiceren via een soort kunstmatige huiscoach.

“Zo’n sociale robot waarmee je spreekt kan de aversie van veel mensen voor technische systemen overwinnen. Veel mensen zijn bang voor een domoticasysteem omdat ze in de war raken door al die knopjes en instellingen. Dat is allemaal veel te abstract voor hen. We hebben alle bouwblokken om een sociale interactie met ons domoticasysteem te ontwikkelen: goede spraakherkenning, beeldverwerking, kennis over human-robot interaction enzovoort. De ontwikkelingen zullen hier dus niet zo heel lang op zich laten wachten.”

De toekomst

De vooruitgang in machinelearning zal niet alleen in ons dagelijks leven gevolgen hebben, maar ook breder in onze maatschappij. Vaak hoor je het doemscenario dat we allemaal onze banen gaan verliezen aan computers. Artsen, journalisten, juristen, ... volgens de doemdenkers is hun baan binnen afzienbare tijd bijna volledig te automatiseren. Onderzoeksbureau Forrester voorspelt dat in 2021 al zes procent van de banen in de VS door robots zijn overgenomen.

Toch is het toekomstbeeld niet zo negatief voor onze baanvooruitzichten als vaak wordt voorgesteld. In zijn rapport ‘Preparing for the Future of Artificial Intelligence’ van eind 2016 schetste de Obama-administratie in één van zijn laatste publicaties dat we onze banen kunnen behouden als we mens en machine laten samenwerken om elkaars zwakheden te compenseren.

Zo vermeldt het rapport een studie waarbij afbeeldingen van cellen van lymfeknopen door een computer of door een dokter beoordeeld werden om te bepalen of het om kanker ging. De computer maakte 7,5 procent fouten, de menselijke patholoog 3,5 procent fouten. Maar als de patholoog werd bijgestaan door een computer, werd het foutpercentage van de gecombineerde aanpak gereduceerd tot 0,5 procent.

De grootste uitdaging in het domein is volgens Francis wyffels dat we te weinig mensen hebben die onderzoek doen naar machinelearning. Dat is volgens hem ook een gevolg van het gebrek aan interesse in wetenschappen en technologie bij de jeugd, in het bijzonder de informaticawetenschappen. Het sterotypische beeld van de asociale computernerd is nog altijd niet uitgeroeid.

“Hier ligt een grote taak voor de overheden en scholen: zij moeten onze jeugd voldoende laten kennismaken met informaticawetenschappen en hen leren om met de snelle veranderingen in de toekomst om te gaan. Er zijn gelukkig heel wat scholen die al op eigen houtje initiatieven invoeren om hun leerlingen warm te maken voor informaticawetenschappen.” Om leerkrachten daarbij te helpen, richtte Francis wyffels de vzw Dwengo op en heeft hij didactisch materiaal op de website program-uurtje verzameld.

▼ Volgende artikel
Oliebollen bakken in de airfryer, kan dat?
© sara_winter - stock.adobe.com
Huis

Oliebollen bakken in de airfryer, kan dat?

De geur van versgebakken oliebollen hoort bij december. Toch ziet niet iedereen het zitten om met een pan heet vet aan de slag te gaan. Oliebakken in de airfryer lijkt dan een aantrekkelijk alternatief: minder luchtjes en ook nog eens minder vet. Maar levert bakken in een airfryer dezelfde oliebol op, of moet je toch de frituurpan uit het vet halen?

In dit artikel

Je leest waarom je geen klassieke oliebollen kunt bakken in een airfryer en wat daar technisch misgaat. Ook leggen we uit wat je wel voor oudjaarsalternatief kunt maken met de airfryer én hoe je de airfryer slim gebruikt om gekochte oliebollen weer knapperig en warm te maken.

Lees ook: Ontdek de minder bekende functies van je airfryer

Oliebollen bakken in de airfryer, kan dat? Het korte antwoord is duidelijk: nee, een traditionele oliebol bak je niet in een airfryer. Klassiek oliebollenbeslag is vloeibaar en heeft direct contact met hete olie nodig om zijn vorm en structuur te krijgen. Een airfryer is in de basis een compacte heteluchtoven. Zonder een bad van hete olie kan het beslag niet snel genoeg stollen. Wie het toch probeert, ziet het deeg door het mandje zakken of uitlopen tot een platte, taaie schijf. Dat ligt niet aan het recept, maar aan de techniek.

Waarom hete olie onmisbaar is

Zodra je het beslag van de oliebol in de hete olie van de frituurpan schept, ontstaat er vrijwel direct een korstje om de buitenkant. Binnen in de bol ontstaat stoom, waardoor de bol uitzet en luchtig wordt. Die combinatie van afsluiten en opblazen zorgt voor de typische oliebolstructuur. In een airfryer ontbreekt die directe warmteoverdracht. Hete lucht is simpelweg minder krachtig dan hete olie. Zonder direct contact met heet vet kan het beslag niet snel genoeg stollen. Daardoor blijft een echte oliebol uit de airfryer onmogelijk.

©Gegenereerd door AI

Wat wel kan: kwarkbollen uit de airfryer

Wie toch iets zelf wil maken in de airfryer, moet het klassieke oliebollenbeslag loslaten. Met een steviger beslag, bijvoorbeeld op basis van kwark, kun je ballen vormen die hun vorm behouden. Deze bollen garen prima in de hete lucht en krijgen een mooie bruine buitenkant. De uitkomst lijkt qua vorm op een oliebol, maar de structuur is compacter en de smaak meer broodachtig. Denk aan iets tussen een zoet broodje en een scone. Lekker, lichter en prima als alternatief, maar: het is geen oliebol zoals je die van de kraam kent.

Kwarkbollen uit de airfryer

Meng 250 gram volle kwark met 1 ei en 50 gram suiker tot een glad mengsel. Voeg vervolgens 300 gram zelfrijzend bakmeel toe, samen met een snuf zout. Meng alles kort tot een samenhangend deeg. Het deeg moet stevig zijn en nauwelijks plakken. Is het te nat, voeg dan een beetje extra bakmeel toe. Wie wil, kan rozijnen, stukjes appel of wat citroenrasp door het deeg mengen.

Bestuif je handen licht met bloem en draai ballen ter grootte van een kleine mandarijn. Leg ze met wat ruimte ertussen in het mandje van de airfryer, eventueel op een stukje bakpapier. Bak de bollen in ongeveer 12 tot 15 minuten op 180 graden. Halverwege kun je ze voorzichtig keren zodat ze gelijkmatig bruin worden.

Laat de bollen kort afkoelen en bestuif ze eventueel met poedersuiker. Vers zijn ze het lekkerst, maar ook lauw blijven ze prima eetbaar.

Wat ook goed kan: oliebollen opwarmen in de airfryer

Waar de airfryer wel echt tot zijn recht komt, is bij het opwarmen van gekochte oliebollen. In de magnetron worden ze snel slap en taai. In de airfryer gebeurt het tegenovergestelde. Door de bollen een paar minuten op ongeveer 180 graden te verwarmen, wordt de korst weer knapperig en warmt de binnenkant gelijkmatig op. Je oliebollen smaken weer alsof je ze net gebakken (of gehaald) hebt!

Samenvatting

Wil je de échte oliebol, dan heb je twee opties: zelf bakken in een frituurpan of halen bij de kraam. Bakken in de airfryer kan niet, omdat vloeibaar beslag niet geschikt is voor hete lucht. Je kunt bijvoorbeeld wel kwarkbollen maken, maar dat is toch anders. De grootste winst zit in het opwarmen van kant-en-klare oliebollen: in de airfryer gaat dat snel, ze worden heerlijk knapperig en je hebt geen last van frituurlucht in huis.


Nog even niet aan denken...

...maar voor 1 januari, je goede voornemens

🎆 Vuurwerk op je Galaxy Smartphone? 👇

View post on TikTok
▼ Volgende artikel
Zo krijg je oude randapparatuur weer werkend onder Windows 10 en 11
© ID.nl
Huis

Zo krijg je oude randapparatuur weer werkend onder Windows 10 en 11

Het spreekwoord 'krakende wagens lopen het langst' gaat helaas vaak niet op in de computerwereld. Moderne systemen reageren soms allergisch op oudere hardware. Toch zijn er methoden en slimme trucs om zulke apparaten te laten werken onder Windows 10 of 11.

Dit gaan we doen

Je hebt nog een oudere printer, scanner of ander randapparaat in de kast liggen. Weggooien kan, maar het is duurzamer en goedkoper als je het toestel weer aan de praat krijgt op je moderne Windows-systeem. Zulke apparatuur wordt helaas niet altijd meteen herkend. Fabrikanten bieden namelijk vaak geen ondersteuning meer en Windows bevat lang niet alle stuurprogramma's (drivers) voor oudere apparaten.

Toch is er meer mogelijk dan je denkt. We laten stap voor stap zien wat je kunt doen als Windows het apparaat niet herkent, als de juiste driver ontbreekt of niet compatibel is, en als Windows de installatie weigert. We gaan ook kort in op alternatieve methoden, zoals compatibiliteitsmodi, universele drivers en virtualisatie. Sommige technieken zijn eenvoudig, andere vragen iets meer inspanning en technische kennis. Het loont in elk geval de moeite om het apparaat weer aan de praat te krijgen.

Apparaat niet herkend

Wanneer je een oud apparaat aansluit, kan het gebeuren dat Windows het niet herkent.. Daardoor verschijnt het niet in de lijst met apparaten. Je controleert dit door via een klik met rechts op de Windows-knop Apparaatbeheer te openen. Verschijnt hier iets als 'Onbekend apparaat' of zie je een geel driehoekje of vraagteken, dan heeft Windows het apparaat wel fysiek herkend, maar geen juiste driver gevonden. Je leest hier meer over bij de passage Driverprobleem. Mogelijke oorzaken zijn het ontbreken van een plug-and-playdriver of een verouderd aansluitingstype.

Je kunt dan verschillende dingen proberen. Controleer eerst de aansluiting en de stroomvoorziening. Zorg dat het apparaat juist is aangesloten en ingeschakeld. Bij usb-apparaten helpt het soms een andere poort te proberen. Oudere usb1.1-apparaten werken vaak beter via een usb2.0-poort of een usb-hub met eigen voeding dan via een usb3.0-poort. Heeft je pc nog een parallelle of seriële poort? Controleer dan in het systeem-BIOS of deze is ingeschakeld. Heeft je toestel zo'n poort niet, dan ben je meestal aangewezen op een adapter (zie de passage Aansluitingen).

Een apparaat dat niet wordt herkend, is niet te vinden in Apparaatbeheer.

Handmatige installatie

Je kunt het apparaat ook handmatig proberen te installeren. Misschien heb je nog een cd-rom met de installatiebestanden, zodat het zo lukt. Heeft je pc geen cd-station meer, dan sluit je een extern cd-station aan of kopieer je de bestanden op een andere pc met cd-station naar een usb-stick. Je kunt er ook een iso-bestand van maken en dit met een dubbelklik als virtuele schijf koppelen op je pc. Je kunt dit doen met bijvoorbeeld Burnaware Free. Ga naar www.burnaware.com en kies voor ISO-bestand aanmaken.

Heb je geen cd-rom? Start dan Apparaatbeheer, open het menu Actie en kies Oudere hardware toevoegen. Kies De hardware opsporen en automatisch installeren, geef het hardwaretype aan, zoals Beeldapparaten of Draagbare apparaten, en selecteer het juiste product en model. Heb je zelf een geschikte driver gevonden (bijvoorbeeld op de site van de producent), klik dan op Bladeren en verwijs naar het installatiebestand (inf).

Voor printers open je Instellingen in Windows en kies je Bluetooth en apparaten / Printers en scanners. Klik op Apparaat toevoegen en kies bij De printer die ik wil gebruiken, staat niet in de lijst voor Handmatig een nieuw apparaat toevoegen. In het dialoogvenster laat je Mijn printer is iets ouder. Help mij met zoeken geselecteerd. Werkt dat niet, probeer dan Een lokale printer of een netwerkprinter toevoegen met handmatige instellingen, waarna je de juiste poort en het stuurprogramma kiest. Klik hier ook op Windows Update: zo is de kans groter dat Windows alsnog de juiste driver ophaalt. Je kunt ook een vergelijkbaar model uit de lijst proberen.

De wizard Hardware toevoegen laat je eerst uit een productcategorie kiezen.

Soorten aansluitingen

Gaat het om oudere apparaten, dan hebben die vaak een interface die je op moderne pc's niet meer vindt, zoals een parallelle of seriële aansluiting of firewire. Voor parallel gebruik je een usb-naar-parallel-adapter (meestal usb-A naar 36-pins Sub-D). De printer verschijnt dan als 'USB Printing Support' en werkt vaak met generieke drivers. Sommige oude drivers verwachten een echte LPT-poort met een logische naam als LPT1. Je kunt dan de gedeelde usb-printerpoort mappen naar LPT1 met het opdrachtprompt-commando

net use LPT1: "\\localhost\<printershare>" /persistent:yes

(met net use LPT1: /delete verwijder je deze koppeling). <printershare> is de gedeelde printernaam, zoals ingesteld via Instellingen in Windows: klik op de printernaam, kies Printereigenschappen en open het tabblad Delen. Zo kun je vaak nog printen vanuit oude DOS- of Windows-apps.

Voor een seriële poort (met een DB9 RS232-kabel) gebruik je eveneens een usb-adapter, liefst met FTDI-chip en aangesloten op een usb2.0-poort. Mogelijk moet je eerst de adapterdriver installeren voordat deze in Apparaatbeheer verschijnt (onder een naam als '[…] COMx'). Om het juiste poortnummer (zoals COM1) in te stellen, klik je met rechts op het apparaat, open je Poortinstellingen en klik je op Geavanceerd.

Koop altijd adapters van goede kwaliteit (en van een bekend merk), aangezien goedkopere exemplaren zich niet altijd aan de specificaties houden.

Voor firewire kun je de installatie van een PCIe-naar-firewire (IEEE 1394) adapterkaart overwegen. Met de Microsoft 1394 OHCI Legacy Driver activeer je deze vervolgens in Windows 10/11 en kun je bijvoorbeeld een oude DV-camera of audio-interface aansluiten. Klik hier voor een downloadlink met instructies.

De LPT-poort wordt semipermanent aan de gedeelde usb-printerpoort gekoppeld.

Driverprobleem

Wanneer Windows het apparaat herkent via een van bovenstaande stappen, blijft het afwachten of er een geschikte driver voor Windows 10/11 beschikbaar is. Je kunt eerst een generieke driver proberen, die vaak via de Windows-updatefunctie beschikbaar is. Klik in Apparaatbeheer met rechts op het apparaat, kies Stuurprogramma bijwerken en klik vervolgens op Automatisch zoeken naar stuurprogramma's / In Windows Update zoeken naar bijgewerkte stuurprogramma's.

Soms vind je geschikte drivers bij de optionele updates. Ga hiervoor naar Instellingen, kies Windows Update / Geavanceerde opties / Optionele updates en open Stuurprogramma-updates. Je kunt ook zoeken naar een basisdriver, add-onmodule of universele driver van de fabrikant, zoals de (Smart) Universal Printer Driver van HP.

Vind je geen driver op de site van de fabrikant, dan kun je er ook zelf naar googelen op basis van het hardware-ID. Start Apparaatbeheer, klik met rechts op het apparaat (eventueel bij Andere apparaten of Onbekend apparaat), kies Eigenschappen en open het tabblad Details. Stel Eigenschap in op Hardware-id's. Klik met rechts op een gevonden ID, kies Kopiëren en plak dit met Ctrl+V in een zoekmachine als Google. Mogelijk levert dit een geschikte driver op.

Heb je nog een driver voor Windows 7 of ouder, probeer dan de installatie in compatibiliteitsmodus. Klik met rechts op het installatieprogramma, kies Eigenschappen en ga naar het tabblad Compatibiliteit. Zet een vinkje bij Dit programma uitvoeren in compatibiliteitsmodus voor en kies de laatst ondersteunde versie, zoals Windows 7 of Windows XP (Service Pack 2). Door ook Dit programma als administrator uitvoeren te selecteren, vergroot je de kans dat Windows de oudere driver alsnog aanvaardt, zeker als het geen 'kernel-driver' met volledige systeemrechten betreft (zie ook de passage Driverblokkade). Dit is ons bijvoorbeeld al gelukt voor een Canon Pixma iP4200-printer.

Lees ook: De perfecte printer kiezen? Hier moet je op letten

Soms zitten driverupdates wat verstopt bij de optionele updates.

Alternatieve drivers

Je kunt ook op zoek gaan naar alternatieve, niet-officiële stuurprogramma's. Er zijn verschillende community's en fora die voor populaire oudere apparaten aangepaste drivers aanbieden of INF-bestanden hebben aangepast om ze onder nieuwere Windows-versies te laten werken.

Voor scanners is de alternatieve software van VueScan populair. Deze ondersteunt bijna achtduizend oude scanner-modellen en werkt vaak prima, al is de software niet gratis (vanaf circa 19 euro per jaar). Een proefversie is wel beschikbaar (je kunt eventueel een wegwerpadres gebruiken), zodat je kunt nagaan of je scanner werkt onder Windows 10/11.

Voor printers is het Gutenprint-driverpakket bekend, voorheen bekend als Gimp-print, al is dit alleen beschikbaar voor Linux en macOS. We hebben helaas niet de ruimte om hier dieper op in te gaan, maar je kunt een al dan niet virtuele Linux-machine op je netwerk opzetten (ook op een Raspberry Pi) en hierop Gutenprint installeren. Vervolgens deel je de printer zodat je deze ook op je Windows-pc kunt gebruiken. Voor scanners bestaat een vergelijkbaar project: Scanner Access Now Easy, eveneens voor Linux.

De kans is groot dat je met VueScan je oude scanner nog prima aan de praat krijgt.

Driverblokkade

Het kan gebeuren dat er wel een driver beschikbaar is, maar dat Windows 10/11 de installatie blokkeert. Mogelijk is de driver technisch incompatibel, bijvoorbeeld een 32bit-driver op een 64bit-systeem (Windows 11 is altijd 64 bit), of een kerneldriver die noodzakelijke kernelfuncties mist doordat deze niet meer worden ondersteund door het geüpdatete besturingssysteem. In dit geval kun je nog de compatibiliteitsmodus proberen (zie de passage Driverprobleem), maar het resultaat blijft onzeker. Je maakt dan meer kans via een virtuele machine met een oudere Windows-versie, zoals Windows 10 voor 32bit-drivers.

Soms blokkeert Windows 10/11 de installatie omdat de (kernel)driver niet digitaal is ondertekend. Ben je zeker dat het om een betrouwbare driver gaat, dan kun je deze controle tijdelijk uitschakelen. Open Instellingen, kies Systeem / Systeemherstel en klik tweemaal op Nu opnieuw opstarten. Kies vervolgens Problemen oplossen / Geavanceerde opties / Opstartinstellingen en klik op Opnieuw opstarten. In het menu dat verschijnt, kies je optie 7: Afdwingen van stuurprogrammahandtekening uitschakelen. Windows start nu zonder handtekeningcontrole, zodat je de driver kunt installeren. Bij de volgende herstart is de controle weer actief, maar de driver blijft werken.

Ga je liever voor een iets doortastender aanpak? Voer dan de Opdrachtprompt uit als administrator, voer het commando bcdedit /set TESTSIGNING ON in en herstart je pc. Deze draait dan in testmodus, zie de indicatie rechtsonder. Installeer de driver en voer daarna meteen bcdedit /set TESTSIGNING OFF uit, gevolgd door een herstart om terug normaal te werken.

Deze Windows draait tijdelijk in een (minder veilige) testmodus.

Virtueel alternatief

Lukt het niet om je oude apparaat met een van de bovenstaande workarounds aan de praat te krijgen binnen Windows 10/11, dan zit er weinig anders op dan een ouder of ander besturingssysteem te gebruiken. Het handigst is om dit als virtuele machine (VM) bovenop je huidige Windows te draaien. Binnen deze VM installeer je dan de originele driver en software voor het apparaat.

Geschikte gratis tools zijn Oracle VirtualBox en VMware Workstation Pro (na registratie op https://support.broadcom.com). Via bijvoorbeeld https://archive.org kun je naar schijfkopiebestanden zoeken en downloaden. Wij vonden er onder meer diverse Windows XP-iso-bestanden en installeerden een exemplaar in VirtualBox.

Dit kan als volgt. Start VirtualBox, klik op Nieuw en vul de gegevens in, zoals Microsoft Windows XP (32-bit). Bij ISO-image verwijs je naar je download. Vink Overslaan zonder toezicht aan, klik op Afmaken en vervolgens op Starten. Volg de installatie-instructies. Je bezit of vindt wellicht een geldige licentie voor deze oude Windows.

Koppel het apparaat aan een fysieke poort op je pc en geef deze vervolgens door aan de VM, zodat de virtuele Windows het apparaat herkent. Dit kan vanuit het menu Apparaten in het venster met een opgestarte VM.

Bij printers kun je ook delen via het VM-netwerk, zodat je vanuit je gewone Windows via het netwerk kunt printen naar de VM. Selecteer de (uitgeschakelde) VM in VirtualBox, kies Instellingen, open Netwerk en vink Netwerkadapter inschakelen aan. Stel eventueel Gekoppeld aan in op Bridged Adapter zodat de VM een ip-adres krijgt binnen hetzelfde netwerk als je host-pc.

Een oude HP-printer werd succesvol op een virtuele Windows XP geïnstalleerd.

Extra tips

Soms brengen fabrikanten firmware-updates uit die de compatibiliteit met een nieuwer besturingssysteem verbeteren. Het kan dus lonen om de firmware van het apparaat te controleren en eventueel te updaten. Raadpleeg hiervoor de bijbehorende instructies. Het is ook mogelijk dat sommige apparaten, zoals printers, een legacy- of compatibiliteitsmodus hebben, waardoor ze wel ondersteund worden door Windows of een generieke driver. Raadpleeg ook hiervoor de handleiding.

Tot slot nog een tip die we met enige terughoudendheid geven. Vind je geen geschikte driver op de website van de fabrikant, probeer dan eventueel een gratis tool als IObit Driver Booster of Snappy Driver (Lite). Soms halen deze nog een oude driver uit de online Microsoft Update Catalog die werkt. Dit kan helaas ook zomaar fout gaan, dus maak vooraf zeker een herstelpunt. Let ook op dat je geen ongewenste extra's mee installeert.

Driver-installers: als het echt niet anders kan, en nadat je een herstelpunt hebt gemaakt.

 Nieuwe printer nodig? Kijk op Kieskeurig.nl/prijsdalers om voor de beste deal!

Inkt en cartridges

Voor je printer