Forskere fortsætter med at udvikle nye modelarkitekturer til almindelige maskinlæringsopgaver (ML). En sådan opgave er billedklassificering, hvor billeder accepteres som input, og modellen forsøger at klassificere billedet som en helhed med objektetiketteoutput. Med mange tilgængelige modeller i dag, der udfører denne billedklassificeringsopgave, kan en ML-praktiker stille spørgsmål som: "Hvilken model skal jeg finjustere og derefter implementere for at opnå den bedste ydeevne på mit datasæt?" Og en ML-forsker kan stille spørgsmål som: "Hvordan kan jeg generere min egen rimelige sammenligning af flere modelarkitekturer mod et specificeret datasæt, mens jeg kontrollerer træningshyperparametre og computerspecifikationer, såsom GPU'er, CPU'er og RAM?" Førstnævnte spørgsmål omhandler modelvalg på tværs af modelarkitekturer, mens sidstnævnte spørgsmål vedrører benchmarking af trænede modeller mod et testdatasæt.
I dette indlæg vil du se, hvordan TensorFlow billedklassificering algoritme af Amazon SageMaker JumpStart kan forenkle de implementeringer, der kræves for at løse disse spørgsmål. Sammen med implementeringsdetaljerne i en tilsvarende eksempel Jupyter notesbog, vil du have værktøjer til rådighed til at udføre modelvalg ved at udforske pareto-grænser, hvor det ikke er muligt at forbedre én præstationsmåling, såsom nøjagtighed, uden at forværre en anden metrik, såsom gennemstrømning.
Løsningsoversigt
Følgende figur illustrerer afvejningen af modelvalg for et stort antal billedklassificeringsmodeller finjusteret på Caltech-256 datasæt, som er et udfordrende sæt af 30,607 billeder fra den virkelige verden, der spænder over 256 objektkategorier. Hvert punkt repræsenterer en enkelt model, punktstørrelser skaleres i forhold til antallet af parametre, der udgør modellen, og punkterne er farvekodede baseret på deres modelarkitektur. For eksempel repræsenterer de lysegrønne punkter EfficientNet-arkitekturen; hvert lysegrønt punkt er en anden konfiguration af denne arkitektur med unikke finjusterede modelydelsesmålinger. Figuren viser eksistensen af en pareto-grænse for modelvalg, hvor højere nøjagtighed udveksles med lavere gennemløb. I sidste ende afhænger valget af en model langs pareto-grænsen, eller sættet af pareto-effektive løsninger, af din modelimplementeringsydelseskrav.
Hvis du observerer testnøjagtighed og tester gennemløbsgrænser af interesse, uddrages sættet af pareto-effektive løsninger på den foregående figur i følgende tabel. Rækker sorteres således, at testgennemløbet stiger, og testnøjagtigheden falder.
Modelnavn | Antal parametre | Testnøjagtighed | Test Top 5-nøjagtighed | Gennemløb (billeder/s) | Varighed pr. epoke(r) |
swin-large-patch4-window12-384 | 195.6M | 96.4 % | 99.5 % | 0.3 | 2278.6 |
swin-large-patch4-window7-224 | 195.4M | 96.1 % | 99.5 % | 1.1 | 698.0 |
efficientnet-v2-billede net21k-ft1k-l | 118.1M | 95.1 % | 99.2 % | 4.5 | 1434.7 |
efficientnet-v2-billede net21k-ft1k-m | 53.5M | 94.8 % | 99.1 % | 8.0 | 769.1 |
efficientnet-v2-billede net21k-m | 53.5M | 93.1 % | 98.5 % | 8.0 | 765.1 |
efficientnet-b5 | 29.0M | 90.8 % | 98.1 % | 9.1 | 668.6 |
efficientnet-v2-billedenet21k-ft1k-b1 | 7.3M | 89.7 % | 97.3 % | 14.6 | 54.3 |
efficientnet-v2-billedenet21k-ft1k-b0 | 6.2M | 89.0 % | 97.0 % | 20.5 | 38.3 |
efficientnet-v2-billedenet21k-b0 | 6.2M | 87.0 % | 95.6 % | 21.5 | 38.2 |
mobilenet-v3-large-100-224 | 4.6M | 84.9 % | 95.4 % | 27.4 | 28.8 |
mobilenet-v3-large-075-224 | 3.1M | 83.3 % | 95.2 % | 30.3 | 26.6 |
mobilenet-v2-100-192 | 2.6M | 80.8 % | 93.5 % | 33.5 | 23.9 |
mobilenet-v2-100-160 | 2.6M | 80.2 % | 93.2 % | 40.0 | 19.6 |
mobilenet-v2-075-160 | 1.7M | 78.2 % | 92.8 % | 41.8 | 19.3 |
mobilenet-v2-075-128 | 1.7M | 76.1 % | 91.1 % | 44.3 | 18.3 |
mobilenet-v1-075-160 | 2.0M | 75.7 % | 91.0 % | 44.5 | 18.2 |
mobilenet-v1-100-128 | 3.5M | 75.1 % | 90.7 % | 47.4 | 17.4 |
mobilenet-v1-075-128 | 2.0M | 73.2 % | 90.0 % | 48.9 | 16.8 |
mobilenet-v2-075-96 | 1.7M | 71.9 % | 88.5 % | 49.4 | 16.6 |
mobilenet-v2-035-96 | 0.7M | 63.7 % | 83.1 % | 50.4 | 16.3 |
mobilenet-v1-025-128 | 0.3M | 59.0 % | 80.7 % | 50.8 | 16.2 |
Dette indlæg giver detaljer om, hvordan man implementerer i stor skala Amazon SageMaker benchmarking og modelvalgsopgaver. Først introducerer vi JumpStart og de indbyggede TensorFlow-billedklassificeringsalgoritmer. Vi diskuterer derefter implementeringsovervejelser på højt niveau, såsom JumpStart-hyperparameterkonfigurationer, metrisk udtræk fra Amazon CloudWatch-logfiler, og lancering af asynkrone hyperparameterjusteringsjob. Til sidst dækker vi implementeringsmiljøet og parametriseringen, der fører til de pareto-effektive løsninger i den foregående tabel og figur.
Introduktion til JumpStart TensorFlow-billedklassificering
JumpStart leverer finjustering og implementering med et enkelt klik af en lang række præ-trænede modeller på tværs af populære ML-opgaver, samt et udvalg af end-to-end-løsninger, der løser almindelige forretningsproblemer. Disse funktioner fjerner de tunge løft fra hvert trin i ML-processen, hvilket gør det nemmere at udvikle højkvalitetsmodeller og reducerer tiden til implementering. Det JumpStart API'er giver dig mulighed for programmæssigt at implementere og finjustere et stort udvalg af forudtrænede modeller på dine egne datasæt.
JumpStart-modelhubben giver adgang til et stort antal TensorFlow billedklassificeringsmodeller der muliggør overførselsindlæring og finjustering på brugerdefinerede datasæt. Når dette skrives, indeholder JumpStart-modelhubben 135 TensorFlow-billedklassificeringsmodeller på tværs af en række populære modelarkitekturer fra TensorFlow Hub, for at inkludere resterende netværk (ResNet), MobileNet, EfficientNet, Inception, Neural Architecture Search Networks (NASNet), Stor overførsel (BiT), skiftet vindue (Svin) transformere, klasseopmærksomhed i billedtransformere (CaiT), og dataeffektive billedtransformere (DeiT).
Meget forskellige interne strukturer omfatter hver modelarkitektur. For eksempel bruger ResNet-modeller overspringsforbindelser for at give mulighed for væsentligt dybere netværk, hvorimod transformerbaserede modeller bruger selvopmærksomhedsmekanismer, der eliminerer den iboende lokalitet af foldningsoperationer til fordel for mere globale modtagelige felter. Ud over de forskellige funktionssæt, som disse forskellige strukturer giver, har hver modelarkitektur adskillige konfigurationer, der justerer modelstørrelsen, formen og kompleksiteten i den pågældende arkitektur. Dette resulterer i hundredvis af unikke billedklassificeringsmodeller, der er tilgængelige på JumpStart-modelhubben. Kombineret med indbygget overførselsindlæring og inferensscripts, der omfatter mange SageMaker-funktioner, er JumpStart API et godt startpunkt for ML-udøvere til hurtigt at komme i gang med træning og implementering af modeller.
Der henvises til Overfør læring til TensorFlow-billedklassificeringsmodeller i Amazon SageMaker og det følgende eksempel notesbog for at lære mere om SageMaker TensorFlow-billedklassificeringen i mere dybde, herunder hvordan man kører inferens på en præ-trænet model samt finjusterer den præ-trænede model på et brugerdefineret datasæt.
Overvejelser om valg af model i stor skala
Modelvalg er processen med at vælge den bedste model fra et sæt kandidatmodeller. Denne proces kan anvendes på tværs af modeller af samme type med forskellige parametervægte og på tværs af modeller af forskellige typer. Eksempler på modelvalg på tværs af modeller af samme type omfatter tilpasning af den samme model med forskellige hyperparametre (for eksempel indlæringshastighed) og tidlig stop for at forhindre overtilpasning af modelvægte til togdatasættet. Modelvalg på tværs af modeller af forskellige typer omfatter valg af den bedste modelarkitektur (f.eks. Swin vs. MobileNet) og valg af de bedste modelkonfigurationer inden for en enkelt modelarkitektur (f.eks. mobilenet-v1-025-128
vs mobilenet-v3-large-100-224
).
Overvejelserne skitseret i dette afsnit muliggør alle disse modeludvælgelsesprocesser på et valideringsdatasæt.
Vælg hyperparameterkonfigurationer
TensorFlow billedklassificering i JumpStart har et stort antal tilgængelige hyperparametre der kan justere overførselsindlæringsscriptadfærden ensartet for alle modelarkitekturer. Disse hyperparametre vedrører dataforøgelse og -forbehandling, optimeringsspecifikation, overfitting-kontroller og lagindikatorer, der kan trænes. Du opfordres til at justere standardværdierne for disse hyperparametre efter behov for din applikation:
For denne analyse og den tilhørende notesbog er alle hyperparametre indstillet til standardværdier undtagen indlæringshastighed, antal epoker og specifikationer for tidlig stop. Indlæringshastighed justeres som en kategorisk parameter ved SageMaker automatisk model tuning job. Fordi hver model har unikke standard hyperparameterværdier, inkluderer den diskrete liste over mulige indlæringshastigheder standardindlæringshastigheden såvel som en femtedel af standardindlæringshastigheden. Dette starter to træningsjob for et enkelt hyperparameterjusteringsjob, og det træningsjob med den bedste rapporterede ydeevne på valideringsdatasættet vælges. Fordi antallet af epoker er sat til 10, hvilket er større end standard hyperparameterindstillingen, svarer det valgte bedste træningsjob ikke altid til standardindlæringshastigheden. Endelig anvendes et tidligt stopkriterium med en tålmodighed, eller antallet af epoker til at fortsætte træningen uden forbedring, på tre epoker.
En standard hyperparameterindstilling af særlig betydning er train_only_on_top_layer
, hvor, hvis indstillet til True
, er modellens funktionsekstraktionslag ikke finjusteret på det medfølgende træningsdatasæt. Optimizeren træner kun parametre i det øverste fuldt forbundne klassifikationslag med outputdimensionalitet svarende til antallet af klasseetiketter i datasættet. Som standard er denne hyperparameter indstillet til True
, som er en indstilling målrettet til transferlæring på små datasæt. Du har muligvis et brugerdefineret datasæt, hvor funktionsudtrækningen fra fortræningen på ImageNet-datasættet ikke er tilstrækkelig. I disse tilfælde skal du indstille train_only_on_top_layer
til False
. Selvom denne indstilling vil øge træningstiden, vil du udtrække mere meningsfulde funktioner til dit problem af interesse og derved øge nøjagtigheden.
Udtræk målinger fra CloudWatch-logfiler
JumpStart TensorFlow billedklassificeringsalgoritmen logger pålideligt en række metrikker under træning, som er tilgængelige for SageMaker Estimator
og HyperparameterTuner-objekter. Konstruktøren af en SageMaker Estimator
har en metric_definitions
søgeordsargument, som kan bruges til at evaluere træningsjobbet ved at levere en liste over ordbøger med to nøgler: Navn på metrikkens navn og Regex
for det regulære udtryk, der bruges til at udtrække metrikken fra logfilerne. Den medfølgende notesbog viser implementeringsdetaljerne. Følgende tabel viser de tilgængelige metrics og tilknyttede regulære udtryk for alle JumpStart TensorFlow-billedklassificeringsmodeller.
Metrisk navn | Regulært udtryk |
antal parametre | "- Antal parametre: ([0-9\.]+)" |
antal træningsbare parametre | "- Antal parametre, der kan trænes: ([0-9\.]+)" |
antal ikke-trænbare parametre | "- Antal ikke-træningsbare parametre: ([0-9\.]+)" |
metrisk togdatasæt | f"- {metrisk}: ([0-9\.]+)" |
valideringsdatasætmetrik | f"- val_{metrisk}: ([0-9\.]+)" |
testdatasæt-metrik | f"- Test {metrisk}: ([0-9\.]+)" |
togets varighed | "- Samlet træningsvarighed: ([0-9\.]+)" |
togets varighed pr. epoke | "- Gennemsnitlig træningsvarighed pr. epoke: ([0-9\.]+)" |
test evaluering latens | "- Testevalueringsforsinkelse: ([0-9\.]+)" |
testlatens pr. prøve | "- Gennemsnitlig testforsinkelse pr. prøve: ([0-9\.]+)" |
test gennemløb | "- Gennemsnitlig testgennemstrømning: ([0-9\.]+)" |
Det indbyggede overførselsindlæringsscript giver en række forskellige trænings-, validerings- og testdatasætmetrikker inden for disse definitioner, som repræsenteret af f-strengs erstatningsværdier. De nøjagtige tilgængelige metrics varierer afhængigt af den type klassificering, der udføres. Alle kompilerede modeller har en loss
metrisk, som er repræsenteret ved et krydsentropitab for enten et binært eller kategorisk klassifikationsproblem. Førstnævnte bruges, når der er én klasseetiket; sidstnævnte bruges, hvis der er to eller flere klassemærker. Hvis der kun er en enkelt klasseetiket, beregnes, logges og udtrækkes følgende metrics via f-strengens regulære udtryk i den foregående tabel: antal sande positive (true_pos
), antal falske positive (false_pos
), antal sande negative (true_neg
), antal falske negativer (false_neg
), precision
, recall
, område under modtagerens driftskarakteristik (ROC) kurve (auc
), og areal under præcisionsgenkaldelseskurven (PR) (prc
). Tilsvarende, hvis der er seks eller flere klasseetiketter, vil en top-5 nøjagtighedsmetrik (top_5_accuracy
) kan også beregnes, logges og uddrages via de foregående regulære udtryk.
Under træning, metrics specificeret til en SageMaker Estimator
udsendes til CloudWatch-logfiler. Når uddannelsen er afsluttet, kan du påberåbe dig SageMaker DescribeTrainingJob API og inspicere FinalMetricDataList
indtast JSON-svaret:
Denne API kræver kun jobnavnet, der skal angives til forespørgslen, så når det er afsluttet, kan metrics opnås i fremtidige analyser, så længe træningsjobnavnet er korrekt logget og kan gendannes. Til denne modelvalgsopgave gemmes jobnavne til hyperparametertuning, og efterfølgende analyser genføjes en HyperparameterTuner
objekt givet tuning jobnavnet, udtræk det bedste træningsjobnavn fra den vedhæftede hyperparameter tuner, og start derefter DescribeTrainingJob
API som beskrevet tidligere for at opnå målinger forbundet med det bedste træningsjob.
Start asynkrone hyperparameterjusteringsjob
Der henvises til den tilsvarende notesbog for implementeringsdetaljer om asynkron lancering af hyperparameterjusteringsjob, som bruger Python-standardbibliotekets samtidige futures modul, en grænseflade på højt niveau til asynkront at køre callables. Adskillige SageMaker-relaterede overvejelser er implementeret i denne løsning:
- Hver AWS-konto er tilknyttet SageMaker servicekvoter. Du bør se dine nuværende grænser for fuldt ud at udnytte dine ressourcer og potentielt anmode om ressourcegrænseforhøjelser efter behov.
- Hyppige API-kald til at skabe mange samtidige hyperparameterjusteringsjob kan evt overskride Python SDK-hastigheden og smide drosselundtagelser. En løsning på dette er at oprette en SageMaker Boto3-klient med en brugerdefineret genforsøgskonfiguration.
- Hvad sker der, hvis dit script støder på en fejl, eller scriptet stoppes før færdiggørelse? For et så stort modeludvalg eller benchmarking-undersøgelse kan du logge tuningjobnavne og levere bekvemmelighedsfunktioner til vedhæft hyperparameter tuning job igen der allerede eksisterer:
Analyse detaljer og diskussion
Analysen i dette indlæg udfører transferlæring til model-id'er i JumpStart TensorFlow-billedklassificeringsalgoritmen på Caltech-256-datasættet. Alle træningsjob blev udført på SageMaker træningsinstansen ml.g4dn.xlarge, som indeholder en enkelt NVIDIA T4 GPU.
Testdatasættet evalueres på træningsinstansen ved afslutningen af træningen. Modelvalg udføres før testdatasættets evaluering for at indstille modelvægte til epoken med den bedste valideringssætydeevne. Testgennemløbet er ikke optimeret: Datasættets batchstørrelse er indstillet til standard træningshyperparameter-batchstørrelsen, som ikke er justeret for at maksimere GPU-hukommelsesbrugen; rapporteret testgennemløb inkluderer dataindlæsningstid, fordi datasættet ikke er pre-cache; og distribueret inferens på tværs af flere GPU'er bruges ikke. Af disse grunde er denne gennemstrømning en god relativ måling, men den faktiske gennemstrømning vil i høj grad afhænge af dine slutpunktsimplementeringskonfigurationer for den trænede model.
Selvom JumpStart-modelhubben indeholder mange billedklassificeringsarkitekturtyper, domineres denne pareto-grænse af udvalgte Swin-, EfficientNet- og MobileNet-modeller. Swin-modeller er større og relativt mere nøjagtige, hvorimod MobileNet-modeller er mindre, relativt mindre nøjagtige og egnede til ressourcebegrænsninger på mobile enheder. Det er vigtigt at bemærke, at denne grænse er betinget af en række faktorer, herunder det nøjagtige datasæt, der anvendes, og de valgte finjusterende hyperparametre. Du kan opleve, at dit brugerdefinerede datasæt producerer et andet sæt pareto-effektive løsninger, og du kan ønske dig længere træningstider med forskellige hyperparametre, såsom mere dataforøgelse eller finjustering af mere end blot det øverste klassifikationslag i modellen.
Konklusion
I dette indlæg viste vi, hvordan man kører modeludvælgelse i stor skala eller benchmarking-opgaver ved hjælp af JumpStart-modelhubben. Denne løsning kan hjælpe dig med at vælge den bedste model til dine behov. Vi opfordrer dig til at prøve og udforske dette løsninger på dit eget datasæt.
Referencer
Mere information er tilgængelig på følgende ressourcer:
Om forfatterne
Dr. Kyle Ulrich er en anvendt videnskabsmand med Amazon SageMaker indbyggede algoritmer hold. Hans forskningsinteresser omfatter skalerbare maskinlæringsalgoritmer, computervision, tidsserier, Bayesianske ikke-parametriske og Gaussiske processer. Hans ph.d. er fra Duke University, og han har udgivet artikler i NeurIPS, Cell og Neuron.
Dr. Ashish Khetan er Senior Applied Scientist med Amazon SageMaker indbyggede algoritmer og hjælper med at udvikle maskinlæringsalgoritmer. Han fik sin ph.d. fra University of Illinois Urbana Champaign. Han er en aktiv forsker i maskinlæring og statistisk inferens og har publiceret mange artikler i NeurIPS, ICML, ICLR, JMLR, ACL og EMNLP konferencer.
- SEO Powered Content & PR Distribution. Bliv forstærket i dag.
- Platoblokkæde. Web3 Metaverse Intelligence. Viden forstærket. Adgang her.
- Kilde: https://aws.amazon.com/blogs/machine-learning/image-classification-model-selection-using-amazon-sagemaker-jumpstart/
- 10
- 100
- 7
- 9
- a
- Om
- adgang
- tilgængelig
- Konto
- nøjagtighed
- præcis
- opnå
- tværs
- aktiv
- Desuden
- adresse
- adresser
- Justeret
- Tilknyttet
- mod
- algoritme
- algoritmer
- Alle
- allerede
- Skønt
- altid
- Amazon
- Amazon SageMaker
- Amazon SageMaker JumpStart
- Analyser
- analyse
- ,
- En anden
- api
- Anvendelse
- anvendt
- passende
- arkitektur
- OMRÅDE
- argument
- forbundet
- vedhæfte
- Forsøg på
- Automatisk Ur
- til rådighed
- gennemsnit
- AWS
- baseret
- Bayesiansk
- fordi
- før
- være
- benchmarking
- BEDSTE
- Big
- indbygget
- virksomhed
- Opkald
- kandidat
- tilfælde
- kategorier
- udfordrende
- karakteristisk
- Vælg
- klasse
- klassificering
- Klassificere
- kunde
- kombineret
- Fælles
- sammenligning
- fuldføre
- Afsluttet
- færdiggørelse
- kompleksitet
- computer
- Computer Vision
- Bekymringer
- konferencer
- Konfiguration
- tilsluttet
- Tilslutninger
- overvejelser
- begrænsninger
- indeholder
- fortsæt
- styring
- kontrol
- bekvemmelighed
- Tilsvarende
- dæksel
- skabe
- Nuværende
- skøger
- skik
- data
- datasæt
- dybere
- Standard
- afhænger
- indsætte
- implementering
- implementering
- dybde
- beskrevet
- beskrivelse
- detaljer
- udvikle
- Enheder
- forskellige
- diskutere
- distribueret
- forskelligartede
- Er ikke
- Duke
- hertug universitet
- i løbet af
- hver
- tidligere
- Tidligt
- lettere
- effektiv
- enten
- eliminere
- muliggøre
- tilskynde
- tilskyndes
- ende til ende
- Endpoint
- Miljø
- epoke
- epoker
- fejl
- evaluere
- evalueret
- evaluering
- eksempel
- eksempler
- Undtagen
- udforske
- Udforskning
- udtryk
- ekstrakt
- faktorer
- retfærdig
- favorisere
- Feature
- Funktionalitet
- Fields
- Figur
- Endelig
- Finde
- Fornavn
- montering
- efter
- Tidligere
- fra
- Frontier
- Grænser
- fuldt ud
- funktioner
- fremtiden
- Futures
- generere
- få
- given
- Global
- godt
- GPU
- GPU'er
- stor
- større
- Grøn
- sker
- stærkt
- hjælpe
- hjælper
- højt niveau
- høj kvalitet
- højere
- Hvordan
- How To
- HTML
- HTTPS
- Hub
- Hundreder
- Tuning af hyperparameter
- Illinois
- billede
- Billedklassificering
- billeder
- gennemføre
- implementering
- implementeret
- betydning
- vigtigt
- forbedring
- in
- omfatter
- omfatter
- Herunder
- Forøg
- Stigninger
- stigende
- Indikatorer
- oplysninger
- indgang
- instans
- interesse
- interesser
- grænseflade
- interne
- iboende
- indføre
- IT
- Job
- Karriere
- json
- Nøgle
- nøgler
- etiket
- Etiketter
- stor
- storstilet
- større
- Latency
- lanceringer
- lancering
- lag
- lag
- førende
- LÆR
- læring
- løft
- lys
- GRÆNSE
- grænser
- Liste
- Lister
- lastning
- Lang
- længere
- off
- maskine
- machine learning
- Making
- mange
- Maksimer
- meningsfuld
- målinger
- Hukommelse
- metrisk
- Metrics
- ML
- Mobil
- mobilenheder
- model
- modeller
- Moduler
- mere
- flere
- navn
- navne
- nødvendig
- behov
- net
- Ny
- notesbog
- nummer
- Nvidia
- objekt
- objekter
- observere
- opnå
- opnået
- ONE
- drift
- Produktion
- optimeret
- skitseret
- egen
- papirer
- parameter
- parametre
- særlig
- Tålmodighed
- Udfør
- ydeevne
- udfører
- plato
- Platon Data Intelligence
- PlatoData
- Punkt
- punkter
- Populær
- mulig
- Indlæg
- potentielt
- pr
- forhindre
- Forud
- Problem
- problemer
- behandle
- Processer
- give
- forudsat
- giver
- leverer
- offentliggjort
- Python
- spørgsmål
- Spørgsmål
- hurtigt
- RAM
- Sats
- priser
- virkelige verden
- årsager
- reducere
- fast
- relativt
- Fjern
- rapporteret
- repræsentere
- repræsenteret
- repræsenterer
- anmode
- påkrævet
- Krav
- Kræver
- forskning
- forsker
- Løsning
- ressource
- Ressourcer
- svar
- Resultater
- Kør
- kører
- sagemaker
- samme
- skalerbar
- Videnskabsmand
- scripts
- SDK
- Søg
- Sektion
- valgt
- udvælgelse
- valg
- senior
- Series
- tjeneste
- Session
- sæt
- sæt
- indstilling
- flere
- Shape
- bør
- Shows
- Tilsvarende
- forenkle
- enkelt
- SIX
- Størrelse
- størrelser
- lille
- mindre
- So
- løsninger
- Løsninger
- SOLVE
- specifikation
- specifikationer
- specificeret
- standard
- påbegyndt
- statistiske
- Trin
- stoppet
- standsning
- opbevaret
- Studere
- efterfølgende
- sådan
- tilstrækkeligt
- egnede
- bord
- målrettet
- Opgaver
- opgaver
- hold
- tensorflow
- prøve
- deres
- derved
- tre
- kapacitet
- tid
- Tidsserier
- gange
- til
- i dag
- sammen
- værktøjer
- top
- top 5
- I alt
- Tog
- uddannet
- Kurser
- overførsel
- transformers
- sand
- typer
- Ultimativt
- under
- enestående
- universitet
- Brug
- brug
- udnytte
- udnyttet
- validering
- Værdier
- række
- Vast
- via
- Specifikation
- vision
- som
- mens
- Hele
- bred
- vilje
- inden for
- uden
- ville
- skrivning
- Du
- Din
- zephyrnet