![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
统计学习方法
Jcldcdmf
haha
展开
-
支持向量机详解及代码(SMO算法)
基本上相当于把课本内容又整理了一遍,当然有些地方理解的不够清楚,可能有错误,看到了请指正_。因为不太会markdown的语法,所以直接用word写了截的图,doc文件和代码在这里C = 1threshold = 1e-8 # 确保选择的a2使得损失函数有足够的下降eps = 1e-30# 参数顺序:K,b,alpha,ydef getL(K, alpha, y): # 获取当前损失函数值 l = 0 for i in range(le原创 2020-11-14 16:09:48 · 1862 阅读 · 0 评论 -
决策树实现(CART生成及剪枝)
这个代码是可以直接运行的,数据集在github链接下的breast_cancer.csv,把代码和数据集放到同一目录下就好了或者:百度云链接,提取码:eu8q详细分析和完善下周日再写吧,感觉复杂度好高啊。。。。。。import numpy as npimport copy as copyclass Node(object): def __init__(self): self.left = None self.right = None self原创 2020-10-25 19:01:40 · 798 阅读 · 0 评论 -
KNN
理论知识是参考的《统计学习方法》代码基本上是参考别人写的,然后整理的。先占个位置,周日写,别忘了。原创 2020-10-13 15:32:23 · 83 阅读 · 0 评论 -
朴素贝叶斯
理论知识是参考的《统计学习方法》第四章def bayes(X,y,y_set,xi): #X是训练数据的输入,y是训练数据的分类,y_set是所有的分类,xi是预测数据的输入 dictY = {} #记录每一个类的输入 dictY[Ck]包含了所有分类为Ck的输入数据 pY = {} #记录每一个类的出现次数 ∑I(y=Ck) maxP = 0 pred = 0 #预测值 #依据不同的概率模型,P(x|y)的计算方式也不同,这里与书上的计算方法相同原创 2020-10-13 15:30:29 · 88 阅读 · 0 评论 -
感知机
理论知识是参考的《统计学习方法》代码需要用到numpy和matplotlib.pyplotimport numpy as npimport matplotlib.pyplot as pltdef perceptron_v2(x,y,mu): omg = np.zeros((1,x.shape[1])) #omg与x维度相同 b = 0 finish_flag = False while finish_flag == False: finish_fla原创 2020-10-08 15:51:28 · 96 阅读 · 0 评论 -
梯度下降法
目标:在无约束条件下求解minf(x),注意这里的x不一定表示一个数,也可能是向量。方法:由高等数学的知识,沿着梯度方向函数值增长最快,那么沿负梯度方向函数值减少最快。选择合适的初值x0,每次都沿当前位置的负梯度方向更新变量的值,产生新的x,直到相邻两次迭代的f(x)值足够接近。算法:输入:f(x)表达式,计算精度ε输出:满足精度要求的x值步骤1、选择初值x0,计算x0处的梯度值▽f(x0)2、计算x1的值,x1 = x0 -λ*▽f(x0),其中λ>=0,并且λ取使f(x1)的值最原创 2020-09-17 15:58:17 · 266 阅读 · 0 评论