zoukankan      html  css  js  c++  java
  • 吴裕雄 python深度学习与实践(13)

    import numpy as np
    import matplotlib.pyplot as plt
    
    x_data = np.random.randn(10)
    print(x_data)
    y_data = x_data * 0.3 + 0.15
    print(y_data)
    
    plt.plot(x_data,y_data)
    plt.scatter(x_data,y_data,c="r")
    plt.show()

    import numpy as np
    import tensorflow as tf
    import matplotlib.pyplot as plt
    
    x_data = np.random.randn(10)
    y_data = x_data * 0.3 + 0.15
    
    weight = tf.Variable(0.5)
    bias = tf.Variable(0.0)
    y_model = weight * x_data + bias
    
    loss = tf.pow((y_model - y_data),2)
    train_op = tf.train.GradientDescentOptimizer(0.01).minimize(loss)
    
    sess = tf.Session()
    init = tf.initialize_all_variables()
    sess.run(init)
    
    for _ in range(200):
        sess.run(train_op)
        print(weight.eval(sess),bias.eval(sess))
    
    plt.plot(x_data, y_data, 'ro', label='Original data')
    plt.plot(x_data, sess.run(weight) * x_data + sess.run(bias), label='Fitted line')
    plt.legend()
    plt.show()

    .........................

    import numpy as np
    import tensorflow as tf
    import matplotlib.pyplot as plt
    
    x_data = np.random.randn(10)#.astype(np.float32)
    y_data = x_data * 0.3 + 0.1
    
    weight = tf.Variable(0.5)
    bias = tf.Variable(0.0)
    x_ = tf.placeholder(tf.float32)
    y_ = tf.placeholder(tf.float32)
    y_model = weight * x_ + bias
    
    loss = tf.pow((y_model - y_),2)
    train_op = tf.train.GradientDescentOptimizer(0.01).minimize(loss)
    
    sess = tf.Session()
    init = tf.initialize_all_variables()
    sess.run(init)
    
    for _ in range(5):
        for (x,y) in zip(x_data,y_data):
            sess.run(train_op,feed_dict={x_:x,y_:y})
        print("weighe: " ,weight.eval(sess)," | bias: ",bias.eval(sess))
    
    plt.plot(x_data, y_data, 'ro', label='Original data')
    plt.plot(x_data, sess.run(weight) * (x_data) + sess.run(bias), label='Fitted line')
    plt.legend()
    plt.show()

    import numpy as np
    import tensorflow as tf
    import matplotlib.pyplot as plt
    
    threshold = 1.0e-2
    x_data = np.random.randn(10).astype(np.float32)
    y_data = x_data * 3 + 1
    
    weight = tf.Variable(1.)
    bias = tf.Variable(1.)
    x_ = tf.placeholder(tf.float32)
    y_ = tf.placeholder(tf.float32)
    y_model = tf.add(tf.multiply(x_, weight), bias)
    
    loss = tf.reduce_mean(tf.pow((y_model - y_),2))
    train_op = tf.train.GradientDescentOptimizer(0.01).minimize(loss)
    
    sess = tf.Session()
    init = tf.initialize_all_variables()
    sess.run(init)
    flag = 1
    while(flag):
        for (x,y) in zip(x_data,y_data):
            sess.run(train_op,feed_dict={x_:x,y_:y})
        print(weight.eval(sess), bias.eval(sess))
        if(sess.run(loss,feed_dict={x_:x_data,y_:y_data}) <= threshold):
            flag = 0
    
    plt.plot(x_data, y_data, 'ro', label='Original data')
    plt.plot(x_data, sess.run(weight) * (x_data) + sess.run(bias), label='Fitted line')
    plt.legend()
    plt.show()

    ......................................................

    #coding:utf-8
    
    import numpy as np
    
    a = np.array([1,2,3])
    b = np.array([7,8])
    res = np.meshgrid(a,b)
    for i in res:
        print(i)

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.array([[0, 1, 2], [0, 1, 2]])
    y = np.array([[0, 0, 0], [1, 1, 1]])
    
    plt.plot(x, y,color='red',marker='.', linestyle='--')  
    plt.grid(True)
    plt.show()
    plt.plot(x, y, marker='.',markersize=10,linestyle='-.')  
    plt.grid(True)
    plt.show()

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.array([[0, 1, 2, 3],
                  [0, 1, 2, 3],
                  [0, 1, 2, 3],
                  [0, 1, 2, 3]])
    y = np.array([[0, 0, 0, 0],
                  [1, 1, 1, 1],
                  [2, 2, 2, 2],
                  [3, 3, 3, 3]])
    
    plt.plot(x, y,marker='.', markersize=10,linestyle='-.')  
    plt.grid(True)
    plt.show()

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.array([0, 1, 2])
    y = np.array([0, 1])
    X, Y = np.meshgrid(x, y)
    print(X)
    print(Y)
    
    plt.plot(X, Y,color='red',  marker='.',  linestyle='') 
    plt.grid(True)
    plt.show()

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.linspace(0,1000,20)
    y = np.linspace(0,500,20)
    
    X,Y = np.meshgrid(x, y)
    
    plt.plot(X, Y,color='limegreen', marker='.',linestyle='') 
    plt.grid(True)
    plt.show()

    import numpy as np
    import matplotlib.pyplot as plt
    
    from matplotlib import cm
    from mpl_toolkits.mplot3d import Axes3D
    from matplotlib.ticker import LinearLocator, FormatStrFormatter
     
    fig = plt.figure(figsize=(16,12))
    ax = fig.gca(projection="3d")
     
    #准备数据
    x = np.arange(-5, 5, 0.25)   #生成[-5,5] 间隔0.25的数列,间隔越小,曲面越平滑
    y = np.arange(-5, 5, 0.25)
    x, y = np.meshgrid(x,y)   #格点矩阵,原来的x行向量向下复制len(y)此形成
    r = np.sqrt(x ** 2 + y ** 2)
    z = np.sin(r)
     
    surf = ax.plot_surface(x, y, z, cmap=cm.coolwarm)   #cmap指color map
     
    #自定义z轴
    ax.set_zlim(-1, 1)
    ax.zaxis.set_major_locator(LinearLocator(20))   #z轴网格线的疏密,刻度的疏密,20表示刻度的个数
    ax.zaxis.set_major_formatter(FormatStrFormatter('%.02f'))   #将z的value子符串转为float,保留2位小数
     
    #设置坐标轴的label和标题
    ax.set_xlabel('x', size=15)
    ax.set_ylabel('y', size=15)
    ax.set_zlabel('z', size=15)
    ax.set_title("Surface plot", weight='bold', size=20)
     
    #添加右侧的色卡条
    fig.colorbar(surf, shrink=0.6, aspect=8) #shrink表示整体收缩比例,aspect仅对bar的宽度有影响,
    # aspect值越大,bar越窄
     
    plt.show()

    import numpy as np
    import matplotlib.pyplot as plt
    
    n=1024  
    X=np.random.normal(0,1,n)   
    Y=np.random.normal(0,1,n)  
    T=np.arctan2(Y,X)#返回给定的 X 及 Y 坐标值的反正切值。
    
    plt.scatter(X,Y,s=75,c=T,alpha=0.5)
    
    plt.xlim(-1.5,1.5)
    plt.xticks(())
    plt.ylim(-1.5,1.5)
    plt.yticks(())
    
    plt.show()

    import matplotlib.pyplot as plt
    import numpy as np
    
    n=12
    X=np.arange(n)
    Y1=(1 - X / float(n)) * np.random.uniform(0.5,1.0,n)
    Y2=(1 - X / float(n)) * np.random.uniform(0.5,1.0,n)
    
    plt.bar(X,+Y1,facecolor='#9999ff',edgecolor='white')
    plt.bar(X,-Y2,facecolor='#ff9999',edgecolor='white')
    
    
    for x,y in zip(X,Y1):
        plt.text(x+0.4,y+0.05,'%.2f' % y,ha='center',va='bottom')
    
    for x,y in zip(X,Y2):
        plt.text(x+0.4,-y-0.05,'%.2f' % y,ha='center',va='bottom')
    
    plt.xlim(-1,n)
    plt.xticks(())
    plt.ylim(-1.25,1.25)
    plt.yticks(())
    
    plt.show()

    import numpy as np
    import matplotlib.pyplot as plt
    
    def f(x,y):
        return (1 - x/2 + x**5 + y**3) * np.exp(-x**2,-y**2)
    
    n=256
    x=np.linspace(-3,3,n)
    y=np.linspace(-3,3,n)
    X,Y=np.meshgrid(x,y)
    
    plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot)
    C=plt.contour(X,Y,f(X,Y),8,colors='black',linewidth=0.5)
    
    plt.clabel(C,inline=True,fontsize=10)
    plt.xticks(())
    plt.yticks(())
    plt.show()

    import numpy as np
    import matplotlib.pyplot as plt
    
    from mpl_toolkits.mplot3d import Axes3D
    
    fig=plt.figure()
    ax=Axes3D(fig)
    
    X=np.arange(-4,4,0.25)
    Y=np.arange(-4,4,0.25)
    X,Y=np.meshgrid(X,Y)
    R=np.sqrt(X ** 2 + Y ** 2)
    Z=np.sin(R)
    
    ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap=plt.get_cmap('rainbow'))
    ax.contourf(X,Y,Z,zdir='z',offset=-2,cmap=plt.get_cmap('rainbow'))
    
    plt.show()

    import numpy as np
    import tensorflow as tf
    import matplotlib.pyplot as plt
    
    from mpl_toolkits.mplot3d import Axes3D
    
    threshold = 1.0e-2
    x1_data = np.random.randn(100).astype(np.float32)
    x2_data = np.random.randn(100).astype(np.float32)
    y_data = x1_data * 2 + x2_data * 3  + 1.5
    
    weight1 = tf.Variable(1.)
    weight2 = tf.Variable(1.)
    bias = tf.Variable(1.)
    x1_ = tf.placeholder(tf.float32)
    x2_ = tf.placeholder(tf.float32)
    y_ = tf.placeholder(tf.float32)
    
    y_model = tf.add(tf.add(tf.multiply(x1_, weight1), tf.multiply(x2_, weight2)),bias)
    loss = tf.reduce_mean(tf.pow((y_model - y_),2))
    
    train_op = tf.train.GradientDescentOptimizer(0.01).minimize(loss)
    
    sess = tf.Session()
    init = tf.initialize_all_variables()
    sess.run(init)
    flag = 1
    while(flag):
        for (x,y) in zip(zip(x1_data, x2_data),y_data):
            sess.run(train_op, feed_dict={x1_:x[0],x2_:x[1], y_:y})
        if sess.run(loss, feed_dict={x1_:x[0],x2_:x[1], y_:y}) <= threshold:
            flag = 0
    
    fig = plt.figure()
    ax = Axes3D(fig)
    X, Y = np.meshgrid(x1_data, x2_data)
    Z = sess.run(weight1) * (X) + sess.run(weight2) * (Y) + sess.run(bias)
    ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=plt.cm.hot)
    ax.contourf(X, Y, Z, zdir='z', offset=-1, cmap=plt.cm.hot)
    ax.set_zlim(-1, 1)
    plt.show()

  • 相关阅读:
    20169219 实验二 Java面向对象程序设计
    20169219 2016-2017-2 《移动平台开发》第七周作业
    20169219 实验一 Java开发环境的熟悉(Linux + IDEA)
    20169219 2016-2017-2《网络攻防》第七周作业
    文件下载之ServletOutputStream
    DOM对象之window
    webservice接口的开发和调用
    utf-8与unicode是什么关系
    hibernate注解之@Onetomany、@Manytoone、@JoinColumn
    ajax不执行success的问题
  • 原文地址:https://www.cnblogs.com/tszr/p/10542541.html
Copyright © 2011-2022 走看看