zoukankan      html  css  js  c++  java
  • LSTM编程所用函数

    1、Round函数返回一个数值,该数值是按照指定的小数位数进行四舍五入运算的结果。可是当保留位跟着的即使是5,有可能进位,也有可能舍去,机会各50%

    2、python基础

    (1)@property 特性      #在cal_add函数前加上@property,使得该函数不可以被赋值,将一个类的函数定义成特性以后,对象再去使用的时候obj.name,根本无法察觉自己的name是执行了一个函数然后计算出来的,这种特性的使用方式遵循了统一访问的原则

    def cal_add(self):
    return self.x + self.y

    面向对象的封装有三种方式:
    【public】
    这种其实就是不封装,是对外公开的
    【protected】
    这种封装方式对外不公开,但对朋友(friend)或者子类(形象的说法是“儿子”,但我不知道为什么大家 不说“女儿”,就像“parent”本来是“父母”的意思,但中文都是叫“父类”)公开
    【private】
    这种封装对谁都不公开

    (2)@classmethod 类方法   #在cal_info函数前加上@classmethon,则该函数变为类方法,该函数只能访问到类的数据属性,不能获取实例的数据属性

    def cal_info(cls): #python自动传入位置参数cls就是类本身
    print('这是一个%s'%cls.cal_name) #cls.cal_name调用类自己的数据属性

    (3)@staticmethod  静态方法 #实例也可以使用,但通常静态方法都是给类用的,实例在使用时丧失了自动传值的机制

    @staticmethod #静态方法 类或实例均可调用
    def cal_test(a,b,c): #该静态方法函数里不传入self 或 cls

    应用场景:编写类时需要采用很多不同的方式来创建实例,而我们只有一个__init__函数,此时静态方法就派上用场了

    参考原博:https://www.cnblogs.com/wangyongsong/p/6750454.html#_label1

    (4)def __str__(self):
            return 'year:%s month:%s day:%s' %(self.year,self.month,self.day)
    用法:打印一个类的时候会打印出其中的一些数值内容

    3、LSTM 参数设置
    class BasicLSTMCell(RNNCell):
      def __init__(self, num_units, forget_bias=1.0,state_is_tuple=True):
    • num_units:  int, 在LSTM cell中unit 的数目
    • forget_bias:  float, 添加到遗忘门中的偏置
      刚开始初始化成1, LSTM不会传递任何状态C, 因为forget GATE把C归零了. 这避免了刚开始训练就有输出爆炸或者消失的问题
    • state_is_tuple:是True
    4、tf.nn.dynamic_rnn

    tf.nn.dynamic_rnn(
    cell,
    inputs,
    sequence_length=None,
    initial_state=None,
    dtype=None,
    parallel_iterations=None,
    swap_memory=False,
    time_major=False,
    scope=None)

    5、LSTM结构

    6、LSTM
    self.cell_outputs, self.cell_final_state = tf.nn.dynamic_rnn(
    lstm_cell, self.l_in_y, initial_state=self.cell_init_state, time_major=False)
    cell_final_state分为两个,一个主线state,一个分线state


  • 相关阅读:
    关于面向对象
    javaScrip字符串(String)相关
    http协议了解
    javascript-回归原生基础
    Java每日一面(Part1:计算机网络)[19/11/25]
    Java每日一面(Part1:计算机网络)[19/11/13]
    Java每日一面(Part1:计算机网络)[19/11/02]
    Java每日一面(Part1:计算机网络)[19/10/21]
    tomcat8 到idea控制台和servlet乱码问题
    Java每日一面(Part1:计算机网络)[19/10/14]
  • 原文地址:https://www.cnblogs.com/lin-kid/p/10653070.html
Copyright © 2011-2022 走看看