我对Python非常陌生,实际上这是我写的第一篇文章,如果有人能给我解释一下,我将不胜感激
我遵循一个教程,使用TensorFlow
构建了一个简单的人工神经网络。我使用了PyCharm
社区版来实现这一点
import numpy as np
import pandas as pd
import tensorflow as tf
from sklearn.preprocessing import LabelEncoder
from sklearn.compose import ColumnTransformer
from sklearn.preprocessing import OneHotEncoder
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
dataset = pd.read_csv('file.csv')
X = dataset.iloc[:, 3:-1].values
y = dataset.iloc[:, -1].values
le = LabelEncoder()
X[:, 2] = le.fit_transform(X[:, 2])
ct = ColumnTransformer(transformers=[('encoder', OneHotEncoder(), [1])], remainder='passthrough')
X = np.array(ct.fit_transform(X))
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 0)
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)
ann = tf.keras.models.Sequential()
ann.add(tf.keras.layers.Dense(units=6, activation='relu'))
ann.add(tf.keras.layers.Dense(units=6, activation='relu'))
ann.add(tf.keras.layers.Dense(units=1, activation='sigmoid'))
ann.compile(optimizer = 'adam', loss = 'binary_crossentropy', metrics = ['accuracy'])
ann.fit(X_train, y_train, batch_size = 32, epochs = 100)
现在我想用这个人工神经网络来预测结果。我的问题是,我是否可以执行下面这行代码,而不必从代码的开头运行整个脚本并将其放在代码的末尾?
ann.predict(sc.transform([[0, 1, 0, 0, 0, 60, 1, 100, 1, 0, 0, 10000]]))
据我所知,每次我运行脚本时,都会创建新的神经网络,然后对其进行训练。我想跳过整个过程,只训练一次网络,然后使用它进行预测,而不必从一开始就运行它。这有可能吗?我尝试在Python
控制台中执行它,但它不起作用(我想这是因为当我这样做时,程序已经停止运行)。
训练模型后,可以将其保存到磁盘并在另一个脚本中重复使用。安之后。拟合(…),您可以保存它:
ann.save('name_of_model')
然后,如果你想再次使用它(在不同的脚本中):
ann = tf.keras.models.load_model('name_of_model')
如果您想在一个脚本中拥有所有内容,也许您可以做的是检查模型是否已经保存到磁盘,如果没有,则训练它并保存它,如果是,则只从磁盘加载它。
问题内容: 我有一个用于Go包的测试套件,该套件实现了十二个测试。有时,套件中的一项测试失败了,我想单独重新运行该测试,以节省调试时间。这可能吗,还是每次都必须为此编写一个单独的文件? 问题答案: 使用该标志运行特定的测试。该标志记录在go工具文档的测试标志部分中:
问题内容: 无论如何在运行时重写方法?即使需要从该实例动态创建子类? 问题答案: 使用纯Java,否。 使用ByteBuddy(首选),asm,cglib或Aspectj时,可以。 在纯Java中,在这种情况下要做的事情是创建一个基于接口的代理,该代理处理方法调用并委托给原始对象(或不委托)。
我试图对一个模型执行预测,该模型是我使用“Finetuning AlexNet with TensorFlow”https://kratzert.github.io/2017/02/24/Finetuning-AlexNet-with-TensorFlow.html训练的 我在Python中使用保存了模型,并在Java中使用加载了模型。守则的主要部分是: 我得到了一个例外: 我看到上面的代码对一些
我从以下链接实现了re运行失败的TestNG测试类的逻辑: 不幸的是,它使用“test”注释运行该方法,而不运行BeforeClass(@BeforeClass)和AfterClass(@AfterClass)方法。我试图研究ITestAnnotations的setDependsOnMethods和getDependsOnMethods方法,但没有成功。 有人知道如何让侦听器类同时运行Before