好的,我想在Tensorflow中对时间序列数据进行一维卷积.tf.nn.conv2d根据这些 票据和手册,显然支持使用.唯一的要求就是设定strides=[1,1,1,1].听起来很简单!
但是,即使是非常小的测试用例,我也无法弄清楚如何做到这一点.我究竟做错了什么?
我们设置一下吧.
import tensorflow as tf
import numpy as np
print(tf.__version__)
>>> 0.9.0
Run Code Online (Sandbox Code Playgroud)
好的,现在在两个小阵列上生成基本卷积测试.我将通过使用1的批量大小来轻松实现,并且由于时间序列是1维的,因此我将具有1的"图像高度".并且因为它是单变量的时间序列,所以"通道"的数量显然也是1,这样会很简单吧?
g = tf.Graph()
with g.as_default():
# data shape is "[batch, in_height, in_width, in_channels]",
x = tf.Variable(np.array([0.0, 0.0, 0.0, 0.0, 1.0]).reshape(1,1,-1,1), name="x")
# filter shape is "[filter_height, filter_width, in_channels, out_channels]"
phi = tf.Variable(np.array([0.0, 0.5, 1.0]).reshape(1,-1,1,1), name="phi")
conv = tf.nn.conv2d(
phi,
x,
strides=[1, 1, 1, 1],
padding="SAME",
name="conv")
Run Code Online (Sandbox Code Playgroud)
繁荣.错误.
ValueError: Dimensions 1 and 5 are not compatible
Run Code Online (Sandbox Code Playgroud)
好的,首先,我不明白 …
我有一个data.frameR列表因子级别的数据频率表以及成功和失败的计数.我想将它从频率表转换为事件列表 - 即"表"命令的反面.具体来说,我想转此:
factor.A factor.B success.count fail.count
-------- -------- ------------- ----------
0 1 0 2
1 1 2 1
Run Code Online (Sandbox Code Playgroud)
进入这个:
factor.A factor.B result
-------- -------- -------
0 1 0
0 1 0
1 1 1
1 1 1
1 1 0
Run Code Online (Sandbox Code Playgroud)
在我看来,reshape应该这样做,甚至是一些我没有听说过的模糊的基础功能,但我没有运气.即使重复a的各行也data.frame很棘手 - 你如何传递可变数量的参数rbind?
提示?
背景:为什么?因为它比汇总的二项式数据更容易交叉验证这种数据集的逻辑拟合.
我正在用一个广义线性模型分析我作为R中的二项式回归,并希望交叉验证以控制我数据的正则化,因为我的目的是预测性的.
但是,据我所知,R中的默认交叉验证例程对于二项式数据来说并不是很好,只是跳过频率表的整行,而不是单独进行试验.这意味着轻度和重度采样因子组合在我的成本函数中具有相同的权重,这对我的数据是不合适的.