小编Sam*_*amy的帖子

如何在本地运行travis-ci

我刚加入了一个项目,我是travis-ci的新手.我宁愿不必将每一个小改动都推到.travis.yml以及我为源代码运行构建所做的每一点改变.使用jenkins,您可以下载jenkins并在本地运行.特拉维斯提供这样的东西吗?

注意:我已经看过travis-ci cli并下载了它,但它似乎只是调用它们的API,然后连接到我的github repo,所以如果我不推送,重启就没关系最后的构建.

travis-ci

488
推荐指数
8
解决办法
15万
查看次数

了解如何在Python中创建堆

例如collections.Count.most_common,Python中的函数使用heapq模块返回文件中最常用单词的计数.

我已经跟踪了该heapq.py文件,但是我很难理解如何创建/更新关于单词的堆.

因此,我认为理解它的最佳方法是弄清楚如何从头开始创建堆.

有人可以提供伪代码来创建一个代表字数的堆吗?

python

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

使用Ansible任务运行SELECT查询

这个用于Ansbile的mysql数据库模块列表中,有一个用于创建数据库或创建用户等.

我想针对预先存在的表运行查询,并使用该查询的结果填充Ansible变量(IP地址列表和节点类型),我将根据节点类型运行不同的任务.

怎么能在Ansible中完成?

mysql ansible ansible-playbook

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

令人困惑的声明和初始化程序

这个声明很混乱:

char* q {new char[1024]{}}; // q[i] becomes 0 for all
Run Code Online (Sandbox Code Playgroud)

这是"指向char数组的char指针" 还是" 指针数组"?

我认为这new char[1024]{}是初始化一个char1024个元素的数组,每个元素的值为0.

所以这和:

char* q = [0,0,....] // until 1024
Run Code Online (Sandbox Code Playgroud)

正确?

c++ pointers initializer-list

20
推荐指数
2
解决办法
1570
查看次数

调整Keras Lambda图层中的输入图像大小

我希望我的keras模型使用cv2或类似的方法调整输入图像的大小.

我已经看过了使用ImageGenerator,但我更喜欢编写自己的生成器,只需调整第一层图像的大小keras.layers.core.Lambda.

我该怎么做?

python keras keras-layer cv2

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

如何以云不可知的方式使用Terraform

我已经看到很多关于如何使用Terraform启动AWS资源的示例.我也看到很多声称Terraform是云不可知的.

我没有看到的是我如何使用单个tf文件在AWS或Azure中使用某些子网,某些实例,某些ELB以及一些数据库启动VPC的示例.

有没有人有这样的例子?

azure amazon-web-services terraform

13
推荐指数
2
解决办法
2515
查看次数

numpy:计算softmax函数的导数

我试图backpropagation在一个简单的3层神经网络中理解MNIST.

有输入层weights和a bias.标签是MNIST如此,它是一个10类向量.

第二层是linear tranform.第三层是softmax activation将输出作为概率.

Backpropagation 计算每一步的导数并将其称为梯度.

以前的图层将渐变globalprevious渐变附加到local gradient.我无法计算local gradientsoftmax

在线的几个资源通过softmax及其衍生物的解释,甚至给出了softmax本身的代码样本

def softmax(x):
    """Compute the softmax of vector x."""
    exps = np.exp(x)
    return exps / np.sum(exps)
Run Code Online (Sandbox Code Playgroud)

所述衍生物相对于解释时i = j和当i != j.这是一个简单的代码片段,我想出来并希望验证我的理解:

def softmax(self, x):
    """Compute the softmax of vector x."""
    exps = np.exp(x)
    return exps / np.sum(exps)

def forward(self):
    # self.input …
Run Code Online (Sandbox Code Playgroud)

python numpy backpropagation neural-network softmax

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

编写Python编译器进行练习

最近我一直在阅读有关CPU和架构的相关内容; 主要是操作码,集成电路等.几年来我一直是一名python开发人员,我想在编写机器码时做一些练习.

我觉得很有趣我会将一个非常简单的python脚本编译成机器码,作为练习它的一种方式.脚本如下:

a = 2
b = 3
c = a + b
print c
Run Code Online (Sandbox Code Playgroud)

我在python中编写编译器,因为我不像C在py上那么擅长.我看了一下,我有以下python库供我使用,这可能会有所帮助,即

binascii.hexify(hex(2))  <-- should convert 2 to binary, correct?

file = open('/usr/local/bin/my_sample_program','wb') <-- should write the resulting binary file
Run Code Online (Sandbox Code Playgroud)

我仍然需要找到英特尔酷睿i5的操作码,但这应该很容易.

我的问题如下:

1)如何将操作码写入文件?换句话说,假设用于设置寄存器以包含值2的操作码是0010,我如何写这个作为程序第一行执行中的前四个数字?

2)如何告诉操作系统(OS X或Ubuntu)将程序加载到物理内存中?我假设编译器做的第一件事就是将操作系统的指令写入生成的二进制文件中?

3)您可能知道的任何可以帮助我的资源将不胜感激.

python compiler-construction

9
推荐指数
1
解决办法
4768
查看次数

无法登录通过Test Kitchen管理的Vagrant框

我有一个非常锅炉板,.kitchen.yml具有以下内容:

---
driver:
  name: vagrant
platforms:
  - name: ubuntu-14.04
suites:
   - name: default
   run_list:
    - recipe[webserver::default]
Run Code Online (Sandbox Code Playgroud)

当我跑步时,kitchen converge我得到以下内容:

==> default: Setting hostname...
   ==> default: Replaced insecure vagrant key with less insecure key!
   ==> default: Machine not provisioned because `--no-provision` is specified.
   Waiting for SSH service on 127.0.0.1:2222, retrying in 3 seconds
   Waiting for SSH service on 127.0.0.1:2222, retrying in 3 seconds
   Waiting for SSH service on 127.0.0.1:2222, retrying in 3 seconds
   .....
   ......
Run Code Online (Sandbox Code Playgroud)

退出一点谷歌搜索后,我读到了Vagrant 1.7+ …

ssh chef-infra vagrant test-kitchen

9
推荐指数
2
解决办法
3726
查看次数

临时为算术运算void*的正确方法是什么?

我是C新手,但多年来一直是程序员,所以我试图从2008年开始沿着斯坦福大学的课程学习C,并在C.中的向量上做作业3.

它基本上只是一个通用数组,所以数据作为一个结构保存在一个结构中void *.编译器标志-Wpointer-arith打开,所以我不能算术(我明白原因).

数据周围的结构必须不知道数据的类型,因此它对调用者来说是通用的.

为简化起见,我正在尝试以下代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct {
    void *data;
    int aindex;
    int elemSize;
} trial;

void init(trial *vector, int elemSize)
{
    vector->aindex = 0;
    vector->elemSize = elemSize;
    vector->data = malloc(10 * elemSize);
}

void add(trial *vector, const void *elemAddr)
{
    if (vector->aindex != 0)
        vector->data = (char *)vector->data + vector->elemSize;

    vector->aindex++;
    memcpy(vector->data, elemAddr, sizeof(int));

}

int main()
{
    trial vector;
    init(&vector, sizeof(int));

    for …
Run Code Online (Sandbox Code Playgroud)

c valgrind void-pointers memcpy pointer-arithmetic

9
推荐指数
1
解决办法
451
查看次数