小编Wil*_*ren的帖子

numpy-2d中的近点快速融合(没有for循环)

我有一个问题类似于这里提出的问题: 融合几个关键点的简单方法.我想用它们的坐标平均值替换彼此靠近的点.细胞的接近程度由用户指定(我说的是欧几里德距离).

在我的情况下,我有很多积分(约100万).这种方法很有效,但是因为它使用了双循环,所以非常耗时.

是否有更快的方法来检测和融合numpy 2d阵列中的近点?


为了完整,我添加了一个例子:

points=array([[  382.49056159,   640.1731949 ],
   [  496.44669161,   655.8583119 ],
   [ 1255.64762859,   672.99699399],
   [ 1070.16520917,   688.33538171],
   [  318.89390168,   718.05989421],
   [  259.7106383 ,   822.2       ],
   [  141.52574427,    28.68594436],
   [ 1061.13573287,    28.7094536 ],
   [  820.57417943,    84.27702407],
   [  806.71416007,   108.50307828]])
Run Code Online (Sandbox Code Playgroud)

下面可以看到点的散点图.红色圆圈表示彼此靠近的点(在这种情况下,阵列中最后两个点之间的距离为27.91).因此,如果用户指定最小距离为30,则应融合这些点.

在此输入图像描述

在熔丝功能的输出中,最后的点被融合.这看起来像:

#output
array([[  382.49056159,   640.1731949 ],
   [  496.44669161,   655.8583119 ],
   [ 1255.64762859,   672.99699399],
   [ 1070.16520917,   688.33538171],
   [  318.89390168,   718.05989421],
   [  259.7106383 ,   822.2       ],
   [  141.52574427,    28.68594436],
   [ 1061.13573287,    28.7094536 ],
   [  813.64416975,    96.390051175]])
Run Code Online (Sandbox Code Playgroud)

python arrays numpy distance scipy

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

在 clusterApply 或 clusterMap 中将进度打印到 windows cmd

我正在使用 R 中的 snow 包在多个内核上调用 python 脚本。我想要的是将进度打印到控制台。使用cat(),message()print()在我的函数中没有给出任何输出。这使得很难跟踪我的功能进度。

是否可以在 clusterApply 或 clusterMap 函数中将输出打印到命令行?


这是我当前的脚本:

library(snow)
library(rlecuyer)

# Files to process
filenames=1:10

# Process function
processfunc=function(filename,filenames){
  len_names=length(filenames) #Length of filenames
  index = match(filename, filenames) #Index of current file
  cat(paste('Processing input files:',format(round(index/len_names*100,2),nsmall=2),'% At:',filename)) # print progress
  # system(paste('python','D:/pythonscript.py',filename))
}

corenr=7
cl = makeCluster(rep('localhost', corenr), 'SOCK')
clusterExport(cl, list("processfunc"))
clusterEvalQ(cl, library(stringr)) 
clusterSetupRNG(cl)
clusterMap(cl,function(x,filenames) processfunc(x,filenames),filenames,MoreArgs = list(filenames=filenames))
stopCluster(cl)
Run Code Online (Sandbox Code Playgroud)

console cmd r multiprocessing snow

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

Keras - 获取训练层的权重

我试图在训练有素的网络中获取图层的值。我可以将该层作为 TensorFlow Tensor,但我无法以数组形状访问其值:

from keras.models import load_model

model = load_model('./model.h5')
layer_dict = dict([(layer.name, layer) for layer in model.layers])

layer_name = 'block5_sepconv1_act'
filter_index = 0

layer_output = layer_dict['model_1'][layer_name].output
# <tf.Tensor 'block5_sepconv1_act/Relu:0' shape=(?, 16, 16, 728) dtype=float32>
layer_filter = layer_output[:, :, :, filter_index]
# <tf.Tensor 'strided_slice_11:0' shape=(?, 16, 16) dtype=float32>
# how do I get the 16x16 values ??
Run Code Online (Sandbox Code Playgroud)

python neural-network keras tensorflow keras-layer

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

Keras 输入形状错误

我是 Keras 新手,我正在尝试创建需要在纸牌游戏上学习的网络。它需要 93 个二进制输入,其中隐藏层有 40 个神经元和一个计算分数(从 0 到 25)的单个输出神经元。

model = Sequential()
model.add(Dense(input_dim=93, units=40, activation="sigmoid"))
model.add(Dense(units=2, activation="linear"))
sgd = optimizers.SGD(lr=0.01, clipvalue=0.5)
model.compile(loss="mse", optimizer=sgd, learning_rate=0.01)
Run Code Online (Sandbox Code Playgroud)

我首先尝试计算(进行前向传播)93 个输入

这是“s.toInputs()”

[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 0 0 1 1 0 1 0 0 0 0 0 …

python numpy neural-network keras tensorflow

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

在神经网络中:每个时期后的准确度提高比每批次后的准确度提高更大.为什么?

我在训练神经网络批次Keras 2.0Python.以下是有关数据和培训参数的一些信息:

  • #samples in train:414934
  • #features:590093
  • #classes:2(二进制分类问题)
  • 批量大小:1024
  • #batches = 406(414934/1024 = 405.2)

以下是以下代码的一些日志:

for i in range(epochs):
    print("train_model:: starting epoch {0}/{1}".format(i + 1, epochs))
    model.fit_generator(generator=batch_generator(data_train, target_train, batch_size),
                        steps_per_epoch=num_of_batches,
                        epochs=1,
                        verbose=1)
Run Code Online (Sandbox Code Playgroud)

(部分)日志:

train_model:: starting epoch 1/3                                                            
Epoch 1/1                                                                                   
  1/406 [..............................] - ETA: 11726s - loss: 0.7993 - acc: 0.5996         
  2/406 [..............................] - ETA: 11237s - loss: 0.7260 - acc: 0.6587         
  3/406 [..............................] - ETA: 14136s - loss: 0.6619 - acc: 0.7279         
404/406 [============================>.] - …
Run Code Online (Sandbox Code Playgroud)

python neural-network deep-learning keras tensorflow

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

导入错误:“没有名为 tensorflow 的模块”(Anaconda 环境中的 Keras)

我已经在 Anaconda 环境中使用 pip 安装了 Keras 和 tensorflow,但是当我在 tensorflow 后台运行 Keras 程序时,它给出了错误No module named tensorflow。你能帮忙吗?

python anaconda keras tensorflow

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

TypeError:无法识别的关键字参数:{'show_accuracy':True} #yelp challenge dataset

文件"/home/susheel/LearnPython/local/lib/python2.7/site-packages/keras/models.py",第848行,适合引发TypeError('无法识别的关键字参数:'+ str(kwargs))TypeError:无法识别的关键字参数:{'show_accuracy':True}

虽然我试图在深度学习中使用CNN找到Yelp Data Academic.json的情绪.我收到了上述错误,我在numpy错误中遇到了它,但我没有解决任何人可以帮助怎么做

python neural-network theano keras tensorflow

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

检测多个numpy 2-d数组中的第一个唯一行

我有多个numpy 2-d数组,我想比较行.我的函数的输出应该是一个numpy二维数组,表示三个输入数组的所有行.我希望能够检测到第一次出现行,每秒或第三个重复行应该在输出中标记为False.单个数组中不可能有重复的行.

如果有可能我想避免使用循环,因为它们会降低计算速度.

例:

array1 = array([[444, 427],
   [444, 428],
   [444, 429],
   [444, 430],
   [445, 421]], dtype=uint64)

array2 = array([[446, 427],
   [446, 440],
   [444, 429],
   [444, 432],
   [445, 421]], dtype=uint64)

array3 = array([[447, 427],
   [446, 441],
   [444, 429],
   [444, 432],
   [445, 421]], dtype=uint64)

# output
array([[True, True, True, True,  True],
   [ True,  True,  False, True,  False],
   [ True,  True,  False, False,  False]], dtype=bool)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

python arrays numpy scipy

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

Keras:模型精度在达到99%准确度和损失0.01后下降

我在keras中使用改编的LeNet模型进行二进制分类.我有大约250,000个训练样本,比例为60/40.我的模型训练得很好.第一个时期的准确率达到97%,损失为0.07.在10个时期之后,准确度超过99%,损失0.01.我正在使用CheckPointer来保存模型.

大约在第11个时期,准确度下降到55%左右,损失大约6个.如何,这可能吗?是因为模型不能更精确,它试图找到更好的权重,但完全没有这样做?

我的模型是对LeNet模型的改编:

lenet_model = models.Sequential()
lenet_model.add(Convolution2D(filters=filt_size, kernel_size=(kern_size, kern_size), padding='valid',\
                        input_shape=input_shape))
lenet_model.add(Activation('relu'))
lenet_model.add(BatchNormalization())
lenet_model.add(MaxPooling2D(pool_size=(maxpool_size, maxpool_size)))
lenet_model.add(Convolution2D(filters=64, kernel_size=(kern_size, kern_size), padding='valid'))
lenet_model.add(Activation('relu'))
lenet_model.add(BatchNormalization())
lenet_model.add(MaxPooling2D(pool_size=(maxpool_size, maxpool_size)))
lenet_model.add(Convolution2D(filters=128, kernel_size=(kern_size, kern_size), padding='valid'))
lenet_model.add(Activation('relu'))
lenet_model.add(BatchNormalization())
lenet_model.add(MaxPooling2D(pool_size=(maxpool_size, maxpool_size)))
lenet_model.add(Flatten())
lenet_model.add(Dense(1024, kernel_initializer='uniform'))
lenet_model.add(Activation('relu'))
lenet_model.add(Dense(512, kernel_initializer='uniform'))
lenet_model.add(Activation('relu'))
lenet_model.add(Dropout(0.2))
lenet_model.add(Dense(n_classes, kernel_initializer='uniform'))
lenet_model.add(Activation('softmax'))

lenet_model.compile(loss='binary_crossentropy', optimizer=Adam(), metrics=['accuracy'])
Run Code Online (Sandbox Code Playgroud)

python machine-learning neural-network deep-learning keras

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

如何在 Shiny 中设置动态流体行高度

I'm trying to create a page with two rows, where the height of each row is a certain percentage of the window height (say 40 and 60%). Whereas the width of elements can be easily controlled with the use of columns, I can't seem to find a similar solution for height.

Here is a little example app:

library(shiny)
ui <- navbarPage('', 
  tabPanel("page 1", 
           fluidPage(
             fluidRow(
               style='height:400px',
               column(7, "text"),
               column(5, "other text")),
             fluidRow('some more text'))
  ),
  tabPanel("page 2"),
  tabPanel("page 3")
) …
Run Code Online (Sandbox Code Playgroud)

css r shiny

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