Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Utfordring: Lage en Perseptron | Nevralt Nettverk fra Bunnen Av
Introduksjon til nevrale nettverk

bookUtfordring: Lage en Perseptron

Siden målet er å implementere et multilags perceptron, bidrar det å definere en Perceptron-klasse til å organisere og initialisere modellen på en effektiv måte. Klassen vil inneholde ett attributt, layers, som er en liste med Layer-objekter som representerer nettverkets struktur:

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

Variablene som brukes til å initialisere lagene er:

  • input_size: antall inndatafunksjoner;
  • hidden_size: antall nevroner i hvert skjult lag (begge skjulte lag vil ha samme antall nevroner i dette tilfellet);
  • output_size: antall nevroner i utgangslaget.

Strukturen til det resulterende multillags perceptronet vil inkludere:

  1. Inndatalag → mottar dataene;
  2. To skjulte lag → behandler inndataene og trekker ut mønstre;
  3. Utgangslag → produserer den endelige prediksjonen.
Oppgave

Swipe to start coding

Målet ditt er å sette opp den grunnleggende strukturen til et multilags perceptron (MLP) ved å implementere koden for dets lag.

Følg disse trinnene nøye:

  1. Initialiser lagparametere inne i __init__()-metoden:
  • Opprett vektmatrisen med form (n_neurons, n_inputs);
    • Opprett bias-vektoren med form (n_neurons, 1);
    • Fyll begge med tilfeldige verdier fra en uniform fordeling i området [1,1)[-1, 1) ved å bruke np.random.uniform().
  1. Implementer fremoverpropagering inne i forward()-metoden:
  • Beregn råutdata for hver nevron ved å bruke skalarproduktet:
np.dot(self.weights, self.inputs) + self.biases
  • Bruk den tildelte aktiveringsfunksjonen på dette resultatet og returner det aktiverte utdataet.
  1. Definer perceptron-lagene:
  • Opprett to skjulte lag, hvert med hidden_size nevroner og bruk ReLU aktiveringsfunksjon;
  • Opprett ett utgangslag med output_size nevron(er) og sigmoid aktiveringsfunksjon.

Løsning

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

Can you explain how the `Layer` class should be defined?

What activation functions are typically used in the hidden and output layers?

How do I initialize the layers using `input_size`, `hidden_size`, and `output_size`?

close

Awesome!

Completion rate improved to 4

bookUtfordring: Lage en Perseptron

Sveip for å vise menyen

Siden målet er å implementere et multilags perceptron, bidrar det å definere en Perceptron-klasse til å organisere og initialisere modellen på en effektiv måte. Klassen vil inneholde ett attributt, layers, som er en liste med Layer-objekter som representerer nettverkets struktur:

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

Variablene som brukes til å initialisere lagene er:

  • input_size: antall inndatafunksjoner;
  • hidden_size: antall nevroner i hvert skjult lag (begge skjulte lag vil ha samme antall nevroner i dette tilfellet);
  • output_size: antall nevroner i utgangslaget.

Strukturen til det resulterende multillags perceptronet vil inkludere:

  1. Inndatalag → mottar dataene;
  2. To skjulte lag → behandler inndataene og trekker ut mønstre;
  3. Utgangslag → produserer den endelige prediksjonen.
Oppgave

Swipe to start coding

Målet ditt er å sette opp den grunnleggende strukturen til et multilags perceptron (MLP) ved å implementere koden for dets lag.

Følg disse trinnene nøye:

  1. Initialiser lagparametere inne i __init__()-metoden:
  • Opprett vektmatrisen med form (n_neurons, n_inputs);
    • Opprett bias-vektoren med form (n_neurons, 1);
    • Fyll begge med tilfeldige verdier fra en uniform fordeling i området [1,1)[-1, 1) ved å bruke np.random.uniform().
  1. Implementer fremoverpropagering inne i forward()-metoden:
  • Beregn råutdata for hver nevron ved å bruke skalarproduktet:
np.dot(self.weights, self.inputs) + self.biases
  • Bruk den tildelte aktiveringsfunksjonen på dette resultatet og returner det aktiverte utdataet.
  1. Definer perceptron-lagene:
  • Opprett to skjulte lag, hvert med hidden_size nevroner og bruk ReLU aktiveringsfunksjon;
  • Opprett ett utgangslag med output_size nevron(er) og sigmoid aktiveringsfunksjon.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4
single

single

some-alt