@frozen
public struct Conv2D<Scalar> : Layer where Scalar : TensorFlowFloatingPoint
একটি 2-ডি কনভোলিউশন লেয়ার (যেমন ছবিগুলির উপর স্থানিক কনভোলিউশন)।
এই স্তরটি একটি কনভোলিউশন ফিল্টার তৈরি করে যা আউটপুটগুলির একটি টেনসর তৈরি করতে স্তর ইনপুটের সাথে জড়িত।
4-ডি কনভোলিউশন ফিল্টার।
ঘোষণা
public var filter: Tensor<Scalar>
পক্ষপাত ভেক্টর।
ঘোষণা
public var bias: Tensor<Scalar>
উপাদান অনুযায়ী সক্রিয়করণ ফাংশন.
ঘোষণা
@noDerivative public let activation: Activation
স্থানিক মাত্রার জন্য স্লাইডিং উইন্ডোর অগ্রগতি।
ঘোষণা
@noDerivative public let strides: (Int, Int)
আবর্তনের জন্য প্যাডিং অ্যালগরিদম।
ঘোষণা
@noDerivative public let padding: Padding
স্থানিক মাত্রার জন্য প্রসারিত ফ্যাক্টর।
ঘোষণা
@noDerivative public let dilations: (Int, Int)
নির্দিষ্ট ফিল্টার, বায়াস, অ্যাক্টিভেশন ফাংশন, স্ট্রাইডস, ডিলেশন এবং প্যাডিং সহ একটি
Conv2D
স্তর তৈরি করে।ঘোষণা
public init( filter: Tensor<Scalar>, bias: Tensor<Scalar>? = nil, activation: @escaping Activation = identity, strides: (Int, Int) = (1, 1), padding: Padding = .valid, dilations: (Int, Int) = (1, 1) )
পরামিতি
filter
আকৃতির 4-ডি কনভোলিউশন ফিল্টার [ফিল্টারের উচ্চতা, ফিল্টার প্রস্থ, ইনপুট চ্যানেল গণনা, আউটপুট চ্যানেল গণনা]।
bias
আকৃতির পক্ষপাত ভেক্টর [আউটপুট চ্যানেল গণনা]।
activation
উপাদান অনুযায়ী সক্রিয়করণ ফাংশন.
strides
স্থানিক মাত্রার জন্য স্লাইডিং উইন্ডোর অগ্রগতি, অর্থাৎ (স্ট্রাইড উচ্চতা, স্ট্রাইড প্রস্থ)।
padding
আবর্তনের জন্য প্যাডিং অ্যালগরিদম।
dilations
স্থানিক মাত্রার জন্য প্রসারিত কারণ, যেমন (প্রসারণ উচ্চতা, প্রসারণ প্রস্থ)।
প্রদত্ত ইনপুটে স্তর প্রয়োগ করে প্রাপ্ত আউটপুট ফেরত দেয়।
আউটপুট স্থানিক মাত্রা হিসাবে গণনা করা হয়:
আউটপুট উচ্চতা = (ইনপুট উচ্চতা + 2 * প্যাডিং উচ্চতা - (প্রসারণ উচ্চতা * (ফিল্টার উচ্চতা - 1) + 1)) / স্ট্রাইড উচ্চতা + 1
আউটপুট প্রস্থ = (ইনপুট প্রস্থ + 2 * প্যাডিং প্রস্থ - (প্রসারণ প্রস্থ * (ফিল্টার প্রস্থ - 1) + 1)) / স্ট্রাইড প্রস্থ + 1
এবং প্যাডিং মাপ প্যাডিং স্কিম দ্বারা নির্ধারিত হয়।
দ্রষ্টব্য
.valid
ব্যবহার করার সময় প্যাডিংয়ের আকার শূন্যের সমান।পরামিতি
input
আকৃতির স্তরে ইনপুট [ব্যাচের আকার, ইনপুট উচ্চতা, ইনপুট প্রস্থ, ইনপুট চ্যানেল গণনা]।
রিটার্ন ভ্যালু
আকৃতির আউটপুট [ব্যাচ গণনা, আউটপুট উচ্চতা, আউটপুট প্রস্থ, আউটপুট চ্যানেল গণনা]।
নির্দিষ্ট ফিল্টার আকৃতি, স্ট্রাইড, প্যাডিং, প্রসারণ এবং উপাদান-ভিত্তিক অ্যাক্টিভেশন ফাংশন সহ একটি
Conv2D
স্তর তৈরি করে।ঘোষণা
public init( filterShape: (Int, Int, Int, Int), strides: (Int, Int) = (1, 1), padding: Padding = .valid, dilations: (Int, Int) = (1, 1), activation: @escaping Activation = identity, useBias: Bool = true, filterInitializer: ParameterInitializer<Scalar> = glorotUniform(), biasInitializer: ParameterInitializer<Scalar> = zeros() )
পরামিতি
filterShape
4-ডি কনভোলিউশন ফিল্টারের আকৃতি, প্রতিনিধিত্ব করে (ফিল্টারের উচ্চতা, ফিল্টার প্রস্থ, ইনপুট চ্যানেল গণনা, আউটপুট চ্যানেল গণনা)।
strides
স্থানিক মাত্রার জন্য স্লাইডিং উইন্ডোর অগ্রগতি, অর্থাৎ (স্ট্রাইড উচ্চতা, স্ট্রাইড প্রস্থ)।
padding
আবর্তনের জন্য প্যাডিং অ্যালগরিদম।
dilations
স্থানিক মাত্রার জন্য প্রসারিত কারণ, যেমন (প্রসারণ উচ্চতা, প্রসারণ প্রস্থ)।
activation
উপাদান অনুযায়ী সক্রিয়করণ ফাংশন.
filterInitializer
ফিল্টার প্যারামিটারের জন্য ব্যবহার করার জন্য ইনিশিয়ালাইজার।
biasInitializer
বায়াস প্যারামিটারের জন্য ব্যবহার করার জন্য ইনিশিয়ালাইজার।