问题描述
我正在与julia学习深度学习,并编写了这些代码。
using Linearalgebra
using Plots
using Flux.Data
using PyCall
@pyimport pickle
@pyimport numpy as np
using ScikitLearn
@sk_import datasets: fetch_openml
println("import fin")
我得到这些输出。
┌ Warning: `@pyimport foo` is deprecated in favor of `foo = pyimport("foo")`.
│ caller = _pywrap_pyimport(::PyObject) at PyCall.jl:399
└ @ PyCall C:\Users\Username\.julia\packages\PyCall\zqDXB\src\PyCall.jl:399
import fin
但是我收到完成标志后会花费更多时间。我在下一个脚本中运行了一些没什么特别的代码。
function AND(x1,x2)
x = [x1 x2]
w = [0.5 0.5] # w1 = w2 ≤ theta
b = -0.6
tmp = dot(x,w) + b
if tmp <= 0
return 0
elseif tmp > 0 # 0.5를 넘으면 1,못넘으면 0 반환
return 1
end
end
不仅代码,而且markdown文档在导入后还需要一些时间才能运行。是什么原因导致这个问题?
解决方法
您的问题有两个问题:
-
您应该将python模块导入为:
using PyCall pickle = pyimport("pickle") np = pyimport("numpy")
-
在Julia中导入模块后,该模块已经过预编译,因此需要时间。如果要避免进行预编译,则需要构建自己的custom Julia image。