diff --git a/deps/build.jl b/deps/build.jl index 1a104aed..caabe43d 100644 --- a/deps/build.jl +++ b/deps/build.jl @@ -1,8 +1,8 @@ using PyCall using Conda -const cur_version = "1.10.0" -const cur_py_version = "1.10.0" +const cur_version = "1.12.0" +const cur_py_version = "1.12.0" ############################ diff --git a/deps/default_imports.txt b/deps/default_imports.txt index 9368e056..839cf659 100644 --- a/deps/default_imports.txt +++ b/deps/default_imports.txt @@ -166,3 +166,6 @@ Rank Conv2DBackpropInput Svd Cross +FFT +ComplexAbs +MatrixSolve diff --git a/src/ops/transformations.jl b/src/ops/transformations.jl index 2d17705c..9b9369fa 100644 --- a/src/ops/transformations.jl +++ b/src/ops/transformations.jl @@ -380,16 +380,16 @@ Returns: local result with_op_name(name, "Transpose") do if perm === nothing - r = range(constant(0), LinearAlgebra.rank(n)-1) + r = range(constant(1), LinearAlgebra.rank(n)) perm = reverse(r, [true]) end - result = Ops.transpose(n, perm) + result = Ops.transpose(n, perm .- 1) end result end @op function Base.permutedims(n::AbstractTensor, perm; name=nothing) - transpose(n, perm .- 1; name=name) + transpose(n, perm; name=name) end @define_unary Base.adjoint transpose diff --git a/test/transformations.jl b/test/transformations.jl index 1d9658dc..4c0e9980 100644 --- a/test/transformations.jl +++ b/test/transformations.jl @@ -33,6 +33,14 @@ end @testset "Permute Dims" begin @test ones(Float32, 4,3) == run(sess, transpose(ones(Tensor, (3, 4)))) @test ones(Float32, 4,3,2) == run(sess, permutedims(ones(Tensor, (4, 2, 3)), [1, 3, 2])) + + A = rand(Float32, 5, 5, 5) + B = permutedims(A, [3,2,1]) + c = TensorFlow.constant(A) + d = transpose(c, [3,2,1]) + result = run(sess, d) + @test maximum(abs.(result-B))≈0.0 + end