Kuxazululiwe: %27pytorch_lightning%27 ayinaso isibaluli %27metrics%27

%27pytorch_lightning%27 ayinaso isibaluli %27metrics%27Isingeniso

Emhlabeni othuthukayo ngokushesha wokufunda okujulile namanethiwekhi emizwa, imitapo yolwazi nezinhlaka kubalulekile ekwenzeni lula kanye nokusheshisa inqubo yokuthuthukiswa. I-PyTorch Lightning iwumtapo wezincwadi onamandla owakhiwe phezu kwePyTorch ethandwa kakhulu. Umbani uklanyelwe ukuvumela Ososayensi Bedatha Nonjiniyela be-ML ukuthi bakale kalula amamodeli abo, bagweme ikhodi ye-boilerplate, futhi bathuthukise ukufundeka sekukonke. Nokho, ngenkathi usebenza ne-PyTorch Lightning, ungase uzithole ubhekene nezinkinga ezifana nephutha lesichasiso se-'pytorch_lightning.metrics'. Kulesi sihloko, sizobhekana nenkinga futhi sikuhambise ngesixazululo sayo, sephule ikhodi ukuze siqonde kangcono. Ngaphezu kwalokho, sizoxoxa ngemitapo yolwazi ehlobene nemisebenzi ehilelekile ekuxazululeni lolu daba.

Isixazululo senkinga

Enye yezinkinga ezinkulu ezihlobene nephutha '%27pytorch_lightning%27 ayinaso isibaluli %27metrics%27' ukuthi kungenzeka ufake inguqulo endala ye-PyTorch Lightning engazange ifake imojuli yamamethrikhi. Ukuze ulungise lokhu, ungavele uthuthukise i-PyTorch Lightning yakho uye enguqulweni yakamuva ngokusebenzisa umyalo olandelayo:

pip install --upgrade pytorch-lightning

Incazelo Yesinyathelo Nesinyathelo Yekhodi

Uma usubuyekeze umtapo wolwazi, singaqala ukusebenza ngamamethrikhi asuselwa ku-PyTorch Lightning. Isinyathelo sokuqala ukungenisa amamojula adingekayo kusuka ku-PyTorch Lightning. Sizosebenzisa imethrikhi Yokunemba ngezinjongo zemifanekiso kulesi sihloko.

import torch
from pytorch_lightning import LightningModule
from pytorch_lightning.metrics.functional import accuracy

Okulandelayo, ake sichaze inethiwekhi yethu ye-neural sisebenzisa i-LightningModule njengekilasi lesisekelo. Ngaphakathi kwezindlela ze-'training_step' kanye 'nokuqinisekisa_isinyathelo', sizobala ukubikezela kwethu kanye nama-tensors eqiniso ayisisekelo, futhi sibale ukunemba sisebenzisa umsebenzi wemethrikhi 'wokunemba' ohlinzekwa yi-PyTorch Lightning.

class Classifier(LightningModule):
    def __init__(self):
        super().__init__()
        self.layer1 = torch.nn.Linear( 32, 128)
        self.layer2 = torch.nn.Linear(128, 10)

    def forward(self, x):
        x = torch.relu(self.layer1(x))
        x = self.layer2(x)
        return x

    def training_step(self, batch, batch_idx):
        x, y = batch
        y_hat = self(x)
        loss = torch.nn.functional.cross_entropy(y_hat, y)
        acc = accuracy(y_hat, y) # Compute accuracy using PyTorch Lightning
        self.log('train_loss', loss)
        self.log('train_acc', acc, prog_bar=True)
        return loss

    def validation_step(self, batch, batch_idx):
        x, y = batch
        y_hat = self(x)
        loss = torch.nn.functional.cross_entropy(y_hat, y)
        acc = accuracy(y_hat, y) # Compute accuracy using PyTorch Lightning
        self.log('val_loss', loss, prog_bar=True)
        self.log('val_acc', acc, prog_bar=True)
        return loss

Ekugcineni, ngokulandela lesi sakhiwo sekhodi, kufanele ukwazi ukusebenza kahle nge-PyTorch Lightning-metrics ngaphandle kokuhlangabezana nephutha lesici esishiwo.

Imitapo yolwazi Ehlobene: I-Torchmetrics

  • Omunye umtapo wolwazi okufanele ukhulunywe ngawo I-Torchmetrics, umtapo wezincwadi osuselwe ku-PyTorch okhethekile ekunikezeni amamethrikhi okuhlola amamodeli okufunda ajulile. Umtapo wezincwadi we-Torchmetrics udalwe onjiniyela abafanayo njenge-PyTorch Lightning, abaqinisekisa ukuhambisana nokuhlinzeka nge-API elula nengaguquguquki.
  • I-Torchmetrics inikezela ngamamethrikhi ahlukahlukene afana nokunemba, ukunemba, ukukhumbula, isikolo se-F1, nokunye okuningi. Yehlisa ubunzima bokusebenzisa lawa mamethrikhi ngokwenza futhi ikuvumela ukuthi ugxile kwezinye izici zamaphrojekthi akho.

Ukuthuthukisa Ukufundeka Kwekhodi Nge-PyTorch Lightning

Enye yezinzuzo ezibalulekile zokusebenzisa i-PyTorch Lightning ukuthi yenza kube lula ukwakheka kwe-loop yokuqeqesha futhi yenza ikhodi ifundeke kakhudlwana. I-LightningModule ihlanganisa izingxenye eziyinhloko zenethiwekhi ye-neural, njengemodeli yezakhiwo, i-logic yokuqeqesha, kanye nengqondo yokuqinisekisa, ikunikeza ikhono lokuphatha lezi zinto ngendlela eyimojula. Ngenxa yalokho, ungakwazi ukuthuthukisa futhi ulinganise amamodeli akho ngempumelelo kakhudlwana, okukunikeza ukuqonda okungcono kwekhodi yakho kuyilapho uthuthukisa ukusebenzisana phakathi kwamalungu eqembu.

Okuthunyelwe okuhlobene:

Shiya amazwana