Apa arti struct ini di Julia?

Nov 03 2020

Saya mencoba belajar lebih dalam menggunakan Julia. Dalam salah satu tutorial, yaitu tentang MLP, gunakan struktur di bawah ini untuk memodelkan beberapa lapisan di JST. Apa arti kode ini?

struct Chain
    layers
    Chain(layers...) = new(layers)
end

Jawaban

6 fredrikekre Nov 03 2020 at 05:44

Definisi tersendiri ini tidak benar-benar "berarti" apa pun; itu hanya pengguna yang ditentukanstruct dengan satu bidang (disebut layers) dan satu konstruktor dalam . Biasanya struct kustom seperti ini digunakan untuk mengumpulkan beberapa data dan / atau digunakan untuk mendefinisikan operasi pada, misalnya Anda dapat menentukan fungsi yang fberoperasi pada struct ini seperti ini:

function f(c::Chain)
    # do something with the layers in the chain
end

tetapi untuk memahami kegunaannya dalam kasus khusus ini, Anda mungkin perlu membaca dokumentasi dan / atau kode lainnya.

lungben Nov 24 2020 at 00:40

Satu kekhasan dalam contoh ini: Konstruktor dalam mengambil beberapa argumen ( layers...) dan membuat tupel darinya, yang ditugaskan ke properti layers.

julia> c = Chain(1, 2, "foo")
Chain((1, 2, "foo"))