
机器学习算法
ykzcs2000
这个作者很懒,什么都没留下…
展开
-
datawhale的图机器学习的开源学习
为了继续深入了解机器学习原创 2023-02-14 21:58:05 · 243 阅读 · 1 评论 -
主成分分析
PCA的几何解释平移(去中心化)、旋转坐标轴,找到主成分pc1和pc2。PCA的思想很简单——减少数据集的特征数量,同时尽可能地保留信息。如何得到这些包含最大差异性的主成分方向呢?通过计算数据矩阵的协方差矩阵然后得到协方差矩阵的特征值特征向量选择特征值最大(即方差最大)的k个特征所对应的特征向量组成的矩阵。这样就可以将数据矩阵转换到新的空间当中,实现数据特征的降维。PCA的算法两种实现方法(1) 基于SVD分解协方差矩阵实现PCA算法第一步是均值归一化。第二步是计算协方差矩阵。第三步是原创 2021-12-14 14:30:27 · 10969 阅读 · 0 评论 -
朴素贝叶斯算法
在学完判别模型中感知机,逻辑回归,软间隔支持向量机等算法之后我们我们接触到了生成模型中的朴素贝叶斯算法。从概率分布的角度考虑,对于一堆样本数据,每个均有特征Xi对应分类标记。生成模型:学习得到联合概率分布P(x,y),即特征x和标记y共同出现的概率,然后求条件概率分布。能够学习到数据生成的机制。判别模型:学习得到条件概率分布P(y|x),即在特征x出现的情况下标记y出现的概率。数据要求:生成模型需要的数据量比较大,能够较好地估计概率密度;而判别模型对数据样本量的要求没有那么多。朴素贝叶斯贝叶斯方法原创 2021-12-14 13:30:17 · 1533 阅读 · 0 评论 -
kmean聚类算法
快速理解:1.有四个牧师去郊区布道,一开始牧师们随意选了几个布道点,并且把这几个布道点的情况公告给了郊区所有的居民,于是每个居民到离自己家最近的布道点去听课。2.听课之后,大家觉得距离太远了,于是每个牧师统计了一下自己的课上所有的居民的地址,搬到了所有地址的中心地带,并且在海报上更新了自己的布道点的位置。3.牧师每一次移动不可能离所有人都更近,有的人发现A牧师移动以后自己还不如去B牧师处听课更近,于是每个居民又去了离自己最近的布道点……就这样,牧师每个礼拜更新自己的位置,居民根据自己的情况选择布道点,原创 2021-12-14 11:18:00 · 1040 阅读 · 0 评论 -
Python 实现实现Numpy找到最大值的位置(PCA的实现)
np.sort()函数的作用,从小到大排序。(这里我也需要注意axis)不写的话他的默认值为1.使用x == np.max(x) 获得一个掩模矩阵,然后使用where方法即可返回最大值对应位置。编程PCA算法的时候x=np.array([[-1,-1,0,2,0], [-2,0,0,1,1]])yuan=xx=0.2*np.dot(x,x.T)e,v=np.linalg.eig(x)print(v)re=np.where(e==np.max(e))v=v.T[r原创 2021-10-08 16:43:20 · 4300 阅读 · 0 评论 -
sklearn.preprocessing中scale和standardscaler
区别:正态分布的平均数为μ,标准差为σ;不同的正态分布可能有不同的μ值和σ值,正态分布曲线形态因此不同。标准正态分布平均数μ=0,标准差σ=1,μ和σ都是固定值;标准正态分布曲线形态固定。(数据标准化是将正太分布变为标准正太分布)在进行数据标准化时,我们通常有两种方法1将测试集和训练集的特征集放在一起,用整体的均值和标准差来进行标准化处理X_scaled = preprocessing.scale(X)2先算训练集的均值和标准差,然后用它们来分别对训练集和测试集进行标准化处理import n原创 2021-09-29 22:35:41 · 707 阅读 · 0 评论 -
观看B站帅器学习的knn算法
用knn完成水果分类代码每部分的含义导入数据集分析数据集数据预处理模型训练代码每部分的含义import pandas as pdimport numpy as npfrom sklearn.preprocessing import StandardScalerfrom sklearn import metricsfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.model_selection import train原创 2021-09-29 15:42:22 · 146 阅读 · 0 评论 -
sympy算微积分及牛顿迭代求解高阶方程
一个程序员一年只拿一万,因为他每个月只投入50元的精力到工作学习中。求如果这个精力产生的效益x.from sympy import * x=Symbol('x') def get_fx(): result=10000 for i in range(1,13): result-=50*(1+x)**i return result def get_diff_fx(): fx=get_fx() diff_fx=fx.d.原创 2021-09-17 23:17:20 · 243 阅读 · 0 评论