"FeatureExtractor" (神经网络编码器)

NetEncoder[{"FeatureExtractor",f}]

表示一个使用 FeatureExtractorFunction f 对输入编码的编码器.

NetEncoder["FeatureExtractor"]

表示一个在网络训练中自动学习的编码器.

NetEncoder[{"FeatureExtractor","method"}]

使用特定的特征提取方法.

更多信息

  • NetEncoder[{"FeatureExtractor",f}] 中,FeatureExtractorFunction f 应返回一个数字向量.
  • NetEncoder["FeatureExtractor"] 中,当 NetTrain 在包含编码器的网络中被调用,提取器会从训练数据中习得. 习得的提取器通常返回数字向量.
  • NetEncoder[{"FeatureExtractor","method"}] 中,"method" 可以是 FeatureExtraction 的任何特征提取器方法,可以产生数字向量:"StandardizedVector", "IndicatorVector", "TFIDF", "ImageFeatures", "AudioFeatures", "GraphFeatures" 等.
  • NetEncoder[][input] 将解码器应用于输入以产生输出.
  • NetEncoder[][{input1,input2,}] 将编码器应用于输入列表以生成输出列表.
  • 在构建网络时可通过指定 "port"NetEncoder[] 将编码器附于网络输入端口.

范例

基本范例  (2)

定义一个可以在数据上自动学习的有特征提取器的网络:

在图像上训练这个网络:

将该网络应用于新图像:

取一些维数为 3 的数字向量:

训练一个可以标准化这些数据的a FeatureExtractorFunction

创建一个可以应用降维的函数编码器:

将编码器应用于输入向量:

给出与 FeatureExtractorFunction 一样的结果:

同一个 NetEncoder 可通过使用 NetTrain 获取:

编码器还可以附于网络并使用网络进行训练(在第一阶段):