深度学习教程(15) | 自然语言处理与词嵌入(吴恩达·完整版)

【吴恩达deeplearning.ai】深度学习(10):自然语言处理 自然语言处理(Natural Language Processing,NLP)是人工智能和语言学领域的学科分支,它研究实现人与计算机之间使用自然语言进行有效通信的各种理论和方法。 词嵌入 前面介绍过,处理文本序列时,通常用建立字典后以one-hot的形式表示某个词,进而表示某个句子的方法。这种表示方法孤立了每个词,无法表现各个词之间的相关性,满足不了NLP的要求。 词嵌入(Word Em... 阅读详情


第5门课 序列模型,第2周:自然语言处理与词嵌入

本系列为吴恩达老师《深度学习专项课程(Deep Learning Specialization)》学习与总结整理所得,对应的课程视频可以在这里查看。

引言

在ShowMeAI前一篇文章 序列模型与RNN网络 中我们对以下内容进行了介绍:

  • 循环神经网络RNN
  • 语言模型
  • 采样生成序列
  • RNN梯度消失与梯度爆炸
  • GRU(门控循环单元)
  • LSTM(长短期记忆)
  • 双向与深度RNN

本篇介绍自然语言处理,文本表示与词嵌入的相关知识。

1.词嵌入

词汇表征 Word Representation

ShowMeAI在上一篇内容 序列模型与RNN网络 里介绍了基于词表(例如10000大小的vocabulary)映射,使用one-hot的方式对每个单词进行编码。例如单词Rome、Paris、Italy、France分别出现在词汇表的第1、2、3、4的位置,则表示如下:

词嵌入

这中one-hot稀疏单词表征的最大缺点就是每个单词都是独立的、正交的,无法知道不同单词之间的语义相似与关联度。例如「橙子」和「橘子」都是水果,词性相近,但是单从one-hot编码上来看,内积为零,无法知道二者的相似性。在自然语言处理的很多任务里,我们更希望能更准确地对词进行向量化表征,覆盖到其语义相似度和分布特性。

换用特征化表示方法能够解决这一问题。我们可以通过用语义特征作为维度来表示一个词,因此语义相近的词,其词向量也相近。语义特征表征的例子如下图所示:

词嵌入

词语义特征表征的长度可以基于场景做不同设定,通常越长能包含的信息越多。假定上图的词特征向量长度设定为300。则词汇表中的每个单词都可以使用对应的 300 × 1 300 \times 1 300×1的向量来表示,该向量的每个元素表示该单词对应的某个特征值。

这种特征表征的优点是根据特征向量能清晰知道不同单词之间的相似程度,例如「橙子」和「橘子」之间的相似度较高,很可能属于同一类别。这种单词「类别」化的方式,大大提高了有限词汇量的泛化能力。这种特征化单词的操作被称为Word Embeddings,即单词嵌入。

在我们当前的这个例子中,特征向量的每个特征元素含义是具体的,对应到实际特征,例如性别、年龄等。而在实际自然语言处理应用中,特征向量很多特征元素并不一定对应到有物理意义的特征,是比较抽象的。但这并不影响对每个单词进行向量化的有效表征,而且不同单词之间的相似性和分布特性也可以由向量表征计算获得。

如果我们使用降维算法(详细可以阅读ShowMeAI文章 图解机器学习 | 降维算法详解)对得到的词嵌入向量处理,并在2维平面里进行可视化,可以直观看到词之间的分布和相似度,如下图所示

词嵌入

相关论文:van der Maaten and Hinton., 2008. Visualizing Data using t-SNE

一个更官方一点的定义是:词嵌入(Word Embedding)是NLP中语言模型与表征学习技术的统称,它是指把一个维数为所有词的数量的高维空间(one-hot形式表示的词)「嵌入」到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。

  • 基于大语料库构建得到词嵌入/词向量,可用于完成自然语言处理中的下游各种任务(文本分类、文本相似度建模、序列标注等)。

1.1 词嵌入与迁移学习

使用词嵌入 Using Word Embeddings

在ShowMeAI上一篇文章 序列模型与RNN网络 介绍的命名实体识别例子中,每个单词采用的是one-hot编码。如下图所示,因为「菜农」是份职业,可以判断知道「王刚」是一个人名。

词嵌入

如果替换one-hot为特征化表示方法对每个字进行编码,再构建RNN模型。对于一个新的句子:

词嵌入

因为两句话中,「菜」与「果」的特征向量很接近,很容易类比得出「张三」也是一个人名。这就是特征化表示方法的优点之一。

通过上例,我们知道特征化表示方法有减少训练样本数目的优点,前提是对海量单词建立特征向量表述(word embedding)。这样,即使是训练样本中没有的单词,也可以根据word embedding的结果得到与其词性相近的单词,从而得到与该单词相近的结果,有效减少了训练样本的数量。

特征化表示方法的特性使得很多NLP任务能方便地进行迁移学习,方法步骤是:

  • ① 从大量的文本集中学习词嵌入,或者下载网上开源的、预训练好的词嵌入模型;
  • ② 将这些词嵌入模型迁移到新的、只有少量标注训练集的任务中;
  • ③ 可以选择是否微调词嵌入。当标记数据集不是很大时可以省下这一步。

吴恩达老师建议仅当训练样本足够大的时候,再进行上述第三步。

大家可能会注意到,这里的词嵌入,和ShowMeAI前面文章 CNN应用:人脸识别和神经风格转换 里提到的人脸特征编码有很多相似性。人脸图片经过Siamese网络,得到其特征向量,这点跟词嵌入是类似的。

词嵌入

不同的地方是Siamese网络输入的人脸图片可以是数据库之外的;而词嵌入一般都是已建立的词汇库中的单词,非词汇库单词统一用< UNK >表示。

1.2 词嵌入与类比推理

词嵌入的特性 Properties of Word Embeddings

词嵌入的一个应用场景是类比推理。

举个例子,我们用 e w o r d e_{word} eword​表示单词word的词嵌入向量,则给定对应关系「男性(Man)」对「女性(Woman)」,想要类比出「国王(King)」对应的词汇。

则可以有 e m a n − e w o m a n ≈ e k i n g − e ? e_{man} - e_{woman} \approx e_{king} - e_? eman​−ewoman​≈eking​−e?​,之后的目标就是找到词向量 w w w,来找到使相似度 s i m ( e w , e k i n g − e m a n + e w o m a n ) sim(e_w, e_{king} - e_{man} + e_{woman}) sim(ew​,eking​−eman​+ewoman​)最大。

词嵌入

我们最常用到的相似度计算函数是余弦相似度(cosine similarity)(详细参考ShowMeAI文章 图解AI数学基础 | 线性代数与矩阵论 中距离与相似度度量部分内容)。余弦相似度计算公式为:

s i m ( u , v ) = u T v ∣ ∣ u ∣ ∣ 2 ∣ ∣ v ∣ ∣ 2 sim(u, v) = \frac{u^T v}{|| u ||_2 || v ||_2} sim(u,v)=∣∣u∣∣2​∣∣v∣∣2​uTv​

相关论文:Mikolov et. al., 2013, Linguistic regularities in continuous space word representations

2.嵌入矩阵

嵌入矩阵 Embedding Matrix

假设构建好的词汇库vocabulary包含了10000个单词,每个词包含的特征维度为300,那么表征所有词的嵌入矩阵(embedding matrix)维度为 300 × 10000 300 \times 10000 300×10000,用E来表示。词 w w w的one-hot向量表示为 O w O_w Ow​(我们知道其维度为 10000 × 1 10000 \times 1 10000×1),则该词对应的嵌入向量(embedding vector)可以如下计算得到:

e w = E ⋅ O w e_w=E\cdot O_w ew​=E⋅Ow​

所以,一旦有了嵌入矩阵embedding matrix (具体的计算方法在后面会提到),就能计算得到所有单词的embedding vector 。不过真的做矩阵乘积运算的效率并不高,矩阵维度很大,且大部分元素为零,实际上述矩阵运算等价于直接从中选取第w列作为词嵌入向量。

3.学习词嵌入

学习词嵌入 Learning Word Embeddings

3.1 神经概率语言模型

神经概率语言模型(Neural Probabilistic Language Model)构建了一个能够通过上下文来预测未知词的神经网络。嵌入矩阵 E E E 可以通过构建神经概率语言模型(Neural Probabilistic Language Model),运用梯度下降优化得到。举个简单的例子,输入样本是下面这句话:

I want a glass of orange (juice).

通过这句话的前6个词,预测最后的词「juice」。嵌入矩阵 E E E未知待求,每个单词可用嵌入向量 e w e_w ew​表示。构建的神经概率模型结构如下图所示:

学习词嵌入

神经网络输入层包含6个词嵌入向量,每个向量的维度是300,则输入层总共是1800维输入。Softmax层有10000个维输出(对应词表里的10000个词)。正确的输出label是「juice」。

网络中 E E E, W [ 1 ] W^{[1]} W[1], b [ 1 ] b^{[1]} b[1], W [ 2 ] W^{[2]} W[2], b [ 2 ] b^{[2]} b[2]为可学习的参数。在足量的语料样本下,使用梯度下降,迭代优化,最终可以得到嵌入矩阵 E E E。

这个任务下构建的神经网络,能有效保证具有相似属性单词的嵌入向量embedding vector相近。

为了简化和固定神经网络的输入,我们可以选择只用前4个单词作为输入预测下一个词,对应到本例中,是使用「a glass of orange」4个单词作为输入。(当然,4是超参数,根据数据量和计算资源不同,可以调整。)

一般地,我们把输入叫做上下文context,输出叫做target。对应上例:

context: a glass of orange

target: juice

关于context的选择有多种方法:

  • target前 n n n个单词或后n个单词
  • target前1个单词
  • target附近某1个单词(Skip-Gram模型就是这样做的)

上述不管哪一个方法,在数据量充分的情况下都能得到出较准确的嵌入矩阵embedding matrix E E E。

相关论文:Bengio et. al., 2003, A neural probabilistic language model

3.2 Word2Vec

Word2Vec

在很长一段时间里,大家使用多的是Word2Vec这个模型,它是一种简单高效的词嵌入学习方法,包括 2 种模型:

  • Skip-gram (SG):根据词预测目标上下文
  • Continuous Bag of Words (CBOW):根据上下文预测目标词

这两种方法训练得到的隐层参数即是对应的词嵌入。

这部分也推荐大家学习ShowMeAI整理的斯坦福cs224n课程课件注解与笔记:

学习词嵌入

在模型的训练阶段,又包含**负采样(Negative Sampling)和分级的Softmax(Hierarchical Softmax)**两种训练技巧方法。

相关论文:Mikolov et. al., 2013. Efficient estimation of word representations in vector space.

下面我们来展开讲解一下Skip-gram和CBOW模型:

(1) Skip-gram

Skip-gram是一个使用中心词去预测context里周边词的模型,结构如图所示,从左到右是:

学习词嵌入

① 输入的中心词One-hot向量
② 输入乘以center word的矩阵 W W W,得到词向量
③ 词向量乘以另一个context word的矩阵 W ′ W\prime W′得到对每个词语的「相似度」
④ 对相似度得分取Softmax得到概率,与答案对比计算损失。

设中心词为 c c c,该词的一定词距内选取目标上下文 t t t,则根据Softmax单元得到输出条件概率:

p ( t ∣ c ) = e x p ( θ t T e c ) ∑ j = 1 m e x p ( θ j T e c ) p(t|c) = \frac{exp(\theta_t^T e_c)}{\sum^m_{j=1}exp(\theta_j^T e_c)} p(t∣c)=∑j=1m​exp(θjT​ec​)exp(θtT​ec​)​

公式中 θ t \theta_t θt​是一个与输出 t t t有关的参数。损失函数仍选用交叉熵:

L ( y ^ , y ) = − ∑ i = 1 m y i l o g y ^ i L(\hat{y}, y) = -\sum^m_{i=1}y_ilog\hat{y}_i L(y^​,y)=−i=1∑m​yi​logy^​i​

这个Softmax分类中,每次计算条件概率时,需要对词典中所有词做求和操作,因为词库很大,所以总的计算量很大。优化方案之一是使用一个层次化 Softmax 分类器(Hierarchical Softmax Classifier),形如二叉树。在实践中,一般对词表根据频次构建霍夫曼树(Huffman Tree),常用词在顶部。

学习词嵌入

(2) CBOW

CBOW模型的工作方式与Skip-gram相反,通过上下文词来预测中间的词。

学习词嵌入

基本步骤原理如下:

学习词嵌入

吴恩达老师没有深入去讲CBOW。想要更深入了解的话,也推荐大家学习ShowMeAI整理的斯坦福cs224n课程课件注解与笔记:

(3) 负采样

负采样 Negative Sampling

为了解决词表大的情况下平铺开的Softmax计算量大的问题,Word2Vec的作者提出了负例采样(Negative Sampling)方法。

负例采样的做法是采样选取context词,和target词构建样本,一般包含一个正样本和k个负样本。

  • 例「orange」为context word,「juice」为target word,「orange juice」是正确的组合,相应的target label为1。

  • 保持「orange」为context word不变,target word随机选择「king」、「book」、「the」或者「of」等。这些都不是合适的组合,相应的target label为0。

  • 一般地,固定某个context word对应的负样本个数k一般遵循:

    • 若训练样本较少,k可以选择5~20;
    • 若训练样本较多,k选择2~5即可。

学习词嵌入

在负例采样中,调整为多个Sigmoid输出上下文-目标词 ( c , t ) (c,t) (c,t)为正样本的概率:

P ( y = 1 ∣ c , t ) = σ ( θ t T e c ) P(y=1 \mid c, t) = \sigma(\theta_t^Te_c) P(y=1∣c,t)=σ(θtT​ec​)

公式其中, θ t \theta_t θt​、 e c e_c ec​分别代表目标词和上下文的词向量。

对比原始形态,每次要更新 n n n维的多分类Softmax单元( n n n为词典中词的数量)。使用负例采样之后,每次只需要更新 k + 1 k+1 k+1维的二分类Sigmoid单元,计算量大大降低。

关于计算选择某个词作为负样本的概率,可以使用随机选择。但作者给出了如下效果更好的公式:

p ( w i ) = f ( w i ) 3 4 ∑ j = 0 m f ( w j ) 3 4 p(w_i) = \frac{f(w_i)^{\frac{3}{4}}}{\sum^m_{j=0}f(w_j)^{\frac{3}{4}}} p(wi​)=∑j=0m​f(wj​)43​f(wi​)43​​

公式中, f ( w i ) f(w_i) f(wi​)代表语料库中单词 w i w_i wi​出现的频率。上述公式更加平滑,能够增加低频词的选取可能。

相关论文:Mikolov et. al., 2013. Distributed representation of words and phrases and their compositionality

3.3 GloVe

GloVe 词向量 GloVe Word Vectors

GloVe(Global Vectors)是另一种流行的词嵌入算法。Glove模型基于语料库统计了词的共现矩阵 X X X, X X X中的元素 X i j X_{ij} Xij​表示单词 i i i和单词 j j j「为上下文-目标词」的次数。之后,用梯度下降法最小化损失函数。

共现矩阵的一个例子如下(此时左右窗长都为1):

语料库的3句话如下:

like deep learning.

I like NLP.

I enjoy flying.

学习词嵌入

损失函数公式定义为:

J = ∑ i = 1 N ∑ j = 1 N f ( X i j ) ( θ i t e j + b i + b j − l o g ( X i j ) ) 2 J = \sum^N_{i=1}\sum^N_{j=1}f(X_{ij})(\theta^t_ie_j + b_i + b_j - log(X_{ij}))^2 J=i=1∑N​j=1∑N​f(Xij​)(θit​ej​+bi​+bj​−log(Xij​))2

公式中, θ i \theta_i θi​、 e j e_j ej​是单词 i i i和单词 j j j的词向量; b i b_i bi​、 b j b_j bj​; f ( ) f() f()是一个用来避免 X i j = 0 X_{ij}=0 Xij​=0时 l o g ( X i j ) log(X_{ij}) log(Xij​)为负无穷大、并在其他情况下调整权重的函数。 X i j = 0 X_{ij}=0 Xij​=0时, f ( X i j ) = 0 f(X_{ij}) = 0 f(Xij​)=0。

「为上下文-目标词」可以代表两个词出现在同一个窗口。在这种情况下, θ i \theta_i θi​和 e j e_j ej​是完全对称的。因此,在训练时可以一致地初始化二者,使用梯度下降法处理完以后取平均值作为二者共同的值。

相关论文:Pennington st. al., 2014. Glove: Global Vectors for Word Representation

最后,注意一点,使用word2vec或者GloVe等词嵌入算法学到的词向量,并不能对其中每个维度作明确的物理含义解析,但可以表征词语的分布和相近度,对下游任务也是有帮助的。

4.情感分类

情绪分类 Sentiment Classification

4.1 情感分析问题

情感分类是指分析一段文本对某个对象的情感是正面的还是负面的,实际应用包括舆情分析、民意调查、产品意见调查等等。

情感分类

4.2 情感分析简单词嵌入应用

情感分类的问题之一是标记好的训练数据不足。但是有了词嵌入得到的词向量,中等规模的标记训练数据也能构建出一个效果不错的情感分类器。

情感分类

如上图所示,用词嵌入方法获得嵌入矩阵 E E E后,计算出句中每个单词的词向量并取平均值,输入一个Softmax单元,输出预测结果。

这种方法的优点是适用于任何长度的文本;缺点是没有考虑词的顺序,对于包含了多个正面评价词的负面评价,很容易预测到错误结果。

4.3 词嵌入+RNN解决情感分析问题

使用RNN能够实现一个效果更好的情感分类器:

情感分类

上图中的RNN模型是典型的「多对一」模型,因为RNN考虑单词出现的次序,能更有效地进行真实情感的判断。

再配合上使用词嵌入,能够有效提高模型的泛化能力,即使训练样本不多,也能保证模型有不错的性能。

5.词嵌入除偏

词嵌入除偏 Debiasing Word Embeddings

5.1 词嵌入偏见问题

语料库中可能存在性别歧视、种族歧视、性取向歧视等非预期形式偏见(Bias),这种偏见会直接反映到通过词嵌入获得的词向量。如下面的例子(本身不恰当,但是可能词向量表现出这层关系):

  • Man和Woman类比,相当于King和Queen
  • Man和Woman类比,相当于Computer programmer和Homemaker
  • Father和Mother类比,相当于Doctor和Nurse

上例中,明显第2和第3句话存在性别偏见,因为Woman和Mother也可以是Computer programmer和Doctor。

5.2 消除词嵌入偏见的方法

下面以性别偏见为例,介绍下消除词嵌入word embeddings偏见的方法。

  • 第1步,确定偏见bias的方向

方法是对所有性别对立的单词求差值,再平均。公式如下:

b i a s   d i r e c t i o n = 1 N ( ( e h e − e s h e ) + ( e m a l e − e f e m a l e ) + ⋯   ) bias\ direction=\frac1N ((e_{he}-e_{she})+(e_{male}-e_{female})+\cdots) bias direction=N1​((ehe​−eshe​)+(emale​−efemale​)+⋯)

下图展示了bias direction和non-bias direction。

词嵌入除偏

  • 第2步,单词中立化(Neutralize)

将需要消除性别偏见的单词投影到non-bias direction上去,消除bias维度。例如babysitter,doctor等。

词嵌入除偏

  • 第3步,均衡对(Equalize pairs)

让性别对立单词与上面的中立词距离相等,具有同样的相似度。例如让grandmother和grandfather与babysitter的距离同一化。

词嵌入除偏

吴恩达老师指出,掌握哪些单词需要中立化非常重要。一般来说,大部分英文单词,例如职业、身份等都需要中立化,消除词嵌入中「性别」这一维度的影响。

相关论文:Bolukbasi et. al., 2016. Man is to computer programmer as woman is to homemaker? Debiasing word embeddings

参考资料

ShowMeAI系列教程推荐

推荐文章

吴恩达Coursera深度学习课程 deeplearning.ai (5-2) 自然语言处理与词嵌入--课程笔记 2.1 词汇表征 前面内容中,我们直接使用英文单词来表征词汇,但是对于计算机来说,是无法直接认识单词的。 为了让计算机能够能更好地理解我们的语言,建立更好的语言模型。 这就需要将词汇进行表征。下面是几种不同的词汇表征方式。 one-hot 表征 利用one-hot向量,将单词表示为词典大小的向量,字典中对应该单词的位置为1,其余位置为0。 缺点:将每个词孤立了起来,泛化能力不强... 阅读详情

相关推荐

吴恩达深度学习NLP笔记:核心算法与工程实践

自然语言处理(NLP)作为人工智能的重要分支,其核心在于让计算机理解人类语言。词嵌入技术如Word2Vec和GloVe通过将词语映射到向量空间,捕捉语义关系,成为NLP的基石。深度学习模型如RNN、LSTM和Attention机制进一步解决了序列建模中的长距离依赖问题。这些技术在文本分类、机器翻译等场景中展现出强大能力。吴恩达的深度学习课程笔记从工程视角重构了这些复杂算法,特别强调Skip-gram模型的负采样优化和LSTM的梯度裁剪策略等实用技巧。对于开发者而言,掌握词向量的可视化诊断和注意力权重的hea

weixin_28684497的博客 71

TensorFlow 中的自然语言处理 (吴恩达视频)

自然语言处理

guguo666的博客 930

吴恩达机器学习个人笔记完整版

吴恩达机器学习个人笔记完整版,主要记录吴老师上课时的重点,毕竟英文授课,还是要看笔记的。

【吴恩达Tensorflow 2.0实践课】3.1 自然语言处理

3.1.1 Word based encondings 思考:如何让机器识别文字 1. 基于字母 如果用ASCII码将字母编码,会出现以下情况: 不同单词,编码一样,但完全不一样的意思 2. 基于单词 如果将两个类似的句子每个单词标号 3.1.2 Using APIs import tensorflow as tf from tensorflow import keras from tensorflow.keras.preprocessing.text import Toke.

culeworks 795

六维力传感器选型指南:电阻式vs电容式,哪个更适合你的工业场景?

本文深入解析六维力传感器在工业自动化中的选型要点,重点对比电阻式与电容式传感器的核心原理、环境适应性及成本结构。针对不同工业场景(如高精度装配、重载机器人等),提供专业选型建议,帮助工程师优化系统性能与经济效益。

weixin_42525005的博客 397

C语言实验——各位数字之和排序

C语言实验——各位数字之和排序Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Description给定n个正整数,根据各位数字之和从小到大进行排序。 Input输入数据有多组,每组数据占一行,每行的第一个数正整数n,表示整数个数,后面...

aiLMengi000的博客 1245

吴恩达《深度学习-序列模型》2 -- 自然语言处理与词嵌入

1. Word representation词汇表征 Word embeddings词嵌入 让算法自动理解同类词。 之前我们将对词的表示用的是one-shot,这种方法简单,这种表示方法的一个缺点就是,它把每个词都孤立起来了,使得其对相关词的泛化能力不强,因为任意两个one-shot向量内积都为0 ,也就是任意两个词间的距离是一样的,没有词类的概念。 举个例子,若已经学习了I want...

weixin_41043240的博客 4008

STM32结合FFT与窗函数优化,实现高精度正弦信号提取

本文详细介绍了如何在STM32嵌入式平台上结合FFT算法与窗函数优化技术,实现高精度正弦信号提取。通过分析频谱泄漏原理,对比汉宁窗、汉明窗等窗函数特性,并提供实际代码示例和幅值补偿方法,有效解决了工业检测中信号精度不足的问题。

v5w6x的博客 221

【吴恩达团队自然语言处理第四课】NLP中的注意力模型

【吴恩达团队自然语言处理第四课】NLP中的注意力模型 神经网络机器翻译 Outline Introduction to Neural Machine Translation Seq2Seq model and its shortcomings Solution for the information bottleneck Seq2Seq model Introduced by Google...

qq_43119424的博客 208

【Bug已解决】Context window exceeded / Token limit reached — Claude Code 上下文窗口超限解决方案

Claude Code 长会话中报上下文窗口/Token 超限,本质是对话历史、文件内容、工具结果累积超过 200K 上限。文中给出 /clear、/compact、分批读大文件、限制工具输出、配置 autoCompact 等完整方案。

一键难忘的博客 6732

PLC的自抗扰控制(ADRC)算法

1、自抗扰控制算法,网上很多文章有所讲解,大家也可以关注韩京清教授的论文和书籍,这里就不赘述了,下面给出梯形图+SCL代码。 1、跟踪微分器 2、线性控制率 3、博图SCL控制代码 4、ADRC控制算法的所有公式汇总 ......

RXXW_Dor的博客 3854

深度学习教程(1) | 深度学习概论(吴恩达·完整版)

本篇为深度学习系列教程的引言,以房价预测为例,讲解神经网络(Neural Network)模型结构和基础知识,并介绍针对监督学习的几类典型神经网络:Standard NN,CNN和RNN等知识

ShowMeAI研究中心 1万+

科研级YOLOv8 Neck革新:BiFPN双向特征金字塔赋能,让多尺度融合更高效的实战指南

在文件夹下新建BiFPN.py,将上述BiFPNLayer和BiFPN类的代码写入其中。这一步是为了让YOLOv8的代码架构能识别我们的自定义Neck模块。

m0_64661770的博客 153

深度学习教程 | 吴恩达专项课程 · 全套笔记解读

本篇内容是组织的「深度学习原理知识大全」系列教程入口,教程依托吴恩达老师《深度学习专项课程》,对内容做了重新梳理与制作,以更全面和直观的图文方式,对深度学习涉及的知识、模型、原理、应用领域等进行详解......

ShowMeAI研究中心 1万+

基于深度学习YOLOv8的商品识别系统(深度学习 + UI界面 + 训练数据集 + Python代码)

如果使用自定义数据集,可以通过图像标注工具如LabelImg来标注每个商品的类别和边界框,并保存为YOLO格式的文本文件。bash复制编辑/dataset/images/train/val/labels/train/val这样,我们就准备好了数据集,可以开始训练YOLOv8模型。本文介绍了如何使用YOLOv8构建一个商品识别系统,包括从数据准备到模型训练,再到UI界面的开发。通过深度学习技术,尤其是YOLOv8的高效目标检测能力,我们能够快速实现商品识别并集成到实际应用中。

YOLO 303

2026年北京君正数字IC笔试试卷带答案

本文摘要:该文档是一份数字IC设计相关的考试试题,包含单选题、多选题、波形分析题和代码设计题。内容涵盖时序约束、半导体工艺、状态机设计、逻辑综合、异步FIFO设计等知识点。试题解析详细,重点考察数字电路基础、时序分析和Verilog代码实现能力。典型题目包括多周期路径设置、Moore/Mealy状态机区别、同步复位与异步复位特性、RISC-V架构特点等,并提供了异步FIFO的Verilog实现参考代码。(149字)

Open 114

0.0 目录-深度学习第一课《神经网络与深度学习》-Stanford吴恩达教授

搬运原文链接:https://zhuanlan.zhihu.com/p/38200980 深度学习中Dropout原理解析 文章目录深度学习中Dropout原理解析1. Dropout简介1.1 Dropout出现的原因1.2 什么是Dropout2. Dropout工作流程及使用2.1 Dropout具体工作流程2.2 Dropout在神经网络中的使用 1. Dropout简介 1.1 Drop...

赵继超的笔记 4万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

自然语言处理NLP课程不会选择?这篇测评或许可以解你困惑

引言 自然语言处理(Natural Language Processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。 学过NLP的都知道,学习一些基础知识和调用一些NLP的库,最后用到项目中发现效果并不好,需要你优化或者修改的时候就开始懵逼了。这是很多初学者有的一个疑问,最后决定去学习提升一下,但是目前市场上的课程杂又多,我们该如何选择一门适合自己的课程呢? 我们如何

weixin_48649532的博客 587

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

深度学习入门首推资料--吴恩达深度学习全程笔记分享

本文首发于微信公众号“StrongerTang”,可打开微信搜一搜,或扫描文末二维码,关注查看更多文章。 原文链接:(https://mp.weixin.qq.com/s?__biz=Mzg3NDEzOTAzMw==&mid=2247483739&idx=1&sn=90a0ef1ff6c90514f397e9b6f3c74b83&chksm=ced41dadf9a3...

qq_41590635的博客 5001

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

吴恩达深度学习教程——中文笔记网上资料整理

深度学习笔记目录 课程地址:https://mooc.study.163.com/university/deeplearning_ai#/c 专栏: https://blog.youkuaiyun.com/shikong_/article/category/7288516 https://blog.youkuaiyun.com/zc...

Superstar02的博客 1446

0.0 目录-深度学习第四课《卷积神经网络》-Stanford吴恩达教授

目录 《卷积神经网络》 笔记列表 Week 1 卷积神经网络 Week 1 传送门 —> 1.1 计算机视觉1.2 边缘检测示例1.3 更多边缘检测内容1.4 Padding1.5 卷积步长1.6 三维卷积1.7 单层卷积网络1.8 简单卷积网络示例1.9 池化层1.10 卷积神经网络示例1.11 为什么使用卷积? Week 2 深度卷积网络:实例探究 Week ...

赵继超的笔记 10万+

温州大学《深度学习》课程课件(十二、自然语言处理和词嵌入)

这学期我上的另一门课是本科生的《深度学习》,主要用的是吴恩达老师的《深度学习》视频课的内容。使用教材:吴恩达《深度学习》课程笔记课外参考书:《深度学习》,人民邮电出版社,IAN GOODF...

fengdu78的博客 249

深度学习工程师-吴恩达课程汇总

以下为自学《吴恩达-深度学习工程师》视频笔记和总结: 视频链接: Coursera:官方课程(英文字母) 网易云课堂:网易引进正版授权(中英文字幕) 第一周 深度学习概论 1.1 欢迎来到深度学习工程师微专业 1.2 什么是神经网络? 每层神经网络的数学理解:用线性变换跟随着非线性变化,将输入空间投向另一个空间。 每层神经网络的物理理解:通过现有的不同物质的组合形成新物质。 1.3 用神经网络进行监督学习 1.4 为什么深度学习会兴起? 1.5 关于这门课 1.6 课程资源 .

满目星辰 3667

吴恩达深度学习练习记录

课后作业链接:https://blog.youkuaiyun.com/u013733326/article/details/79827273 19.7.15日unit1_2_具有神经网络思维的Logistic回归 ✅

weixin_45032769的博客 565

带学吴恩达《深度学习》,带打Kaggle大赛!

吴恩达曾经说过:“人工智能是新电力,他相信人工智能将在未来改变各行各业,而未来全世界需要数百万具备深度学习知识的人。”说起吴恩达,在人工智能领域,你们一定不会陌生, 20...

机器学习算法与Python学习 1379

0.0 目录-深度学习第五课《序列模型》-Stanford吴恩达教授

第五课 《序列模型》 笔记列表 Week 1 循环序列模型 Week 1 传送门 —> 1.1 为什么选择序列模型1.2 数学符号1.3 循环神经网络1.4 通过时间的方向传播1.5 不同类型的循环神经网络1.6 语言模型和序列生成1.7 对新序列采样1.8 带有神经网络的梯度消失1.9 GRU 单元1.10 长短期机器 (LSTM)1.11 双向神经网络1.12 深层循...

赵继超的笔记 7149
上一篇: 深度学习教程(14) | 序列模型与RNN网络(吴恩达·完整版)
下一篇: 深度学习教程(16) | Seq2seq序列模型和注意力机制(吴恩达·完整版)
ShowMeAI
博客等级 码龄5年 6514粉丝 672原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShowMeAI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值