问题标签 [reproducible-research]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 用于工具包文档的 docker:`docker export` 不包括所有层?
在放弃了其他方法来正确记录我的R
分析环境以实现分析再现性之后,我开始着手将每个单独的分析包装到一个docker
容器中。这是我所做的:
- /li>
创建项目特定的副本
/li>启动容器:
/li>R
(Studio
)- 基于项目分析...以sudo apt-get clean
和结尾sudo rm -rf /tmp/*
导出 docker 镜像:
/li>
从我的本地注册表中删除所有相关容器/图像后,我尝试模拟对打包项目的重新访问,如下所示:
导入容器:
/li>(尝试)像原始容器一样启动容器:
docker run -d -p 8787:8787 -e ROOT=TRUE rstudio_project.2018.2
然后我面临以下错误:
我究竟做错了什么?容器在哪里丢失(什么)关于默认启动什么的信息?
r - 与 rmarkdown html 文档共享数据的首选方式?
我创建了一个 rmarkdown html 文档来共享 R 中分析的代码。我也想包含数据,但我不确定提供数据的最方便的方式(对于接收者)。我可以将 CSV 作为 URI 数据方案嵌入,如下所示:
或者提供一个范围从原始到花哨的 HTML 表格:
我相信还有其他选择。假设数据集与 datasets::iris 具有相似的维度,我如何共享一个数据集:
- 可从大多数平台/软件访问
- 可轻松读入 R
- 可与包含代码的 rmarkdown 文档打包,即要共享的单个文件
- 是最小的文件大小
如果数据集的维度大 100 倍怎么办?
r - 如果横向太长,Bookdown数字标题会失败?
我有一个足够大的图,需要在 RStudio 中使用(PDF)bookdown 绘制肖像文档中的风景。该图有很多内容,因此图标题很长,我无法进一步减少文字。
这是我一直在使用的示例代码:
问题是这会输出一个风景图,但标题在 PDF 输出中呈现为正文文本(即不是作为图形标题):
\begin{figure} \caption{QTL 每个生殖植物的果实数 (Fruits/RP)、每个果实的种子数 (Seeds/fr)、每个生殖植物的种子数 (Seeds/RP)、种子质量 (Sd mass) 和存活率(生存)。箭头表示具有 95% 贝叶斯可信区间的最可能的 QTL 位置,以及瑞典基因型(向上:增加的表型;向下:减少的表型)在意大利(红色)和瑞典(蓝色)的影响。空心箭头显示可信区间 >15.2cM 的 QTL。染色体右侧的标签表示对生殖力 (c)、生殖力和存活率 (s) 以及生殖力和种子质量 (m) 的成分具有多效性影响的 QTL。灰色框表示跨站点年组合的单个性状的共定位 QTL 范围。} \end{figure}
如果我不使用横向(即省略out.extra='angle=90'
),则此方法有效。如果我采用较短的标题块,它也会正确呈现。这有效,例如:
什么时候字幕长度有上限out.extra='angle=90'
?
任何人都可以为此建议解决方法吗?
python - 使用 tf.set_random_seed 在 Tensorflow 中重现结果
我正在尝试生成 N 组独立随机数。我有一个简单的代码,显示了 3 组 10 个随机数的问题。我注意到即使我使用tf.set_random_seed
设置种子,不同运行的结果看起来也不一样。非常感谢任何帮助或评论。
这是代码的输出:
我想要类似的东西
更新 1:确实,我将种子初始化程序放在 for 循环中的原因是因为我想以不同的方式设置它们(例如,将其视为不同的 MCMC 运行)。这是我完成这项工作的代码,但我不确定它是否有效。基本上我会在 0 到 2^32-1 之间生成几个随机种子,并在每次运行中更改种子。非常感谢任何有助于提高内存/RAM 效率的帮助或评论。
r - mlr:为什么使用并行化的超参数调整的再现性会失败?
我在备忘单中使用基于 Quickstart 示例的mlr
代码。我添加了并行化并尝试多次调整参数。
问题:即使我set.seed()
在调整之前每次都设置了,为什么重现性会失败(为什么结果不一样)?我的代码中缺少什么?我应该如何修改代码以实现可重现性?
代码(在我的电脑上最多运行 1 分钟):
结果不相同:
我也试过
代替
这并没有导致可重复性。
但是当并行化关闭时,结果是相同的set.seed(123456, "L'Ecuyer-CMRG")
(除了开始/结束时间和持续时间)。
r - 进行可重复的研究
Make 可以方便地使具有依赖性的研究和数据分析更具可重复性,例如:
从源数据重新生成图形,将所有输出保存到./output
. 但是我们可以让事情变得更紧凑吗?例如,通过
避免重复,例如:
/li>重新组织以更通用地关联代码(本例中为 R 脚本)数据(csv)和输出(pdf、Rout)?
更好地处理输出到
./output
目录的导出?
python-3.x - 使用 Keras 的机器学习项目中常见的随机性来源是什么?
可重复性很重要。在我目前正在研究的一个闭源机器学习项目中,很难实现它。要看哪些部位?
python - 如何使用 Keras model.fit 记录训练样本的 ID?
尽管我设置了种子,但我目前有可重复性问题。我知道模型的初始化方式相同(通过检查model.save("initial.h5")
withh5dump
和 meld 进行检查)。
接下来我要检查训练样本是否以相同的顺序使用。因此,我想记录它们。
我通过训练
我也可以加dataset['train']['id']
。我想获得一个包含正在使用的 ID 列表的 txt 文件,例如,对于 32 的批量大小、765 的训练数据集长度和 5 个 epoch,我希望 txt 文件中有 765 * 5 = 3825 行,其中每个ID 大概出现了 5 次,前 32 个元素是第一批的 ID。
那可能吗?
r - 在 knitr::kable() 中设置自适应 col.names
请考虑以下事项。我开始使用 R markdown 编写可重现的文档,并希望得到一些报告的输出。由于我正在使用多个,data.frame
并且它们的列名不是很丰富或漂亮,我想col.names
使用knitr::kable()
.
问题:由于data.frame
它相当大并且我只想在整个报告中显示特定的列,我希望新的列名根据我选择的列自动出现。
我可以手动执行此操作,如下例所示:
但是,当我将其减少data.frame
为仅显示某些列时,我必须col.names
再次手动设置(此处删除col.names
我不再需要的)以不收到错误消息:
问题:有没有办法克服这个问题,例如switch
只使用和指定一次"Sepal.Length" = "Sepal length"
等?这还应该考虑到我创建的任何新列,例如通过dplyr::mutate()
保持新添加的列名原样或在文档开头指定它而不在每次该列不(尚)存在时返回错误.