Læsere som dig hjælper med at støtte MUO. Når du foretager et køb ved hjælp af links på vores websted, kan vi optjene en affiliate-kommission.
Machine learning er en grundlæggende teknologi i den moderne verden. Computere kan lære at genkende billeder, skabe kunstværker og endda skrive deres egen kode, alt sammen med minimal menneskelig indgriben.
Men hvordan fungerer maskinlæring, og hvordan kan du selv bruge det?
Hvad er Machine Learning?
Machine learning er et relativt simpelt koncept. Computersystemer kan lære og tilpasse sig ved at analysere eksisterende datamønstre fra puljer af information. Dette gøres normalt uden eksplicitte instruktioner fra mennesker.
Et godt eksempel kommer i form af virtuelle assistentværktøjer. Siri, Cortana og Google Assistant gør alle udstrakt brug af maskinlæring til at forstå menneskelig tale. Dette starter med en pulje af eksisterende lydoptagelser, men disse værktøjer kan også lære af de interaktioner, de har med dig. Dette sætter dem i stand til at forbedre sig selv.
Hvad er ml5.js?
De fleste maskinlæringsalgoritmer og værktøjer bruger R eller Python til deres kode, men ml5.js er anderledes. ml5.js fungerer som en grænseflade for Googles Tensorflow.js-bibliotek og er et open source-projekt, der sætter maskinlæring i hænderne på JavaScript-udviklere.
Du kan begynde at bruge ml5.js til din egen webapplikation ved at inkludere et enkelt eksternt script i din HTML.
Kom godt i gang med Machine Learning: Læringsprocessen
At træne en maskinlæringsalgoritme tager tid. Computere lærer langt hurtigere end mennesker, men de lærer også på forskellige måder. Heldigvis kommer ml5.js dog med et udvalg af fortrænede modeller, så du kan springe dette trin over.
Læring hvordan maskinlæringsalgoritmer træner er en fantastisk måde at bedre forstå værktøjer som dette.
ml5.js gør det nemt at oprette et billedklassificeringsværktøj til at køre på din hjemmeside. HTML-siden i dette eksempel indeholder et filindtastningsfelt til at vælge et billede. Uploadede billeder vises inde i et forberedt HTML-element for at gøre det muligt for ml5.js at scanne og identificere dem.
Trin 1: Inkluder ml5.js-biblioteket
Dette projekt kræver to biblioteker for at fungere: ml5.js og p5.js. ml5.js er maskinlæringsbiblioteket, mens p5.js gør det muligt at arbejde med billeder korrekt. Du skal bruge to linjer HTML for at tilføje disse biblioteker:
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.0.0/p5.min.js"></script>
<script src="https://unpkg.com/ml5@latest/dist/ml5.min.js"></script>
Trin 2: Opret nogle HTML-elementer
Dernæst er det tid til at lave nogle HTML-elementer. Det vigtigste er en div med et ID og klasse mærket imageResult, der gemmer det endelige resultat:
<h1>MakeUseOf Image Classifier</h1>
<h2>Klik "Vælg fil" for at tilføje et billede</h2>
<div klasse="billedresultat" id="billedresultat"></div>
Efter dette skal du tilføje et filinputelement for at indsamle billedet, som programmet kan klassificere.
<div klasse="billedinput">
<input type="fil"
oninput="uploadedImage.src=vindue. URL.createObjectURL(this.files[0]); startImageScan()">
</div>
Inputtet lytter efter en oninput-hændelse og udfører to sætninger som svar, adskilt af et semikolon. Den første opretter en objekt-URL for billedet, som lader dig arbejde med dataene uden at skulle uploade dem til en server. Den anden kalder en startImageScan() funktion, som du vil oprette i næste trin.
Tilføj endelig et img-element for at vise det billede, som brugeren har uploadet:
<img klasse="uploadet billede" id="uploadet billede" />
Trin 3: Opret en JS-funktion til billedscanning
Nu hvor du har noget HTML, er det tid til at tilføje noget JS til blandingen. Start med at tilføje en const-variabel for at gemme det imageResult-element, du oprettede i det sidste trin.
konst element = dokument.getElementById("imageResult");
Tilføj derefter en funktion kaldet startImageScan() og initialiser i den, ml5.js-billedklassifikatoren ved hjælp af MobileNet.
Følg dette med kommandoen classifier.classify. Giv det en reference til det uploadedImage-element, du tilføjede tidligere, sammen med en tilbagekaldsfunktion til at behandle resultatet.
fungerestartImageScan() {
// skab -en variabeltil initialiser ml5.js billedklassifikatoren med MobileNet
const classifier = ml5.imageClassifier('MobileNet');
classifier.classify (document.getElementById("uploadet billede"), imageScanResult);
element.innerHTML = "...";
}
Trin 4: Opret en resultatvisningsfunktion
Du skal også bruge en funktion til at vise resultaterne af den billedklassificering, du har udført. Denne funktion indeholder en simpel if-sætning til at kontrollere for eventuelle fejl.
fungereimageScanResult(fejl, resultater) {
if (fejl) {
element.innerHTML = fejl;
} andet {
lade num = resultater[0].tillid * 100;
element.innerHTML = resultater[0].label + "<br>Tillid: " + num.toFixed (0) + "%";
}
}
Trin 5: Sæt det hele sammen
Endelig er det tid til at samle al denne kode. Det er vigtigt at være opmærksom på
,