Lelei Fa'ata'ita'iga AI Fa'ata'ita'iga ile Edge Devices e ala ile Hardware-Software Co-Design | B4N1

Lelei Fa'ata'ita'iga AI Fa'ata'ita'iga ile Edge Devices e ala ile Hardware-Software Co-Design

7 months ago · b4n1 Read time: 4 min

** Fa'ata'ita'iga Fa'ata'ita'i AI lelei i luga o masini Edge e ala i Meafaigaluega-Software Co-Design**

Fa'atomuaga

O le faʻateleina o masini mata ua maua ai avanoa fou mo le Artificial Intelligence (AI) talosaga e faʻapipiʻi i le taimi moni, faʻatagaina talosaga e pei o fale atamai, taʻavale tutoʻatasi, ma le faʻaogaina o fale gaosi oloa. Ae ui i lea, o le faʻatapulaʻaina o punaʻoa faʻatatau ma le malosi o le faʻaogaina o masini mata e tulaʻi mai ai ni luʻitau taua mo le faʻaogaina o ata AI. I totonu o lenei tusiga, o le a matou suʻesuʻeina le fesoʻotaʻiga o AI, masini komepiuta, ma faʻataʻitaʻiga e faʻamalieina ai le faʻatinoga o masini, faʻaleleia le alualu i luma lata mai i le AI faʻataʻitaʻiga lelei ma meafaigaluega-software co-design techniques.

** O Lu'itau o le Fa'ata'ita'iga Fa'ata'ita'iga AI i luga o masini Edge**

O masini pito e faʻaalia i latou faʻatapulaʻaina punaoa tau, e aofia ai le PPU, manatua, ma le faʻaaogaina o le eletise. O faʻataʻitaʻiga AI masani, lea e masani ona fuafuaina mo le faʻapipiʻiina o ao, e le faʻaogaina mo masini mata. O se taunuuga, e mafai ona latou taʻitaʻia i:

  • Fa'aleaga fa'atinoga: E le mafai ona fa'asolo lelei fa'ata'ita'iga AI i masini pito, e fa'agesegese taimi tali ma fa'aitiitia le sa'o.
  • Fa'aogaina le malosi: E mafai e fa'ata'ita'iga AI ona fa'aaogaina le malosi tele, lea e mafai ona avea ma popolega mo masini pito e fa'aola ai maa.
  • Tagata manatua: O fa'ata'ita'iga AI e mafai ona mana'omia le tele o manatuaga, lea e mafai ona avea ma lu'i mo masini pito e fa'atapula'aina mea e manatua ai.

** Meafaigaluega-Polokalame Fa'atekonolosi Fa'ata'ita'iga Fa'atasi**

Ina ia foia nei lu'itau, ua tula'i mai faiga fa'akomepiuta fa'atasi-fa'apipi'i e avea o se fofo fa'amoemoe. O nei metotia e aofia ai le faʻatulagaina o mea faʻapipiʻi ma masini komepiuta o se masini mata faʻatasi, faʻamalieina mo le faʻataʻitaʻiina o AI.

1. Teuteuga Fa'ata'ita'i

Fa'ata'ita'iga teuteu e aofia ai le aveeseina o le mamafa ma feso'ota'iga le mana'omia mai se fa'ata'ita'iga AI, fa'aitiitia lona lapo'a ma mana'oga fa'afuainumera. O lenei metotia e mafai ona faʻaoga i fesoʻotaʻiga neural ma laʻau filifiliga.

sulu mai fafo
fa'aulufale mai sulu.nn pei nn

vasega ModelPruning(nn.Module):
    def __init__(self):
        sili(ModelPruning, self).__init__()
        self.fc1 = nn.Linear(784, 128)
        self.fc2 = nn.Linear(128, 10)

    def i luma(tagata, x):
        x = sulu.relu(self.fc1(x))
        x = tagata.fc2(x)
        toe faafoi x

fa'ata'ita'iga = ModelPruning()
teuteu_fa'ata'ita'iga = torch.nn.utils.prune_l1_unstructured(fa'ata'ita'iga, 'mamafa', 0.1)

2. Fa'amamago o le Poto

O le fa'amamago o le poto e aofia ai le fa'aliliuina o le malamalama mai se fa'ata'ita'iga AI lapo'a lavelave i se fa'ata'ita'iga la'ititi ma faigofie. O lenei metotia e mafai ona faʻaogaina e faʻaitiitia ai le tele ma faʻatusatusaga manaʻomia o se faʻataʻitaʻiga AI.

sulu mai fafo
fa'aulufale mai sulu.nn pei nn

vasega KnowledgeDistillation(nn.Module):
    def __init__(self):
        sili(MalamalamaDistillation, oe lava).__init__()
        self.fc1 = nn.Linear(784, 128)
        self.fc2 = nn.Linear(128, 10)

    def i luma(tagata, x):
        x = sulu.relu(self.fc1(x))
        x = tagata.fc2(x)
        toe faafoi x

faiaoga_model = ModelPruning()
student_model = KnowledgeDistillation()

3. Quantization

O le fa'atusatusaga e aofia ai le fa'aitiitia o le sa'o o fua fa'ata'ita'iga AI ma fa'agaioiga, fa'aitiitia le mana'oga fa'atusatusa o se fa'ata'ita'iga AI.

sulu mai fafo
fa'aulufale mai sulu.nn pei nn

vasega Quantization(nn.Module):
    def __init__(self):
        sili(Quantization, self).__init__()
        self.fc1 = nn.Linear(784, 128)
        self.fc2 = nn.Linear(128, 10)

    def i luma(tagata, x):
        x = sulu.relu(self.fc1(x))
        x = tagata.fc2(x)
        toe faafoi x

fa'ata'ita'iga = ModelPruning()
quantized_model = torch.quantization.quantize_dynamic(model, {torch.nn.Linear}, dtype=torch.qint8)

Poloaiga/Snippets pito i luga 5-10 Fa'aaogaina

Poloaiga/ Snippet Fa'amatalaga
torch.nn.utils.prune_l1_unstructured(model, 'weight', 0.1) Fa'ata'ita'iga teuteu fa'aaoga L1 regularization
torch.quantization.quantize_dynamic(model, {torch.nn.Linear}, dtype=torch.qint8) Quantization e fa'aaoga ai le dynamic quantization
torch.nn.utils.kldistance(faiaoga_fa'ata'ita'iga, fa'ata'ita'iga_a'oga) Fa'amama le poto fa'aaoga KL divergence
torch.nn.utils.weight_norm(model.fc1) Fa'avasegaina o le mamafa e fa'aaoga ai le mamafa masani
torch.nn.utils.clip_grad_norm_(model.parameters(), 1.0) Fa'asa'o fa'asolo i le fa'aogaina o le clip grad norm
torch.nn.utils.clip_grad_value_(model.parameters(), 1.0) Fa'asa'o fa'asa'o e fa'aaoga ai le kilipa fa'ailoga fa'ailoga
torch.nn.utils.remove_weight_norm(model.fc1) O le mamafa o le ave'esea o le fa'aogaina o le ave'ese le mamafa masani
torch.nn.utils.fuse_conv_bn_eval(model.fc1) Fusi fa'atasi fa'atasi e fa'aaoga ai fuse conv bn eval
torch.nn.utils.fuse_bn_eval(model.fc2) Fusi fa'avasegaina fa'atasi fa'aaoga fuse bn eval
torch.nn.utils.fuse_bn_eval(model.fc1) Fusi fa'avasegaina fa'atasi fa'aaoga fuse bn eval

Va'aiga

{
  "type": "pa",
  "fa'amatalaga": {
    "labels": ["Teuga Fa'ata'ita'i", "Fa'amama'i o le Malamalama", "Quantization"],
    "fa'amaumauga": {
      "label": "Sa'o",
      "fa'amaumauga": [0.9, 0.85, 0.8]
    }
  },
  "filifiliga": {
    "igoa": {
      "fa'aaliga": moni,
      "text": "Faatusatusaga sa'o"
    },
    "talatu'u": {
      "faʻaalia": moni
    }
  }
}

Fa'ai'uga

Ole fa'ata'ita'iga lelei ole fa'ata'ita'iga AI ile fa'ata'ita'iga e mana'omia ai se tu'ufa'atasiga o masini ma polokalame fa'akomepiuta fa'atasi. Fa'ata'ita'iga teuteu, fa'amama malamalama, ma le fa'avasegaina o nisi ia o metotia e mafai ona fa'aogaina e fa'aitiitia ai le lapo'a ma mana'oga fa'akomepiuta o fa'ata'ita'iga AI. E ala i le faʻaogaina o nei metotia, e mafai ai e le au atinaʻe ona fatuina faʻataʻitaʻiga AI e faʻamalieina mo masini mata, faʻatagaina taimi faʻaoga faʻaoga e pei o fale atamai, taʻavale tutoʻatasi, ma masini faʻapisinisi.

Galue i le Lumanai

O galuega i le lumana'i i lenei vaega e aofia ai:

  • Atia'e fou masini-polokalame fa'akomepiuta fa'ata'ita'iga fa'atasi: E mafai e tagata su'esu'e ma tagata atia'e ona su'esu'e auala fou mo le fa'amalieina o fa'ata'ita'iga AI mo masini mata.
  • Fa'alelei fa'ata'ita'iga fa'ata'ita'iga ma fa'amama fa'ata'ita'iga algorithms: Fa'atupuina fa'ata'ita'i fa'ata'ita'iga fa'ata'ita'iga ma fa'amama fa'ata'ita'iga e mafai ona fa'atupuina lelei ma sa'o lelei.
  • Su'esu'eina le fa'aogaina o isi fa'ata'ita'iga AI: O isi fa'ata'ita'iga AI, e pei o la'au fa'ai'uga ma vaomatua fa'afuase'i, e mafai ona su'esu'eina mo le fa'aogaina o masini pito.

E ala i le faʻaauauina o le faʻalauteleina o le faʻaogaina o masini-polokalame faʻapipiʻi faʻatasi, e mafai ona tatou faia ni faʻataʻitaʻiga AI sili atu ona lelei ma aoga mo masini mata, faʻatagaina le tele o faʻaoga ma faʻaoga mataupu.


Have Questions?

Let's Talk

Contact me on LinkedIn