机器学习
萧瑟1
这个作者很懒,什么都没留下…
展开
-
神经网络:delta规则与广义delta规则以及利用SGD,Batch实现delta方法(python代码)
delta规则: 如果一个输入节点导致一个输出临界点产生误差,则这两个节点之间的权重将根据输入值xj和输出偏差ei成比例地进行调整。该规则可以用公式表现为: wij = wij +a*ei*xj; 其中: xj=输入节点的输出(j=1,2,3) ei=输出节点i的误差 wij=输出节点i和输入节点j之间的权重 a=学习率(0<...原创 2019-06-22 09:43:47 · 3920 阅读 · 3 评论 -
Coursera 机器学习 Week6 编程作业: Regularized Linear Regression and Bias/Variance
此次作业需要我们实现正则线性化,并在此基础上解决训练过程中出现的过拟合和欠拟合问题。1 Regularized Linear Regression这一部分需要我们通过线性正则化来实现预测大坝的出水量。1.1 Visualizing the dataset此次给出的训练数据中XXX只有一维,我们会在后面的练习中多项式话它。训练数据的图像如下:1.2 Regularized linear...原创 2019-07-23 13:01:49 · 614 阅读 · 0 评论 -
Coursera 机器学习 Week9 编程作业: Anomaly Detection and Recommender Systems
1 Anomaly detectionestimateGaussian.m这个函数主要让我们实现µ和σ的计算function [mu sigma2] = estimateGaussian(X)%ESTIMATEGAUSSIAN This function estimates the parameters of a %Gaussian distribution using the data...原创 2019-07-26 16:23:28 · 415 阅读 · 0 评论 -
Coursera 机器学习 Week8 编程作业: K-means Clustering and Principal Component Analysis
此次部分是要完成K-均值聚类和主成成分分析1 K-means Clustering首先我们会在2维的数据集上实现K-均值聚类,之后我们会运用K-均值聚类来对图片进行压缩,也就是将拥有256种颜色的图片聚类成拥有16种颜色的图片。1.1 Implementing K-means实现K-均值聚类的步骤如下:随机选取K个中心点设置迭代次数,在每次迭代中运行下面两个内循环选取每个x(i)x...原创 2019-07-25 17:02:00 · 494 阅读 · 0 评论 -
感知机学习算法python代码实现
感知机用于将一个线性可分的模型将正实例点和负实例点分在一个平面的两侧。感知机学习算法一共有两种实现形式,一种是原始形式,一种是对偶形式感知机学习算法是通过梯度下降算法来实现最优化的,这里梯度下降选用的是随机梯度下降法。1. 原始形式算法实现步骤:选取初值w,bw,bw,b在训练集中选取数据xi,yix^i,y^ixi,yi如果y∗(wx+b)<=0y*(wx+b)&a...原创 2019-07-29 23:34:37 · 625 阅读 · 0 评论 -
Coursera 机器学习 Week7 编程作业: Support Vector Machines
此次作业是要完成两部分内容,一部分是利用SVM支持向量机训练数据,另一部分是通过SVM完成对垃圾邮件的分类。1 Support Vector Machines在这一部分我们会利用SVM对2维数据集进行训练,1.1 Example Dataset 1我们会在这一部分利用线性分隔对2维数据集进行训练,训练集的可视化如下图:‘+‘表示的是1.通过可视化我们发现,最左边有一个孤立的’+’,很...原创 2019-07-24 21:19:56 · 540 阅读 · 0 评论 -
Coursera机器学习 Week5 编程作业: Neural Networks Learning
此次作业是实现神经网络的反向传播算法,在学习这一部分的时候听的蒙蒙的,公式推导部分理解不了,只能硬着头皮硬做了。1 Neural Networks此次作业完成的任务和上次作业基本一样,也是完成对手写数字的识别,只不过是要利用反向传播算法来实现自动调整权重。1.1 Visualizing the data这次的实验数据跟上次作业的一样,也是5000组,每组图片是2020像素的,可以向量化成4...原创 2019-07-20 15:26:16 · 483 阅读 · 0 评论 -
Coursera机器学习 Week4 编程作业: Multi-class Classification and Neural Networks
此次编程作业分为两部分,是分别用one-vs-all逻辑回归和神经网络来实现识别手写数字0-9。1 Multi-class Classification1.1 Dataset此次作业给出了5000组测试数据,每个测试数据由2020的像素组成,每个像素都由一个浮点数组成,可以将这2020的像素转化成向量的形式。每个测试数据组成矩阵X的一行,那么矩阵X是一个5000*400的矩阵了。X=[(x...原创 2019-07-18 09:53:46 · 326 阅读 · 0 评论 -
Coursera机器学习 Week3 编程作业: Logistic Regression
此次作业要求实现的内容一个是逻辑回归,另一个是正则逻辑回归。Logistic Regression此次逻辑回归模型是通过学生成绩预测学生是否会被大学录取。训练数据给出了学生两次考试的成绩和录取情况,这里用1表示录取,0表示未被录取。Visualizing the data这里要对plotData.m进行编写来实现可视化,ppt已将答案给出。plotData.m:function p...原创 2019-07-12 20:54:25 · 573 阅读 · 1 评论 -
用梯度下降算法解决线性回归问题
问题引入假设现在你现在手头上关于房子信息和房价,你朋友给出自己房子信息,叫你帮他预测一下能卖多少钱,房子的信息有房子的大小,卧室的数目。问题分析这种给出变量和结果的问题我们可以通过用线性回归的知识来解决。设线性回归方程为hθ(x)=θ0+θ1x1+θ2x2h_\theta(x) = \theta_0+\theta_1x_1+\theta_2x_2hθ(x)=θ0+θ1x1+θ2x...原创 2019-07-08 12:04:42 · 1777 阅读 · 0 评论 -
神经网络:SGD与Batch比较(python实现)
前一篇博客讲述了SGD和Batch方法的代码实现,本篇博客主要是比较SGD和Batch方法的学习速度,通过平均误差来进行比较,为了确保公平,两种方法的权重用相同的值初始化。在这里附上代码:#!/usr/bin/env pythonimport mathimport randomimport BatchDeltaimport SGDdeltaimport matplotlib...原创 2019-06-23 17:01:23 · 1160 阅读 · 0 评论 -
python matplotlib 常用方法和绘图实例
导入import numpy as npimport matplotlib.pyplot as plt创建一个绘图库fig=plt.figure() 在图像窗口上画小图 plt.subplot2grid((2,3),(0,0));表示将图像窗口分成2行3列,在(0,0)处画一个小图。设置标题plt.title()设置y坐标plt.ylabel()绘制散点图plt...原创 2019-09-06 22:09:47 · 491 阅读 · 0 评论