【问题标题】:How to train a model on 2D features of varying length?如何在不同长度的二维特征上训练模型?
【发布时间】:2021-07-09 14:12:32
【问题描述】:

我有一个字符串数据集。每个字符都有自己的特征向量,长度为 22。

例如:

字符串 1:LAAGVGNIYADEALFR

字符串 2:APVSFLLESVER

每个字符串中的每个字符都有以下特征向量。

AA                 M
SS3                C
SS8                C
ASA          178.972
HseU          4.5287
HseD         7.80071
CN           13.7988
Psi          147.413
Phi         -91.9785
Theta         114.81
Tau          175.495
P3C         0.999991
P3E      7.52701e-06
P3H      1.92849e-06
P8C         0.999994
P8S      3.92237e-09
P8T      1.08177e-06
P8H      4.76341e-07
P8G      1.01462e-07
P8I      8.74657e-20
P8E      4.67836e-06
P8B      6.26615e-08
Name: 0, dtype: object

所有字符的特征向量长度相同,但每个字符串的字符数不同。

所以每个字符串都有一个 (n x 22) 的特征表,其中 n 是字符数。

每个字符串都有一个与之关联的目标值,我正在尝试训练模型进行预测。

同样重要的是要注意,相同的字符没有相同的特征值,因为这些值是相对于字符在字符串中的位置而言的。

如何以相同大小的向量的形式表示这些不同维度的表,以准备这些数据进行训练?

我正在使用 python。

【问题讨论】:

    标签: python machine-learning scikit-learn data-science bioinformatics


    【解决方案1】:

    您可以使用零填充。在序列的两端添加零填充,直到达到指定的最大长度。
    如果您使用的是 PyTorch,请使用 torch.nn.utils.rnn.pad_sequence。如果是 TensorFlow,请使用 tf.keras.preprocessing.sequence.pad_sequences

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-31
      • 2019-02-02
      • 2020-06-01
      • 2021-10-20
      • 2016-05-11
      • 2019-06-21
      • 1970-01-01
      • 2020-12-29
      相关资源
      最近更新 更多