小编enu*_*ris的帖子

导入tensorflow会导致python 3.6.5错误

Tensorflow曾经在我的电脑上工作.但是现在当我尝试import tensorflowpython本身出错时.我没有收到追溯电话,告诉我错误是什么.我得到一个窗口的提示,上面写着"Python已停止工作".当我点击"debug"时,我得到的是"python.exe中发生未处理的win32异常".我从来没有一个python包实际上错误输出python本身对我来说,如果我没有安装正确的东西,我总是只有python引发的回溯错误.

我已经尝试卸载并重新安装tensorflow(有效地从1.7.0更新到1.12.0),但这没有帮助.我不知道如何搜索这个问题的解决方案,因为我没有给出回溯或错误代码或错误消息,除了上面非常通用的一个.

我目前正在使用安装了tensorflow 1.12.0(仅限CPU)的python 3.6.5.我的操作系统是Windows 7 Enterprise 64位.

有任何想法吗?

编辑:我正在使用的python发行版是通过Anaconda,我试图直接通过anaconda提示符(命令行界面)运行python.

EDIT2:我使用faulthandler模块来查看是否可以从中获取堆栈跟踪,并且我得到了a Windows fatal exception: code 0xc0000139和a Windows fatal exception: access violation,以及链接到frozen importlib._bootstrap各种__init__.py模块中的各种代码行的一堆行.

编辑3:对于更多的上下文,这是在工作场所机器上安装了许多安全软件.

python python-3.x tensorflow

12
推荐指数
1
解决办法
1694
查看次数

keras plot_model告诉我安装pydot

我在Windows 10机器上使用python 3.6.3.我使用pip install安装了pydot和graphviz:

    py -m pip install pydot
    py -m pip install graphviz
Run Code Online (Sandbox Code Playgroud)

我也去了graphviz网站,下载并安装了windows版本:http://www.graphviz.org/Download_windows.php,默认安装到程序文件(x86).但是当我在keras中绘制我的模型时,我仍然得到错误,说我必须安装pydot和graphviz并且导入失败.我可以

    import pydot
    import graphviz
Run Code Online (Sandbox Code Playgroud)

在我的python控制台上就好了,他们没有错误.我还能做些什么来绘制我的神经网络图?

windows graphviz python-3.x pydot keras

5
推荐指数
1
解决办法
5401
查看次数

Python (Pytorch) 多处理抛出错误:连接被对等方重置和文件未找到

我正在尝试让一些东西与 keras 的“fit_generator”方法类似。基本上,我有一个(非常)大的小批量数据文件,我想让我的 CPU 抓取小批量数据并填充与我的 GPU 并行的队列,从队列中获取小批量数据并对其进行训练。通过让 CPU 与 GPU 并行工作(而不是让 CPU 抓取一个批次并让 GPU 在该批次上进行训练之前等待 CPU),我应该能够将训练时间减少大约一半。我对 CPU 获取一个小批量所需的时间进行了基准测试,并且它所花费的时间与我的 GPU 训练一个小批量所需的时间相当,因此 CPU 和 GPU 的并行化应该可以正常工作。我还没有在 pytorch 中找到内置方法来执行此操作,如果有,请告诉我。

所以我尝试使用 torch.multiprocessing 模块来做我想做的事情,但我无法完成训练,因为我总是在训练完成之前遇到某种错误。torch.multiprocessing 模块应该是一个包装器,其功能与常规多处理模块基本相同,只是它允许在进程之间共享 pytorch 张量。基本上,我已经将代码设置为具有 2 个函数,一个加载器函数和一个训练器函数,如下所示:

    def data_gen(que,PATH,epochs,steps_per_epoch,batch_size=32):
        for epoch in range(epochs):
            for j in range(steps_per_epoch):
                with h5py.File(PATH,'r') as f:
                    X = f['X'][j*batch_size:(j+1)*batch_size]
                    Y = f['Y'][j*batch_size:(j+1)*batch_size]

                    X = autograd.Variable(torch.Tensor(X).resize_(batch_size,256,25).cpu())
                    Y = autograd.Variable(torch.Tensor(Y).cpu())

                    que.put((X,Y))
            que.put('stop')
        que.close()
        return

    def train_network(que,net,optimizer,epochs):
        print('Training for %s epochs...' %epochs)
        for epoch in range(epochs):
            while(True):
                data = que.get()
                if(data …
Run Code Online (Sandbox Code Playgroud)

python multiprocessing pytorch

5
推荐指数
1
解决办法
7934
查看次数

查找 scipy 稀疏矩阵的一行中的前 n 个值

我有一个 CSR 格式的 scipy 稀疏矩阵。它的尺寸为 72665x72665,因此将此矩阵转换为稠密矩阵来执行运算是不切实际的(此矩阵的稠密表示大约为 40 gig)。该矩阵是对称的,有大约 8200 万个非零项 (~1.5%)。

我想要做的是,对于每一行,我想要获得最大 N 值的索引。如果这是一个 numpy 数组,我会这样做np.argpartition

    for row in matrix:
        top_n_idx = np.argpartition(row,-n)[-n:]
Run Code Online (Sandbox Code Playgroud)

对于稀疏矩阵,我可以做类似的事情吗?

python numpy scipy

4
推荐指数
1
解决办法
2483
查看次数

将 SQL 查询导入 Pandas 只产生 1 列

我正在尝试将复杂 SQL 查询的结果导入到 Pandas 数据框中。我的查询要求我创建几个临时表,因为我想要的最终结果表包含一些聚合。我的代码如下所示:

    cnxn = pyodbc.connect(r'DRIVER=foo;SERVER=bar;etc')
    cursor = cnxn.cursor()
    cursor.execute('SQL QUERY HERE')
    cursor.execute('SECONDARY SQL QUERY HERE')
    ...
    df = pd.DataFrame(cursor.fetchall(),columns = [desc[0] for desc in cursor.description])
Run Code Online (Sandbox Code Playgroud)

我收到一个错误,告诉我形状不匹配:

    ValueError: Shape of passed values is (1,900000),indices imply (5,900000)
Run Code Online (Sandbox Code Playgroud)

事实上,所有 SQL 查询的结果应该是一个有 5 列而不是 1 列的表。我已经使用 Microsoft SQL Server Management Studio 运行了 SQL 查询,它可以工作并返回我想要的 5 列表。我试图不将任何列名传递到数据帧中并打印出数据帧的头部,发现熊猫已将 5 列中的所有信息放入 1。每行中的值是由逗号分隔的 5 个值的列表,但 pandas 将整个列表视为 1 列。熊猫为什么要这样做?我也试过走这pd.read_sql条路线,但我仍然遇到同样的错误。

编辑:

我做了一些更多的调试,考虑到评论。该问题似乎并非源于我的查询是嵌套的。我尝试了一个简单的(一行)查询来返回一个 3 列表,但我仍然遇到相同的错误。打印出来fetchall()是这样的:

    [(str1,str2,str3,datetime.date(stuff),datetime.date(stuff)), 
    (str1,str2,str3,datetime.date(stuff),datetime.date(stuff)),...]  
Run Code Online (Sandbox Code Playgroud)

python sql pyodbc pandas

3
推荐指数
1
解决办法
3337
查看次数