Tādi lasītāji kā jūs palīdz atbalstīt MUO. Veicot pirkumu, izmantojot saites mūsu vietnē, mēs varam nopelnīt filiāles komisiju.

Mašīnmācība ir mūsdienu pasaules fundamentāla tehnoloģija. Datori var iemācīties atpazīt attēlus, izveidot mākslas darbus un pat rakstīt savu kodu, un tas viss notiek ar minimālu cilvēka iejaukšanos.

Bet kā darbojas mašīnmācīšanās un kā jūs varat to izmantot pats?

Kas ir mašīnmācīšanās?

Mašīnmācība ir salīdzinoši vienkāršs jēdziens. Datorsistēmas var mācīties un pielāgoties, analizējot esošos datu modeļus no informācijas kopumiem. Parasti tas tiek darīts bez skaidriem cilvēku norādījumiem.

Labs piemērs ir virtuālo palīgu rīki. Siri, Cortana un Google Assistant plaši izmanto mašīnmācīšanos, lai izprastu cilvēka runu. Tas sākas ar esošo audioierakstu kopumu, taču šie rīki var arī mācīties no mijiedarbības ar jums. Tas viņiem ļauj pilnveidoties pašiem.

Kas ir ml5.js?

Lielākā daļa mašīnmācīšanās algoritmu un rīku savam kodam izmanto R vai Python, taču ml5.js atšķiras. Darbojoties kā interfeiss Google Tensorflow.js bibliotēkai, ml5.js ir atvērtā pirmkoda projekts, kas nodrošina mašīnmācīšanos JavaScript izstrādātāju rokās.

instagram viewer

Varat sākt izmantot ml5.js savai tīmekļa lietojumprogrammai, iekļaujot HTML kodā vienu ārēju skriptu.

Darba sākšana ar mašīnmācīšanos: mācību process

Mašīnmācīšanās algoritma apmācība prasa laiku. Datori mācās daudz ātrāk nekā cilvēki, taču viņi mācās arī dažādos veidos. Tomēr par laimi, ml5.js ir aprīkots ar iepriekš apmācītu modeļu izlasi, lai jūs varētu izlaist šo darbību.

Mācīšanās kā trenējas mašīnmācīšanās algoritmi ir lielisks veids, kā labāk izprast šādus rīkus.

ml5.js ļauj viegli izveidot attēlu klasificēšanas rīku, kas darbojas jūsu vietnē. HTML lapā šajā piemērā ir faila ievades lauks attēla atlasīšanai. Augšupielādētie attēli tiek parādīti sagatavotā HTML elementā, lai ml5.js varētu tos skenēt un identificēt.

1. darbība. Iekļaujiet ml5.js bibliotēku

Šim projektam ir nepieciešamas divas bibliotēkas: ml5.js un p5.js. ml5.js ir mašīnmācīšanās bibliotēka, savukārt p5.js ļauj pareizi strādāt ar attēliem. Lai pievienotu šīs bibliotēkas, ir nepieciešamas divas HTML rindiņas:

<skripts src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.0.0/p5.min.js"></script>
<skripts src="https://unpkg.com/ml5@latest/dist/ml5.min.js"></script>

2. darbība. Izveidojiet dažus HTML elementus

Pēc tam ir pienācis laiks izveidot dažus HTML elementus. Vissvarīgākais ir div ar ID un klasi ar apzīmējumu imageResult, kas saglabās gala rezultātu:

<h1>MakeUseOf attēlu klasifikators</h1>

<h2>Klikšķis "Izvēlēties failu" lai pievienotu attēlu</h2>

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

Pēc tam pievienojiet faila ievades elementu, lai apkopotu attēlu programmas klasificēšanai.

<div klase="attēla ievade">
<ievades veids="failu"
oninput="uploadedImage.src=window. URL.createObjectURL(šis.faili[0]); startImageScan()">
</div>

Ievade klausās ievades notikumu un atbildē izpilda divus paziņojumus, kas atdalīti ar semikolu. Pirmajā tiek izveidots attēla objekta URL, kas ļauj strādāt ar datiem, neaugšupielādējot tos serverī. Otrais izsauc startImageScan() funkciju, kuru izveidosit nākamajā darbībā.

Visbeidzot pievienojiet img elementu, lai parādītu lietotāja augšupielādēto attēlu:

<img class="augšupielādēts attēls" id="augšupielādēts attēls" />

3. darbība. Izveidojiet attēlu skenēšanas JS funkciju

Tagad, kad jums ir kāds HTML kods, ir pienācis laiks miksam pievienot dažus JS. Sāciet, pievienojot mainīgo const, lai saglabātu elementu imageResult, ko izveidojāt pēdējā darbībā.

konst elements = dokumentu.getElementById("imageResult");

Pēc tam pievienojiet funkciju startImageScan() un, izmantojot MobileNet, inicializējiet ml5.js attēlu klasifikatoru.

Izpildiet to ar komandu classifier.classify. Nosūtiet tai atsauci uz augšupielādēto attēla elementu, ko pievienojāt iepriekš, kā arī atzvanīšanas funkciju, lai apstrādātu rezultātu.

funkcijustartImageScan() {
// Izveidot a mainīgsuz inicializē ml5.js attēlu klasifikatoru ar MobileNet
const klasifikators = ml5.imageClassifier('MobileNet');
classifier.classify (document.getElementById("augšupielādēts attēls"), imageScanResult);
element.innerHTML = "...";
}

4. darbība. Izveidojiet rezultātu displeja funkciju

Jums ir nepieciešama arī funkcija, lai parādītu veiktās attēlu klasifikācijas rezultātus. Šī funkcija satur vienkāršu if paziņojumu, lai pārbaudītu, vai nav kļūdu.

funkcijuimageScanResult(kļūda, rezultāti) {
if (kļūda) {
element.innerHTML = kļūda;
} cits {
ļaut skaits = rezultāti[0].pārliecība * 100;
element.innerHTML = rezultāti[0].label + "<br>Pārliecība: " + num.toFixed (0) + "%";
}
}

5. darbība. Salieciet visu kopā

Visbeidzot, ir pienācis laiks apvienot visu šo kodu. Ir svarīgi paturēt prātā

,