Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 11241|Svar: 0

Introduktion til Darknet-rammen

[Kopier link]
Opslået på 30/01/2019 12.51.44 | | | |
Til omtræning af end-to-end-systemer til ansigtsudtryk


Bilag 1:

Darknet Deep Learning Framework Source Code Analysis: Detaljeret kinesisk kommentar, der dækker rammeværkets principper og analyse af implementeringssyntaksen

https://github.com/hgpvision/darknet

darknet er et relativt letvægts open source deep learning-framework baseret udelukkende på C og CUDA, dets hovedfunktioner er nemme at installere, ingen afhængigheder (OpenCV kan bruges), meget bærbart og understøtter både CPU- og GPU-beregningsmetoder.



Sammenlignet med TensorFlow er darknet ikke så kraftfuldt, men det er også en fordel ved darknet:

  • darknet er fuldstændig implementeret i C-sproget, uden nogen afhængigheder, selvfølgelig kan du bruge OpenCV, men kun til at vise billeder for bedre visualisering;
  • darknet understøtter CPU (så det er ligegyldigt, hvis du ikke har et grafikkort) og grafikkort (CUDA/cuDNN, selvfølgelig er det bedre at bruge grafikkort);
  • Det er netop fordi det er relativt let og ikke har et kraftfuldt API som TensorFlow, så jeg føler, at det har en anden form for fleksibilitet, som egner sig til at studere det underliggende og kan forbedres og udvides fra bunden mere bekvemt.
  • Der er ligheder mellem implementeringen af darknet og implementeringen af caffe, og jeg er bekendt med darknet og mener, at det er nyttigt at komme i gang med caffe.





Bilag 2:

Forfatter: Zhihu User
Sammenkæde:https://www.zhihu.com/question/51747665/answer/145607615
Kilde: Zhihu
Ophavsretten tilhører forfatteren. For kommercielle genoptryk bedes du kontakte forfatteren for tilladelse, og for ikke-kommercielle genoptryk bedes du angive kilden.

De tre vigtigste strukturdefinitioner i Darknet er network_state, netværk og lag; Den nye version network_state er blevet integreret i netværket.

Koden kan først ignorere GPU-delen, og forskellige typer netværkslag definerer eksekveringsreglerne for denne type via funktionspegerne fremad bagud og opdaterer i laget. For eksempel findes der tre metoder for sammenhængende lag, såsom forward_connected_layer backward_connected_layer update_connected_layer gru-lag osv.;

Atomare operationer findes kun i blas.c og gemm.c, netværksoperationer er i network.c, og de vigtigste er train_network_datum, train_networks, train_network_batch og network_predict;

train_network_datum er den float_pair, der bruges til inputdata, det vil sige flydende *x og flydende *y-par;

train_networks trænes i network_kernel.cu i en samtidig tråding-tilstand, og parameteren er data;

For det første er darknet single-threaded i CPU-tilstand, og i multi-GPU grafiktilstand understøtter det train_networks multi-card kørsel, og dette er også indgangen til at transformere distributionen af multi-host darknet-operationen, hvor du kan se de trænede vægtdata smelte sammen og skalere.

train_network_datum Udfør forward_network { lagvis fremadrettet netværk } backward_network { lagvis omvendt netværk }, og udfør en update_network (,,, hastighed, momentum, henfald under antallet af gange (*net.seen %underdivisioner) er opfyldt;

For brugerdefineret netværksprofilbehandling i parse_network_cfg læses træningsresultaterne igennem load_weights

Det er rygraden.

Hvis du skal håndtere datakilder med særlige behov, skal du henvise til data.c for at komme i gang.

For CFG-profilen er fokusjusteringen (selvfølgelig er alle parametre vigtige, kan det være nødvendigt at justere) og den globale parameter for fokus under træning: decay momentum learning_rate Disse tre er relateret til konvergenshastigheden. Politikken er vægtpolitikken, inputbatch (og relaterede underopdelinger) udløsninger er relateret til datagennemstrømningsdimensionen, og den nyeste version ser ud til at have korrektioner her i udløsningerne.







Tidligere:mockjs simple tutorial
Næste:.net core FileProvider læser mappefiler
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com