Az Önhöz hasonló olvasók támogatják a MUO-t. Amikor a webhelyünkön található linkek használatával vásárol, társult jutalékot kaphatunk.

A gépi tanulás alapvető technológia a modern világban. A számítógépek képesek megtanulni felismerni a képeket, grafikákat készíteni, és akár saját kódot is írni, mindezt minimális emberi beavatkozással.

De hogyan működik a gépi tanulás, és hogyan használhatod magad?

Mi az a gépi tanulás?

A gépi tanulás viszonylag egyszerű fogalom. A számítógépes rendszerek az információkészletekből származó meglévő adatminták elemzésével tanulhatnak és alkalmazkodhatnak. Ez általában az emberek kifejezett utasítása nélkül történik.

Jó példa erre a virtuális asszisztensi eszközök. A Siri, a Cortana és a Google Assistant széles körben alkalmazza a gépi tanulást az emberi beszéd megértésére. Ez a meglévő hangfelvételek készletével kezdődik, de ezek az eszközök tanulhatnak az Önnel folytatott interakciókból is. Ez lehetővé teszi számukra, hogy önállóan fejlődjenek.

Mi az az ml5.js?

instagram viewer

A legtöbb gépi tanulási algoritmus és eszköz az R-t vagy a Python-t használja kódként, de az ml5.js ettől eltérő. A Google Tensorflow.js könyvtárának felületeként működő ml5.js egy nyílt forráskódú projekt, amely a gépi tanulást a JavaScript-fejlesztők kezébe adja.

Elkezdheti használni az ml5.js-t saját webalkalmazásához, ha egyetlen külső szkriptet ad meg HTML-kódjában.

Ismerkedés a gépi tanulással: A tanulási folyamat

A gépi tanulási algoritmus betanítása időt vesz igénybe. A számítógépek sokkal gyorsabban tanulnak, mint az emberek, de különböző módokon is tanulnak. Szerencsére azonban az ml5.js számos előre betanított modellt tartalmaz, így ezt a lépést kihagyhatja.

Tanulás hogyan edzenek a gépi tanulási algoritmusok nagyszerű módja az ehhez hasonló eszközök jobb megértésének.

Az ml5.js segítségével egyszerűen létrehozhat egy képosztályozó eszközt, amelyet webhelyén futtathat. Ebben a példában a HTML-oldal tartalmaz egy fájlbeviteli mezőt a kép kiválasztásához. A feltöltött képek egy előkészített HTML-elemen belül jelennek meg, így az ml5.js képes beolvasni és azonosítani őket.

1. lépés: Vegye fel az ml5.js könyvtárat

A projekt működéséhez két könyvtárra van szükség: ml5.js és p5.js. Az ml5.js a gépi tanulási könyvtár, míg a p5.js lehetővé teszi a képekkel való megfelelő munkát. A könyvtárak hozzáadásához két sornyi HTML szükséges:

<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>

2. lépés: Hozzon létre néhány HTML-elemet

Ezután itt az ideje néhány HTML-elem létrehozásának. A legfontosabb egy div azonosítóval és imageResult osztályozással, amely tárolja a végeredményt:

<h1>MakeUseOf képosztályozó</h1>

<h2>Kattintson "Válassz fájlt" kép hozzáadásához</h2>

<div class="imageResult" id="imageResult"></div>

Ezt követően adjon hozzá egy fájl bemeneti elemet, amely összegyűjti a képfájlt a program besorolásához.

<div class="imageInput">
<bemenet típusa="fájlt"
oninput="uploadedImage.src=ablak. URL.createObjectURL(this.files[0]); startImageScan()">
</div>

A bemenet egy oninput eseményre figyel, és válaszul két utasítást hajt végre, pontosvesszővel elválasztva. Az első egy objektum URL-t hoz létre a képhez, amely lehetővé teszi az adatokkal való munkát anélkül, hogy fel kellene töltenie azokat egy szerverre. A második meghív egy startImageScan() függvényt, amelyet a következő lépésben fog létrehozni.

Végül adjon hozzá egy img elemet a felhasználó által feltöltött kép megjelenítéséhez:

<img class="feltöltött kép" id="feltöltött kép" />

3. lépés: Hozzon létre egy képbeolvasó JS-függvényt

Most, hogy van egy kis HTML-je, ideje hozzáadni néhány JS-t a keverékhez. Kezdje egy const változó hozzáadásával az utolsó lépésben létrehozott imageResult elem tárolására.

const elem = dokumentum.getElementById("imageResult");

Ezután adjunk hozzá egy startImageScan() nevű függvényt, és ezen belül inicializáljuk az ml5.js képosztályozót a MobileNet segítségével.

Kövesse ezt a classifier.classify paranccsal. Adjon át neki egy hivatkozást a korábban hozzáadott uploadedImage elemre, valamint egy visszahívási funkciót az eredmény feldolgozásához.

funkcióstartImageScan() {
// Teremt a változónak nek inicializálja az ml5.js képosztályozót val vel MobileNet
const osztályozó = ml5.imageClassifier('MobileNet');
classifier.classify (document.getElementById("feltöltött kép"), imageScanResult);
element.innerHTML = "...";
}

4. lépés: Hozzon létre egy eredménymegjelenítési funkciót

Szüksége van egy funkcióra is, amely megjeleníti az elvégzett képosztályozás eredményeit. Ez a függvény egy egyszerű if utasítást tartalmaz az esetleges hibák ellenőrzésére.

funkcióimageScanResult(hiba, eredmények) {
if (hiba) {
element.innerHTML = hiba;
} más {
hagyja szám = eredmények[0].bizalom * 100;
element.innerHTML = eredmények[0].label + "<br>Bizalom: " + szám.toFix (0) + "%";
}
}

5. lépés: Tedd össze az egészet

Végül itt az ideje, hogy ezt a kódot összeszedjük. Fontos szem előtt tartani a

,