Contents
Naarmate de behoefte aan kunstmatige intelligentie steeds gebruikelijker wordt en de technologische behoeften geavanceerder worden, willen bedrijven edge-AI in hun producten vinden het vaak een lastige uitdaging. Maar wat maakt het zo moeilijk en welke oplossingen zijn er om dit probleem op te lossen?
Misschien wel het grootste probleem waarmee bedrijven worden geconfronteerd bij het implementeren van edge AI is dat de meeste bedrijven niet de middelen in huis hebben om deze geavanceerde, snel veranderende technologieën te ontwikkelen. Gebrek aan opgeleid personeel en weinig bekendheid met ontwerpstroom leidt vaak tot vertraagde tijdlijnen en buitensporige kosten om teamleden op te leiden. Bovendien zijn er zoveel keuzes, dat het onmogelijk is voor ingenieurs om elke optie te verkennen. En aangezien elke toepassing anders is, is het misschien niet gepast om oplossingen te repliceren op basis van eerdere implementaties. Door echter een paar belangrijke vragen te stellen en de juiste partner te vinden om uw project van idee naar silicium te brengen, kan elke onderneming een routekaart ontwikkelen om edge AI met succes in hun apparaten te implementeren.
Use cases en haalbaarheid definiëren
Het is belangrijk om use cases te definiëren voordat u implementatie-opties onderzoekt. De eerste vraag die elk bedrijf zou moeten stellen, is: wat zou de klant echt nuttig vinden? Nadat de functionaliteit van de klant is bepaald, moet uw team doelen stellen voor ontwikkeling en productiekosten, samen met de acceptabele time-to-market.
Nu komt het uitdagende deel: het nemen van technologiegerelateerde beslissingen. Is het mogelijk om die functionaliteit te implementeren binnen de afwegingen van kosten, tijd, kracht en ruimte waarmee u te maken hebt? Werken met een ervaren partner/consultant of voortbouwen op interne ervaring is in dit stadium van cruciaal belang. U zult geen perfecte gegevens hebben om uw beslissing op te baseren, dus daadwerkelijke ervaring is essentieel bij het maken van deze beoordelingen.
Technologiekeuze
Er zijn verschillende keuzes die een team kan maken om de gewenste functionaliteit van de klant in het product te implementeren. Afhankelijk van uw beschikbare middelen en ontwikkeltijd, zijn hier enkele van de keuzes die een team zou kunnen overwegen:
- Software alleen op de bestaande ingebouwde processor – Dit kan heel voorzichtig zijn gecodeerde modellen om de gewenste prestaties te bereiken. Functionaliteit kan beperkt zijn, maar het is over het algemeen de goedkoopste oplossing als deze werkt. Omdat dit een softwareoplossing is, kunnen upgrades of bugfixes gemakkelijker worden aangepakt.
- Upgrade/vervang de bestaande processor– Dit kan een geweldige oplossing zijn als je het kunt laten werken en de bestaande codebasis kunt behouden, en net als de bovenstaande oplossing alleen software is en gemakkelijk kan worden gerepareerd of geüpgraded. Dit kan echter vaak een project op een glibberig pad brengen dat uitgebreide power- en prestatie-evaluatie vereist. Bedrijven kunnen er beter aan doen een neuraal netwerk (NN) of vergelijkbare accelerator toe te voegen.
- Voeg een vaste neurale netwerkversneller toe– Dit is een optimale keuze als er een goede match is met de behoeften van de toepassing, aangezien evaluatie en ontwerp misschien niet al te moeilijk zijn. Het zou heel goed kunnen zorgen voor uitstekende compromissen tussen vermogen en prestaties tegen een zeer redelijke prijs.
- FPGA – Deze oplossing is flexibel en kan worden geüpgraded, maar gaat meestal gepaard met hoge kosten en een hoog vermogen voor de eindproduct. Zelden is dit een goede keuze voor “edge” producten.
- Toegewijde SoC – Vaak is dit de optimale keuze voor producten met een hoog volume, lage kosten en laag stroomverbruik waarbij de gebruikssituaties duidelijk zijn gedefinieerd.
Hoe de juiste keuze te evalueren
Het kan moeilijk zijn om de juiste keuze te evalueren zonder de expertise van getrainde professionals in de edge AI-chipruimte. Evaluatie van elke optie kan vaak lang duren en vereist uitgebreide kennis. Voor het evalueren van bijvoorbeeld een vaste versneller versus een FPGA-implementatie kunnen technici met verschillende vaardigheden nodig zijn. Met zoveel leveranciers en oplossingen die tegenstrijdige beweringen doen, kan het nemen van basisbeslissingen voor de meeste ondernemingen overweldigend zijn.
Een van de belangrijkste stappen die men kan nemen, is het vinden van de juiste partner die kan helpen bij het evalueren van de technologische compromissen en het bedrijf van de eerste onderzoeks- en evaluatiefase naar het ontwerp en de implementatie van de oplossing kan brengen. Blijf ook niet hangen bij het vinden van de oplossing met de “optimale” kracht/prestaties. Als u een oplossing kunt vinden die werkt en over voldoende software en technische ondersteuning beschikt, is dat waarschijnlijk uw beste keuze. Laat je niet betrappen op het najagen van specificaties.
De oplossing bouwen
Zodra de functionaliteit en technologie zijn gekozen, is de volgende stap de implementatie. Vaak ligt de focus op de implementatie van een neuraal netwerkmodel, maar bedrijven hebben ook te maken met de implementatie van logica (software/hardware) om de pijplijn van sensor tot uiteindelijke output af te handelen, wat bij elke stap unieke algoritmen vereist.
Vragen die naar voren kunnen komen, zijn onder meer:
- Wat voor soort signaalconditionering/filtering heb ik nodig voordat ik de gegevens doorgeef aan een NN-versneller?
- Welk NN-model moet ik gebruiken? Is er een bestaand model voor mijn technologieselectie? Welke versie van welk model past het beste in mijn applicatie?
- Hoe train ik mijn model? Waar haal ik mijn gegevens vandaan en welke vooroordelen zijn in die gegevens ingebouwd? Welke hoeveelheid gegevens heb ik nodig?
- Wat zijn de kosten en beschikbaarheid van de verwerkingskracht voor trainingsmodellen? Trainen we in de cloud of op lokale servers?
- Welk nauwkeurigheidsniveau is voldoende? Is het beter om valse positieven of valse negatieven te hebben?
- Welke nabewerking is vereist en kan ik die werklast aan?
Laatste advies
Met zoveel leveranciers die tegenstrijdige claims uiten, is het belangrijk voor bedrijven die edge AI willen implementeren, zich niet te concentreren op het vinden van de “beste TOPS” of de “snelste” oplossing, aangezien dit ongrijpbare doelen zijn. De beste manier om veel van deze vragen over functionaliteit, technologiekeuze en implementatie te beantwoorden, is door samen te werken met een persoon of organisatie die “er is geweest, dat heeft gedaan”. Iemand met de ervaring om snel potentiële use-cases, technische oplossingen en leveranciersaanbiedingen te evalueren om u te helpen uw keuzes zo snel en nauwkeurig mogelijk te beperken. Richt u op leveranciers die de meest complete oplossing hebben, met zowel de engine om te implementeren, maar ook modellen, algoritmen en zelfs bestaande gegevens om u te helpen bij uw unieke gebruiksscenario en een solide proof of concept te creëren.
Douglas Fairbairn
Directeur bedrijfsontwikkeling, MegaChips