热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

tf.estimatorAPI技术手册(13)——LinearRegressor(线性回归器)

tf.estimatorAPI技术手册(12)——LinearRegressor(线性分类器)(一࿰

tf.estimator API技术手册(12)——LinearRegressor(线性分类器)

  • (一)简 介
  • (二)初始化
  • (三)属 性(Properties)
  • (四)方 法(Methods)
    • (1)evaluate(评估)
    • (2)predict(预测)
    • (3)train(训练)


(一)简 介

继承自Estimator,定义在tensorflow/python/estimator/canned/linear.py中,用来建立线性回归器。示例如下:

categorical_column_a = categorical_column_with_hash_bucket(...)
categorical_column_b = categorical_column_with_hash_bucket(...)categorical_feature_a_x_categorical_feature_b = crossed_column(...)# 创建一个线性分类器
estimator = LinearRegressor(feature_columns=[categorical_column_a,categorical_feature_a_x_categorical_feature_b])# 构建数据输入函数
def input_fn_train: # returns x, y (where y represents label's class index)....
def input_fn_eval: # returns x, y (where y represents label's class index)....
estimator.train(input_fn=input_fn_train)
estimator.evaluate(input_fn=input_fn_eval)
estimator.predict(input_fn=input_fn_predict)

(二)初始化

__init__(feature_columns,model_dir=None,label_dimension=1,weight_column=None,optimizer='Ftrl',config=None,partitioner=None,warm_start_from=None,loss_reduction=losses.Reduction.SUM,sparse_combiner='sum'
)

参数如下:

  • feature_columns:
    特征列

  • model_dir:
    保存模型的目录

  • label_dimension:
    每一个样例中回归目标的个数,这是标签的最后维度和logit张量对象的大小,典型的结构为[批处理大小,标签维度]。

  • weight_column:
    由 tf.feature_column.numeric_column创建的一个字符串或者数字列用来呈现特征列。它将会被乘以example的训练损失。

  • label_vocabulary:
    一个字符串列表用来呈现可能的标签取值,如果给出,则必须为字符型,如果没有给出,则会默认编码为整型,为{0, 1,…, n_classes-1} 。

  • optimizer:
    选择优化器,默认使用Adagrad optimizer,激活函数为tf.nn.relu。

  • config:
    一个运行配置对象,用来配置运行时间。

  • warm_start_from:
    热启动选项。

  • loss_reduction:
    定义损失函数,默认为SUM方法。

  • partitioner:
    可选的。输入层分割器

  • sparse_combiner:
    稀疏组合器,当一个绝对特征列是多价的时候,指定如何去减少损失。


(三)属 性(Properties)
  • config
  • model_dir
  • model_fn
    Returns the model_fn which is bound to self.params.

返回:
model_fn 附有以下标记: def model_fn(features, labels, mode, config)

(四)方 法(Methods)

(1)evaluate(评估)

evaluate(input_fn,steps=None,hooks=None,checkpoint_path=None,name=None
)

评估函数,使用input_fn给出的评估数据评估训练好的模型,参数列表如下:

  • input_fn:
    一个用来构造用于评估的数据的函数,这个函数应该构造和返回如下的值:一个tf.data.Dataset对象或者一个包含 (features, labels)的元组,它们应当满足model_fn函数对输入数据的要求,在后面的实例中我们会详细介绍。
  • checkpoint_path:
    用来保存训练好的模型
  • name:
    如果用户需要在不同的数据集上运行多个评价,如训练集和测试集,则为要进行评估的名称,不同的评估度量被保存在单独的文件夹中,并分别出现在tensorboard中。

(2)predict(预测)

predict(input_fn,predict_keys=None,hooks=None,checkpoint_path=None,yield_single_examples=True
)

使用训练好的模型对新实例进行预测,以下为参数列表:

  • input_fn:
    一个用来构造用于评估的数据的函数,这个函数应该构造和返回如下的值:一个tf.data.Dataset对象或者一个包含 (features, labels)的元组,它们应当满足model_fn函数对输入数据的要求,在后面的实例中我们会详细介绍。

  • predict_keys:
    预测函数最终会返回一系列的结果,但我们可以有选择地让其输出,可供选择的keys列表为[‘logits’, ‘logistic’, ‘probabilities’, ‘class_ids’, ‘classes’],如果不指定的话,默认返回所有值。

  • hooks:
    tf.train.SessionRunHook的子类实例列表,在预测调用中用于传回。

  • checkpoint_path:
    训练好的模型的目录

  • yield_single_examples:
    可以选择False或是True,如果选择False,由model_fn返回整个批次,而不是将批次分解为单个元素。当model_fn返回的一些的张量的第一维度和批处理数量不相等时,这个功能是很用的。


(3)train(训练)

train(input_fn,hooks=None,steps=None,max_steps=None,saving_listeners=None
)

用于训练模型,以下为参数列表:

  • input_fn:
    一个用来构造用于评估的数据的函数,这个函数应该构造和返回如下的值:一个tf.data.Dataset对象或者一个包含 (features, labels)的元组,它们应当满足model_fn函数对输入数据的要求,在后面的实例中我们会详细介绍。

  • hooks:
    tf.train.SessionRunHook的子类实例列表,在预测调用中用于传回。

  • steps:
    模型训练的次数,如果不指定,则会一直训练知道input_fn传回的数据消耗完为止。如果你不想要增量表现,就设置max_steps来替代,注意设置了steps,max_steps必须为None,设置了max_steps,steps必须为None。

  • max_steps:
    模型训练的总次数,注意设置了steps,max_steps必须为None,设置了max_steps,steps必须为None。

  • saving_listeners:
    CheckpointSaverListener对象的列表,用于在检查点保存之前或之后立即运行的回调。


推荐阅读
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 也就是|小窗_卷积的特征提取与参数计算
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了卷积的特征提取与参数计算相关的知识,希望对你有一定的参考价值。Dense和Conv2D根本区别在于,Den ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • 模板引擎StringTemplate的使用方法和特点
    本文介绍了模板引擎StringTemplate的使用方法和特点,包括强制Model和View的分离、Lazy-Evaluation、Recursive enable等。同时,还介绍了StringTemplate语法中的属性和普通字符的使用方法,并提供了向模板填充属性的示例代码。 ... [详细]
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • Hibernate延迟加载深入分析-集合属性的延迟加载策略
    本文深入分析了Hibernate延迟加载的机制,特别是集合属性的延迟加载策略。通过延迟加载,可以降低系统的内存开销,提高Hibernate的运行性能。对于集合属性,推荐使用延迟加载策略,即在系统需要使用集合属性时才从数据库装载关联的数据,避免一次加载所有集合属性导致性能下降。 ... [详细]
  • 微信官方授权及获取OpenId的方法,服务器通过SpringBoot实现
    主要步骤:前端获取到code(wx.login),传入服务器服务器通过参数AppID和AppSecret访问官方接口,获取到OpenId ... [详细]
  • 在本教程中,我们将看到如何使用FLASK制作第一个用于机器学习模型的RESTAPI。我们将从创建机器学习模型开始。然后,我们将看到使用Flask创建AP ... [详细]
  • struts2重点——ValueStack和OGNL
    一、值栈(ValueStack)1.实现类:OGNLValueStack2.对象栈:CompoundRoot( ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文讨论了如何使用IF函数从基于有限输入列表的有限输出列表中获取输出,并提出了是否有更快/更有效的执行代码的方法。作者希望了解是否有办法缩短代码,并从自我开发的角度来看是否有更好的方法。提供的代码可以按原样工作,但作者想知道是否有更好的方法来执行这样的任务。 ... [详细]
  • 本文介绍了在MySQL8.0中如何查看性能并解析SQL执行顺序。首先介绍了查询性能工具的开启方法,然后详细解析了SQL执行顺序中的每个步骤,包括from、on、join、where、group by、having、select distinct、union、order by和limit。同时还介绍了虚拟表的概念和生成过程。通过本文的解析,读者可以更好地理解MySQL8.0中的性能查看和SQL执行顺序。 ... [详细]
  • cs231n Lecture 3 线性分类笔记(一)
    内容列表线性分类器简介线性评分函数阐明线性分类器损失函数多类SVMSoftmax分类器SVM和Softmax的比较基于Web的可交互线性分类器原型小结注:中文翻译 ... [详细]
  • WPF之Binding初探
      初学wpf,经常被Binding搞晕,以下记录写Binding的基础。首先,盗用张图。这图形象的说明了Binding的机理。对于Binding,意思是数据绑定,基本用法是:1、 ... [详细]
author-avatar
饱和深潜者_463
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有