关于机器学习:机器学习中常用的函数方法总结01

3次阅读

共计 2796 个字符,预计需要花费 7 分钟才能阅读完成。

1.np.set_printoptions()用法总结

概述

np.set_printoptions()用于管制 Python 中小数的显示精度
用法
np.set_printoptions(precision=None, threshold=None, linewidth=None, suppress=None, formatter=None)

1.precision:管制输入后果的精度(即小数点后的位数),默认值为 8
2.threshold:当数组元素总数过大时,设置显示的数字位数,其余用省略号代替(当数组元素总数大于设置值,管制输入值得个数为 6 个,当数组元素小于或者等于设置值得时候,全副显示),当设置值为 sys.maxsize(须要导入 sys 库),则会输入所有元素
3.linewidth:每行字符的数目,其余的数值会换到下一行
4.suppress:小数是否须要以迷信计数法的模式输入
5.formatter:自定义输入规定

2.fig = plt.figure(figsize=(a, b), dpi=dpi)

matplotlib 中设置图形大小的语句如下:

fig = plt.figure(figsize=(a, b), dpi=dpi)

其中:
figsize 设置图形的大小,a 为图形的宽,b 为图形的高,单位为英寸

3.np.exp()

4.np.c_ 的用法

np.c_ 用于连贯两个矩阵
np.c 中的 c 是 column(列) 的缩写,就是按列叠加两个矩阵,就是把两个矩阵左右组合,要求行数相等。

5.plt.subplots()

在 matplotlib 中,整个图像为一个 Figure 对象。在 Figure 对象中能够蕴含一个或者多个 Axes 对象。每个 Axes(ax)对象都是一个领有本人坐标零碎的绘图区域。所属关系如下:

参数

nrows,ncols:

子图的行列数。
sharex, sharey:

设置为 True 或者‘all’时,所有子图共享 x 轴或者 y 轴,
设置为 False or‘none’时,所有子图的 x,y 轴均为独立,
设置为‘row’时,每一行的子图会共享 x 或者 y 轴,
设置为‘col’时,每一列的子图会共享 x 或者 y 轴。
squeeze:

默认为 True,是设置返回的子图对象的数组格局。
当为 False 时,不管返回的子图是只有一个还是只有一行,都会用二维数组格局返回他的对象。
当为 True 时,如果设置的子图是(nrows=ncols=1),即子图只有一个,则返回的子图对象是一个标量的模式,如果子图有(N×1)或者(1×N)个,则返回的子图对象是一个一维数组的格局,如果是(N×M)则是返回二位格局。
subplot_kw:

字典格局,传递给 add_subplot(),用于创立子图。
gridspec_kw:

字典格局,传递给 GridSpec 的构造函数,用于创立子图所摆放的网格。
class matplotlib.gridspec.GridSpec(nrows, ncols, figure=None, left=None, bottom=None, right=None, top=None, wspace=None, hspace=None, width_ratios=None, height_ratios=None)
如,设置 gridspec_kw={‘height_ratios’: [3, 1]} 则子图在列上的散布比例是 3 比 1。
**fig_kw :

所有其余关键字参数都传递给 figure()调用。
如,设置 figsize=(21, 12),则设置了图像大小。

返回值
fig:matplotlib.figure.Figure 对象
ax:子图对象(matplotlib.axes.Axes)或者是他的数组

6.reshape()函数

·reshape()函数的性能是扭转数组或矩阵的形态
·a.reshape(m,n) 示意将原有数组 a 转化为一个 m 行 n 列的新数组,a 本身不变。m 与 n 的乘积等于数组中的元素总数
·reshape(m,n) 中参数 m 或 n 其中一个可写为 ”-1″,”-1″ 的作用在于计算机依据原数组中的元素总数主动计算行或列的值。
例:那么问题来了 reshape(-1,1)是什么意思呢?难道有 - 1 行?
这里 - 1 是指未设定行数,程序随机调配,所以这里 - 1 示意任一正整数
所以 reshape(-1,1)示意(任意行,1 列)

7.Matplotlib 作图

1. 先定义图片的规格,这里定义图片共一行,每行一张图片,以及图片的尺寸
fig,ax = plt.subplots(1,1,figsize=(5,3))
2. 这里给图表传入数据(z,sigmoid(z))ax 为一个横纵坐标对象
plot_data(X, y, ax)
3. 设置两坐标轴的最大值和最小值,坐标范畴
ax.axis([0, 4, 0, 3.5])
4. 设置 x 轴的题目为 x_1
ax.set_ylabel(‘$x_1$’)
5. 设置 y 轴的题目为 x_2
ax.set_xlabel(‘$x_0$’)
6. 绘制出该图表
plt.show()

8.Matplotlib 中的 fill_between()函数总结

最近在解决数据的时候,须要从数据汇合中选出数据来作为训练集,不同的筛选规定失去的数据块的散布一样,所以就想查看一下选取了那些数据块,比方将选中的数据换一种色彩来示意,然而数据如果比拟多的话,就不太能看的进去了,所以如果将选中的数据块以柱状的模式框出来就好了,这个时候我看到了 fill_between()函数,然而网上对于这个函数的博客都写的不太明确,所以我本人钻研了一下,将其总结如下:

  1. 生成测试数据
  2. 曲线笼罩

    能够看到,我用了这个函数的几个参数:
    x:第一个参数示意笼罩的区域,我间接复制为 x,示意整个 x 都笼罩
    0:示意笼罩的上限
    y:示意笼罩的下限是 y 这个曲线
    facecolor:笼罩区域的色彩
    alpha:笼罩区域的透明度[0,1], 其值越大,示意越不通明

  3. 局部区域笼罩
    我将 x 改为 x[2:15],y 改成了 0.2,0.6,这样它就在 x 轴的 2——14,y 轴的 0.2——0.6 画出了这样一个矩形
  4. 两曲线之间的局部填充
    把上限换成 y1, 下限换成 y2, 在整个 x 轴上进行填充,这样就能够实现将两条曲线之间的局部进行填充。
  5. 我想实现的数据高亮性能
    只须要循环填充你想要填充的局部,设置填充的上上限,就能够实现这个性能了!

    9.np.random.seed()函数

    np.random.seed()函数用于生成指定随机数。

seed()被设置了之后,np,random.random()能够按程序产生一组固定的数组,如果应用雷同的 seed()值,则每次生成的随机数都雷同,如果不设置这个值,那么每次生成的随机数不同。然而,只在调用的时候 seed()一下并不能使生成的随机数雷同,须要每次调用都 seed()一下,示意种子雷同,从而生成的随机数雷同。

由此可知,只在调用的时候 seed()一下并不能使生成的随机数雷同,故有:

正文完
 0