zoukankan      html  css  js  c++  java
  • numpy广播

    (m,n)   +,-,*,/  (m,1)

    先将(m,1)复制n次,构成(m,n)矩阵,然后再进行+,-,*,/运算

    (m,n)   +,-,*,/  (1,n)

    先将 (1,n)复制m次,构成(m,n)矩阵,然后再进行+,-,*,/运算

    (m,1)  +,-,*,/   real(一个实数)

    先将实数复制m次,构成(m,1) 矩阵,然后再进行+,-,*,/运算

    (1,n) +,-,*,/   real(一个实数)

    先将实数复制n次,构成(1,n)矩阵,然后再进行+,-,*,/运算

    demo1

    import numpy as np

    A=np.array([[56.0,0.0,4.4,68.0],
    [1.2,104.0,52.0,8.0],
    [1.8,135.0,99.0,0.9]])
    print(A)

    # 每列求和

    cal=A.sum(axis=0)  # axis=0:垂直方向(求和)

                                   # axis=1:水平方向(求和)
    print(cal)

    percentage=100*A/cal.reshape(1,4)      # 这里,reshape(1,4)其实可以不必使用;但使用可以确保矩阵(向量)的维数是我们想要的大小

               # A是一个3*4的矩阵,而cal是一个1*4的矩阵,这里,用到了广播
    print(percentage)

    demo2

    # logistic regression中,前向传播

    z(i)=wT*x(i)+b

    Z=wT*X+b    # b也是一个广播

  • 相关阅读:
    ubuntu环境下eclipse的安装以及hadoop插件的配置
    hadoop启动步骤
    Ubuntu下hadoop环境的搭建(伪分布模式)
    volatile关键字作用
    CyclicBarrier&CountDownLatch&Semaphore
    Callable、Future和FutureTask浅析
    Unsafe与CAS
    接口和抽象类的区别
    内部类
    泛型
  • 原文地址:https://www.cnblogs.com/ceceliahappycoding/p/8253086.html
Copyright © 2011-2022 走看看