如何修复“ NameError:未定义名称'load_model'”

时间:2019-07-19 02:32:18

标签: python-3.x tensorflow keras pycharm

我正在读《用Python进行深度学习》这本书,遇到了一个问题。我使用Pycharm将模型保存在另一个文件中,当我尝试通过函数“ load_model()”加载模型时,系统支持“ NameError:名称'load_model'未定义”。 pycharm 2019.1.3 keras 2.2.4 tensorflow 1.13.0

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
    "net/http"
)

type Timeseries struct {
    TimeseriesId   string
    DisplayName    string
    Dimensions     []string
    Unit           string
    DetailedSource string
    Types          []string
    DataResult     struct {
        DataPoints            interface{}
        ResolutionInMillisUTC int
        AggregationType       string
        Entities              interface{}
        TimeseriesId          string
    }
    AggregationTypes []string
    Filter           string
}

func main() {
    response, err := http.Get("url")
    if err != nil {
        fmt.Printf("The HTTP request failed with error %s\n", err)
    } else {

        temp, _ := ioutil.ReadAll(response.Body)

        // fmt.Println(string(temp))

        var timeseries Timeseries
        if err := json.Unmarshal(temp, &timeseries); err != nil {
            fmt.Println("There was an error:", err)
        }
        fmt.Println(timeseries)
    }
}

使用TensorFlow后端。 追溯(最近一次通话):   在第2行的文件“ F:/ python program / visualizDemo / main.py”     型号= load_model('cats_and_dogs_small_2.h5') NameError:未定义名称“ load_model”

以退出代码1完成的过程

1 个答案:

答案 0 :(得分:1)

这里缺少的是,load_model函数位于模型类内部,因此您必须引用模型类。

from keras import models    
model = models.load_model('filename.h5')

要按照自己的方式进行操作,必须按以下方式使用导入

from keras.models import load_model

PS:下一行可能会在将来对您有所帮助。如果您要加载重量,请使用以下功能:

model.load_weight('weights_file.h5')