অনুক্রমিক

সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
public struct Sequential<Layer1: Module, Layer2: Layer>: Module
    where Layer1.Output == Layer2.Input,
          Layer1.TangentVector.VectorSpaceScalar == Layer2.TangentVector.VectorSpaceScalar
extension Sequential: Layer where Layer1: Layer

একটি স্তর যা ক্রমানুসারে দুই বা ততোধিক অন্যান্য স্তর তৈরি করে।

উদাহরণ:

  • MNIST এর জন্য একটি সাধারণ 2-স্তর পারসেপ্ট্রন মডেল তৈরি করুন:
let inputSize = 28 * 28
let hiddenSize = 300
var classifier = Sequential {
     Dense<Float>(inputSize: inputSize, outputSize: hiddenSize, activation: relu)
     Dense<Float>(inputSize: hiddenSize, outputSize: 3, activation: identity)
 }
  • MNIST এর জন্য একটি স্বয়ংক্রিয় কোডার তৈরি করুন:
var autoencoder = Sequential {
    // The encoder.
    Dense<Float>(inputSize: 28 * 28, outputSize: 128, activation: relu)
    Dense<Float>(inputSize: 128, outputSize: 64, activation: relu)
    Dense<Float>(inputSize: 64, outputSize: 12, activation: relu)
    Dense<Float>(inputSize: 12, outputSize: 3, activation: relu)
    // The decoder.
    Dense<Float>(inputSize: 3, outputSize: 12, activation: relu)
    Dense<Float>(inputSize: 12, outputSize: 64, activation: relu)
    Dense<Float>(inputSize: 64, outputSize: 128, activation: relu)
    Dense<Float>(inputSize: 128, outputSize: imageHeight * imageWidth, activation: tanh)
}

যেখানে পাওয়া যায় `Layer1`:` Layer`

  • ঘোষণা

    @differentiable
    public func callAsFunction(_ input: Layer1.Input) -> Layer2.Output