主要内容

嵌入

嵌入离散数据

    描述

    嵌入操作数字指标转换为数值向量,指标对应于离散数据的地方。使用嵌入的地图离散数据分类值或文字等数值向量。

    请注意

    这个函数嵌入操作适用于dlarray数据。如果你想在应用中嵌入操作layerGraph对象或数组,使用一个wordEmbeddingLayer(文本分析工具箱)对象。

    例子

    海底=嵌入(dlX,权重)返回嵌入向量权重相应格式的数值指标dlarray对象dlX

    海底=嵌入(dlX,权重“DataFormat”,FMT)还指定了尺寸格式FMTdlX不是一个格式化的dlarray对象。输出海底是一个非格式化dlarray顺序相同的维度dlX

    例子

    全部折叠

    嵌入一个mini-batch分类功能。

    创建一个数组包含5观测值分类特性“男性”“女性”

    直言([X =“男性”“女性”“男性”“女性”“女性”])';

    初始化权重嵌入。指定一个嵌入维度10,词汇对应类别的输入数据的数量+ 1。

    embeddingDimension = 10;vocabularySize =元素个数(类别(X));重量=兰德(embeddingDimension vocabularySize + 1);

    嵌入分类数据,首先将其转换为mini-batch的数字指标。

    X =双(X)
    X =5×12 1 2 1 1

    为格式化dlarray输入,嵌入函数展开成一个单例“C”(频道)尺寸大小1。创建一个格式化的dlarray对象包含的数据。指定的行对应于观测,指定格式“公元前”(批处理、通道)。

    dlX = dlarray (X,“公元前”)
    dlX = 1 (C) x 5 (B) dlarray 2 1 2 1 1

    嵌入数字指标使用嵌入函数。嵌入函数扩展到“C”维度。

    海底=嵌入(dlX、重量)
    海底= 10 (C) x 5 (B) dlarray 0.1576 0.8147 0.1576 0.8147 0.8147 0.9706 0.9058 0.9706 0.9058 0.9058 0.9572 0.1270 0.9572 0.1270 0.1270 0.4854 0.9134 0.4854 0.9134 0.9134 0.8003 0.6324 0.8003 0.6324 0.6324 0.1419 0.0975 0.1419 0.0975 0.0975 0.4218 0.2785 0.4218 0.2785 0.2785 0.9157 0.5469 0.9157 0.5469 0.5469 0.7922 0.9575 0.7922 0.9575 0.9575 0.9595 0.9649 0.9595 0.9649 0.9649

    在这种情况下,输出是一个embeddingDimension——- - - - - -N矩阵的格式“CB”(通道、批),N是观测的数量。每一列包含嵌入向量。

    嵌入一个mini-batch文本数据。

    textData = [“项目是偶尔陷入扫描仪卷。”“大声作响,声音是来自汇编活塞。”];

    创建一个数组的标记化的文档。

    文件= tokenizedDocument (textData);

    对文本数据进行编码序列的数字指标,创建一个wordEncoding对象。

    内附= wordEncoding(文件);

    初始化权重嵌入。指定一个嵌入维数为100,词汇量大小与相对应的词汇量大小相一致的字数在字编码+ 1。

    embeddingDimension = 100;vocabularySize = enc.NumWords;重量=兰德(embeddingDimension vocabularySize + 1);

    把词向量序列使用标记化的文档doc2sequence函数。的doc2sequence函数,默认情况下,输入数据丢弃词汇表之外的令牌。词汇表之外的令牌映射到最后嵌入权重向量,设置“UnknownWord”选项“南”。的doc2sequence函数,默认情况下,left-pads与零输入序列具有相同的长度

    序列= doc2sequence (enc、文档“UnknownWord”,“南”)
    序列=2×1单元阵列{[0 1 2 3 4 5 6 7 8 9 10]}{[11 12 13 14 15 2 16 17 18 19 10]}

    输出是一个单元阵列,每个元素对应于一个观察。每个元素是一个行向量元素代表个人标记在相应的观察包括填充的值。

    单元阵列转换为一个数字阵列垂直连接的行。

    X =猫(1、序列{}):
    X =2×110 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 16 17 18 19 10

    转换的数值指标dlarray。因为的行和列X分别对应于观测时间和步骤指定格式英国电信的

    dlX = dlarray (X,英国电信的)
    dlX = 2 (B) x (T) dlarray 11 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 16 17 18 19 10

    嵌入数字指标使用嵌入函数。的嵌入函数映射填充标记(标记索引0)和其他词汇表之外的令牌相同的词汇表之外的嵌入向量。

    海底=嵌入(dlX、重量);

    在这种情况下,输出是一个embeddingDimension——- - - - - -N——- - - - - -年代矩阵的格式“认知行为治疗”,在那里N年代观察的数量和时间的步骤,分别。向量海底(:n t)对应于时间步的嵌入向量t的观察n

    输入参数

    全部折叠

    输入数据,指定为一个格式化的dlarray,一个非格式化dlarray或数字数组。的元素dlX必须非负整数或

    函数返回嵌入向量权重相应的数值指标dlX。如果任何值dlX为零,,或大于词汇量大小,那么函数返回的词汇表之外的向量元素。

    dlX不是一个格式化的dlarray对象,您必须指定尺寸标签格式使用“DataFormat”选择。同样,如果dlX是一个数值数组,然后呢权重必须是一个dlarray对象。

    嵌入操作展开成一个单通道指定的输入数据的维度“C”尺寸标签。如果数据没有指定频道维度,那么假设一个未指明的单通道尺寸的函数。

    嵌入重量、指定为一个格式化的dlarray,一个非格式化dlarray或数字数组。

    矩阵权重指定的尺寸嵌入,词汇量的大小,嵌入向量。

    嵌入维数是组件的数量K嵌入。即嵌入地图数字指标向量的长度K。词汇量的大小是离散元素的数量V在嵌入。离散元素的数量,嵌入的底层数据支持。金宝app嵌入地图词汇表之外的指数相同的词汇表之外的嵌入向量。

    如果权重是一个格式化的dlarray对象,那么它一定格式“铜”加州大学的。相对应的尺寸标签“C”“U”一定的大小KV+ 1,分别KV分别代表了嵌入维度和词汇量的大小。额外的向量对应词汇表之外的嵌入向量。

    如果权重不是一个格式化的dlarray对象,然后权重必须是一个K————(V+ 1)矩阵,KV分别代表了嵌入维度和词汇量的大小。

    函数返回嵌入向量权重相应的数值指标dlX。如果任何值dlX为零,,或大于词汇量大小,那么函数返回的词汇表之外的向量元素。

    维度的非格式化输入数据,指定为逗号分隔组成的“DataFormat”和一个字符数组或字符串FMT为每个维度的数据提供一个标签。每个字符在FMT必须是下列之一:

    • “年代”——空间

    • “C”——频道

    • “B”批处理(例如,样品和观察)

    • “T”时间(例如,序列)

    • “U”——未指明的

    您可以指定多个维度标签“年代”“U”。您可以使用标签“C”,“B”,“T”最多一次。

    您必须指定FMT, DataFormat”当输入数据不是一个格式化的dlarray

    例子:“DataFormat”、“SSCB”

    数据类型:字符|字符串

    输出参数

    全部折叠

    嵌入向量,作为一个返回dlarray对象。输出海底有相同的底层数据类型作为输入dlX

    函数返回嵌入向量权重相应的数值指标dlX。如果任何值dlX为零,,或大于词汇量大小,那么函数返回的词汇表之外的向量元素。

    嵌入向量有K元素,K嵌入维数。的大小尺寸海底取决于输入数据:

    • 如果dlX是一个格式化的dlarray与一个“C”尺寸标签,然后嵌入操作扩展到维度。即输出相同的尺寸格式作为输入,“C”维度有大小K,其他维度有相同的大小相应的维度的输入。

    • 如果dlX是一个格式化的dlarray没有一个“C”维度。然后操作假定一个单通道尺寸。输出有一个“C”维度和所有其他维度都有相同的大小和尺寸标签。即输出具有相同的格式作为输入,也是“C”维度,“C”维度有大小K,其他维度有相同的大小相应的维度的输入。

    • 如果dlX不是一个格式化的dlarray对象和“DataFormat”包含一个“C”维度,然后嵌入操作扩展到维度。即产出的数量维度作为输入,相对应的尺寸“C”维度有大小K,其他维度有相同的大小相应的维度的输入。

    • 如果dlX不是一个格式化的dlarray对象和“DataFormat”不包含一个“C”维度,然后嵌入操作开始时插入一个新维度。也就是说,输出有一个维度作为输入,第一个维度对应“C”维度有大小K,其他维度有相同的大小相应的维度的输入。

    扩展功能

    介绍了R2020b