1. 程式人生 > >tensorflow 模型檔案

tensorflow 模型檔案

tensorflow生成的模型檔案主要有三個:

```

.meta, .index和.data

```

分成三個檔案的原因是tensorflow將計算圖結構和變數值儲存在不同的檔案裡。.meta檔案描述的是計算圖結構。

freeze_graph.py指令碼從一個GraphDef(.pb或者.pbtxt)檔案和checkpoint(.meta, .index, .data)檔案生成“frozen”(所謂的frozen就是將訓練中的變數,轉換成模型部署需要的常量過程,這個常量的儲存形式是google的protocol buffers格式)的模型。

protocol buffer在memory和運算速度上比XML

frozen的過程大致如下:

1.建立和訓練模型tf.Graph,記為g_1;

2.使用Session.run()介面,以numpy 陣列的方式獲取checkpoint的變數值;

3.在新的tf.Graph中,使用tf.constant()為該新的graph建立常量值,常量值的來源是第二部建立的值。

4.使用tf.import_graph_def()將g_1的節點拷貝到g_2中,使用input_map引數將g_1中的引數存放到tf.constant()張量中。

5.使用g_2.as_graph_def()獲得圖的protocol buffer的表示方法。