Các chức năng sau đây có sẵn trên toàn cầu.
Trả về tổn thất L1 giữa dự đoán và kỳ vọng.
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func l1Loss<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về sự mất mát L2 giữa dự đoán và kỳ vọng.
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func l2Loss<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Đầu ra dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về khoảng mất bản lề giữa dự đoán và kỳ vọng.
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func hingeLoss<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về tổn thất bản lề bình phương giữa dự đoán và kỳ vọng.
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func squaredHingeLoss<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về tổn thất bản lề phân loại giữa dự đoán và kỳ vọng.
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func categoricalHingeLoss<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về logarit của cosin hyperbol của sai số giữa dự đoán và kỳ vọng.
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func logCoshLoss<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về sự mất mát Poisson giữa dự đoán và kỳ vọng.
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func poissonLoss<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về phân kỳ Kullback-Leibler (phân kỳ KL) giữa kỳ vọng và dự đoán. Với hai phân bố
p
vàq
, KL phân kỳ tínhp * log(p / q)
.Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func kullbackLeiblerDivergence<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Trả về entropy chéo softmax (entropy chéo phân loại) giữa logits và nhãn.
Tuyên ngôn
@differentiable(wrt: logits) public func softmaxCrossEntropy<Scalar: TensorFlowFloatingPoint>( logits: Tensor<Scalar>, probabilities: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
logits
Đầu ra được mã hóa một nóng từ mạng nơ-ron.
labels
Các chỉ số (không lập chỉ mục) của các đầu ra chính xác.
Trả về entropy chéo sigmoid (entropy chéo nhị phân) giữa logits và nhãn.
Tuyên ngôn
@differentiable(wrt: logits) @differentiable(wrt: (logits, labels) public func sigmoidCrossEntropy<Scalar: TensorFlowFloatingPoint>( logits: Tensor<Scalar>, labels: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
logits
Đầu ra chưa được chia tỷ lệ của mạng nơ-ron.
labels
Giá trị số nguyên tương ứng với đầu ra chính xác.
Trả về một tensor có cùng hình dạng và vô hướng như tensor đã chỉ định.
Tuyên ngôn
@differentiable public func identity<Scalar>(_ x: Tensor<Scalar>) -> Tensor<Scalar> where Scalar : TensorFlowScalar
Gọi lệnh đóng đã cho trong một ngữ cảnh có mọi thứ giống hệt với ngữ cảnh hiện tại ngoại trừ giai đoạn học đã cho.
Tuyên ngôn
public func withContext<R>(_ context: Context, _ body: () throws -> R) rethrows -> R
Thông số
context
Một ngữ cảnh sẽ được đặt trước khi lệnh đóng được gọi và được khôi phục sau khi lệnh đóng trở lại.
body
Một sự đóng cửa vô hiệu. Nếu việc đóng cửa có giá trị trả về, giá trị đó cũng được sử dụng như giá trị trả về của
withContext(_:_:)
chức năng.Giá trị trả lại
Giá trị trả về, nếu có, của
body
đóng cửa.Gọi lệnh đóng đã cho trong một ngữ cảnh có mọi thứ giống hệt với ngữ cảnh hiện tại ngoại trừ giai đoạn học đã cho.
Tuyên ngôn
public func withLearningPhase<R>( _ learningPhase: LearningPhase, _ body: () throws -> R ) rethrows -> R
Thông số
learningPhase
Một giai đoạn học tập sẽ được thiết lập trước khi quá trình đóng được gọi và được khôi phục sau khi quá trình đóng trở lại.
body
Một sự đóng cửa vô hiệu. Nếu việc đóng cửa có giá trị trả về, giá trị đó cũng được sử dụng như giá trị trả về của
withLearningPhase(_:_:)
chức năng.Giá trị trả lại
Giá trị trả về, nếu có, của
body
đóng cửa.Gọi bao đóng đã cho trong một ngữ cảnh có mọi thứ giống với ngữ cảnh hiện tại ngoại trừ hạt giống ngẫu nhiên đã cho.
Tuyên ngôn
public func withRandomSeedForTensorFlow<R>( _ randomSeed: TensorFlowSeed, _ body: () throws -> R ) rethrows -> R
Thông số
randomSeed
Một hạt giống ngẫu nhiên sẽ được đặt trước khi lệnh đóng được gọi và được khôi phục sau khi lệnh đóng trở lại.
body
Một sự đóng cửa vô hiệu. Nếu việc đóng cửa có giá trị trả về, giá trị đó cũng được sử dụng như giá trị trả về của
withRandomSeedForTensorFlow(_:_:)
chức năng.Giá trị trả lại
Giá trị trả về, nếu có, của
body
đóng cửa.Gọi bao đóng đã cho trong một ngữ cảnh có mọi thứ giống hệt với ngữ cảnh hiện tại ngoại trừ trình tạo số ngẫu nhiên đã cho.
Tuyên ngôn
public func withRandomNumberGeneratorForTensorFlow<G: RandomNumberGenerator, R>( _ randomNumberGenerator: inout G, _ body: () throws -> R ) rethrows -> R
Thông số
randomNumberGenerator
Một trình tạo số ngẫu nhiên sẽ được thiết lập trước khi lệnh đóng được gọi và được khôi phục sau khi lệnh đóng trả về.
body
Một sự đóng cửa vô hiệu. Nếu việc đóng cửa có giá trị trả về, giá trị đó cũng được sử dụng như giá trị trả về của
withRandomNumberGeneratorForTensorFlow(_:_:)
chức năng.Giá trị trả lại
Giá trị trả về, nếu có, của
body
đóng cửa.Tuyên ngôn
public func zip<T: TensorGroup, U: TensorGroup>( _ dataset1: Dataset<T>, _ dataset2: Dataset<U> ) -> Dataset<Zip2TensorGroup<T, U>>
LazyTensorBarrier đảm bảo tất cả các bộ căng trực tiếp (trên thiết bị nếu được cung cấp) được lên lịch và chạy. Nếu thời gian chờ được đặt thành true, lệnh gọi này sẽ chặn cho đến khi quá trình tính toán hoàn tất.
Tuyên ngôn
public func valueWithGradient<T, R>( at x: T, in f: @differentiable (T) -> Tensor<R> ) -> (value: Tensor<R>, gradient: T.TangentVector) where T: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func valueWithGradient<T, U, R>( at x: T, _ y: U, in f: @differentiable (T, U) -> Tensor<R> ) -> (value: Tensor<R>, gradient: (T.TangentVector, U.TangentVector)) where T: Differentiable, U: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func valueWithGradient<T, U, V, R>( at x: T, _ y: U, _ z: V, in f: @differentiable (T, U, V) -> Tensor<R> ) -> (value: Tensor<R>, gradient: (T.TangentVector, U.TangentVector, V.TangentVector)) where T: Differentiable, U: Differentiable, V: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func valueWithGradient<T, R>( of f: @escaping @differentiable (T) -> Tensor<R> ) -> (T) -> (value: Tensor<R>, gradient: T.TangentVector) where T: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func valueWithGradient<T, U, R>( of f: @escaping @differentiable (T, U) -> Tensor<R> ) -> (T, U) -> (value: Tensor<R>, gradient: (T.TangentVector, U.TangentVector)) where T: Differentiable, U: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func valueWithGradient<T, U, V, R>( of f: @escaping @differentiable (T, U, V) -> Tensor<R> ) -> (T, U, V) -> ( value: Tensor<R>, gradient: (T.TangentVector, U.TangentVector, V.TangentVector) ) where T: Differentiable, U: Differentiable, V: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func gradient<T, R>( at x: T, in f: @differentiable (T) -> Tensor<R> ) -> T.TangentVector where T: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func gradient<T, U, R>( at x: T, _ y: U, in f: @differentiable (T, U) -> Tensor<R> ) -> (T.TangentVector, U.TangentVector) where T: Differentiable, U: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func gradient<T, U, V, R>( at x: T, _ y: U, _ z: V, in f: @differentiable (T, U, V) -> Tensor<R> ) -> (T.TangentVector, U.TangentVector, V.TangentVector) where T: Differentiable, U: Differentiable, V: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func gradient<T, R>( of f: @escaping @differentiable (T) -> Tensor<R> ) -> (T) -> T.TangentVector where T: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func gradient<T, U, R>( of f: @escaping @differentiable (T, U) -> Tensor<R> ) -> (T, U) -> (T.TangentVector, U.TangentVector) where T: Differentiable, U: Differentiable, R: TensorFlowFloatingPoint
Tuyên ngôn
public func gradient<T, U, V, R>( of f: @escaping @differentiable (T, U, V) -> Tensor<R> ) -> (T, U, V) -> (T.TangentVector, U.TangentVector, V.TangentVector) where T: Differentiable, U: Differentiable, V: Differentiable, R: TensorFlowFloatingPoint
Làm cho một chức năng được tính toán lại trong pullback của nó, được gọi là "điểm kiểm tra" trong phân biệt tự động truyền thống.
Tuyên ngôn
public func withRecomputationInPullbacks<T, U>( _ body: @escaping @differentiable (T) -> U ) -> @differentiable (T) -> U where T : Differentiable, U : Differentiable
Tạo một hàm khác biệt với hàm sản phẩm vector-Jacobian.
Tuyên ngôn
public func differentiableFunction<T : Differentiable, R : Differentiable>( from vjp: @escaping (T) -> (value: R, pullback: (R.TangentVector) -> T.TangentVector) ) -> @differentiable (T) -> R
Tạo một hàm khác biệt với hàm sản phẩm vector-Jacobian.
Tuyên ngôn
public func differentiableFunction<T, U, R>( from vjp: @escaping (T, U) -> (value: R, pullback: (R.TangentVector) -> (T.TangentVector, U.TangentVector)) ) -> @differentiable (T, U) -> R
Returns
x
như một chức năng nhận dạng. Khi được sử dụng trong một bối cảnh nơix
được phân biệt liên quan đến, chức năng này sẽ không sản xuất bất kỳ phái sinh tạix
.Tuyên ngôn
@_semantics("autodiff.nonvarying") public func withoutDerivative<T>(at x: T) -> T
Áp dụng việc đóng cửa cho
body
đểx
. Khi được sử dụng trong một bối cảnh nơix
được phân biệt liên quan đến, chức năng này sẽ không sản xuất bất kỳ phái sinh tạix
.Tuyên ngôn
@_semantics("autodiff.nonvarying") public func withoutDerivative<T, R>(at x: T, in body: (T) -> R) -> R
Thực hiện một quá trình đóng, làm cho các hoạt động TensorFlow chạy trên một loại thiết bị cụ thể.
Tuyên ngôn
public func withDevice<R>( _ kind: DeviceKind, _ index: UInt = 0, perform body: () throws -> R ) rethrows -> R
Thông số
kind
Một loại thiết bị để chạy các hoạt động TensorFlow.
index
Thiết bị để chạy các hoạt động trên.
body
Một bao đóng có các hoạt động TensorFlow sẽ được thực thi trên loại thiết bị được chỉ định.
Thực hiện một quá trình đóng, làm cho các hoạt động TensorFlow chạy trên một thiết bị có tên cụ thể.
Một số ví dụ về tên thiết bị:
- “/ Device: CPU: 0”: CPU của máy tính của bạn.
- “/ GPU: 0”: Ký hiệu ngắn gọn cho GPU đầu tiên trên máy của bạn hiển thị với TensorFlow
- “/ Job: localhost / replica: 0 / task: 0 / device: GPU: 1”: Tên đủ điều kiện của GPU thứ hai trên máy của bạn hiển thị với TensorFlow.
Tuyên ngôn
public func withDevice<R>(named name: String, perform body: () throws -> R) rethrows -> R
Thông số
name
Tên thiết bị.
body
Một bao đóng có các hoạt động TensorFlow sẽ được thực thi trên loại thiết bị được chỉ định.
Thực hiện một quá trình đóng, cho phép TensorFlow đặt các hoạt động của TensorFlow trên bất kỳ thiết bị nào. Điều này sẽ khôi phục hành vi vị trí mặc định.
Tuyên ngôn
public func withDefaultDevice<R>(perform body: () throws -> R) rethrows -> R
Thông số
body
Một bao đóng có các hoạt động TensorFlow sẽ được thực thi trên loại thiết bị được chỉ định.
Thay đổi kích thước hình ảnh thành kích thước bằng phương pháp được chỉ định.
Điều kiện tiên quyết
Các hình ảnh phải có thứ hạng3
hoặc4
.Điều kiện tiên quyết
Kích thước phải là số dương.Tuyên ngôn
@differentiable(wrt: images) public func resize( images: Tensor<Float>, size: (newHeight: Int, newWidth: Int), method: ResizeMethod = .bilinear, antialias: Bool = false ) -> Tensor<Float>
Thông số
images
size
Kích thước mới của hình ảnh.
method
Phương pháp thay đổi kích thước. Giá trị mặc định là
.bilinear
.antialias
Khi và chỉ khi
true
, sử dụng một bộ lọc chống răng cưa khi downsampling một hình ảnh.Thay đổi kích thước hình ảnh thành kích thước bằng cách sử dụng nội suy vùng.
Điều kiện tiên quyết
Các hình ảnh phải có thứ hạng3
hoặc4
.Điều kiện tiên quyết
Kích thước phải là số dương.Tuyên ngôn
public func resizeArea<Scalar: TensorFlowNumeric>( images: Tensor<Scalar>, size: (newHeight: Int, newWidth: Int), alignCorners: Bool = false ) -> Tensor<Float>
Trả về khoảng thời gian 2-D với đầu vào, bộ lọc, bước và khoảng đệm được chỉ định.
Điều kiện tiên quyết
input
phải có thứ hạng4
.Điều kiện tiên quyết
filter
phải có thứ hạng3
.Tuyên ngôn
@differentiable(wrt: (input, filter) public func dilation2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filter: Tensor<Scalar>, strides: (Int, Int, Int, Int) = (1, 1, 1, 1), rates: (Int, Int, Int, Int) = (1, 1, 1, 1), padding: Padding = .valid ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filter
Bộ lọc giãn nở.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động
rates
Tỷ lệ giãn nở cho từng thứ nguyên của đầu vào.
Trả về xói mòn 2-D với đầu vào, bộ lọc, bước và phần đệm được chỉ định.
Điều kiện tiên quyết
input
phải có thứ hạng4
.Điều kiện tiên quyết
filter
phải có thứ hạng 3.Tuyên ngôn
@differentiable(wrt: (input, filter) public func erosion2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filter: Tensor<Scalar>, strides: (Int, Int, Int, Int) = (1, 1, 1, 1), rates: (Int, Int, Int, Int) = (1, 1, 1, 1), padding: Padding = .valid ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filter
Bộ lọc xói mòn.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động
rates
Tỷ lệ giãn nở cho từng thứ nguyên của đầu vào.
Trả về một hàm tạo ra một tensor bằng cách khởi tạo tất cả các giá trị của nó thành số không.
Tuyên ngôn
public func zeros<Scalar>() -> ParameterInitializer<Scalar> where Scalar : TensorFlowFloatingPoint
Trả về một hàm tạo ra một tensor bằng cách khởi tạo tất cả các giá trị của nó thành giá trị đã cho.
Tuyên ngôn
public func constantInitializer<Scalar: TensorFlowFloatingPoint>( value: Scalar ) -> ParameterInitializer<Scalar>
Trả về một hàm tạo ra một tensor bằng cách khởi tạo nó thành giá trị đã cho. Lưu ý rằng phát sóng của giá trị được cung cấp không được hỗ trợ.
Tuyên ngôn
public func constantInitializer<Scalar: TensorFlowFloatingPoint>( value: Tensor<Scalar> ) -> ParameterInitializer<Scalar>
Returns một chức năng mà tạo ra một tensor bằng cách thực hiện Glorot (Xavier) khởi tạo thống nhất cho hình dạng nhất định, lấy mẫu ngẫu nhiên các giá trị vô hướng từ một phân bố đều giữa
-limit
vàlimit
, được tạo ra bởi các máy phát điện mặc định số ngẫu nhiên, nơi giới hạn làsqrt(6 / (fanIn + fanOut))
, vàfanIn
/fanOut
đại diện cho số của đầu vào và đầu ra tính năng nhân với lĩnh vực tiếp nhận, nếu có.Tuyên ngôn
public func glorotUniform<Scalar: TensorFlowFloatingPoint>( seed: TensorFlowSeed = Context.local.randomSeed ) -> ParameterInitializer<Scalar>
Returns một chức năng mà tạo ra một tensor bằng cách thực hiện Glorot (Xavier) khởi bình thường đối với các hình dạng nhất định, lấy mẫu ngẫu nhiên các giá trị vô hướng từ một phân phối chuẩn cắt ngắn tập trung vào
0
với độ lệch chuẩnsqrt(2 / (fanIn + fanOut))
, nơifanIn
/fanOut
đại diện cho số lượng các tính năng đầu vào và đầu ra nhân với kích thước trường tiếp nhận, nếu có.Tuyên ngôn
public func glorotNormal<Scalar: TensorFlowFloatingPoint>( seed: TensorFlowSeed = Context.local.randomSeed ) -> ParameterInitializer<Scalar>
Returns một chức năng mà tạo ra một tensor bằng cách thực hiện Ông (Kaiming) thống nhất khởi cho hình dạng nhất định, lấy mẫu ngẫu nhiên các giá trị vô hướng từ một phân bố đều giữa
-limit
vàlimit
, được tạo ra bởi các máy phát điện mặc định số ngẫu nhiên, nơi giới hạn làsqrt(6 / fanIn)
, vàfanIn
đại diện cho số tính năng đầu vào nhân với lĩnh vực tiếp nhận, nếu có.Tuyên ngôn
public func heUniform<Scalar: TensorFlowFloatingPoint>( seed: TensorFlowSeed = Context.local.randomSeed ) -> ParameterInitializer<Scalar>
Returns một chức năng mà tạo ra một tensor bằng cách thực hiện Ông (Kaiming) khởi bình thường đối với các hình dạng nhất định, một cách ngẫu nhiên các giá trị vô hướng lấy mẫu từ phân phối chuẩn cắt ngắn tập trung vào
0
với độ lệch chuẩnsqrt(2 / fanIn)
, nơifanIn
đại diện cho số tính năng đầu vào nhân với kích thước trường tiếp nhận, nếu có.Tuyên ngôn
public func heNormal<Scalar: TensorFlowFloatingPoint>( seed: TensorFlowSeed = Context.local.randomSeed ) -> ParameterInitializer<Scalar>
Returns một chức năng mà tạo ra một tensor bằng cách thực hiện LeCun thống nhất khởi cho hình dạng nhất định, lấy mẫu ngẫu nhiên các giá trị vô hướng từ một phân bố đều giữa
-limit
vàlimit
, được tạo ra bởi các máy phát điện mặc định số ngẫu nhiên, nơi giới hạn làsqrt(3 / fanIn)
, vàfanIn
đại diện cho số tính năng đầu vào nhân với lĩnh vực tiếp nhận, nếu có.Tuyên ngôn
public func leCunUniform<Scalar: TensorFlowFloatingPoint>( seed: TensorFlowSeed = Context.local.randomSeed ) -> ParameterInitializer<Scalar>
Returns một chức năng mà tạo ra một tensor bằng cách thực hiện LeCun khởi bình thường đối với các hình dạng nhất định, lấy mẫu ngẫu nhiên các giá trị vô hướng từ một phân phối chuẩn cắt ngắn tập trung vào
0
với độ lệch chuẩnsqrt(1 / fanIn)
, nơifanIn
đại diện cho số đầu vào tính năng nhân với kích thước trường tiếp nhận, nếu có.Tuyên ngôn
public func leCunNormal<Scalar: TensorFlowFloatingPoint>( seed: TensorFlowSeed = Context.local.randomSeed ) -> ParameterInitializer<Scalar>
Trả về một hàm tạo ra một tensor bằng cách khởi tạo tất cả các giá trị của nó một cách ngẫu nhiên từ một phân phối Chuẩn bị cắt ngắn. Các giá trị được tạo ra theo một phân phối chuẩn với trung bình
mean
và độ lệch chuẩnstandardDeviation
, ngoại trừ giá trị mà có độ lớn là hơn hai độ lệch chuẩn từ giá trị trung bình đang giảm và resampled.Tuyên ngôn
public func truncatedNormalInitializer<Scalar: TensorFlowFloatingPoint>( mean: Tensor<Scalar> = Tensor<Scalar>(0), standardDeviation: Tensor<Scalar> = Tensor<Scalar>(1), seed: TensorFlowSeed = Context.local.randomSeed ) -> ParameterInitializer<Scalar>
Thông số
mean
Trung bình của phân phối Chuẩn.
standardDeviation
Độ lệch chuẩn của phân phối Chuẩn.
Giá trị trả lại
Một chức năng khởi tạo tham số bình thường bị cắt ngắn.
Tuyên ngôn
public func == (lhs: TFETensorHandle, rhs: TFETensorHandle) -> Bool
Trả về một ma trận nhận dạng hoặc một lô ma trận.
Tuyên ngôn
Thông số
rowCount
Số hàng trong mỗi ma trận lô.
columnCount
Số lượng cột trong mỗi ma trận lô.
batchShape
Các kích thước lô hàng đầu của tensor được trả về.
Tính toán dấu vết của ma trận theo lô tùy chọn. Dấu vết là tổng dọc theo đường chéo chính của mỗi ma trận trong cùng nhất.
Đầu vào là một tensor với hình dạng
[..., M, N]
. Đầu ra là một tensor với hình dạng[...]
.Điều kiện tiên quyết
matrix
phải là một tensor với hình dạng[..., M, N]
.Tuyên ngôn
@differentiable(wrt: matrix) public func trace<T>(_ matrix: Tensor<T>) -> Tensor<T> where T : Numeric, T : TensorFlowScalar
Thông số
matrix
Một tensor hình dạng
[..., M, N]
.Trả về phân tích Cholesky của một hoặc nhiều ma trận vuông.
Đầu vào là một tensor hình dạng
[..., M, M]
có 2 kích thước-hầu hết nội thành ma trận vuông.Đầu vào phải đối xứng và xác định dương. Chỉ phần hình tam giác dưới của đầu vào sẽ được sử dụng cho thao tác này. Phần hình tam giác phía trên sẽ không được đọc.
Đầu ra là một tensor của hình dạng giống như đầu vào có chứa các phân tách Cholesky cho tất cả submatrices đầu vào
[..., :, :]
.Tuyên ngôn
@differentiable public func cholesky<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Thông số
input
Một tensor hình dạng
[..., M, M]
.Returns giải pháp
x
để các hệ phương trình tuyến tính đại diện bởiAx = b
.Điều kiện tiên quyết
matrix
phải là một tensor với hình dạng[..., M, M]
.Điều kiện tiên quyết
rhs
phải là một tensor với hình dạng[..., M, K]
.Tuyên ngôn
@differentiable public func triangularSolve<T: TensorFlowFloatingPoint>( matrix: Tensor<T>, rhs: Tensor<T>, lower: Bool = true, adjoint: Bool = false ) -> Tensor<T>
Thông số
matrix
Các đầu vào tam giác hệ số ma trận, đại diện cho
A
trongAx = b
.rhs
Giá trị bên phải, đại diện cho
b
trongAx = b
.lower
Cho dù
matrix
là tam giác thấp hơn (true
) hoặc hình tam giác trên (false
). Giá trị mặc định làtrue
.adjoint
Nếu
true
, giải quyết với các liên hợp củamatrix
thay vìmatrix
. Giá trị mặc định làfalse
.Giá trị trả lại
Các giải pháp
x
để các hệ phương trình tuyến tính đại diện bởiAx = b
.x
có hình dạng giống nhưb
.Tính toán thiệt hại L1 giữa
expected
vàpredicted
.loss = reduction(abs(expected - predicted))
Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán sự mất mát L2 giữa
expected
vàpredicted
.loss = reduction(square(expected - predicted))
Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính giá trị trung bình của sự khác biệt tuyệt đối giữa các nhãn và dự đoán.
loss = mean(abs(expected - predicted))
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func meanAbsoluteError<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Tính toán trung bình của bình phương sai số giữa các nhãn và dự đoán.
loss = mean(square(expected - predicted))
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func meanSquaredError<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Tính toán sai số logarit trung bình bình phương giữa
predicted
vàexpected
loss = square(log(expected) - log(predicted))
Ghi chú
Mục tensor tiêu cực sẽ được kẹp ở
0
để tránh hành vi logarit không xác định, nhưlog(_:)
là undefined cho số thực âm.Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func meanSquaredLogarithmicError<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Tính toán sai số tỷ lệ tuyệt đối trung bình giữa
predicted
vàexpected
.loss = 100 * mean(abs((expected - predicted) / abs(expected)))
Tuyên ngôn
@differentiable(wrt: predicted) @differentiable(wrt: (predicted, expected) public func meanAbsolutePercentageError<Scalar: TensorFlowFloatingPoint>( predicted: Tensor<Scalar>, expected: Tensor<Scalar> ) -> Tensor<Scalar>
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
Tính toán sự mất mát bản lề giữa
predicted
vàexpected
.loss = reduction(max(0, 1 - predicted * expected))
expected
giá trị được kỳ vọng sẽ là -1 hoặc 1.Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán sự mất mát bản lề bình phương giữa
predicted
vàexpected
.loss = reduction(square(max(0, 1 - predicted * expected)))
expected
giá trị được kỳ vọng sẽ là -1 hoặc 1.Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán sự mất mát bản lề phân loại giữa
predicted
vàexpected
.loss = maximum(negative - positive + 1, 0)
nơinegative = max((1 - expected) * predicted)
vàpositive = sum(predicted * expected)
Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính logarit của cosin hypebol của sai số dự đoán.
logcosh = log((exp(x) + exp(-x))/2)
, trong đó x là lỗipredicted - expected
Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán sự mất mát Poisson giữa dự đoán và mong đợi Sự mất mát Poisson là giá trị trung bình của các yếu tố của
Tensor
predicted - expected * log(predicted)
.Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính Kullback-Leibler mất chênh lệch giữa
expected
vàpredicted
.loss = reduction(expected * log(expected / predicted))
Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán entropy chéo softmax thưa thớt (entropy chéo phân loại) giữa logits và nhãn. Sử dụng chức năng suy hao chéo này khi có hai hoặc nhiều lớp nhãn. Chúng tôi mong đợi các nhãn được cung cấp dưới dạng số nguyên. Nên có
# classes
giá trị điểm cho mỗi tính năng nổi chologits
và một giá trị dấu chấm duy nhất cho mỗi tính năng choexpected
.Tuyên ngôn
Thông số
logits
Đầu ra được mã hóa một nóng từ mạng nơ-ron.
labels
Các chỉ số (không lập chỉ mục) của các đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán entropy chéo softmax thưa thớt (entropy chéo phân loại) giữa logits và nhãn. Sử dụng chức năng suy hao chéo này khi có hai hoặc nhiều lớp nhãn. Chúng tôi hy vọng nhãn để được cung cấp cung cấp trong một
one_hot
đại diện. Nên có# classes
giá trị dấu chấm động mỗi tính năng.Tuyên ngôn
Thông số
logits
Xác suất nhật ký chưa được chia tỷ lệ từ mạng nơ-ron.
probabilities
Giá trị xác suất tương ứng với đầu ra chính xác. Mỗi hàng phải là một phân phối xác suất hợp lệ.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán entropy chéo sigmoid (entropy chéo nhị phân) giữa logits và nhãn. Sử dụng tổn thất entropy chéo này khi chỉ có hai lớp nhãn (giả sử là 0 và 1). Đối với mỗi ví dụ, phải có một giá trị dấu phẩy động duy nhất cho mỗi dự đoán.
Tuyên ngôn
Thông số
logits
Đầu ra chưa được chia tỷ lệ của mạng nơ-ron.
labels
Giá trị số nguyên tương ứng với đầu ra chính xác.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
Tính toán sự mất mát Huber giữa
predicted
vàexpected
.Đối với mỗi giá trị
x
trongerror = expected - predicted
:-
0.5 * x^2
nếu|x| <= δ
. 0.5 * δ^2 + δ * (|x| - δ)
khác.Nguồn: bài viết Wikipedia .
Tuyên ngôn
Thông số
predicted
Kết quả dự đoán từ mạng nơ-ron.
expected
Giá trị mong đợi, tức là mục tiêu, tương ứng với đầu ra chính xác.
delta
Một đại lượng vô hướng dấu chấm động đại diện cho điểm mà hàm mất mát Huber thay đổi từ bậc hai sang tuyến tính.
reduction
Giảm áp dụng cho các giá trị tổn thất theo phần tử được tính toán.
-
Trả về giá trị tuyệt đối của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func abs<T>(_ x: Tensor<T>) -> Tensor<T> where T : SignedNumeric, T : TensorFlowScalar
Trả về lôgarit tự nhiên của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func log<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về logarit cơ số hai của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func log2<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về logarit cơ số 10 của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func log10<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Returns logarit của
1 + x
yếu tố khôn ngoan.Tuyên ngôn
@differentiable public func log1p<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Returns
log(1 - exp(x))
sử dụng một cách tiếp cận số lượng ổn định.Ghi chú
Phương pháp được thể hiện trong phương trình 7: https://cran.r-project.org/web/packages/Rmpfr/vignettes/log1mexp-note.pdf .Tuyên ngôn
@differentiable public func log1mexp<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về sin của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func sin<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về cosine của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func cos<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về tiếp tuyến của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func tan<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về sin hyperbol của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func sinh<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về cosin hyperbol của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func cosh<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về tiếp tuyến hyperbol của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func tanh<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về cosin nghịch đảo của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func acos<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về sin nghịch đảo của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func asin<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về tiếp tuyến nghịch đảo của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func atan<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về cosin hyperbol nghịch đảo của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func acosh<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về sin hyperbol nghịch đảo của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func asinh<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về tang hyperbol nghịch đảo của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func atanh<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về căn bậc hai của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func sqrt<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về căn bậc hai nghịch đảo của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func rsqrt<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về cấp số nhân của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func exp<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về hai được nâng lên thành lũy thừa của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func exp2<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về mười được nâng lên thành lũy thừa của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func exp10<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về số mũ của
x - 1
yếu tố khôn ngoan.Tuyên ngôn
@differentiable public func expm1<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về các giá trị của tensor được chỉ định được làm tròn đến số nguyên gần nhất, tính theo phần tử.
Tuyên ngôn
@differentiable public func round<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về giá trị trần của phần tử tensor được chỉ định.
Tuyên ngôn
@differentiable public func ceil<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về tầng của phần tử tensor được chỉ định.
Tuyên ngôn
@differentiable public func floor<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về một chỉ báo về dấu của phần tử tensor được chỉ định-khôn ngoan. Cụ thể, tính
y = sign(x) = -1
nếux < 0
; 0 nếux == 0
; 1 nếux > 0
.Tuyên ngôn
@differentiable public func sign<T>(_ x: Tensor<T>) -> Tensor<T> where T : Numeric, T : TensorFlowScalar
Trả về sigmoid của phần tử tensor được chỉ định-khôn ngoan. Cụ thể, tính
1 / (1 + exp(-x))
.Tuyên ngôn
@differentiable public func sigmoid<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về log-sigmoid của phần tử tensor được chỉ định-khôn ngoan. Cụ thể,
log(1 / (1 + exp(-x)))
. Cho sự ổn định số, chúng tôi sử dụng-softplus(-x)
.Tuyên ngôn
@differentiable public func logSigmoid<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về softplus của phần tử tensor được chỉ định-khôn ngoan. Cụ thể, tính
log(exp(features) + 1)
.Tuyên ngôn
@differentiable public func softplus<T>(_ features: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về softsign của phần tử tensor được chỉ định-khôn ngoan. Cụ thể, tính
features/ (abs(features) + 1)
.Tuyên ngôn
@differentiable public func softsign<T>(_ features: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về softmax của tensor được chỉ định dọc theo trục cuối cùng. Cụ thể, tính
exp(x) / exp(x).sum(alongAxes: -1)
.Tuyên ngôn
@differentiable public func softmax<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về softmax của tensor được chỉ định dọc theo trục được chỉ định. Cụ thể, tính
exp(x) / exp(x).sum(alongAxes: axis)
.Tuyên ngôn
@differentiable public func softmax<T>(_ x: Tensor<T>, alongAxis axis: Int) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về log-softmax của phần tử tensor được chỉ định-khôn ngoan.
Tuyên ngôn
@differentiable public func logSoftmax<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về một tensor bằng cách áp dụng một đơn vị tuyến tính hàm mũ. Cụ thể, tính
exp(x) - 1
nếu <0,x
khác. Xem nhanh và chính xác Sâu Mạng Learning bởi Exponential tuyến tính đơn vị (Elus)Tuyên ngôn
@differentiable public func elu<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về kích hoạt Đơn vị tuyến tính lỗi Gaussian (GELU) của phần tử tensor được chỉ định-khôn ngoan.
Cụ thể,
gelu
xấp xỉxP(X <= x)
, nơiP(X <= x)
là phân phối tích lũy chuẩn Gaussian, bằng cách tính toán: x * [0,5 * (1 + tanh [√ (2 / π) * (x + 0,044715 * x ^ 3)])].Tuyên ngôn
@differentiable public func gelu<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về một tensor bằng cách áp dụng chức năng kích hoạt ReLU cho phần tử tensor được chỉ định-khôn ngoan. Cụ thể, tính
max(0, x)
.Tuyên ngôn
@differentiable public func relu<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Returns một tensor bằng cách áp dụng các chức năng kích hoạt ReLU6, cụ thể là
min(max(0, x), 6)
.Tuyên ngôn
@differentiable public func relu6<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về tensor bằng cách áp dụng chức năng kích hoạt ReLU bị rò rỉ cho phần tử tensor được chỉ định-khôn ngoan. Cụ thể, tính
max(x, x * alpha)
.Tuyên ngôn
@differentiable(wrt: x) public func leakyRelu<T: TensorFlowFloatingPoint>( _ x: Tensor<T>, alpha: Double = 0.2 ) -> Tensor<T>
Returns một tensor bằng cách áp dụng các chức năng kích hoạt Selu, cụ thể là
scale * alpha * (exp(x) - 1)
nếux < 0
, vàscale * x
khác.Ghi chú
Điều này được thiết kế để được sử dụng cùng với các bộ khởi tạo lớp tỷ lệ phương sai. Vui lòng tham khảo Tự Bình thường hoá Neural Networks để biết thêm thông tin.Tuyên ngôn
@differentiable public func selu<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Returns một tensor bằng cách áp dụng các chức năng kích hoạt swish, cụ thể là
x * sigmoid(x)
.Nguồn: (. Ramachandran et al 2017) “Đang tìm kiếm các chức năng kích hoạt” https://arxiv.org/abs/1710.05941
Tuyên ngôn
@differentiable public func swish<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Returns một tensor bằng cách áp dụng cứng hàm kích hoạt sigmoid, cụ thể là
Relu6(x+3)/6
.Nguồn: “Đang tìm kiếm các MobileNetV3” (. Howard et al 2019) https://arxiv.org/abs/1905.02244
Tuyên ngôn
@differentiable public func hardSigmoid<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Returns một tensor bằng cách áp dụng cứng hàm kích hoạt swish, cụ thể là
x * Relu6(x+3)/6
.Nguồn: “Đang tìm kiếm các MobileNetV3” (. Howard et al 2019) https://arxiv.org/abs/1905.02244
Tuyên ngôn
@differentiable public func hardSwish<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Returns một tensor bằng cách áp dụng các chức năng kích hoạt mish, cụ thể là
x * tanh(softplus(x))
.Nguồn: “Mish: Một Tự regularized Non-Monotonic thần kinh kích hoạt chức năng” https://arxiv.org/abs/1908.08681
Tuyên ngôn
@differentiable public func mish<T>(_ x: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về lũy thừa của tensor thứ nhất cho tensor thứ hai.
Tuyên ngôn
@differentiable public func pow<T>(_ lhs: Tensor<T>, _ rhs: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về lũy thừa của vô hướng cho tensor, phát sóng vô hướng.
Tuyên ngôn
@differentiable(wrt: rhs) public func pow<T>(_ lhs: T, _ rhs: Tensor<T>) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả lại lũy thừa của tensor về vô hướng, phát sóng vô hướng.
Tuyên ngôn
@differentiable(wrt: lhs) public func pow<T>(_ lhs: Tensor<T>, _ rhs: T) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả lại lũy thừa của tensor về vô hướng, phát sóng vô hướng.
Tuyên ngôn
@differentiable public func pow<T>(_ x: Tensor<T>, _ n: Int) -> Tensor<T> where T : TensorFlowFloatingPoint
Trả về phần tử khôn ngoan
n
th thư mục gốc của tensor.Tuyên ngôn
@differentiable public func root<T>(_ x: Tensor<T>, _ n: Int) -> Tensor<T> where T : TensorFlowFloatingPoint
Lợi nhuận chênh lệch bình phương giữa
x
vày
.Tuyên ngôn
@differentiable public func squaredDifference<T>(_ x: Tensor<T>, _ y: Tensor<T>) -> Tensor<T> where T : Numeric, T : TensorFlowScalar
Giá trị trả lại
(x - y) ^ 2
.Trả về giá trị tối đa của phần tử là hai tenxơ.
Ghi chú
max
hỗ trợ phát sóng.Tuyên ngôn
@differentiable public func max<T>(_ lhs: Tensor<T>, _ rhs: Tensor<T>) -> Tensor<T> where T : Comparable, T : Numeric, T : TensorFlowScalar
Trả về giá trị tối đa theo phần tử của đại lượng vô hướng và tenxơ, phát sóng đại lượng vô hướng.
Tuyên ngôn
@differentiable(wrt: rhs) public func max<T>(_ lhs: T, _ rhs: Tensor<T>) -> Tensor<T> where T : Comparable, T : Numeric, T : TensorFlowScalar
Trả về giá trị tối đa theo phần tử của đại lượng vô hướng và tenxơ, phát sóng đại lượng vô hướng.
Tuyên ngôn
@differentiable(wrt: lhs) public func max<T>(_ lhs: Tensor<T>, _ rhs: T) -> Tensor<T> where T : Comparable, T : Numeric, T : TensorFlowScalar
Trả về giá trị tối thiểu theo phần tử của hai tenxơ.
Ghi chú
min
hỗ trợ phát sóng.Tuyên ngôn
@differentiable public func min<T>(_ lhs: Tensor<T>, _ rhs: Tensor<T>) -> Tensor<T> where T : Comparable, T : Numeric, T : TensorFlowScalar
Trả về giá trị tối thiểu theo phần tử của đại lượng vô hướng và tenxơ, phát sóng đại lượng vô hướng.
Tuyên ngôn
@differentiable(wrt: rhs) public func min<T>(_ lhs: T, _ rhs: Tensor<T>) -> Tensor<T> where T : Comparable, T : Numeric, T : TensorFlowScalar
Trả về giá trị tối thiểu theo phần tử của đại lượng vô hướng và tenxơ, phát sóng đại lượng vô hướng.
Tuyên ngôn
@differentiable(wrt: lhs) public func min<T>(_ lhs: Tensor<T>, _ rhs: T) -> Tensor<T> where T : Comparable, T : Numeric, T : TensorFlowScalar
Returns sự tương đồng cosin giữa
x
vày
.Tuyên ngôn
@differentiable public func cosineSimilarity<Scalar: TensorFlowFloatingPoint>( _ x: Tensor<Scalar>, _ y: Tensor<Scalar> ) -> Tensor<Scalar>
Lợi nhuận khoảng cách cosin giữa
x
vày
. Khoảng cách cosin được định nghĩa là1 - cosineSimilarity(x, y)
.Tuyên ngôn
@differentiable public func cosineDistance<Scalar: TensorFlowFloatingPoint>( _ x: Tensor<Scalar>, _ y: Tensor<Scalar> ) -> Tensor<Scalar>
Trả về một tích chập 1-D với đầu vào, bộ lọc, bước và khoảng đệm được chỉ định.
Điều kiện tiên quyết
input
phải có thứ hạng3
.Điều kiện tiên quyết
filter
phải có thứ hạng 3.Tuyên ngôn
@differentiable(wrt: (input, filter) public func conv1D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filter: Tensor<Scalar>, stride: Int = 1, padding: Padding = .valid, dilation: Int = 1 ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filter
Bộ lọc tích chập.
stride
Sải chân của bộ lọc trượt.
padding
Phần đệm cho hoạt động.
dilation
Hệ số giãn nở.
Trả về một tích chập 2-D với đầu vào, bộ lọc, bước và khoảng đệm được chỉ định.
Điều kiện tiên quyết
input
phải có thứ hạng4
.Điều kiện tiên quyết
filter
phải có thứ hạng 4.Tuyên ngôn
@differentiable(wrt: (input, filter) public func conv2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filter: Tensor<Scalar>, strides: (Int, Int, Int, Int) = (1, 1, 1, 1), padding: Padding = .valid, dilations: (Int, Int, Int, Int) = (1, 1, 1, 1) ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filter
Bộ lọc tích chập.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động
dilations
Hệ số giãn nở cho từng thứ nguyên của đầu vào.
Trả về một tích chập chuyển vị 2-D với đầu vào, bộ lọc, bước và khoảng đệm được chỉ định.
Điều kiện tiên quyết
input
phải có thứ hạng4
.Điều kiện tiên quyết
filter
phải có thứ hạng 4.Tuyên ngôn
@differentiable(wrt: (input, filter) public func transposedConv2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, shape: [Int64], filter: Tensor<Scalar>, strides: (Int, Int, Int, Int) = (1, 1, 1, 1), padding: Padding = .valid, dilations: (Int, Int, Int, Int) = (1, 1, 1, 1) ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
shape
Hình dạng đầu ra của hoạt động giải mã.
filter
Bộ lọc tích chập.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động
dilations
Hệ số giãn nở cho từng thứ nguyên của đầu vào.
Trả về một tích chập 3-D với đầu vào, bộ lọc, bước, khoảng đệm và độ giãn đã chỉ định.
Điều kiện tiên quyết
input
phải có thứ hạng5
.Điều kiện tiên quyết
filter
phải có thứ hạng 5.Tuyên ngôn
@differentiable(wrt: (input, filter) public func conv3D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filter: Tensor<Scalar>, strides: (Int, Int, Int, Int, Int) = (1, 1, 1, 1, 1), padding: Padding = .valid, dilations: (Int, Int, Int, Int, Int) = (1, 1, 1, 1, 1) ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filter
Bộ lọc tích chập.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động.
dilations
Hệ số giãn nở cho từng thứ nguyên của đầu vào.
Trả về một tích chập theo chiều sâu 2-D với đầu vào, bộ lọc, bước và khoảng đệm được chỉ định.
Điều kiện tiên quyết
input
phải có thứ hạng 4.Điều kiện tiên quyết
filter
phải có thứ hạng 4.Tuyên ngôn
@differentiable(wrt: (input, filter) public func depthwiseConv2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filter: Tensor<Scalar>, strides: (Int, Int, Int, Int), padding: Padding ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filter
Bộ lọc tích chập theo chiều sâu.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động.
Trả về tổng hợp tối đa 2-D, với kích thước bộ lọc, bước và khoảng đệm được chỉ định.
Tuyên ngôn
@differentiable(wrt: input) public func maxPool2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filterSize: (Int, Int, Int, Int), strides: (Int, Int, Int, Int), padding: Padding ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filterSize
Kích thước của nhân tổng hợp.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động.
Trả về tổng hợp tối đa 3-D, với kích thước bộ lọc, bước và khoảng đệm được chỉ định.
Tuyên ngôn
@differentiable(wrt: input) public func maxPool3D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filterSize: (Int, Int, Int, Int, Int), strides: (Int, Int, Int, Int, Int), padding: Padding ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filterSize
Kích thước của nhân tổng hợp.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động.
Trả về tổng hợp trung bình 2-D, với kích thước bộ lọc, bước và khoảng đệm được chỉ định.
Tuyên ngôn
@differentiable(wrt: input) public func avgPool2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filterSize: (Int, Int, Int, Int), strides: (Int, Int, Int, Int), padding: Padding ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filterSize
Kích thước của nhân tổng hợp.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động.
Trả về tổng hợp trung bình 3-D, với kích thước bộ lọc, bước và khoảng đệm được chỉ định.
Tuyên ngôn
@differentiable(wrt: input) public func avgPool3D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, filterSize: (Int, Int, Int, Int, Int), strides: (Int, Int, Int, Int, Int), padding: Padding ) -> Tensor<Scalar>
Thông số
input
Đầu vào.
filterSize
Kích thước của nhân tổng hợp.
strides
Các bước của bộ lọc trượt cho từng thứ nguyên của đầu vào.
padding
Phần đệm cho hoạt động.
Trả về tổng hợp tối đa theo phân số 2-D, với tỷ lệ tổng hợp được chỉ định.
Lưu ý:
fractionalMaxPool
không có một thực hiện XLA, và do đó có thể có tác động hiệu suất.Tuyên ngôn
@differentiable(wrt: input) public func fractionalMaxPool2D<Scalar: TensorFlowFloatingPoint>( _ input: Tensor<Scalar>, poolingRatio: (Double, Double, Double, Double), pseudoRandom: Bool = false, overlapping: Bool = false, deterministic: Bool = false, seed: Int64 = 0, seed2: Int64 = 0 ) -> Tensor<Scalar>
Thông số
input
Một Tensor. 4-D với hình dạng
[batch, height, width, channels]
.poolingRatio
Một danh sách các
Doubles
. Bằng việc kết hợp tỷ lệ cho mỗi kích thước củainput
, hiện chỉ hỗ trợ hàng và col chiều và nên được> = 1,0.pseudoRandom
Một tùy chọn
Bool
. Mặc định làfalse
. Khi thiết lập đểtrue
, tạo ra chuỗi tổng hợp một cách giả ngẫu nhiên, nếu không, một cách ngẫu nhiên.overlapping
Một tùy chọn
Bool
. Mặc định làfalse
. Khi thiết lập đểtrue
, nó có nghĩa là khi tổng hợp, các giá trị ở ranh giới của các tế bào tổng hợp liền kề được sử dụng bởi cả hai tế bào.deterministic
Một tùy chọn
Bool
. Khi thiết lập đểtrue
, một khu vực tổng hợp cố định sẽ được sử dụng khi iterating qua nút fractionalMaxPool2D trong đồ thị tính toán.seed
Một tùy chọn
Int64
. Mặc định là0
. Nếu được đặt là khác 0, bộ tạo số ngẫu nhiên sẽ được khởi tạo bởi hạt giống đã cho.seed2
Một tùy chọn
Int64
. Mặc định là0
. Một hạt giống thứ hai để tránh va chạm hạt.Trả về một bản sao của
input
nơi các giá trị từ chiều sâu đang di chuyển trong không gian khối với chiều cao và kích thước chiều rộng.Ví dụ, với một đầu vào hình dạng
[1, 2, 2, 1]
, data_format = “NHWC” và BLOCK_SIZE = 2:x = [[[[1], [2]], [[3], [4]]]]
Đây hoạt động sẽ ra một tensor hình dạng
[1, 1, 1, 4]
:[[[[1, 2, 3, 4]]]]
Ở đây, đầu vào có một lô 1 và mỗi yếu tố hàng loạt có hình dạng
[2, 2, 1]
, sản lượng tương ứng sẽ có một yếu tố duy nhất (tức là chiều rộng và chiều cao đều 1) và sẽ có độ sâu 4 kênh (1 * block_size * block_size). Hình dạng yếu tố đầu ra là[1, 1, 4]
.Đối với một tensor đầu vào với độ sâu lớn hơn, ở đây hình dạng
[1, 2, 2, 3]
, ví dụ:x = [[[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]]
Thao tác này, cho BLOCK_SIZE 2, sẽ trả lại tensor sau hình dạng
[1, 1, 1, 12]
[[[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]]]
Tương tự như vậy, đối với đầu vào sau hình dạng
[1 4 4 1]
, và một kích thước khối 2:x = [[[[1], [2], [5], [6]], [[3], [4], [7], [8]], [[9], [10], [13], [14]], [[11], [12], [15], [16]]]]
các nhà điều hành sẽ trả lại tensor sau hình dạng
[1 2 2 4]
:x = [[[[1, 2, 3, 4], [5, 6, 7, 8]], [[9, 10, 11, 12], [13, 14, 15, 16]]]]
Điều kiện tiên quyết
input.rank == 4 && b >= 2
.Điều kiện tiên quyết
Số lượng các tính năng phải chia hết cho vuôngb
.Tuyên ngôn
@differentiable(wrt: input) public func depthToSpace<Scalar>(_ input: Tensor<Scalar>, blockSize b: Int) -> Tensor<Scalar> where Scalar : TensorFlowScalar
Trả về một bản sao của
input
nơi các giá trị từ chiều cao và chiều rộng được chuyển đến chiều sâu.Ví dụ, với một đầu vào hình dạng
[1, 2, 2, 1]
, data_format = “NHWC” và BLOCK_SIZE = 2:x = [[[[1], [2]], [[3], [4]]]]
Đây hoạt động sẽ ra một tensor hình dạng
[1, 1, 1, 4]
:[[[[1, 2, 3, 4]]]]
Ở đây, đầu vào có một lô 1 và mỗi yếu tố hàng loạt có hình dạng
[2, 2, 1]
, sản lượng tương ứng sẽ có một yếu tố duy nhất (tức là chiều rộng và chiều cao đều 1) và sẽ có độ sâu 4 kênh (1 * block_size * block_size). Hình dạng yếu tố đầu ra là[1, 1, 4]
.Đối với một tensor đầu vào với độ sâu lớn hơn, ở đây hình dạng
[1, 2, 2, 3]
, ví dụ:x = [[[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]]
This operation, for block_size of 2, will return the following tensor of shape
[1, 1, 1, 12]
[[[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]]]
Similarly, for the following input of shape
[1 4 4 1]
, and a block size of 2:x = [[[[1], [2], [5], [6]], [[3], [4], [7], [8]], [[9], [10], [13], [14]], [[11], [12], [15], [16]]]]
the operator will return the following tensor of shape
[1 2 2 4]
:x = [[[[1, 2, 3, 4], [5, 6, 7, 8]], [[9, 10, 11, 12], [13, 14, 15, 16]]]]
Precondition
input.rank == 4 && b >= 2
.Precondition
The height of the input must be divisible byb
.Precondition
The width of the input must be divisible byb
.Tuyên ngôn
@differentiable(wrt: input) public func spaceToDepth<Scalar>(_ input: Tensor<Scalar>, blockSize b: Int) -> Tensor<Scalar> where Scalar : TensorFlowScalar
Builds a per-weight optimizer for LARS ( https://arxiv.org/pdf/1708.03888.pdf ).
Tuyên ngôn
public func makeLARS( learningRate: Float = 0.01, momentum: Float = 0.9, trustCoefficient: Float = 0.001, nesterov: Bool = false, epsilon: Float = 0.0, weightDecay: Float = 0.0 ) -> ParameterGroupOptimizer
Builds a SGD based per-weight optimizer.
Tuyên ngôn
public func makeSGD( learningRate: Float = 0.01, momentum: Float = 0, weightDecay: Float = 0, nesterov: Bool = false ) -> ParameterGroupOptimizer
Builds a per-weight optimizer for Adam with weight decay.
Tuyên ngôn
public func makeAdam( learningRate: Float = 0.01, beta1: Float = 0.9, beta2: Float = 0.999, weightDecayRate: Float = 0.01, epsilon: Float = 1e-6 ) -> ParameterGroupOptimizer
Generates a new random seed for TensorFlow.
Tuyên ngôn
public func randomSeedForTensorFlow(using seed: TensorFlowSeed? = nil) -> TensorFlowSeed
Concatenates two values.
Tuyên ngôn
@differentiable public func concatenate<T: Mergeable>( _ first: T, _ second: T ) -> T
Adds two values and produces their sum.
Tuyên ngôn
@differentiable public func sum<T: Mergeable>( _ first: T, _ second: T ) -> T
Averages two values.
Tuyên ngôn
@differentiable public func average<T: Mergeable>( _ first: T, _ second: T ) -> T
Multiplies two values.
Tuyên ngôn
@differentiable public func multiply<T: Mergeable>( _ first: T, _ second: T ) -> T
Stack two values.
Tuyên ngôn
@differentiable public func stack<T: Mergeable>( _ first: T, _ second: T ) -> T
Tuyên ngôn
public func PrintX10Metrics()
Creates a string summary of a list of training and testing stats.
Tuyên ngôn
public func formatStatistics(_ stats: (train: HostStatistics, test: HostStatistics)) -> String
Tuyên ngôn
public func formatStatistics(train trainStats: HostStatistics, test testStats: HostStatistics) -> String
Maps a function over n threads.
Tuyên ngôn
public func runOnNThreads<R>(_ nThreads: Int, _ body: @escaping (Int) -> R) -> [R]