- 博客(11)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 支持向量机SVM
SVM的本质:寻找最大的间隔 支持向量:距离超平面最近的那些点 SMO算法的原理:每次循环中选择两个alpha进行优化处理。一旦找到一对合适的alpha,那么就增大其中一个同时减小另一个。合适:条件一,两个alpha要在间隔边界之外;条件二,这两个alpha还没有进行过区间化处理或不在边界上#SMO的辅助函数#打开文件并逐行解析,得到每行的类标签和特征矩阵def loadDataSet(
2017-11-19 23:07:11 316
原创 Logistic回归
利用Logistic回归进行分类的思想:根据现有数据对分类边界线建立回归公式 优点:计算代价不高,易于理解和实现 缺点:容易欠拟合,分类精度可能不高 适用数据类型:数值型和标称型数据 Sigmoid函数: Sigmod函数的输入Z: 采用向量的写法 梯度上升法:要找到某函数的最大值,最好的方法是沿着该函数的梯度方向探寻 函数f(x,y)的梯度上升的迭代公式:w
2017-11-11 20:16:27 241
原创 基于概率论的分类方法:朴素贝叶斯
朴素:整个形式化过程制作最原始,最简单的假设。一个假设是特征的独立性,另一个是每个特征同等重要 优点:在数据较少的情况下仍然有效,可以处理多类别问题 缺点:对于输入数据的准备方式较为敏感 适用数据类型:标称型数据 贝叶斯理论的核心思想:选择高概率对应的类别 贝叶斯准则:P(h | D) = P(h) * P(D | h) / P(D) 独立性:一个特征出现的可能性和其他单词没有任何关系
2017-11-06 22:56:51 301
原创 决策树:ID3算法
组织杂乱无章的数据的一种方法就是使用信息论度量信息 在划分数据集前后信息发生的变化成为信息增益 集合信息的度量方式称之为香农熵或熵 也就是说可以通过香农熵的变化来体现信息增益 计算所有类别的信息期望值(熵) 公式为 单个数据的信息期望值为计算给定数据集的香农熵from math import logimport numpy as npdef calShannonEnt(dataS
2017-11-05 00:18:30 341
原创 K-近邻:手写字识别
思路: 手写字图像为32*32个数字组成的,每个图像就是一个txt文件。 运用os模块下的listdir()获取目录下的文件名称,如0_13.txt,0即为图像类别,遍历文件目录,获取图像类别保存到一个列表,再将所有图像保存到一个列表(图像由二维(32*32)转换为一维(1*1024))。 用相同方法获取另一个文件目录下的txt,组成一个列表作为测试集。此时k-近邻算法函数的4个参数就都有了,
2017-11-04 17:23:10 400
原创 K-近邻:改进约会网站的配对效果
读取文件,展示三个特征:不喜欢,一般,喜欢 与三个条件:飞机里程,游戏时间,每周消费的冰激凌 之间的关系import numpy as npdef file2matrix(filename): fr = open(filename) arrayOLines = fr.readlines() #按行读取文件 numberOFLines = len(arrayOLines) #获
2017-11-04 13:17:31 637 3
原创 IndexError: too many indices for array
在练习机器学习的时候遇到了一个小问题,花费了挺长时间,故记录下 源码from numpy import *def file2matrix(filename): fr = open(filename) arrayOLines = fr.readlines() numberOFLines = len(arrayOLines) returnMat = zeros(num
2017-11-04 00:19:30 114336 3
原创 排列组合问题
问题描述:将1到9 , 9个数字填入下列式子中,使其成立 ()-()=()-()=()-()=()-()=() 找出所有的可能(由一道小学3年级的题改编 =。=!) 思路:将9个数字放入列表中,获取所有的可能的列表。带入上面的公式,成立的打印出来。 思路很简单,本以为很快就能做出来,但是当我排列组合时,遇到了各种问题(有兴趣的朋友可以试试),所以最后只能用我大 Python的内置函数了。
2017-11-03 16:11:15 282
原创 一个简单的K-近邻
import kNNimport numpyimport operatordef createDateSet(): #定义数据集 group = array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]]) labels = ['A','A','B','B'] return group, labelsgroup, labels = createDa
2017-11-03 00:06:37 232
原创 爬取京东商城的手机图片
按照韦玮老师书中代码,如下import reimport urllib.requestdef craw(url, page): html = urllib.request.urlopen(url).read() html = str(html) pat1 = '<div id="plist".+? <div class="page clearfix">' resul
2017-11-01 21:38:43 560
如何实现自己网站上的视频只能播放前几分钟
2017-12-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人