TensorFlow和Keras应如何选择?

本文探讨了在深度学习中选择TensorFlow或Keras的问题,指出可以同时使用两者。通过鸢尾花分类案例,详细介绍了tf.keras的基础知识,包括数据处理、模型搭建、训练与预测。内容涵盖数据的导入和划分,对比了sklearn与tf.keras的实现方式,展示了tf.keras中模型构建、训练和评估的过程。
摘要由CSDN通过智能技术生成

前些年,深度学习领域的研究人员、开发人员和工程师必须经常做出一些选择:

  1. 我应该选择易于使用但自定义困难的 Keras 库?
  2. 还是应该使用难度更大的 TensorFlow API,编写大量代码?(更不用说一个不那么容易使用的 API 了。)

如果你陷于“应该使用 Keras 还是 TensorFlow”这样的问题,可以退一步再看,其实这是一个错误的问题,因为完成可以选择同时使用两个。

如果你是 TensorFlow 用户,那也应该开始考虑 Keras API 了,因为:

  1. 它是基于 TensorFlow 创建的
  2. 它更易于使用
  3. 当你需要用纯 TensorFlow 实现特定性能或功能时,它可以直接用于你的 Keras。

关于tf.keras基础知识点

  • tf.keras的基本流程
  • tf.keras实现模型构建的方法
  • tf.keras中模型训练验证的相关方法

今天通过鸢尾花分类案例,来给大家介绍tf.keras的基本使用流程。tf.keras使用tensorflow中的高级接口,我们调用它即可完成:

  1. 导入和解析数据集
  2. 构建模型
  3. 使用样本数据训练该模型
  4. 评估模型的效果。

由于与scikit -learn的相似性,接下来我们将通过将Keras与scikit -learn进行比较,介绍tf.Keras的相关使用方法。

1.相关的库的导入

在这里使用sklearn和tf.keras完成鸢尾花分类,导入相关的工具包:

# 绘图
import seaborn as sns
# 数值计算
import numpy as np
# sklearn中的相关工具
# 划分训练集和测试集
from sklearn.model_selection import train_test_split
# 逻辑回归
from sklearn.linear_model import LogisticRegressionCV
# tf.keras中使用的相关工具
# 用于模型搭建
from tensorflow.keras.models import Sequential
# 构建模型的层和激活方法
from tensorflow.keras.layers import Dense, Activation
# 数据处理的辅助工具
from tensorflow.keras import utils

2.数据展示和划分

利用seborn导入相关的数据,iris数据以dataFrame的方式在seaborn进行存储,我们读取后并进行展示:

# 读取数据
iris = sns.load_dataset("iris")
# 展示数据的前五行
iris.head()

另外,利用seaborn中pairplot函数探索数据特征间的关系:

# 将数据之间的关系进行可视化
sns.pairplot(iris, hue='species')

​将数据划分为训练集和测试集:从iris dataframe中提取原始数据,将花瓣和萼片数据保存在数组X中,标签保存在相应的数组y中:

# 花瓣和花萼的数据
X = iris.values[:, :4]
# 标签值
y = iris.values[:, 4]

利用train_test_split

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值