小编Kev*_*vin的帖子

为什么神经网络验证损失和准确性首先会波动?

我正在训练一个神经网络,在训练开始时,我的网络损失和验证数据的准确性波动很大,但在训练结束时它会稳定下来。我正在降低该网络的高原学习率。网络是否以高学习率开始,随着学习率的降低,准确率和损失都趋于稳定?

准确性 损失

machine-learning neural-network

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

Pytorch - 推断线性层 in_features

我正在构建一个玩具模型来获取一些图像并进行分类。我的模型看起来像:

conv2d -> pool -> conv2d -> linear -> linear

我的问题是,当我们创建模型时,我们必须in_features根据输入图像的大小计算第一个线性层的大小。如果我们得到不同尺寸的新图像,我们必须重新计算in_features线性层。为什么我们必须这样做?不是只能推断吗?

python pytorch

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

Javascript/jquery - 在特定位置用标签包裹文本

我有一些文字:

<p>hello world. This is a test paragraph.</p>
Run Code Online (Sandbox Code Playgroud)

我想<em>在开始位置和</em>结束位置添加一个标签给我们:

<p>
  <em>hello</em> world. This is a <em>test</em> paragraph.
</p>
Run Code Online (Sandbox Code Playgroud)

我有一个开始和结束位置的列表

<lst name="offsets">
  <int name="start">0</int>
  <int name="end">5</int>
  <int name="start">22</int>
  <int name="end">27</int>
</lst>
Run Code Online (Sandbox Code Playgroud)

有没有简单的方法来做到这一点?

这是我的做法(对答案略有修改):

var p = doc+=" "//document.querySelector("#content"),//I added a space to the end of the document because if we try to wrap the em tags around the word we are looking for and it is at the end of the document then it gives us undefined. …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

R - Gsub回归第一场比赛

我想从测试向量中提取12和0.每次我尝试它会给我120或12:0

TestVector <- c("12:0")
gsub("\\b[:numeric:]*",replacement = "\\1", x = TestVector, fixed = F)
Run Code Online (Sandbox Code Playgroud)

我可以用什么来提取12和0.我们可以只有一个我只提取12,所以我可以改变它来提取0.我们可以用gsub专门做这个吗?

regex r

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

Keras - 查找嵌入

我正在尝试做的事情:

我正在尝试从序列中查找每个单词的词嵌入。这是从文本生成的数字序列。

背景:

我的序列(形状(200,))看起来像这样:

50, 2092, 3974,  398,   10, 9404,    5, 1001, 3975,   15,  512... <snip>
Run Code Online (Sandbox Code Playgroud)

这些数字代表词汇表中的一个词(10000 个词)。我使用这里找到的负采样方法创建了一些嵌入权重。

提取的嵌入权重的形状为 (10000 , 106),我可以将其加载到新的嵌入层中。

我想用加载的权重从这个新的嵌入层中查找序列中的每个数字,并让它返回 200 个与序列对应的大小为 106 的向量。

这是我到目前为止所做的:

embedding_weights = np.genfromtxt('embedding_weights.csv', delimiter=',')

    input_layer = Input(shape=(200,), name='text_input')
    embedding = Embedding(input_length=200, input_dim=vocabulary_size, output_dim=106, 
                           name='embedding_layer', trainable=False, weights=[embedding_weights])
    embedded_text = embedding(input_layer)
Run Code Online (Sandbox Code Playgroud)

这是查找嵌入的正确方法吗?

python keras word-embedding

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

Detectron2 - 在目标检测阈值处提取区域特征

我正在尝试使用detectron2框架提取类检测高于某个阈值的区域特征。我稍后将在我的管道中使用这些功能(类似于:VilBert第 3.1 节训练 ViLBERT)到目前为止,我已经使用此配置训练了一个 Mask R-CNN,并在一些自定义数据上对其进行了微调。它表现良好。我想要做的是从我训练的模型中为生成的边界框提取特征。

编辑:我查看了关闭我帖子的用户所写的内容并试图对其进行改进。尽管读者需要了解我在做什么的上下文。如果您对我如何改进问题有任何想法,或者您对如何做我想做的事情有一些见解,欢迎您提供反馈!

我有个问题:

  1. 为什么我只得到一个预测实例,但是当我查看预测 CLS 分数时,有超过 1 个通过阈值?

我相信这是产生 ROI 特征的正确方法:

images = ImageList.from_tensors(lst[:1], size_divisibility=32).to("cuda")  # preprocessed input tensor
#setup config
cfg = get_cfg()
cfg.merge_from_file(model_zoo.get_config_file("COCO-InstanceSegmentation/mask_rcnn_R_101_FPN_3x.yaml"))
cfg.MODEL.WEIGHTS = os.path.join(cfg.OUTPUT_DIR, "model_final.pth")
cfg.SOLVER.IMS_PER_BATCH = 1
cfg.MODEL.ROI_HEADS.NUM_CLASSES = 1  # only has one class (pnumonia)
#Just run these lines if you have the trained model im memory
cfg.MODEL.ROI_HEADS.SCORE_THRESH_TEST = 0.7   # set the testing threshold for this model …
Run Code Online (Sandbox Code Playgroud)

python machine-learning object-detection pytorch detectron

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

MATLAB - 将矢量转换为单位矢量

我有一个矢量:

vector = [1 2 3;4 5 6; 7 9 0]
vector =

     1     2     3
     4     5     6
     7     9     0
Run Code Online (Sandbox Code Playgroud)

我想采取这个并创建一个单位向量.我们可以做到这样做:

mag = sqrt(sum(vector'.^2))'

mag =

    3.7417
    8.7750
   11.4018
Run Code Online (Sandbox Code Playgroud)

当我们尝试将每个元素除以幅度时,我得到一个错误:

vector./mag
Error using  ./ 
Matrix dimensions must agree.
Run Code Online (Sandbox Code Playgroud)

基本上我必须将每行中的每个向量元素除以mag向量中的每一行.我怎样才能做到这一点?

matlab vector

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

Python - Pandas 数据帧串联内存中的气球

我的原始数据集是针对药物不良反应的大量 JSON 对象列表。在每个 JSON 对象中,我们可以有几种以 rxcui id 形式给出不良反应的药物。

我获取了 JSON 对象列表并提取了我们需要的重要数据(例如该人是否死亡)和 rxcui,并将它们展平为最多 2 层深度的 JSON 对象。我们会有这样的东西:

{
  "serious": 1,
  "drug": [
    "DrugA",
    "DrugB",
    "DrugC"
  ],
  "rxcui": [
    100,
    200,
    300
  ]
}
Run Code Online (Sandbox Code Playgroud)

我必须弄清楚如何将其放入一个数组中,以便将其提供给机器学习算法。所以我的想法是使用one-hot编码。

这就是我使用 countVectorizer 的原因,这样我就可以对所有这些子列表进行矢量化

我正在尝试连接几个 pandas 数据帧(有些是稀疏数据帧,有些是常规数据帧),它们是某些数据的 onehot 编码。我检查了所有文件(我还将它们腌制到硬盘上),没有一个文件大于 81MB。但一旦我开始将它们连接起来,它们就会膨胀到超过 29 GB。这怎么可能?

我所有的 df 看起来都是这样的:

Label0  Label1  Label2  Label3...  Label999
1       1       0       0     ...  0
1       1       0       1     ...  1
.
.
.
Run Code Online (Sandbox Code Playgroud)

我像这样运行 concat:

x = pandas.concat([x, drugcharacterization, occurcountry, reactionmeddrapt, reactionmeddraversionpt, reactionoutcome, rxcui],axis=1, copy=False)
Run Code Online (Sandbox Code Playgroud)

我还可以将我尝试在内存中轻松连接的所有子数据帧放入其中。一旦我这样做,它会爆炸的原因是什么? …

python sparse-matrix pandas

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

Python - 删除列表之间的非唯一元素

我有一个图像列表的字典,属于一类图像,如狗和猫.一些图像包含图像中的狗和猫,我想删除这些图像.

可以说我有

{'cat':[1,2,3], 'dog':[2,3,4]}
Run Code Online (Sandbox Code Playgroud)

我们可以看到id为2和3的图像都有猫和狗.我想要排除这些图像以获得以下内容:

[[1],[4]]
Run Code Online (Sandbox Code Playgroud)

到目前为止我试过这个:

from collections import Counter
img_ids = {'cat':[1,2,3], 'dog':[2,3,4]}
flattened = [item for sublist in img_ids.values() for item in sublist]
flattened_unique = [k for k, v in dict(Counter(flattened)).items() if v < 2]
filtered_ids_dfs = []
for key, val in img_ids.items():
  filtered = [x for x in val if x in flattened_unique]
  filtered_ids_dfs.append(filtered)
print(filtered_ids_dfs)
Run Code Online (Sandbox Code Playgroud)

对此有更好或更优雅的解决方案吗?也可能有任意数量的类,所以我们的字典可能有猫,狗,鸡等.

python

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

Python - 按行比较两个2D数组

我有两个数组,我想逐行比较(这是观察)并获得匹配的总行数.

这是我的数据:

Array1 
Out[207]: 
array([[ 0.,  0.,  0.,  0.,  0.,  0.,  1.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  1.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  1.,  0.,  0.,  0.,  0.],
       [ 1.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  1.,  0.,  0.,  0.,  0.,  0.,  0.]])

Array2
Out[208]: 
array([[ 0.,  0.,  0.,  0.,  0.,  0.,  1.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0., …
Run Code Online (Sandbox Code Playgroud)

python arrays numpy

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

MATLAB-有没有办法使用多个字符串进行字符串比较

我有我要在pdb中寻找的字符串列表

X1 = ['N' 'CA' 'CB' 'CG1']%Isoleucine
Run Code Online (Sandbox Code Playgroud)

我想将这些字符串与原子进行比较:

atoms = find(strcmp({pdb.Model.Atom(:).resName}, 'ILE') & ...
               (strcmp({pdb.Model.Atom(:).AtomName}, 'N') |...
                strcmp({pdb.Model.Atom(:).AtomName}, 'CA') | ...
                strcmp({pdb.Model.Atom(:).AtomName}, 'CB') | ...
                strcmp({pdb.Model.Atom(:).AtomName}, 'CG1')))
Run Code Online (Sandbox Code Playgroud)

有更简洁的方法吗?还有没有办法让strcmp进行精确匹配?不只是它包含字符串吗?

编辑:

一个更具体的例子:

我希望能够做到这一点:

strcmp(['hello' 'world'], ['hello' 'world' 'this' 'is' 'a' 'test'])
Run Code Online (Sandbox Code Playgroud)

并返回它是否与hello或world匹配。这不是返回零说,它无法找到这个阵['hello' 'world']['hello' 'world' 'this' 'is' 'a' 'test']

本质上,我只想知道'hello'和'world'是否在较大的数组中,而不是检查它是否在同一行中同时包含'hello'和'world'

matlab

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

加速嵌套for循环

我试图用双循环编写一个函数,因为我必须模拟一个双和.这段代码我的代码有效,但速度很慢,我怎样才能加快速度呢?

a和y是向量,x是矩阵.它们都是相同的长度,即100. X是100x4(100行,4列)

X1 <- matrix(rnorm(4*100), ncol=4)
y1 <- sign(X1[,1] + X1[,2] > 0)*2 - 1

fn <- function (a,x,y){
  dsum <-0
  for(i in 1:length(y)){
    for(j in 1:length(y)){
      dsum <- dsum + a[j]*a[i]*y[j]*y[i]*(t(x)[,j])%*%x[i,]
    }
  }
  res <- sum(a)-.5*dsum
  return (res)
}
Run Code Online (Sandbox Code Playgroud)

我试着做sum(a)-.5%*%sum(a%o%X%o%y*a%o%t(X)%o%y)但我肯定是错的.

r

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

从"<"和">"中提取文字

我在html文件中的span标记内有一些文本

我需要提取它,到目前为止我尝试了这个但它似乎不起作用:

HTML:

"<span id=\"MainContent_lblGenAssessment\">$866,250</span></dd>"
Run Code Online (Sandbox Code Playgroud)

我试过这个:

gsub(x = "<span id=\"MainContent_lblGenAssessment\">$866,250</span></dd>"r,pattern = ">(.*?)<",replacement = "\\1")
Run Code Online (Sandbox Code Playgroud)

但它似乎没用,我怎样才能提取866,250?

编辑:它必须使用默认的R库,我无法安装任何包.

regex r

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