标量、向量、矩阵、张量之间的区别和联系

标量、向量、矩阵、张量之间的区别和联系

标量(Scalar)、向量(Vector)、矩阵(Matrix)、张量(Tensor)。

1、标量

标量(scalar):一个标量就是一个单独的数(整数或实数),不同于线性代数中研究的其他大部分对象(通常是多个数的数组)。

在Python中的定义为:

x = 1

2、向量

向量(vector):一个向量表示一组有序排列的数,通过次序中的索引我们能够找到每个单独的数。向量中的每个元素就是一个标量,向量中的第i个元素用表示。

在Python中的定义为:

imp

什么是梯度?

什么是梯度?

梯度

假设对于函数f(x),在其图象中有一点a,在a点的梯度是f(x)增长最快的方向,梯度本身是一种上升的趋势。

梯度下降

概念:对于f(x),在a点的梯度是f(x)增长最快的方向,那么它的相反方向则是该点下降最快的方向, 梯度下降算法是一种求局部最优解的方法。

原理:将函数比作一个山谷,如下图,我们站在山坡上的某处,往四周看,找出一个方向,使得沿着这个方向向下走一小步,能够下降的最快;刚开始走的步伐可能会大一些,随着越来越接近谷底,步伐也就越来越小,直到最终到达谷底c点。

Matplotlib plot bar 柱形图

Matplotlib plot bar 柱形图

x:浮点型数组,柱形图的 x 轴数据。

height:浮点型数组,柱形图的高度。

width:浮点型数组,柱形图的宽度。

bottom:浮点型数组,底座的 y 坐标,默认 0。

align:柱形图与 x 坐标的对齐方式,’center’ 以 x 位置为中心,这是默认值。 ‘edge’:将柱形图的左边缘与 x 位置对齐。要对齐右边缘的条形,可以传递负数的宽度值及 align=’edge’。

**kwargs:其他参数。

import matplotlib.pyplot

Matplotlib plot pie 饼图

Matplotlib plot pie 饼图

x:浮点型数组,表示每个扇形的面积。

explode:数组,表示各个扇形之间的间隔,默认值为0。

labels:列表,各个扇形的标签,默认值为 None。

colors:数组,表示各个扇形的颜色,默认值为 None。

autopct:设置饼图内各个扇形百分比显示格式,%d%% 整数百分比,%0.1f 一位小数, %0.1f%% 一位小数百分比, %0.2f%% 两位小数百分比。

labeldistance:标签标记的绘制位置,相对于半径的比例,默认值为 1.1,如 

Matplotlib plot scatter 散点图

Matplotlib plot scatter 散点图

x,y:长度相同的数组,也就是我们即将绘制散点图的数据点,输入数据。

s:点的大小,默认 20,也可以是个数组,数组每个参数为对应点的大小。

c:点的颜色,默认蓝色 ‘b’,也可以是个 RGB 或 RGBA 二维行数组。

marker:点的样式,默认小圆圈 ‘o’。

cmap:Colormap,默认 None,标量或者是一个 colormap 的名字,只有 c 是一个浮点数数组的时才使用。如果没有申明就是 image.cmap。

norm:Normalize,默认 None,

Matplotlib plot hist 直方图

Matplotlib plot hist 直方图

import matplotlib.pyplot as plt

import numpy as np

“””

font:设置中文

unicode_minus:显示负号

“””

# 画图文字使用黑体字显示(显示中文,默认不支持中文)

plt.rcParams[‘font.sans-serif’] = [‘SimHei’]

plt.rcParams[‘axes.unicode_minus’] = False

# 正常显示负号

“””

随机数生成,自动

Sklearn PCA 降维算法

Sklearn PCA 降维算法

“维度灾难” 在机器学习中经常会碰到一些高维的数据集,而在高维数据情形下会出现数据样本稀疏,距离计算等困难,这类问题是所有机器学习方法共同面临的严重问题。 特征冗余在高维特征中容易出现特征之间的线性相关。

PCA(Principal Component Analysis),即主成分分析方法,是一种使用最广泛的数据降维算法。 PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,提取数据的主要特征分量,常用于高维数据的降维。

import matplotlib.pyplot as p

Sklearn K-means 聚类算法

Sklearn K-means 聚类算法

聚类分析又称群分析,它是研究(样品或指标)分类问题的一种统计分析方法,同时也是数据挖掘的一个重要算法。聚类分析以相似性为基础,在一个聚类中的模式之间比不在同一聚类中的模式之间具有更多的相似性。 实现聚类分析的计算方法称为聚类算法,在机器学习中是涉及对数据进行分组的一种算法,即在给定的数据集中,我们通过聚类算法将其分成一些不同的组。在理论上,相同的组的数据之间有相同的属性或者是特征,不同组数据之间的属性或者特征相差就会比较大。聚类算法是一种非监督学习算法,并且作为一种常用的数据分析算法在很多领域上

Matplotlib plot plt.contourf plt.contour 用法

Matplotlib plot plt.contourf plt.contour 用法

contour:轮廓,等高线。等高线是三维图像在二维空间的投影。

contourf([X, Y,] Z, [levels], **kwargs)

contour([X, Y,] Z, [levels], **kwargs)

contour函数绘制三维图像到二维图像所对应的等高线,而contourf函数也是绘制等高线,只不过contourf是带填充的等高线。这两个函数的参数都是一样的。

参数X、Y表示等高线的坐标,Z表示等高线的高度,也就是坐标点(x, y)对应的高度h。

如果

Sklearn 支持向量机 SVM

Sklearn 支持向量机 SVM

支持向量机(Support Vector Machine,SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane)。

SVM使用铰链损失函数(hinge loss)计算经验风险(empirical risk)并在求解系统中加入了正则化项以优化结构风险(structural risk),是

Jupyter Notebook更改文件保存位置

Jupyter Notebook更改文件保存位置

一、查看原始存储位置

在安装完Jupyter Notebook之后,新建的Jupyter Notebook文件一般会默认保存在C盘的某个位置(例如C:\Users\jzh)。

具体可以通过在Jupyter Notebook输入以下代码,查看到文件储存位置:

import os

print(os.path.abspath(‘.’))

 

 

二、修改文件存储路径的方法

进入cmd命令,然后输入指令

jupyter notebook —

Pandas安装

Pandas安装

Pandas 是一个开放源码、BSD 许可的库,提供高性能、易于使用的数据结构和数据分析工具。

Pandas 名字衍生自术语 “panel data”(面板数据)和 “Python data analysis”(Python 数据分析)。

Pandas 一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算)。

Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。

Pandas 可以对各种数据进行运算操作,

Sklearn 决策树 DecisionTree

Sklearn 决策树 DecisionTree

决策树是一类常见的机器学习方法。它把分类和回归问题归结为做出一系列子决策,通过一系列子决策组合得到的结果来做出最终决策。决策树表现为一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。

import numpy as np

from sklearn import tree

x = np.array([[0, 0, 0], [0, 0, 1], [0, 1, 0], [0, 1, 1],

[1, 0, 0], [1, 0, 1

Sklearn 朴素贝叶斯 GaussianNB MultinomialNB BernoulliNB

贝叶斯定理 在概率论与统计学中,贝叶斯定理(或称贝叶斯法则、贝叶斯规则)描述了一个事件的可能性,这个可能性是基于预先对于一些与该事件相关的情况的知识。举例来说,如果癌症和年龄有关,那么知道了一个人的年龄的话,使用贝叶斯定理,相比于根本不了解关于此人的任何其他信息,就可以更准确地帮助评估这个人得癌症与否的概率。

贝叶斯定理所阐述的也就是后验概率的获得方法。

用数学公式来表述贝叶斯定理:

c表示的是随机事件发生的一种情况。x表示的就是证据(evidence),泛指与随机事件相关的因

Sklearn K近邻法 KNN

Sklearn K近邻法 KNN

K近邻法(k-nearest neighbors,KNN)是一种很基本的机器学习方法,在我们平常的生活中也会不自主的应用。比如,我们判断一个人的人品,只需要观察他来往最密切的几个人的人品好坏就可以得出了。这里就运用了KNN的思想。KNN方法既可以做分类,也可以做回归。

KNN做回归和分类的主要区别在于最后做预测时候的决策方式不同。KNN做分类预测时,一般是选择多数表决法,即训练集里和预测的样本特征最近的K个样本,预测为里面有最多类别数的类别。而KNN做回归时,一般是选择平均法,即最近的K个样

Sklearn Logistic 逻辑回归算法

Sklearn Logistic 逻辑回归算法

假设有一场足球赛,我们有两支球队的所有出场球员信息、历史交锋成绩、比赛时间、主客场、裁判和天气等信息,根据这些信息预测球队的输赢。假设比赛结果记为y,赢球标记为1,输球标记为0,这就是典型的二元分类问题,可以用逻辑回归算法来解决。与线性回归算法的最大区别是,逻辑回归算法的输出是个离散值。 1.预测函数 需要找出一个预测函数模型,使其值输出在[0,1]之间。然后选择一个基准值,如0.5,如果算出来的预测值大于0.5,就认为其预测值为1,反之,则其预测值为0。 选择Sigmoid函数(也称为Logi

Sklearn 回归分析 线性回归模型

Sklearn 回归分析 线性回归模型

回归分析(regression analysis)简称回归,指的是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。

回归分析按照涉及的变量的多少,分为一元回归和多元回归分析;按照因变量的多少,可分为简单回归分析和多重回归分析;按照自变量和因变量之间的关系类型,可分为线性回归分析和非线性回归分析。

线性回归假设解释变量和响应变量之间存在线性关系,这个线性模型所构成的空间是一个超平面(hyperplane)。超平面是n维欧氏空间中余维度等于1的线性子空间,如平面中的直线、空间中