Szukaj…


Uwagi

Użytkownik caffe wysyła instrukcje dotyczące wykonywania określonych operacji na obiektach caffe. Obiekty te współdziałają ze sobą na podstawie ich specyfikacji projektowych i przeprowadzają operacje. Jest to podstawowa zasada paradygmatu OOP.

Chociaż istnieje wiele typów obiektów caffe (lub klas C ++), na początek podstawowe zrozumienie koncentrujemy się na 4 ważnych obiektach caffe. Naszym celem na tym etapie jest po prostu obserwowanie interakcji między tymi obiektami na wysoce abstrakcyjnym poziomie, na którym konkretne szczegóły dotyczące implementacji i projektowania są zamglone, a zamiast tego koncentruje się na widoku z lotu ptaka.

4 podstawowe obiekty caffe to:

  • Solver
  • Netto
  • Warstwa
  • Kropelka

Bardzo podstawowe wprowadzenie i spojrzenie z lotu ptaka na ich rolę w pracy z kawą przedstawiono w zwięzłych punktach w sekcji przykładów.

Po przeczytaniu i zapoznaniu się z podstawowymi zasadami interakcji tych obiektów z kofeiną, o każdym typie obiektu można przeczytać szczegółowo w dedykowanych tematach.

Jak te obiekty współdziałają ze sobą.

  • Użytkownik chce używać caffe do szkolenia i testowania CNN. Użytkownik decyduje o projekcie architektury CNN (np. - liczba warstw, liczba filtrów i ich szczegóły itp.). Użytkownik decyduje również o technice optymalizacji parametrów szkolenia i uczenia się na wypadek, gdyby szkolenie miało zostać przeprowadzone. Jeśli operacja polega na zwykłym testowaniu waniliowym, użytkownik określa wstępnie przeszkolony model. Korzystając z wszystkich tych informacji, użytkownik tworzy instancję obiektu Solver i przekazuje obiektowi Solver instrukcję (która decyduje o operacjach takich jak szkolenie i testowanie).

  • Solver : ten obiekt może być postrzegany jako jednostka nadzorująca szkolenie i testowanie CNN. To faktyczny wykonawca uruchamia CNN na procesorze i działa. Specjalizuje się w przeprowadzaniu konkretnych optymalizacji, które prowadzą do szkolenia CNN.

  • Siatka : Siatkę można traktować jako obiekt specjalistyczny, który reprezentuje rzeczywisty CNN, nad którym wykonywane są operacje. Net instruuje Solver, aby faktycznie przydzielił pamięć dla CNN i utworzył ją. Net jest również odpowiedzialny za udzielanie instrukcji, które faktycznie prowadzą do propagacji w przód lub wstecz przez CNN.

  • Warstwa : jest to obiekt reprezentujący określoną warstwę CNN. W ten sposób CNN składa się z warstw. Jeśli chodzi o caffe, obiekt Net tworzy instancję każdego typu „ Warstwy ” określonego w definicji architektury, a także łączy ze sobą różne warstwy. Określona warstwa wykonuje określony zestaw operacji (np. - Max-Pooling, Min-Pooling, 2D Convolution itp.)

  • Obiekt Blob : dane przepływa przez CNN podczas szkolenia i testów. Dane te, oprócz danych użytkownika, obejmują również kilka obliczeń pośrednich, które są wykonywane w sieci CNN. Te dane są enkapsulowane w obiekcie o nazwie Blob.



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow