机器学习数学基础

矩阵

同型矩阵

行数、列数分别相同的矩阵

负矩阵

矩阵元素互为相反数关系的矩阵

矩阵的加法

矩阵元素分别相加(互为同型矩阵才能相加
矩阵的加法满足分配律、结合律
矩阵的减法=加负矩阵

数乘

数与矩阵元素分别相乘
满足交换律、结合律、分配律

矩阵的乘法

行列元素依次相乘并求和(第一个矩阵的列数应与第二个矩阵的行数相等,所得结果行数为A的行数,列数为B的列数
不满足交换律,满足结合律、分配律
在这里插入图片描述

向量(特殊矩阵)

行向量、列向量

只有一行的矩阵称作行向量,只有一列的矩阵称为列向量。

机器学习中的矩阵运算

在这里插入图片描述

Python实现矩阵运算

import numpy as np   #导入numpy模块
A = np.array([[1,2,3],[4,5,6],[7,8,9]]) # 创建numpy数组
print(A.shape)  #输出数组的行数、列数
B = A
C = A -  B      #矩阵减法
D = np.dot(A,B)  #矩阵乘法

微积分

极限与导数

极限

在这里插入图片描述
在这里插入图片描述

导数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

梯度下降法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

积分

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

用python实现函数微分与积分

在这里插入图片描述

import sympy as sp #导入sympy模块
x = sp.Symbol('x') #定义变量x
y1 = 3*x

f1 = sp.diff(y1)  #求导
F1 = sp.integrate(f1,x) #求积分,结果不带常数
L1 = sp.limit(y1,x,0)
L2 = sp.limit(y1,x,sp.oo) #求极限,sp.oo为无穷

概率分析

概率

在这里插入图片描述
在这里插入图片描述

条件概率与全概率

条件概率

在这里插入图片描述

全概率

在这里插入图片描述

贝叶斯公式

在这里插入图片描述
在这里插入图片描述

朴素贝叶斯

在这里插入图片描述

使用朴素贝叶斯判断客户消费意愿

在这里插入图片描述
1.读入数据

import pandas as pd
import numpy as np
#pandas包用于读入数据,numpy包用于处理数组
data = pd.read_csv(r'C:\Users\asus\Desktop\train.csv')
data.head() #读入数据并显示

输出:
在这里插入图片描述
2.划分输入、输出集

X = data.drop(['y'],axis=1)
print(X)  #获取输入集并显示,axis = 0时代表行,axis = 1时代表列

输出:
在这里插入图片描述

y = data.loc[:,'y']
print(y)  #获取输出集并显示

输出:
在这里插入图片描述
3.训练模型

from sklearn.naive_bayes import CategoricalNB    #导入相应模块
model = CategoricalNB() #建立模型
model.fit(X,y)   #训练模型

4.预测结果

y_predict_prob = model.predict_proba(X)
print(y_predict_prob)  #预测y为0、1的概率
y_predict = model.predict(X)
print(y_predict) #预测y的结果

输出:
在这里插入图片描述
在这里插入图片描述
5.判断精确度

from sklearn.metrics import accuracy_score  #导入相关模块
accuracy = accuracy_score(y,y_predict)
print(accuracy)  #计算准确度并输出

输出:0.7272727272727273

6.测试新的数据集

X_test = np.array([[0,0,0,1,1,0]])
y_test_proba = model.predict_proba(X_test)
print(y_test_proba)
y_test = model.predict(X_test)
print(y_test)

输出:
[[0.48480565 0.51519435]]
[1]

结论:预测新用户可能进行消费,但消费欲望不强烈。

结论

数学基础包括矩阵运算(线性代数)、微积分和概率分析。
·矩阵运算主要能够在获取数据后,帮助我们快速建立样本数据输入与输出之间的关系,应用python的numpy模块
·微积分主要在通过输入输出关系反推模型参数时,应用梯度下降法求出损失函数的最小值,从而确定相应参数,应用python的sympy模块
·概率分析主要用来判断y的取值概率,从而判断y的取值,例子是朴素贝叶斯模型,调用python的sklearn朴素贝叶斯模块

参考课程

数学基础课

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值