逻辑回归代价函数(损失函数)的几个求导特性
1.对于sigmoid函数
2、对于以下函数
3.线性回归与逻辑回归的神经网络图表示
利用Numpy向量化运算与for循环运算的显著差距
import numpy as np import time ar = np.array([[1,2,3],[4,5,6]] a1 = np.random.rand(10000000) a2 = np.random.rand(10000000) t1 = time.time() np.dot(a1,a2) c = 0 t2 = time.time() for i in range(10000000): c = a1[i]*a2[i] t3 = time.time() print("向量化计算千万组数字乘积之和的时间为:%.4f ms"%((t2-t1)*1000)) print("for循环计算千万组数字乘积之和的时间为:%.4f ms"%((t3-t2)*1000))
实际输出如下(不同电脑数字有些差别),
向量化计算千万组数字乘积之和的时间为:20.9358 ms for循环计算千万组数字乘积之和的时间为:4819.0944 ms
Numpy初步熟悉
numpy官方说明:https://docs.scipy.org/doc/numpy/user/basics.broadcasting.html#general-broadcasting-rules
注意点
1、变量的输入采用列向量约定格式n*m的格式即每一列代表一个样本(机器学习课程当中为m*n)
2、逻辑回归的表达式与机器学习里面的课程不一致(机器学习课程用θ*X表示z)
3.梯度下降
补充知识
RGB色彩模式
——工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,RGB各有256级亮度,用数字表示为从0、1、2...直到255(计算机保存图片需要三个独立矩阵),白色:rgb(255,255,255),黑色:rgb(0,0,0)。
常见RGB格式如下
RGB565:16个bit表示一个像素,5个bit表示R(红色),6个bit表示G(绿色),5个bit表示B(蓝色)
RGB555:
用16个bit表示一个像素,其中最高位不用,R(红色), G(绿色), B(蓝色)都用5个bit来表示,从高位到低位排列如下: X R R R R R G G G G G B B B B B
RGB24:
用24个bit表示一个像素,R(红色), G(绿色), B(蓝色)都用8个bit来表示,从高位到低位排列如下: R R R R R R R R G G G G G G G G B B B B B B B B
RGB32(RGBA):
用32个bit表示一个像素,R(红色), G(绿色), B(蓝色)都用8个bit来表示,然后用8个bit来表示alpha(透明度),从高位到低位排列如下: B B B B B B B B G G G G G G G G R R R R R R R R A A A A A A A A
常见颜色配置表:https://blog.csdn.net/ghevinn/article/details/44062577
SIMD单指令流多数据流
(SingleInstruction Multiple Data,SIMD)是一种采用一个控制器来控制多个处理器,同时对一组数据(又称“数据向量”)中的每一个分别执行相同的操作从而实现空间上的并行性的技术。单指令单数据(SISD)的CPU对加法指令译码后,执行部件先访问内存,取得第一个操作数;之后再一次访问内存,取得第二个操作数;随后才能进行求和运算。而在SIMD型的CPU中,指令译码后几个执行部件同时访问内存,一次性获得所有操作数进行运算。这个特点使SIMD特别适合于多媒体应用等数据密集型运算。