Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 11241|Odpowiedź: 0

Wprowadzenie do frameworka Darknet

[Skopiuj link]
Opublikowano 30.01.2019 12:51:44 | | | |
Do ponownego trenowania systemów end-to-end dla mimiki


Załącznik 1:

Analiza kodu źródłowego Darknet Deep Learning Framework: Szczegółowy komentarz chiński, obejmujący zasady frameworka i analizę składni implementacyjnej

https://github.com/hgpvision/darknet

darknet to stosunkowo lekki, otwartoźródłowy framework deep learning, oparty całkowicie na C i CUDA, jego główne funkcje są łatwe w instalacji, brak zależności (można użyć OpenCV), bardzo przenośny i obsługuje zarówno metody obliczeniowe CPU, jak i GPU.



W porównaniu do TensorFlow, darknet nie jest zbyt potężny, ale to również zaleta darknetu:

  • darknet jest całkowicie zaimplementowany w języku C, bez żadnych zależności, oczywiście można używać OpenCV, ale tylko do wyświetlania obrazów, dla lepszej wizualizacji;
  • darknet obsługuje CPU (więc nie ma znaczenia, czy nie masz GPU) i GPU (CUDA/cuDNN, oczywiście lepiej używać GPU);
  • To właśnie dlatego, że jest stosunkowo lekki i nie posiada potężnego API takiego jak TensorFlow, więc uważam, że ma inny rodzaj elastyczności, który nadaje się do badania podstaw i można go wygodniej ulepszać i rozszerzać od podstaw.
  • Istnieją podobieństwa między wdrożeniem darknetu a wdrożeniem caffe, a ja znam darknet i uważam, że warto zacząć od caffe.





Załącznik 2:

Autor: Użytkownik Zhihu
Łącze:https://www.zhihu.com/question/51747665/answer/145607615
Źródło: Zhihu
Prawa autorskie należą do autora. W przypadku komercyjnych przedruków prosimy o kontakt z autorem w celu uzyskania autorstwa, a w przypadku niekomercyjnych przedruków prosimy o podanie źródła.

Trzy najważniejsze definicje struktur w Darknecie to network_state, sieć i warstwa; Nowa wersja network_state została zintegrowana z siecią.

Kod może najpierw zignorować część GPU, a różne typy warstw sieciowych definiują reguły wykonania tego typu poprzez wskaźniki funkcji do przodu i wstecz oraz aktualizacje na warstwie. Na przykład istnieją trzy metody dla warstw połączonych, takie jak forward_connected_layer backward_connected_layer update_connected_layer warstwa gru itd.;

Operacje atomowe są dostępne tylko w blas.c i gemm.c, operacje sieciowe w network.c, a najważniejsze to train_network_datum, train_networks, train_network_batch i network_predict;

train_network_datum to float_pair używany do danych wejściowych, czyli par float *x i float *y;

train_networks jest trenowany w network_kernel.cu w trybie współbieżnego wątkowania, a parametrem są dane;

Po pierwsze, darknet jest jednowątkowy w trybie CPU, a w trybie grafiki multi-GPU train_networks obsługuje uruchamianie wielu kart, a to także wejście do transformacji dystrybucji multi-host darknet, gdzie można zobaczyć scalanie i skalowanie wytrenowanych danych wagowych.

train_network_datum Wykonaj forward_network { warstwowo forward network } backward_network { warstwowo odwrócona sieć } i wykonaj update_network (,,, szybkość, pęd, spadek względem liczby podziałów (*net.seen %podziałów) jest spełniony;

Dla przetwarzania profilu sieciowego zdefiniowanego przez użytkownika w parse_network_cfg wyniki treningu są odczytywane przez load_weights

To jest kręgosłup.

Jeśli musisz radzić sobie ze źródłami danych o specjalnych potrzebach, musisz zacząć na data.c.

Dla profilu CFG regulacja ostrości (oczywiście wszystkie parametry są istotne, mogą wymagać regulacji) oraz globalny parametr ogniska podczas treningu: pęd zaniku learning_rate Te trzy są powiązane z prędkością zbieżności. Polityka to polityka wag, wejścia partiowe (i powiązane podziały) są powiązane z wymiarem przepustowości danych, a najnowsza wersja wydaje się zawierać poprawki w wyprowadzkach.







Poprzedni:Prosty tutorial mockjs
Następny:.NET core FileProvider odczytuje pliki katalogów
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com