qiime2构建Silva138.2数据库

《 虽然升级不难,但是过程也不平坦,可能以后也会有类似升级问题,为了提升之后的工作效率做个笔记记录一下子》!!

**1. 更新qiime2

扩增子如果用的是qiime2分析方法,可以参见qiime2官网的silva数据库获取途径

get-silva-data: Download, parse, and import SILVA database. — QIIME 2 2024.10.1 documentation

由于silva数据已经升级,相应的qiime2也应该升级为至少5以上的版本,具体如下

安装见官网:

Natively installing QIIME 2 — QIIME 2 2024.10.1 documentation

安装代码如下

##qiime2-amplicon-2024.10-py310-linux-conda.yml可手动下载
wget -c qiime2-amplicon-2024.10-py310-linux-conda.yml
conda env create -n qiime2-amplicon-2024.10 --file  qiime2-amplicon-2024.10-py310-linux-conda.yml
conda activate qiime2-amplicon-2024.10

**2. 通过qiime2获取silva数据库

export TMPDIR='/home/temp16s/' ##也可以不设置,默认在/tmp/目录下
source /home/miniconda3/bin/activate qiime2-amplicon-2024.10
#qiime rescript get-silva-data \   ## 耗时~30min
    --p-version '138.2' \
    --p-target 'SSURef_NR99' \
    --p-include-species-labels \
    --o-silva-sequences silva-138.2-ssu-nr99-rna-seqs.qza \
    --o-silva-taxonomy silva-138.2-ssu-nr99-tax.qza

# 转化格式:rna_dna
qiime rescript reverse-transcribe \  ## 耗时~4min
    --i-rna-sequences silva-138.2-ssu-nr99-rna-seqs.qza \
    --o-dna-sequences silva-138.2-ssu-nr99-seqs.qza


#剔除低质量序列(使用默认参数)
qiime rescript cull-seqs \
    --i-sequences silva-138.2-ssu-nr99-seqs.qza \
    --o-clean-sequences silva-138.2-ssu-nr99-seqs-cleaned.qza
#按长度和分类筛选序列
qiime rescript filter-seqs-length-by-taxon \
    --i-sequences silva-138.2-ssu-nr99-seqs-cleaned.qza \
    --i-taxonomy silva-138.2-ssu-nr99-tax.qza \
    --p-labels Archaea Bacteria Eukaryota \
    --p-min-lens 900 1200 1400 \
    --o-filtered-seqs silva-138.2-ssu-nr99-seqs-filt.qza \
    --o-discarded-seqs silva-138.2-ssu-nr99-seqs-discard.qza
#重复序列合并(使用默认参数)
qiime rescript dereplicate \
    --i-sequences silva-138.2-ssu-nr99-seqs-filt.qza  \
    --i-taxa silva-138.2-ssu-nr99-tax.qza \
    --p-threads 10 \
    --p-mode 'uniq' \
    --o-dereplicated-sequences silva-138.2-ssu-nr99-seqs-derep-uniq.qza \
    --o-dereplicated-taxa silva-138.2-ssu-nr99-tax-derep-uniq.qza

##训练分类器  ##耗时~692m38.569s
qiime feature-classifier fit-classifier-naive-bayes \
  --i-reference-reads  silva-138.2-ssu-nr99-seqs-derep-uniq.qza \
  --i-reference-taxonomy silva-138.2-ssu-nr99-tax-derep-uniq.qza \
  --o-classifier silva-138.2-ssu-nr99-classifier.qza

测试结果正常!!

总结:遇到问题可以优先查看官网,一些社区评论可能会有很多问题以及解决办法

如当用版本比较低的qiime2获取silva138.2时会报错,提示升级即可解决,如下

Issue with SILVA 138.2 and RESCRIPt Compatibility - General Discussion - QIIME 2 Forum

参考博文(链接见底部):写的真的很全面,几乎可以照搬!!除了qiime rescript dereplicate模块中参数--p-rank-handles 'silva' \  ##不支持silva参数,可能是软件升级原因

##查看详细参数如下:可以不设置,默认即可
qiime rescript dereplicate -h

--p-rank-handles VALUES... List[Str % Choices('disable')] | List[Str %
    Choices('domain', 'superkingdom', 'kingdom', 'subkingdom', 'superphylum',
    'phylum', 'subphylum', 'infraphylum', 'superclass', 'class', 'subclass',
    'infraclass', 'cohort', 'superorder', 'order', 'suborder', 'infraorder',
    'parvorder', 'superfamily', 'family', 'subfamily', 'tribe', 'subtribe',
    'genus', 'subgenus', 'species group', 'species subgroup', 'species',
    'subspecies', 'forma')]
                          Specifies the set of rank handles used to backfill
                          missing ranks in the resulting dereplicated
                          taxonomy. Use 'disable' to prevent applying
                          'rank-handles'.
[default: ['domain', 'phylum', 'class', 'order', 'family', 'genus', 'species']]

基于Qiime2处理Silva数据库_silva数据库下载-优快云博客

### 解决 PP-OCRv4 出现的错误 当遇到 `WARNING: The pretrained params backbone.blocks2.0.dw_conv.lab.scale not in model` 这样的警告时,这通常意味着预训练模型中的某些参数未能匹配到当前配置下的模型结构中[^2]。 对于此问题的一个有效解决方案是采用特定配置文件来适配预训练权重。具体操作方法如下: 通过指定配置文件 `ch_PP-OCRv4_det_student.yml` 并利用已有的最佳精度预训练模型 (`best_accuracy`) 来启动训练过程可以绕过上述不兼容的问题。执行命令如下所示: ```bash python3 tools/train.py -c configs/det/ch_PP-OCRv4/ch_PP-OCRv4_det_student.yml ``` 该方案不仅解决了参数缺失带来的警告,还能够继续基于高质量的预训练成果进行微调,从而提升最终检测效果。 关于蒸馏的概念,在机器学习领域内指的是将大型复杂网络(teacher 模型)的知识迁移到小型简单网络(student 模型)。这里 student 和 teacher 的关系是指两个不同规模或架构的神经网络之间的指导与被指导的关系;其中 teacher 已经经过充分训练并具有良好的性能,而 student 则试图模仿前者的行为模式以达到相似的效果但保持更高效的计算特性。 至于提到的 `Traceback` 错误信息部分,由于未提供具体的跟踪堆栈详情,难以给出针对性建议。不过一般而言,这类报错往往涉及代码逻辑错误或是环境配置不当等问题。为了更好地帮助定位和解决问题,推荐记录完整的异常日志,并仔细检查最近修改过的代码片段以及确认依赖库版本的一致性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值