小编Kar*_*rus的帖子

NumPy数组不是JSON可序列化的

创建NumPy数组并将其保存为Django上下文变量后,加载网页时收到以下错误:

array([   0,  239,  479,  717,  952, 1192, 1432, 1667], dtype=int64) is not JSON serializable
Run Code Online (Sandbox Code Playgroud)

这是什么意思?

python django json numpy

196
推荐指数
7
解决办法
18万
查看次数

使用Matplotlib绘制2D热图

使用Matplotlib,我想绘制一个2D热图.我的数据是一个n-by-n Numpy数组,每个数组的值介于0和1之间.所以对于这个数组的(i,j)元素,我想在我的(i,j)坐标上绘制一个正方形热图,其颜色与数组中元素的值成比例.

我怎样才能做到这一点?

python numpy matplotlib

103
推荐指数
6
解决办法
25万
查看次数

"扁平化"在克拉斯的作用

我试图了解该Flatten功能在Keras中的作用.下面是我的代码,这是一个简单的双层网络.它接收形状(3,2)的二维数据,并输出形状(1,4)的1维数据:

model = Sequential()
model.add(Dense(16, input_shape=(3, 2)))
model.add(Activation('relu'))
model.add(Flatten())
model.add(Dense(4))
model.compile(loss='mean_squared_error', optimizer='SGD')

x = np.array([[[1, 2], [3, 4], [5, 6]]])

y = model.predict(x)

print y.shape
Run Code Online (Sandbox Code Playgroud)

这打印出y形状(1,4).但是,如果我删除该Flatten行,则打印出y具有形状(1,3,4)的行.

我不明白这一点.根据我对神经网络的理解,该model.add(Dense(16, input_shape=(3, 2)))功能正在创建一个隐藏的全连接层,具有16个节点.这些节点中的每一个都连接到3x2输入元件中的每一个.因此,该第一层输出处的16个节点已经"平坦".因此,第一层的输出形状应为(1,16).然后,第二层将其作为输入,并输出形状(1,4)的数据.

因此,如果第一层的输出已经是"平坦的"和形状(1,16),为什么我需要进一步压平它?

谢谢!

machine-learning neural-network deep-learning keras tensorflow

79
推荐指数
4
解决办法
6万
查看次数

Django:模型中的列表字段?

在我的模型中,我想要一个包含三元组列表的字段.例如`[[1,3,4],[4,2,6],[8,12,3],[3,3,9]].是否有可以将此数据存储在数据库中的字段?

django django-orm

62
推荐指数
6
解决办法
9万
查看次数

Cmake使用"link_directories"找不到库

我是Ubuntu,我正在学习cmake和make,只是尝试一个简单的例子.我有两个目录:srcbuild.在src,我有两个文件:main.cppCMakeLists.txt,它有(仅)以下文本:

add_executable(test main.cpp)
link_directories(/usr/lib/x86_64-linux-gnu)
target_link_libraries(test protobuf)
Run Code Online (Sandbox Code Playgroud)

/usr/lib/x86_64-linux-gnu,有一个名为的共享库libprotobuf.so,我想链接.我main.cpp通过包含相关的头文件来使用此库中的函数#include <google/protobuf/message.h>.

现在,在我的build目录中,我运行cmake ../src,然后make.但是,然后我得到链接器错误,告诉我对protobuf库中的某些函数有未定义的引用.如果我搜索所有文件和子目录build,则不提及与protobuf相关的任何内容.

但是,如果我删除了link_directories我的CMakeLists.txt文件中的行,而是在指定可执行文件时写入库的完整路径,即target_link_libraries(test /usr/lib/x86_64-linux-gnu/libprotobuf.so)它编译并链接正常.

为什么link_directories不允许cmake找到这个库?

c++ makefile cmake

41
推荐指数
3
解决办法
5万
查看次数

在PyCharm中重命名文件

在PyCharm 3.4中,我想重命名IDE左侧显示的文件树上的文件.如果我右键单击某个文件,可以选择删除它,但不能重命名.同样,无法从"文件"或"编辑"菜单重命名它.有没有一个根本原因,为什么PyCharm不允许在IDE中使用它,或者我错过了正确的方法呢?

python pycharm

34
推荐指数
2
解决办法
2万
查看次数

在TensorFlow培训期间打印丢失

我正在看TensorFlow" MNIST for ML初学者 "教程,我希望在每个训练步骤后打印出训练损失.

我的训练循环目前看起来像这样:

for i in range(100):
    batch_xs, batch_ys = mnist.train.next_batch(100)
    sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
Run Code Online (Sandbox Code Playgroud)

现在,train_step定义为:

train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)
Run Code Online (Sandbox Code Playgroud)

cross_entropy我要打印的损失在哪里:

cross_entropy = -tf.reduce_sum(y_ * tf.log(y))
Run Code Online (Sandbox Code Playgroud)

打印这种方法的一种方法是cross_entropy在训练循环中明确计算:

for i in range(100):
    batch_xs, batch_ys = mnist.train.next_batch(100)
    cross_entropy = -tf.reduce_sum(y_ * tf.log(y))
    print 'loss = ' + str(cross_entropy)
    sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
Run Code Online (Sandbox Code Playgroud)

我现在有两个问题:

  1. 鉴于cross_entropy已经计算过sess.run(train_step, ...),计算两次似乎效率低,需要两倍于所有训练数据的前向传递次数.有没有办法访问cross_entropy计算期间的值sess.run(train_step, ...)

  2. 我怎么打印tf.Variable?使用str(cross_entropy)给我一个错误......

谢谢!

python tensorflow

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

重新定义和覆盖函数之间的区别

假设我有A一个带有虚函数的类F():

class A
{
    virtual void F()
    {
        // Do something
    };
};
Run Code Online (Sandbox Code Playgroud)

我有另一个B继承A重新定义的F():

class B : A
{
    void F()
    {
        // Do something
    };
};
Run Code Online (Sandbox Code Playgroud)

还有一个不同的类C,它也继承了A但是覆盖 F():

class C : A
{
    void F() override
    {
        // Do something
    };
};
Run Code Online (Sandbox Code Playgroud)

F()课程B和有C什么区别?

c++ virtual overriding virtual-functions c++11

26
推荐指数
2
解决办法
1745
查看次数

"使用已删除的函数"错误与std :: atomic_int

我想使用std::atomic_int变量.在我的代码中,我有:

#include <atomic>

std::atomic_int stop = 0;

int main()
{
    // Do something
}
Run Code Online (Sandbox Code Playgroud)

这给了我一个编译错误:

use of deleted function 'std::__atomic_base<_IntTp>::__atomic_base(const std::__atomic_base<_IntTp>&) [with _ITp = int]'
 std::atomic_int stop = 0;
                        ^
Run Code Online (Sandbox Code Playgroud)

对于发生了什么有什么想法?

c++ c++11 stdatomic

24
推荐指数
1
解决办法
2万
查看次数

将NumPy数组转换为PIL图像

我想从NumPy数组创建一个PIL图像.这是我的尝试:

# Create a NumPy array, which has four elements. The top-left should be pure red, the top-right should be pure blue, the bottom-left should be pure green, and the bottom-right should be yellow
pixels = np.array([[[255, 0, 0], [0, 255, 0]], [[0, 0, 255], [255, 255, 0]]])

# Create a PIL image from the NumPy array
image = Image.fromarray(pixels, 'RGB')

# Print out the pixel values
print image.getpixel((0, 0))
print image.getpixel((0, 1))
print image.getpixel((1, 0))
print image.getpixel((1, 1))

# …
Run Code Online (Sandbox Code Playgroud)

python numpy image python-imaging-library

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