![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
统计学习方法
Eminem1147
NJU SE Master
展开
-
统计学习方法_感知机实现
数据集为二值化的MNIST,下载地址:MNIST#!/usr/bin/env python3# -*- coding: utf-8 -*-import numpy as npimport pandas as pdimport timeimport cv2from sklearn.cross_validation import train_test_split# 提取hog...原创 2018-10-14 22:59:25 · 150 阅读 · 0 评论 -
统计学习方法_kNN实现
数据集与上一篇文章不同,可以使用完整的MNIST数据集了,下载地址:MNIST#!/usr/bin/env python3# -*- coding: utf-8 -*-import numpy as npimport pandas as pdimport timeimport cv2from sklearn.cross_validation import train_test_s...原创 2018-10-15 09:45:55 · 183 阅读 · 0 评论 -
统计学习方法_朴素贝叶斯算法实现
使用的数据集和上一个算法一样,都是完整的MNIST,这里为了简化循环的计算量,将整个图片二值化,同时为了避免浮点数连续相乘和避免出现除以0,用了一些小trick。重点要理解三维数组的条件概率。#!/usr/bin/env python3# -*- coding: utf-8 -*-import timeimport randomimport numpy as npimport pa...原创 2018-10-15 20:37:48 · 349 阅读 · 0 评论 -
统计学习方法_决策树实现
这个使用了像素点二值化的MNIST,重点理解递归子树的构造过程。#!/usr/bin/env python3# -*- coding: utf-8 -*-import cv2import timeimport numpy as npimport pandas as pdfrom sklearn.cross_validation import train_test_split...原创 2018-10-22 14:55:56 · 206 阅读 · 0 评论 -
统计学习方法_逻辑回归实现
数据集使用了类别仅两种的MNIST。#!/usr/bin/env python3# -*- coding: utf-8 -*-import timeimport mathimport randomimport numpy as npimport pandas as pdfrom sklearn.cross_validation import train_test_split...原创 2018-10-22 19:53:09 · 203 阅读 · 0 评论 -
统计学习方法_支持向量机SVM实现
由于在MNIST上运行SVM耗时过久,所以这里使用了伪造的数据集,并使用线性核和多项式核进行实验。#!/usr/bin/env python3and# -*- coding: utf-8 -*-import timeimport randomimport loggingimport pandas as pdfrom generate_dataset import *cl...原创 2018-10-20 15:16:23 · 226 阅读 · 0 评论 -
统计学习方法_最大熵模型实现
使用的是二分类的MNIST,注意为了区别不同的特征,给它们加上了x0、x1。注意f(x,y)的含义。最后运行时间很长,最大熵模型更适合小数据集。#!/usr/bin/env python3# -*- coding: utf-8 -*-import timeimport mathimport randomimport numpy as npimport pandas as pd...原创 2018-10-30 21:09:05 · 468 阅读 · 0 评论 -
统计学习方法_AdaBoost算法实现
这里用的是二值化的MNIST,同时将特征的值也二值化了。书上举的例子特征只有一维,但大多数情况下特征不会只有一维,这里每次都会遍历最优切分特征和最优切分点,弱分类器选择最简单的阈值分类器,对于每个弱分类器都有与其对应的切分特征和切分点,在预测的时候将预测数据也只使用需要的特征值即可。#!/usr/bin/env python3# -*- coding: utf-8 -*-import ...原创 2018-11-02 15:14:42 · 334 阅读 · 0 评论 -
统计学习方法_隐马尔可夫模型HMM实现
这里用到的数据集是三角波,使用长度20的序列训练100次,生成长度为100的序列。HMM的初始化非常重要,这里采用随机初始化。#!/usr/bin/env python3# -*- coding: utf-8 -*-import csvimport randomimport numpy as npimport matplotlib.pyplot as pltclass HM...原创 2018-11-07 14:09:54 · 415 阅读 · 0 评论