Walton Electronics Co., Ltd.
Skontaktuj się z nami

Osoba kontaktowa : Walton-cara

Numer telefonu : 15986872308

Free call

Tworzenie programów, które się uczą

July 1, 2022

najnowsze wiadomości o firmie Tworzenie programów, które się uczą

Sztuczna inteligencja leży u podstaw dramatycznych postępów w motoryzacji, opiece zdrowotnej, systemach przemysłowych i rosnącej liczbie obszarów zastosowań.Wraz ze wzrostem zainteresowania natura sztucznej inteligencji wywołała pewne zamieszanie, a nawet strach przed rosnącą rolą sztucznej inteligencji w życiu codziennym.Rodzaj sztucznej inteligencji, który umożliwia coraz większą liczbę inteligentnych produktów, opiera się na prostych, ale nietrywialnych metodach inżynieryjnych, aby zapewnić możliwości daleko odbiegające od kończącej cywilizację sztucznej inteligencji science fiction.

Definicje sztucznej inteligencji wahają się od jej najbardziej zaawansowanej – i wciąż koncepcyjnej – formy, w której maszyny zachowują się jak ludzie, do bardziej znanej formy, w której maszyny są szkolone do wykonywania określonych zadań.W swojej najbardziej zaawansowanej formie, prawdziwa sztuczna inteligencja działałaby bez wyraźnego kierownictwa i kontroli ludzi, aby niezależnie dojść do jakiegoś wniosku lub podjąć jakieś działanie, tak jak człowiek.Na bardziej znanym, zorientowanym na inżynierię końcu spektrum sztucznej inteligencji, metody uczenia maszynowego (ML) zazwyczaj zapewniają podstawę obliczeniową dla obecnych zastosowań sztucznej inteligencji.Te metody generują odpowiedzi na dane wejściowe z imponującą szybkością i dokładnością bez użycia kodu wyraźnie napisanego w celu dostarczenia tych odpowiedzi.Podczas gdy twórcy oprogramowania piszą kod do przetwarzania danych w konwencjonalnych systemach, programiści ML wykorzystują dane do uczenia algorytmów ML, takich jak modele sztucznych sieci neuronowych, w celu generowania pożądanych odpowiedzi na dane.
Jak zbudowany jest podstawowy model sieci neuronowej?
Wśród najbardziej znanych typów uczenia maszynowego modele sieci neuronowych przekazują dane z warstwy wejściowej przez warstwy ukryte do warstwy wyjściowej (rysunek 1).Zgodnie z opisem, warstwy ukryte są szkolone do wykonywania serii przekształceń, które wyodrębniają funkcje potrzebne do rozróżnienia różnych klas danych wejściowych.Te przemiany kończą się
wartości ładowane do warstwy wyjściowej, gdzie każda jednostka wyjściowa dostarcza wartość reprezentującą prawdopodobieństwo, że dane wejściowe należą do określonej klasy.Dzięki takiemu podejściu programiści mogą klasyfikować dane, takie jak obrazy lub pomiary czujników, przy użyciu odpowiedniej architektury sieci neuronowej.

Architektury sieci neuronowych przybierają wiele form, począwszy od prostego typu sieci neuronowej ze sprzężeniem do przodu, pokazanej na rysunku 1, do głębokich sieci neuronowych (DNN) zbudowanych z kilku ukrytych warstw i pojedynczych warstw zawierających setki tysięcy neuronów.Niemniej jednak różne architektury zazwyczaj opierają się na jednostce sztucznego neuronu z wieloma wejściami i jednym wyjściem (rysunek 2).Rysunek 1: Sieci neuronowe składają się z warstw sztucznych neuronów wyszkolonych do rozróżniania różnych klas danych wejściowych.(Źródło: zaadaptowane z Wikipedii)

najnowsze wiadomości o firmie Tworzenie programów, które się uczą  0

najnowsze wiadomości o firmie Tworzenie programów, które się uczą  1

Rysunek 2: Sztuczny neuron wytwarza dane wyjściowe w oparciu o działającą funkcję działania

na sumie ważonych danych wejściowych nourona.(Źródło: Wikipedia)

 

 

W sieci neuronowej ze sprzężeniem do przodu, konkretny neuron n, w warstwie ukrytej, sumuje swoje dane wejściowe, x, skorygowane o wagę specyficzną dla wejścia wp i dodaje specyficzny dla warstwy współczynnik odchylenia b (nie pokazany na rysunku) jako przepływy:

najnowsze wiadomości o firmie Tworzenie programów, które się uczą  2

 

Na koniec zsumowana wartość S jest konwertowana na pojedynczą wartość wyjściową przez funkcję aktywacji.W zależności od wymagań funkcje te mogą przybierać różne formy, takie jak prosta funkcja kroku, arc tangens lub mapowanie nieliniowe, takie jak wyprostowana jednostka liniowa (ReLU), która wyprowadza 0 dla S<=0 lub s, dla S> 0.

Chociaż wszystkie są zaprojektowane tak, aby wyodrębnić wyróżniające cechy danych, różne architektury mogą używać znacząco różnych przekształceń.Na przykład splotowe sieci neuronowe (CNN) używane w aplikacjach do rozpoznawania obrazów wykorzystują sploty jądra.W tym przypadku funkcje zwane jądrami wykonują sploty na obrazie wejściowym, aby przekształcić go w mapy cech.Kolejne warstwy wykonują więcej splotów lub innych funkcji, dalej wyodrębniając i przekształcając cechy, aż model CNN wygeneruje podobny wynik prawdopodobieństwa klasyfikacji, jak w prostszych sieciach neuronowych.Jednak dla programistów podstawowa matematyka dla popularnych architektur sieci neuronowych jest w dużej mierze przejrzysta ze względu na dostępność narzędzi programistycznych ML (omówionych w innym miejscu w tym wydaniu). Korzystając z tych narzędzi, programiści mogą dość łatwo zaimplementować model sieci neuronowej i rozpocząć jego szkolenie za pomocą zbiór danych zwany zbiorem uczącym.Ten zestaw danych uczących zawiera reprezentatywny zestaw obserwacji danych i poprawną przyczynowość dla każdej obserwacji — i stanowi jeden z trudniejszych aspektów rozwoju modelu sieci neuronowej.

W jaki sposób jest szkolony i wdrażany model sieci neuronowej?

W przeszłości programiści tworzący zestawy szkoleniowe mieli opcję ltte, ale musieli przepracować wiele tysięcy obserwacji wymaganych w typowym zestawie, ręcznie oznaczając każdą obserwację poprawną nazwą.Na przykład, aby stworzyć zestaw szkoleniowy do aplikacji do rozpoznawania znaków drogowych,

trzeba wyświetlić obrazy znaków drogowych i oznaczyć każdy obraz poprawną nazwą znaku.Zestawy wstępnie oznaczonych danych z domeny publicznej pozwalają wielu badaczom zajmującym się uczeniem maszynowym uniknąć tego zadania i skupić się na opracowywaniu algorytmów.Jednak w przypadku produkcyjnych zastosowań ML zadanie etykietowania może stanowić poważne wyzwanie.Zaawansowani programiści ML często używają wstępnie wytrenowanych modeli w

proces zwany uczeniem transferu, aby pomóc złagodzić ten problem.

Skontaktuj się z nami

Wpisz swoją wiadomość