Li's Bioinfo-Blog
  • |
  • 主页
  • 分类
  • 标签
  • 归档
  • 关于
  • 搜索
Home » 分类

📖 生信数据分析--分析流程,工具包等

D2L--第六章卷积神经网络

1. 从全连接层到卷积 1.1 不变性 假设一个场景:需要制作一个检测器,在一张图片中检测一种特定物体。需要满足两个性质: 平移不变性:无论该物品在图片的哪个位置,都可以检测到; 局部性:检测器只需要关注图像中的局部区域,不过度关注其它无关区域。 1.2 多层感知机的限制 对于图片(例如12M)像素的一维展开,包含36M的元素。若使用包含100个神经元的单隐藏层,模型就要3.6B元素,训练难度过大。 卷积(convolution)计算:输入X为二维矩阵,输出的隐藏表示H仍为矩阵。参数包括权重矩阵V与偏置U。H中的每一个元素都由权重矩阵V与输入X中相应区域元素的’点积’,再加上偏置所得到。(下图演示忽略了偏置计算) 平移不变性:权重矩阵(又称为卷积核/滤波器)在每次计算中保持不变,以提取相同的模式。 局部性:卷积核(kernel)的形状通常较小(|a|>△;|b|>△),即针对输入的局部区域进行特征提取。 ...

Create:&nbsp;<span title='2024-08-04 00:00:00 +0000 UTC'>2024-08-04</span>&nbsp;|&nbsp;Update:&nbsp;2024-08-04&nbsp;|&nbsp;Words:&nbsp;4106&nbsp;|&nbsp;9 min&nbsp;|&nbsp;Lishensuo

D2L--第七章现代卷积神经网络

1. 深度卷积神经网络(AlexNet) 1.1 学习表征 LeNet提出后,卷积神经网络并未占据主流,而是往往由其它机器学习方法所超越,如SVM。一个主要的原因是输入数据的特征处理上。 ...

Create:&nbsp;<span title='2024-08-04 00:00:00 +0000 UTC'>2024-08-04</span>&nbsp;|&nbsp;Update:&nbsp;2024-08-04&nbsp;|&nbsp;Words:&nbsp;7080&nbsp;|&nbsp;15 min&nbsp;|&nbsp;Lishensuo

D2L--第八章循环神经网络

1. 序列模型 1.1 自回归模型 (1)自回归模型:对于一个包含T个’时间’节点的输入序列,若预测其中的第t个数据,则依赖于该节点前面的观察数据 ...

Create:&nbsp;<span title='2024-08-11 00:00:00 +0000 UTC'>2024-08-11</span>&nbsp;|&nbsp;Update:&nbsp;2024-08-11&nbsp;|&nbsp;Words:&nbsp;7871&nbsp;|&nbsp;16 min&nbsp;|&nbsp;Lishensuo

D2L--第九章现代循环神经网络

1. 门控循环单元(GRU) 传统的RNN在处理长序列时会遇到梯度消失或梯度爆炸的问题。为了解决这些问题,引入了门控机制的变种,如长短时记忆网络(LSTM, long short-term memory)和门控循环单元(GRU, gated recurrent unit)。GRU是LSTM的一个简化版本,它通过合并某些门并减少参数数量来提高效率。 ...

Create:&nbsp;<span title='2024-08-11 00:00:00 +0000 UTC'>2024-08-11</span>&nbsp;|&nbsp;Update:&nbsp;2024-08-11&nbsp;|&nbsp;Words:&nbsp;8150&nbsp;|&nbsp;17 min&nbsp;|&nbsp;Lishensuo

D2L--第十章注意力机制与Transformer

1. 注意力提示 1.1 生物学的注意力提示 如下的观察实验: 受试者的注意力往往首先被颜色鲜艳的红色咖啡杯吸引(非自主性); 客观存在的,对于观察者的吸引特征。 喝完咖啡,处于兴奋状态的大脑经思考后,相比看报等,可能更想要读一本书(自主性权重更高); 在受试者的主观意愿推动下所做的决定。 ...

Create:&nbsp;<span title='2024-08-17 00:00:00 +0000 UTC'>2024-08-17</span>&nbsp;|&nbsp;Update:&nbsp;2024-08-17&nbsp;|&nbsp;Words:&nbsp;10698&nbsp;|&nbsp;22 min&nbsp;|&nbsp;Lishensuo

D2L--第十四及十五章BERT模型

1. 基础介绍 BERT(来自Transformers的双向编码器表示)基于Transformer编码器进行预训练(Pre-train),从而对输入词元进行上下文表示。 而在针对具体的自然语言处理任务的训练(Fine-tuning)时,对预训练Transformer编码器的所有参数进行微调,而额外的输出层将从头开始训练。 2. 输入表示 BERT输入序列的Embedding嵌入,表示为词元嵌入、段嵌入和位置嵌入的矩阵加和。 ...

Create:&nbsp;<span title='2024-08-17 00:00:00 +0000 UTC'>2024-08-17</span>&nbsp;|&nbsp;Update:&nbsp;2024-08-17&nbsp;|&nbsp;Words:&nbsp;6809&nbsp;|&nbsp;14 min&nbsp;|&nbsp;Lishensuo

D2L--第十一及十二章优化算法&多GPU并行

在深度学习中,优化算法是训练模型的关键部分,它们用于更新网络的参数以最小化损失函数。 由于优化算法的目标函数通常是基于训练数据集的损失函数,因此优化的目标是减少训练误差。 NOTE: 深度学习的最终目标是减小泛化误差,所以在关注优化算法的同时,也要注意过拟合。 ...

Create:&nbsp;<span title='2024-08-24 00:00:00 +0000 UTC'>2024-08-24</span>&nbsp;|&nbsp;Update:&nbsp;2024-08-24&nbsp;|&nbsp;Words:&nbsp;4818&nbsp;|&nbsp;10 min&nbsp;|&nbsp;Lishensuo

深度学习--GAN基础

2014年论文:https://proceedings.neurips.cc/paper_files/paper/2014/file/5ca3e9b122f61f8f06494c97b1afccf3-Paper.pdf Pytorch DCGAN实现:https://pytorch.org/tutorials/beginner/dcgan_faces_tutorial.html Other (e.g. cGAN):https://github.com/gordicaleksa/pytorch-GANs 1. 简介 GAN (Generative Adversarial Networks, 生成对抗网络) 于2014年由Ian等提出。简单来说,GAN主要包含两个模型: ...

Create:&nbsp;<span title='2024-09-03 00:00:00 +0000 UTC'>2024-09-03</span>&nbsp;|&nbsp;Update:&nbsp;2024-09-03&nbsp;|&nbsp;Words:&nbsp;2788&nbsp;|&nbsp;6 min&nbsp;|&nbsp;Lishensuo

Hugging Face(1)-NLP basic

Hugging Face是一家专注于自然语言处理(NLP)和人工智能(AI)的公司,可以认为是AI领域的Github。(下面简称HF) 一方面整理、收集了NLP等AI任务常用的数据集,预训练模型; 另一方面提供系列工具库,用以高效地训练AI模型。具体包括如下几个核心库。 Transformers Datasets Tokenizers 1. 获取模型/数据集 HF提供了大量的公开AI数据集以及预训练数据集,同时也提供了下载的方式 ...

Create:&nbsp;<span title='2024-10-16 00:00:00 +0000 UTC'>2024-10-16</span>&nbsp;|&nbsp;Update:&nbsp;2024-10-16&nbsp;|&nbsp;Words:&nbsp;2461&nbsp;|&nbsp;5 min&nbsp;|&nbsp;Lishensuo

Hugging Face(3)-Tokenizer库

https://huggingface.co/docs/tokenizers/quicktour tokenizer库的处理流程一般包括如下四步—— Normalizers: 文本句预处理,使规范化 Pre-tokenizers: 将句子初步拆分为单元词 Model:得到最终的分词token结果,及其对应id编号 Post-Processors: 添加特殊词元标记 1. 训练分词器 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 from tokenizers import Tokenizer # (1) 选择一种分词模型,并创建实例 from tokenizers.models import BPE tokenizer = Tokenizer(BPE(unk_token="[UNK]")) from tokenizers.trainers import BpeTrainer trainer = BpeTrainer(special_tokens=["[UNK]", "[CLS]", "[SEP]", "[PAD]", "[MASK]"]) # (2) 设置预分词器,这里按空白字符分割文本 from tokenizers.pre_tokenizers import Whitespace tokenizer.pre_tokenizer = Whitespace() # (3) 基于语料库,进行分词训练 copus_file = ["datasets/wikitext-103-raw-v1/wiki_train.csv"] tokenizer.train(copus_file, trainer) # (4) 保存并加载 tokenizer.save("datasets/wikitext-103-raw-v1/tokenizer-wiki.json") tokenizer = Tokenizer.from_file("datasets/wikitext-103-raw-v1/tokenizer-wiki.json") type(tokenizer) # tokenizers.Tokenizer # 与直接从预训练模型中提取的分词器类型不太一样 from transformers import AutoTokenizer tokenizer2 = AutoTokenizer.from_pretrained("datasets/bert-base-uncased") type(tokenizer2) # transformers.models.bert.tokenization_bert_fast.BertTokenizerFast tokenizers库提供了4种常见的子词分词方法。BPE通过迭代地合并最频繁的字符或子词对来构建词汇表,常用于GPT 和 RoBERTa 等模型;WordLevel基于完整词的分词方法,使用一个固定的词汇表,未登录词通常被标记为 [UNK]。此外还有Unigram以及WordPiece。 ...

Create:&nbsp;<span title='2024-10-16 00:00:00 +0000 UTC'>2024-10-16</span>&nbsp;|&nbsp;Update:&nbsp;2024-10-16&nbsp;|&nbsp;Words:&nbsp;1144&nbsp;|&nbsp;3 min&nbsp;|&nbsp;Lishensuo
« Prev Page Next Page »
© 2025 Li's Bioinfo-Blog Powered by Hugo & PaperMod
您是本站第 位访问者,总浏览量为 次