التضمين

public struct Embedding<Scalar> : Module where Scalar : TensorFlowFloatingPoint

طبقة التضمين.

Embedding هو بشكل فعال جدول بحث يقوم بتعيين المؤشرات من مفردات ثابتة إلى تمثيلات متجهة ذات حجم ثابت (كثيفة)، على سبيل المثال [[0], [3]] -> [[0.25, 0.1], [0.6, -0.2]]

  • جدول بحث قابل للتعلم يقوم بتعيين مؤشرات المفردات لتمثيلاتها المتجهة الكثيفة.

    تصريح

    public var embeddings: Tensor<Scalar>
  • ينشئ طبقة Embedding مع تضمينات الشكل التي تمت تهيئتها عشوائيًا (vocabularySize, embeddingSize) بحيث يتم إعطاء كل فهرس مفردات تمثيلًا متجهًا.

    تصريح

    public init(
      vocabularySize: Int,
      embeddingSize: Int,
      embeddingsInitializer: ParameterInitializer<Scalar> = { Tensor(randomUniform: $0) }
    )

    حدود

    vocabularySize

    عدد الفهارس (الكلمات) المميزة في المفردات. يجب أن يكون هذا الرقم أكبر عدد صحيح بالإضافة إلى واحد.

    embeddingSize

    عدد الإدخالات في تمثيل متجه التضمين الفردي.

    embeddingsInitializer

    مُهيئ لاستخدامه في معلمات التضمين.

  • ينشئ طبقة Embedding من التضمينات المتوفرة. مفيد لإدخال عمليات التضمين المدربة مسبقًا في النموذج.

    تصريح

    public init(embeddings: Tensor<Scalar>)

    حدود

    embeddings

    جدول التضمينات المدربة مسبقًا.

  • تقوم بإرجاع مخرجات عن طريق استبدال كل فهرس في الإدخال بتمثيل متجه كثيف مطابق.

    تصريح

    @differentiable(wrt: self)
    public func forward(_ input: Tensor<Int32>) -> Tensor<Scalar>

    قيمة الإرجاع

    الموتر الذي تم إنشاؤه عن طريق استبدال مؤشرات الإدخال بتمثيلات المتجهات الخاصة بها.