机器学习
liuhehe123
这个作者很懒,什么都没留下…
展开
-
机器学习笔记(2)----线性回归之梯度下降
梯度下降百度百科:梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。梯度下降 类似于寻找下山的路,不断往下走直到来到山底。...原创 2018-07-23 18:36:35 · 303 阅读 · 0 评论 -
机器学习笔记(8)------------ (logistic)逻辑回归之多分类问题
多类别分类:一对多如何使用逻辑回归 (logistic regression)来解决多类别分类问题,具体来说,我想通过一个叫做"一对多" (one-vs-all) 的分类算法。也可以称为“一对余”。然而对于之前的一个,二元分类问题,我们的数据看起来可能是像这样:对于一个多类分类问题,我们的数据集或许看起来像这样:我们现在已经知道如何进行二元分类,可以使用逻辑回归,对于直线或...原创 2018-08-08 11:42:24 · 2187 阅读 · 1 评论 -
机器学习----k-近邻算法(KNN)
k-近邻算法概念简单地说,k-近邻算法采用测量不同特征值之间的距离方法进行分类。k-近邻算法的优缺点:优点:精度高、对异常值不敏感、无数据输入假定。缺点:计算复杂度高、空间复杂度高。适用范围:数值型和标称型。 对于该算法更通俗的说法,拿到一个数据A,计算其与数据集C中的数据的距离,通过使用特征值进行求欧式距离。然后排序取出其前k相邻的数据,前k个出现频率最高的类别即作为...原创 2018-09-09 11:04:29 · 244 阅读 · 0 评论 -
k-means聚类算法总结
聚类概念聚类分析是在对象数据中发现对象之间关系。一般来说,组内相似性越高,组间相似性越大,则聚类的效果越好。k-means概念k-means是一种无监督学习,它会将相似的对象归到同一类中。k-means聚类的优缺点优点:容易实现。缺点:可能会收敛到局部最小值, 当应用到大规模数据集时会收敛较慢。适用于:数值型数据。k-means聚类的算法思想1.随机计算k个类中...原创 2018-09-07 11:25:52 · 18186 阅读 · 0 评论 -
机器学习基石9--Linear Regression
一、引入线性回归问题 Linear Regression是常见的一种机器学习算法。这里引入信用卡的例子,解决给用户发放信用卡额度的问题,【额度问题】这是一个回归问题。 我们把用户的年龄、年收入等描述为特征存进X, 是常数项,为权重。我们写成向量形式 :,看起来非常像perceptron,不同的是 这里没用符号函数 。...原创 2018-12-21 18:48:27 · 448 阅读 · 1 评论 -
处理等深分箱 深度不为整数的处理方法 equi-depth binning
@划分(Binning)遇到处理等深分箱 深度不为整数的处理方法N = [1, 2, 3, 4, 5, 6]bins = 4那么我们划分的深度 就是 depth = N/bins = 1.5>0每个分箱给约1.5,这里其实可以进行拆分将 1 划给第一个分箱 [1], 将剩余的 0.5 给下一个分箱子,这样下一个分箱就有 1.5 + 0.5 = 2 个数可取 ,也就是说 [2,3...原创 2019-05-22 09:09:17 · 6922 阅读 · 0 评论 -
Matplotlib基本画图之子图
# 子图操作相关函数plt.figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=<class 'matplotlib.figure.Figure'>, **kwargs)plt.subplots(nrows=1, ncols=1, sh...原创 2019-06-03 10:39:11 · 989 阅读 · 0 评论 -
机器学习笔记(7)-------logistic回归
logistic回归logistic回归 虽然名字中带有“回归”二字,但其主要是用来处理分类问题的。对于分类问题的处理,如果仍然使用线性回归进行处理,效果则会不够理想。我们将因变量设为 ,其可能属于的两个类称为正向类和负向类。其中 0 表示负向类, 1 表示正向类。 我们进行分类的结果应该是 y=1或者y=0。上面使用...原创 2018-08-07 11:21:24 · 294 阅读 · 0 评论 -
机器学习之正则化(Regularization)
1. The Problem of Overfitting1 还是来看预测房价的这个例子,我们先对该数据做线性回归,也就是左边第一张图。 如果这么做,我们可以获得拟合数据的这样一条直线,但是,实际上这并不是一个很好的模型。我们看看这些数据,很明显,随着房子面积增大,住房价格的变化趋于稳定或者说越往右越平缓。因此线性回归并没有很好拟合训练数据。 我们把此类情况称为欠拟...转载 2018-08-11 11:01:08 · 580 阅读 · 0 评论 -
机器学习笔记总结(1)
监督学习(superviewed learning):给出数据集以及标准答案,进行训练来预测将来给出的的数据的答案归属。例如:就是高考前所做的练习题是有标准答案的。在学习的过程中,我们可以通过对照答案,来分析问题找出方法,下一次在面对没有答案的问题时,往往也可以正确地解决。 对于机器学习来说,监督学习就是训练数据既有特征(feature)又有标签(label),通过训练,让机器可以自...原创 2018-07-20 09:49:42 · 260 阅读 · 0 评论 -
机器学习笔记(2)-----单变量线性回归之代价函数
线性回归:表达形式为y = w'x+e,e为误差服从均值为0的正态分布。线性回归可以分为单变量线性回归(Linear Regression with One Variable)以及多变量线性回归(Linear Regression with Multiple Variables)。在此主要了解单变量线性回归。以ng课程的房屋交易问题为例: 假设给定一批已知的房子大小和价格的对应...原创 2018-07-20 12:26:14 · 1320 阅读 · 0 评论 -
机器学习笔记(3)-----梯度下降算法中特征缩放
多变量线性回归 计算代价函数 ,其中: octave求代价函数J(theta)代码: function J = costFunctionJ(X,y,theta) m = size(X,1); prediction = X*theta; sqrErrors = (prediction-y).^2; ...原创 2018-08-04 17:21:47 · 570 阅读 · 0 评论 -
机器学习笔记(4)-------正规方程理解和推导
梯度下降算法有助于解决很多线性问题,补过对于一些线性回归问题,正规方程方法有更好的解决办法。如:类似于我们以前常用的一元二次函数,对函数求导J',然后J'=0求出最小点,即可得到最小值。正规方程是通过求解下面的方程来找出使得代价函数最小的参数的:关键是利用正规方程解出向量 :个人进行了推导。首先用到了以下公式: ...原创 2018-08-04 17:57:11 · 1209 阅读 · 2 评论 -
机器学习(5)----octave
octave之基础1. v = [1:0.1:2] : 表示从1到2 步长为0.1 v = [1:6] :表示[1 2 3 4 5 6]2. C = ones(2, 3) : 生成2×3的全1矩阵 C = 2 * ones(2, 3) : 生成2×3的全2矩阵 类似的用法还有zeros()3. rand(a, ...原创 2018-08-04 18:50:58 · 619 阅读 · 0 评论 -
机器学习笔记(6)--------梯度下降算法与正规方程的使用比较
X = [1 1;1 2;1 3] y = [1; 2; 3] = [0 ; 1] (octave格式输入)其中x的点(1 2 3) 向量化X0 = 1 即为X= [1 1;1 2;1 3] X_0 X_1 y1 1 11 ...原创 2018-08-05 11:23:38 · 393 阅读 · 0 评论 -
机器学习番外篇-------感知器学习法则
获取测试样例数据集 以鸢尾花为例import pandas as pdimport matplotlib.pyplot as pltfrom matplotlib.colors import ListedColormapimport numpy as np >>> source_addr='https://archive.ics.uci.edu/ml/ma...原创 2018-08-10 23:19:47 · 1629 阅读 · 0 评论 -
机器学习笔记(9)----------正则化(Regularization)
我们使用线性回归和logistic可以解决很多问题,然而,在应用这些算法中往往会出现过拟合问题,导致算法的效果很差。首先先来看看什么是过拟合问题?上图,第一个模型 欠拟合 第二个模型 拟合效果很好 第三个模型 则是我们所说的 过拟合,因为它试图拟合每一个数据点,这是一个四次方模型,过于强调拟合数据,而失去了算法的本质:预测新数据。如果给出一个新值,让其预测结果将会很差。分类中的过拟...原创 2018-08-11 10:55:32 · 261 阅读 · 0 评论 -
Matplotlib画图之基本图表绘制
1、Series 与 DataFrame绘图首先来讲讲Series绘图, 即 我们使用 ts = pd.Series(...) 直接调用ts.plot进行画图plt.plot(kind='line', ax=None, figsize=None, use_index=True, title=None, grid=None, legend=False, style=None, log...原创 2019-06-03 15:36:52 · 1245 阅读 · 0 评论