小编Pao*_*ani的帖子

在 python docker 镜像上使用 GPU

我正在使用python:3.7.4-slim-busterdocker 映像,但无法更改它。我想知道如何在上面使用我的nvidia gpus 。

我通常使用 atensorflow/tensorflow:1.14.0-gpu-py3和 一个简单的--runtime=nvidiaint 命令docker run,一切正常,但现在我有这个限制。

我认为这种类型的图像不存在快捷方式,因此我按照本指南https://towardsdatascience.com/how-to-properly-use-the-gpu-within-a-docker-container-4c699c78c6d1构建 Dockerfile它建议:

FROM python:3.7.4-slim-buster

RUN apt-get update && apt-get install -y build-essential
RUN apt-get --purge remove -y nvidia*
ADD ./Downloads/nvidia_installers /tmp/nvidia                             > Get the install files you used to install CUDA and the NVIDIA drivers on your host
RUN /tmp/nvidia/NVIDIA-Linux-x86_64-331.62.run -s -N --no-kernel-module   > Install the driver.
RUN rm -rf /tmp/selfgz7                                                   > For some reason the driver installer left temp …
Run Code Online (Sandbox Code Playgroud)

python gpu nvidia docker dockerfile

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

文本二元分类训练期间的波动损失

我做了的细化和微调Longformer文档中的文本二元分类任务使用Huggingface教练班,我监视一些检查站与Tensorboard的措施。

即使 F1 分数和准确率都相当高,但我对训练损失波动感到困惑。

我在网上阅读的原因可能是:

  • 过高的学习速率,但我试图与3个值(1E-4,1E-5和1E-6)和它们全部由相同的效果
  • 一个小批量的大小。我正在使用具有 8xK80 GPU的Sagemaker 笔记本 p2.8xlarge。我可以用来避免CUDA 内存不足错误的每个 GPU 的批量大小为 1。所以总批量大小为8。我的直觉是 bs 为 8 对于包含 57K 个示例(每个 epoch 7K 步)的数据集来说太小了。不幸的是,这是我可以使用的最高值。

这里我已经报告了 F1、准确率、损失和平滑损失的趋势。灰线是 1e-6 的学习率,而粉红色的是 1e-5。

我恢复了我训练的所有信息

  • 批量大小:1 x 8GPU = 8
  • 学习率1e-41e-51e-6(所有这些都经过测试,损失没有改善)
  • 型号: Longformer
  • 数据集
    • 训练集57K 个例子
    • 开发集12K 示例
    • 测试集 …

python machine-learning pytorch allennlp huggingface-transformers

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

通配符查询 Elasticsearch 不适用于多单词值

我在通配符查询搜索中遇到一些问题。

我的目的是,如果我搜索,我将找到在组成整个字符串的每个单词之前和之后word1 word2 word3可以有前缀和后缀的所有结果。

我的索引的结构是:

{
  "my_index": {
    "aliases": {},
    "mappings": {
      "properties": {
        "attributes": {
          "properties": {
            "name": {
              "properties": {
                "value": {
                  "type": "text",
                  "fields": {
                    "keyword": {
                      "type": "keyword",
                      "ignore_above": 256
                    }
                  }
                }
              }
            },
          }
        }
      }
    },
    "settings": {
      ...
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

attributes.name所以我有一个想要匹配值的字段(文本)。

我的索引包含值为attributes.name

  • word1,
  • word1suffix,
  • word1 word2,
  • word1 word2suffix
  • word1 word2 word3

在运行搜索之前,我在每个单词之前和之后在内部添加通配符

word1 word2 word3=>*word1* *word2* …

full-text-search wildcard keyword elasticsearch elasticsearch-query

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