小编Sma*_*y77的帖子

argparse - 禁用相同的参数出现

我试图在一个命令行中使用argparse禁用相同的参数出现

./python3 --argument1=something --argument2 --argument1=something_else
Run Code Online (Sandbox Code Playgroud)

这意味着这应该引发一个错误,因为argument1的值被覆盖,默认情况下,argparse只是覆盖了值并且继续没有发生任何事情......有什么聪明的方法如何禁用这种行为?

python argparse python-3.x

6
推荐指数
1
解决办法
1644
查看次数

Java Vector Thread安全

有没有危险,如果我在我的服务器程序上使用一个Vector(java.util.Vector),当我从多个线程访问它只是为了阅读?(myvector .size().get()...)用于使用synchronized方法编写im.谢谢.

java vector thread-safety

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

使用 micromamba 的克隆环境

micromamba 似乎缺少克隆环境选项,或者只是名称不同?

  • Mamba 的帮助micromamba create -n envname --help 似乎没有显示任何类似克隆的选项
  • 标准 conda conda create -n envname --clone oldenv似乎不起作用。

如果 mamba 缺少克隆选项,原因是什么?

谢谢!

conda mamba

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

为什么这个简单的 makefile 不会在更改时重建源代码?

我编写了这个简单的 makefile,它工作得很好,直到我想做一些更改并将它们应用到二进制文件中。然后我需要再次执行“make clean”和“make”,因为 obj. 文件将不会被重建。虽然到目前为止这似乎是一个简单的任务,但我未能修改它以制作 obj. 隐式重建文件(所以当我修改源代码时我只能写“make”)。

COMPILER=g++-5.3
CXXFLAGS=-std=c++11 -O2 -pedantic

build : a.o
     $(COMPILER) a.o -o a

a.o:
     $(COMPILER) $(CXXFLAGS) -c a.cpp -o a.o

clean :
    rm -f *.o *~ a
Run Code Online (Sandbox Code Playgroud)

编辑:我尝试了 Omada 建议的更改(在写这个问题之前我自己也尝试过),结果是:

me@pc: ~/mypath$ cat a.cpp
#include <iostream>
int main(int argc, char* argv[])
{
    if ( argc!=2 ){
        std::ceaaarr<<"Prrogram expects 1 argument\n";
        return 1;
    }
    return 0;
}me@pc: ~/mypath$ make
g++-5.3 a.o -o a
me@pc: ~/mypath$ cat Makefile
#init

COMPILER=g++-5.3
CXXFLAGS=-std=c++11 -O2 -pedantic

build: a.o
        $(COMPILER) a.o …
Run Code Online (Sandbox Code Playgroud)

c++ makefile

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

从PyTorch中的BiLSTM(BiGRU)获取最后一个状态

阅读了几篇文章后,我仍然对从BiLSTM获取最后的隐藏状态的实现的正确性感到困惑。

  1. 了解PyTorch中的双向RNN(TowardsDataScience)
  2. seq2seq模型的PackedSequence(PyTorch论坛)
  3. PyTorch LSTM中的“隐藏”和“输出”之间有什么区别?(堆栈溢出)
  4. 在一批序列中选择张量(Pytorch形式)

最后一个来源(4)的方法对我来说似乎是最干净的方法,但是我仍然不确定我是否正确理解了线程。我是否在使用LSTM和反向LSTM中正确的最终隐藏状态?这是我的实现

# pos contains indices of words in embedding matrix
# seqlengths contains info about sequence lengths
# so for instance, if batch_size is 2 and pos=[4,6,9,3,1] and 
# seqlengths contains [3,2], we have batch with samples
# of variable length [4,6,9] and [3,1]

all_in_embs = self.in_embeddings(pos)
in_emb_seqs = pack_sequence(torch.split(all_in_embs, seqlengths, dim=0))
output,lasthidden = self.rnn(in_emb_seqs)
if not self.data_processor.use_gru:
    lasthidden = lasthidden[0]
# u_emb_batch has shape batch_size x embedding_dimension
# sum last state from forward …
Run Code Online (Sandbox Code Playgroud)

python lstm pytorch

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

标签 统计

python ×2

argparse ×1

c++ ×1

conda ×1

java ×1

lstm ×1

makefile ×1

mamba ×1

python-3.x ×1

pytorch ×1

thread-safety ×1

vector ×1