
机器学习
文章平均质量分 85
cxmscb
学生
展开
-
【机器学习实战】K-邻近算法
《机器学习实战》笔记k-邻近算法工作原理:已存在一定的样本数据集合,并且集合中的每一组数据都存在数据标签。这样我们输入没有标签的新数据后,将新数据的每个特征与样本数据集合中的每组数据进行对应的特征比较,然后算法提取样本集合中最相似的标签。一般我们选择样本数据集合中前k个最相似的数据最后,我们在这前k个最相似的数据中选择出现次数最多的数据标签上述工作相当于一个分类器特征1 特征2 特征3原创 2016-03-22 17:17:49 · 1191 阅读 · 0 评论 -
机器学习之主成分分析PCA及代码示例
一、主成分分析(PCA)主成分分析(Principal Component Analysis)是一种常用的降维算法,可通过线性组合的方法将多个特征综合为少数特征,且综合后的特征相互独立,又可以表示原始特征的大部分信息。1. 主成分和方差观察以下的几个样本的特征向量X:x1 x2 x3 x4 y0 10 -2 2 0 10 -3 30 10 -4 4可以看出上述原创 2017-03-26 14:43:19 · 17946 阅读 · 3 评论 -
机器学习之划分聚类及代码示例
一、聚类聚类是一种无监督学习,根据样本的内在相似性/距离,将大量未知标记的样本集划分为多个类别,使得同一个类别内的样本相似度较大(距离较小),而不同类别间的样本相似度较小(距离较大)。划分聚类包含K-Means、K-Means++、Mini Bacth K-Means等。二、相似性/距离的度量既然聚类是根据样本之间的内在相似性/距离进行分类的,那相似性/距离的度量有哪些呢?一般来说,相似性越小,距离原创 2017-03-16 21:54:10 · 5513 阅读 · 0 评论 -
机器学习之支持向量机SVM及代码示例
一、线性可分SVMSVM算法最初是用来处理二分类问题的,是一种有监督学习的分类算法。对于线性可分的二分类问题,我们可以找到无穷多个超平面,将两类样本进行区分。(超平面:一维中是一个点;二维中是一条线;三维中是一个面……)在上面的多个超平面中,它们都可以成功将样本集划分两边,但哪一个超平面更好?一般来说,当样本点离超平面越近,样本的标签为某类型的概率应该为0.5左右,确信度比较低,而样本点离超平面越远原创 2017-02-22 23:07:14 · 52696 阅读 · 7 评论 -
机器学习之朴素贝叶斯模型及代码示例
一、朴素贝叶斯的推导朴素贝叶斯学习(naive Bayes)是一种有监督的学习,训练时不仅要提供训练样本的特征向量X,而且还需提供训练样本的实际标记Y,是一种基于贝叶斯定理和特征条件独立假设的分类方法。1. 贝叶斯定理:贝叶斯定理: 。对于分类问题,其中 可看作 在样本的特征为X的条件下,样本的类别为Y的条件概率,这正是分类问题中我们想求的;而右边中的 可看作 训练集中样本类别为Y的概率 , 可原创 2017-04-06 15:07:22 · 13391 阅读 · 0 评论 -
机器学习之逻辑回归和softmax回归及代码示例
一、逻辑回归在 机器学习之线性回归 中,我们可使用梯度下降的方法得到一个映射函数hΘ(X)来去贴近样本点,这个函数是对连续值的一个预测。而逻辑回归是解决分类问题的一个算法,我们可以通过这个算法得到一个映射函数f:X-> y,其中X为特征向量,X 为 { x0 x1 x2 x3 x4 … xn },y为预测的结果。在逻辑回归这里,标签y为一个离散的值。二、判定边界当将训练集的样本以其各个特征为坐标轴在原创 2016-11-29 16:48:55 · 17845 阅读 · 2 评论 -
机器学习之线性回归及代码示例
一、线性回归线性回归一般用来做连续值的预测,预测的结果为一个连续值。因训练时学习样本不仅要提供学习的特征向量X,而且还要提供样本的实际结果(标记label),所以它是一种有监督学习。X= { x0 x1 x2 x3 x4 … xn }。线性回归需要学习得到的是一个映射关系f:X -> y,即当给定新的待预测样本时,我们可以通过这个映射关系得到一个测试样本X的预测值y。在线性回归中,假定输入X和输出y原创 2016-11-26 00:38:31 · 17555 阅读 · 1 评论 -
机器学习之机器学习库scikit-learn
一、 加载sklearn中的数据集datasetsfrom sklearn import datasetsiris = datasets.load_iris() # 鸢尾花卉数据digits = datasets.load_digits() # 手写数字8x8像素信息数据查看数据的信息print iris.data[:4] # 查看数据的特征信息print iris.data.shape #原创 2017-02-11 00:44:48 · 2510 阅读 · 0 评论 -
机器学习之决策树和随机森林及代码示例
一、决策树决策树学习是机器学习中一类常用的算法。在决策树中,根节点包含样本全集。每个非叶子节点表示一种对样本的分割,通常对应一个划分属性,其将样本分散到不同的子节点中。每个叶子节点对应于决策的结果。因此从根节点到每个叶子节点的路径对应了一个判定序列。可与下图做比对:在上图的决策树中,划分属性有年龄、是否为学生、信用率。划分属性一般采用样本的某个特征或多个特征的组合。决策树学习是一种有监督学习,根据样原创 2016-12-09 16:43:46 · 17590 阅读 · 3 评论 -
机器学习之密度聚类及代码示例
一、密度聚类密度聚类的思想,在于通过计算样本点的密度的大小来实现一个簇/类别的形成,样本点密度越大,越容易形成一个类,从而实现聚类。密度聚类算法可以克服基于距离的聚类算法只能发现凸型集合的缺点,其可根据密度的分布发现任意形状的聚类,且对噪声数据不敏感。因密度聚类算法需计算每个样本点附件的样本密度,因此计算复杂度比较大。二、DBSCAN算法DBSCAN(Density-Based Spatial Cl原创 2017-03-18 21:37:35 · 7797 阅读 · 5 评论 -
机器学习之层次聚类及代码示例
一、层次聚类层次聚类是无监督学习方法,可对给定的N个待聚类的样本进行层次的分类,直到某种条件(类的个数、类间的距离超过某个阈值)满足为止。1、层次聚类的划分对于层次聚类,可具体分为:a. 凝聚的(agglomerative)层次聚类:采用自底向上的策略:先将每个样本作为一个簇(类),然后不断地计算各个类之间的相似度/距离、并合并最相近的两个类成一个大类,直到某个终止条件满足为止。(可与哈夫曼编码算法原创 2017-03-18 17:18:37 · 8469 阅读 · 1 评论 -
python数据分析之数据可视化matplotlib
import matplotlib.pyplot as pltimport numpy as npimport numpy.random as randnimport pandas as pdfrom pandas import Series,DataFramefrom pylab import mplmpl.rcParams['axes.unicode_minus'] = False原创 2017-01-27 12:03:06 · 7273 阅读 · 0 评论 -
python之pandas的基本使用(1)
一、pandas概述pandas :pannel data analysis(面板数据分析)。pandas是基于numpy构建的,为时间序列分析提供了很好的支持。pandas中有两个主要的数据结构,一个是Series,另一个是DataFrame。二、数据结构 SeriesSeries 类似于一维数组与字典(map)数据结构的结合。它由一组数据和一组与数据相对应的数据标签(索引index)组成。这组数原创 2017-01-20 16:57:50 · 101599 阅读 · 7 评论 -
python之numpy的基本使用
一、numpy概述numpy模块提供了python对N维数组对象的支持:ndarray,ndarray数组中的元素须为同一数据类型,这一点与python的列表是不一样的。numpy支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。二、创建ndarray数组代码示例:# -*- coding: utf-8 -*-import numpy;print '使用列表生成一维数组'd原创 2017-01-17 15:20:39 · 343909 阅读 · 25 评论 -
python数据分析之csv/txt数据的导入和保存
约定:import numpy as npimport pandas as pd一、CSV数据的导入和保存csv数据一般格式为逗号分隔,可在excel中打开展示。示例 data1.csv:A,B,C,D1,2,3,a4,5,6,b7,8,9,c代码示例:# 当列索引存在时x = pd.read_csv("data1.csv") print x''' A B C D0原创 2017-01-25 12:26:25 · 53624 阅读 · 0 评论 -
python之pandas的基本使用(2)
续 python之pandas模块的基本使用(1)一、排序和排名排序:sort_index和sort_values函数代码示例:print 'Series排序'x = Series(range(4), index = ['b', 'a', 'c', 'd'])print x.sort_index() # Series按索引排序'''a 1b 0c 2d 3原创 2017-01-22 18:16:02 · 10501 阅读 · 1 评论 -
深度学习之卷积神经网络CNN及tensorflow代码实现示例
一、CNN的引入在人工的全连接神经网络中,每相邻两层之间的每个神经元之间都是有边相连的。当输入层的特征维度变得很高时,这时全连接网络需要训练的参数就会增大很多,计算速度就会变得很慢,例如一张黑白的 28×2828×28 的手写数字图片,输入层的神经元就有784个,如下图所示: 若在中间只使用一层隐藏层,参数 ww 就有 784×15=11760784×15 = 11760 多个;若输入的原创 2017-05-01 13:28:21 · 225438 阅读 · 42 评论