如何使用Python和Sequential模型在Keras中进行特征提取?
Tensorflow是由Google提供的机器学习框架。它是使用Python实现算法、深度学习应用程序等的开源框架。它在研究和生产过程中都广被使用。它具有优化技术,可以帮助快速执行复杂的数学运算。
以下代码可以在Windows上安装’Tensorflow’包 –
pip install tensorflow
Tensor是TensorFlow中使用的数据结构。它有助于连接流程图中的边缘。这个流程图称为“数据流图”。张量仅仅是多维数组或列表。它们可以使用三个主要属性来识别 –
- 等级 - 它告诉张量的维数。它可以被理解为张量的秩或已经定义了的张量维数的数量。
-
类型 - 它告诉与张量元素关联的数据类型。它可以是一维、二维或n维张量。
-
形状 - 它是行和列的数量之和。
Keras是为ONEIROS(开放式神经电子智能机器人操作系统)项目的研究而开发的。Keras是用Python编写的深度学习API。它是一个高级API,具有高效的界面,有助于解决机器学习问题。它运行在Tensorflow框架之上。它被建立来帮助快速进行实验。它提供了必要的抽象和基础模块,在开发和封装机器学习解决方案方面非常重要。
它具有高度的可扩展性,并具有跨平台的能力。这意味着Keras可以在TPU或GPU群上运行。Keras模型也可以导出到Web浏览器或移动手机上运行。
Keras已经包含在Tensorflow包中。可以使用以下代码访问 –
import tensorflow
from tensorflow import keras
我们使用Google Colaboratory来运行以下代码。Google Colab或Colaboratory可以在浏览器上运行Python代码,并且不需要任何配置,并且可以免费访问GPU(图形处理单元)。Colaboratory建立在Jupyter Notebook之上。以下是代码片段 –
更多Python相关文章,请阅读:Python 教程
示例
print("Sequential model created")
initial_model = keras.Sequential(
[
keras.Input(shape=(250, 250, 3)),
layers.Conv2D(32, 5, strides=2, activation="relu"),
layers.Conv2D(32, 3, activation="relu"),
layers.Conv2D(32, 3, activation="relu"),
]
)
print("Feature extraction from the model")
feature_extractor = keras.Model(
inputs=initial_model.inputs,
outputs=[layer.output for layer in initial_model.layers],
)
print("The feature extractor method is called on test data")
x = tf.ones((1, 250, 250, 3))
features = feature_extractor(x)
代码来源 – https://www.tensorflow.org/guide/keras/sequential_model
输出
Sequential modal created
Feature extraction form the model
The feature extractor method is called on test data
解释
-
一旦模型的架构准备好了,就开始训练。
-
训练完成后,进行评估。
-
将此模型保存到磁盘中。
-
需要时,可以进行恢复。
-
可以使用多个GPU来加速模型的训练。
-
一旦构建了模型,它就像一个功能API模型一样运行。
-
这意味着每个图层都有一个输入和输出。