如何使用Python将Keras用于仅从模型的一层提取特征?
Tensorflow是Google提供的一种机器学习框架。它是一个开放源代码框架,与Python结合使用以实现算法,深度学习应用程序等等。它用于研究和生产目的。它具有优化技术,可帮助快速执行复杂的数学运算。这是因为它使用了NumPy和多维数组。这些多维数组也称为“张量”。该框架支持使用深度神经网络。
可以使用下面的代码行在Windows上安装'TensorFlow'软件包-
pip install tensorflow
Tensor是TensorFlow中使用的数据结构。它有助于连接流程图中的边缘。该流程图称为“数据流程图”。张量不过是多维数组或列表。
Keras在希腊语中的意思是“号角”。Keras被开发为ONEIROS(开放式神经电子智能机器人操作系统)项目研究的一部分。Keras是使用Python编写的深度学习API。它是一个高级API,具有可帮助解决机器学习问题的高效接口。它在Tensorflow框架之上运行。它旨在帮助快速进行实验。它提供了在开发和封装机器学习解决方案中必不可少的基本抽象和构建块。
它具有高度的可扩展性,并具有跨平台功能。这意味着Keras可以在TPU或GPU集群上运行。Keras模型也可以导出为在Web浏览器或手机中运行。
Keras已经存在于Tensorflow软件包中。可以使用下面的代码行进行访问。
import tensorflow from tensorflow import keras
我们正在使用Google合作实验室来运行以下代码。GoogleColab或Colaboratory可以帮助通过浏览器运行Python代码,并且需要零配置和对GPU(图形处理单元)的免费访问。合作已建立在JupyterNotebook的基础上。以下是代码片段-
示例
print("Feature extraction from one layer only") initial_model = keras.Sequential( [ keras.Input(shape=(250, 250, 3)), layers.Conv2D(32, 5, strides=2, activation="relu"), layers.Conv2D(32, 3, activation="relu", name="my_intermediate_layer"), layers.Conv2D(32, 3, activation="relu"), ] ) print("Feature extraction from the model") feature_extractor = keras.Model( inputs=initial_model.inputs, outputs=initial_model.get_layer(name="my_intermediate_layer").output, ) 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
输出结果
Feature extraction form one layer only Feature extraction form the model The feature extractor method is called on test data
解释
一旦模型的架构准备就绪,就可以对其进行训练。
培训完成后,将对其进行评估。
该模型已保存到磁盘。
可以在需要时将其还原。
可以使用多个GPU来加速模型的训练。
一旦建立了模型,它的行为就类似于功能性API模型。
这表明每个层都有一个输入和输出。
在这里,特征是从一个单层中明确提取的。