Embedding(this.vocabSize, this.dim, {Tensor2D? weight, int seed = 7}) : weight = weight ?? _xavier(vocabSize, dim, seed: seed) { assert(vocabSize > 0 && dim > 0); }