用于创建.tsv文件的带有时代号的动态名称格式

问题描述

我已经在Keras中进行了此自定义回调,以便在每个时期的末尾获得嵌入向量。它应该将矢量保存在.tsv中,但确实如此,但是由于名称不会在每个时期更新,因此会导致重写第一个文件。因此,在训练结束时,我只会得到最后一个时期的向量。 我需要一种在.tsv文件名上添加时期号的方法,但是我不知道该怎么做。

代码

import io

encoder = info.features['text'].encoder

class CustomCallback(keras.callbacks.Callback):
    def on_epoch_end(self,epoch,logs=None):
        out_v = io.open('vecs.tsv','w',encoding='utf-8')
        vec = model.layers[0].get_weights()[0]
        out_v.write('\t'.join([str(x) for x in vec]) + "\n")
        out_v.close()

任何建议将不胜感激。非常感谢!

解决方法

您可以通过跟踪以下内容来做到这一点:

    <div id="app">
  <v-app id="inspire">
    <v-container fluid>
      <v-row align="center">
        <v-col cols="6">
          <v-subheader>Custom items</v-subheader>
        </v-col>
  
        <v-col cols="6">
          <v-select
            v-model="select"
            :hint="`${select.state},${select.abbr}`"
            :items="items"
            item-text="state"
            item-value="abbr"
            label="Select"
            persistent-hint
            return-object
            single-line
          ></v-select>
          <v-text-field v-model="select.state"></v-text-field>
        </v-col>
      </v-row>
    </v-container>
  </v-app>
</div>

    new Vue({
  el: '#app',vuetify: new Vuetify(),data () {
    return {
      select: { state: 'Florida',abbr: 'FL' },items: [
        { state: 'Florida',{ state: 'Georgia',abbr: 'GA' },{ state: 'Nebraska',abbr: 'NE' },{ state: 'California',abbr: 'CA' },{ state: 'New York',abbr: 'NY' },],}
  },})

文件名将为vec_1.tsv,vec_2.tsv等。