Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Udfordring: Oprettelse af en Perceptron | Neuralt Netværk fra Bunden
Introduktion til neurale netværk

bookUdfordring: Oprettelse af en Perceptron

Da vores mål er at implementere en multilagsperceptron, vil oprettelsen af en Perceptron-klasse forenkle initialiseringen af modellen. Dens eneste attribut, layers, er i bund og grund en liste af Layer-objekter, der definerer netværkets struktur:

class Perceptron:
    def __init__(self, layers):
        self.layers = layers

Variablerne, der bruges til at initialisere lagene, er følgende:

  • input_size: antallet af inputfunktioner;
  • hidden_size: antallet af neuroner i hver skjult lag (begge skjulte lag vil i dette tilfælde have samme antal neuroner);
  • output_size: antallet af neuroner i outputlaget.

Strukturen af den resulterende perceptron bør være som følger:

Opgave

Swipe to start coding

Dit mål er at opstille den grundlæggende struktur for perceptronen ved at implementere dens lag:

  1. Fuldfør lagets initialisering (__init__()-metoden):

    • Initialiser vægtmatricen (formen er (n_neurons, n_neurons));
    • Initialiser biasvektoren (formen er (n_neurons, 1)).

    Udfyld dem med tilfældige værdier fra en uniform fordeling i intervallet [1,1)[-1, 1). Brug funktionen np.random.uniform() til dette.

  2. Fuldfør lagets fremadrettede propagationsmetode (forward()):

    • Beregn neurons rå outputværdier. Brug funktionen np.dot() til prikproduktet;
    • Anvend aktiveringsfunktionen på de rå output og returnér resultatet.
  3. Definér tre lag:

    • To skjulte lag: hvert lag skal have hidden_size neuroner og bruge aktiveringsfunktionen relu;
    • Et outputlag: dette skal bruge aktiveringsfunktionen sigmoid.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 4
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

Awesome!

Completion rate improved to 4

bookUdfordring: Oprettelse af en Perceptron

Stryg for at vise menuen

Da vores mål er at implementere en multilagsperceptron, vil oprettelsen af en Perceptron-klasse forenkle initialiseringen af modellen. Dens eneste attribut, layers, er i bund og grund en liste af Layer-objekter, der definerer netværkets struktur:

class Perceptron:
    def __init__(self, layers):
        self.layers = layers

Variablerne, der bruges til at initialisere lagene, er følgende:

  • input_size: antallet af inputfunktioner;
  • hidden_size: antallet af neuroner i hver skjult lag (begge skjulte lag vil i dette tilfælde have samme antal neuroner);
  • output_size: antallet af neuroner i outputlaget.

Strukturen af den resulterende perceptron bør være som følger:

Opgave

Swipe to start coding

Dit mål er at opstille den grundlæggende struktur for perceptronen ved at implementere dens lag:

  1. Fuldfør lagets initialisering (__init__()-metoden):

    • Initialiser vægtmatricen (formen er (n_neurons, n_neurons));
    • Initialiser biasvektoren (formen er (n_neurons, 1)).

    Udfyld dem med tilfældige værdier fra en uniform fordeling i intervallet [1,1)[-1, 1). Brug funktionen np.random.uniform() til dette.

  2. Fuldfør lagets fremadrettede propagationsmetode (forward()):

    • Beregn neurons rå outputværdier. Brug funktionen np.dot() til prikproduktet;
    • Anvend aktiveringsfunktionen på de rå output og returnér resultatet.
  3. Definér tre lag:

    • To skjulte lag: hvert lag skal have hidden_size neuroner og bruge aktiveringsfunktionen relu;
    • Et outputlag: dette skal bruge aktiveringsfunktionen sigmoid.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 4
single

single

some-alt