Een tensor modelleren in Mojo
Vorm, strides en elementlayout
Een tensor modelleren in Mojo is een gratis Mojo Academy-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Mojo Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Mojo Academy bevat in totaal 4 lessen.
Wat is een tensor?
Een tensor is gewoon een n-dimensionaal raster van getallen. Een vector is eendimensionaal, een matrix tweedimensionaal en een reeks afbeeldingen vaak vierdimensionaal.
Onderliggend plat geheugen
Hoeveel dimensies je ook voorstelt, een tensor bestaat in werkelijkheid uit één platte buffer met waarden in het geheugen, achter elkaar geplaatst.
var data = List[Float32](0, 1, 2, 3, 4, 5)De vorm beschrijft het raster
De vorm is een tupel met groottes, één per dimensie. Een vorm van (2, 3) betekent twee rijen met elk drie kolommen.
var shape = (2, 3) # 2 rows, 3 colsIndices kiezen een element
Je benoemt een element met één index per dimensie. In een tensor met vorm (2, 3) is (1, 2) de laatste kolom van de tweede rij.
Strides verwijzen naar het geheugen
Een stride vertelt hoeveel platte posities je moet overslaan om één stap langs een dimensie te gaan. Strides zetten indices om in één offset.
var strides = (3, 1) # row jump 3, col jump 1De offsetformule
Maak elke index plat met een inproduct: offset is de som van elke index vermenigvuldigd met zijn stride. Met die offset bereik je de juiste positie.
offset = i * strides[0] + j * strides[1]Rij-majorindeling
Numerieke code in Mojo slaat rijen meestal aaneengesloten op; dat heet row-major. De laatste dimensie heeft stride 1, waardoor kolommen naast elkaar staan.
Waarom strides krachtig zijn
Met slimme strides kun je een tensor bekijken, uitsnijden of transponeren zonder gegevens te kopiëren. Alleen de strides veranderen, niet de buffer.
Het elementtype is belangrijk
Elke tensor heeft een vast dtype, zoals Float32 of Int64. Dankzij een uniform type kan Mojo waarden compact opslaan en snel berekeningen uitvoeren.
alias dtype = DType.float32Een minimale tensorstructuur
Je kunt een tensor modelleren als een struct die een gegevens-pointer met zijn vorm en strides bundelt, zodat alle informatie over de indeling op één plaats staat.
struct Tensor:
var data: UnsafePointer[Float32]
var shape: (Int, Int)
var strides: (Int, Int)Aaneengesloten versus strided
Een contigue tensor heeft geen gaten, dus een lineaire scan is goedkoop. Views met strides kunnen sprongen maken, waardoor geheugentoegang trager kan worden.
Korte controle
Je hebt een row-major tensor van (2, 3). Hoe bereik je element (1, 2)?
Samenvatting
Een tensor is een platte buffer plus vorm en strides; de offsetformule koppelt indices aan geheugen, en row-major houdt kolommen contigu.
🧮Leer Mojo met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 30
- Lessen
- 120
Veelgestelde vragen
Is de les “Een tensor modelleren in Mojo” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad Mojo Academy, waaronder “Een tensor modelleren in Mojo”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Mojo Academy bevat in totaal 4 lessen.
Wat leer ik in “Een tensor modelleren in Mojo”?
Vorm, strides en elementlayout Je oefent met Mojo Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Mojo Academy te beginnen?
Ervaring vooraf is niet nodig. Mojo Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “Een tensor modelleren in Mojo”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Mojo Academy?
Ja. Elke les over Mojo Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Een tensor modelleren in Mojo
- Een matmul stap voor stap bouwen
- Het inwendig product optimaliseren
- Numerieke correctheid verifiëren