tensor-shape-generic
Translation status: ภาษาไทย reader-locale proof. Term names and code fences follow the th-TH pack; supporting prose may still be English.
Shape-generic tensor functions: a ขนาด shape param binds implicitly at call sites.
Syntax: ฟังก์ชัน name<T, ขนาด Figura>(เทนเซอร์<T, Figura> …) → เทนเซอร์<T, Figura>
Category#
type
Related#
Examples#
radix/corpus/tensor/generic-shape.fab (canonical · concept)#
Shape-generic tensor functions: a ขนาด shape param binds implicitly at call sites.
# =============================================================================
# tensor-shape-generic — shape-generic เทนเซอร์ functions (ขนาด Figura)
# =============================================================================
#
# What this teaches:
# • A `ขนาด Figura` shape param stands for the whole เทนเซอร์ shape; the
# shape is rank-agnostic, so one signature covers `[4]`, `[2, 2]`, `[1, 2]`,
# and `[]` witnesses.
# • The typechecker binds the shape param implicitly at call sites from the
# argument shapes or the expected type — no explicit figura arguments.
# • Fully static bodies compose elementwise ops (`reple`, `multiplica`,
# `subtrahe`) whose results keep the same shape symbolically.
#
# Common mistakes:
# • Spelling the shape as a rank-1 tuple `[Figura]` — that only matches
# rank-1 witnesses; use the bare `Figura` for rank-agnostic shapes.
# • Expecting a shape param bound by neither arguments nor the expected type
# to guess: it errors (SEM014) instead.
#
# See also: เทนเซอร์, ขนาด, ฟังก์ชัน, เวกเตอร์
# =============================================================================
# One generic `sgd_step` replaces the concrete [4]/[2,2]/[1,2]/[] overloads:
# the param/grad pair shares `Figura`, so every elementwise step proves the
# same-shape result.
ฟังก์ชัน sgd_step<ขนาด Figura>(เทนเซอร์<f32, Figura> param, เทนเซอร์<f32, Figura> grad, f32 lr) → เทนเซอร์<f32, Figura> {
คงที่ เทนเซอร์<f32, Figura> lr_fill ← param.เติม(lr)
คงที่ เทนเซอร์<f32, Figura> scaled ← grad.คูณ(lr_fill)
คืน param.ลบออก(scaled)
}
บันทึก "shape-generic sgd_step parata"Expected output:
shape-generic sgd_step parata