朴素贝叶斯是经典的机器学习算法之一,也是为数不多的基于概率论的分类算法.对于大多数的分类算法,在所有的机器学习分类算法中,朴素贝叶斯和其他绝大多数的分类算法都不同.比如决策树,KNN,逻辑回归,支持向量机等,他们都是判别方法,也就是直接学习出特征输出Y和特征X之间的关系,要么是决策函数,要么是条件分布.但是朴素贝叶斯却是生成方法,该算法原理简单,也易于实现. 1,基本概念 朴素贝叶斯:贝叶斯分类时一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类.而朴素贝叶斯分类时贝叶斯分类中…
K-Means算法 K-Means 算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛.K-Means 算法有大量的变体,本文就从最传统的K-Means算法学起,在其基础上学习K-Means的优化变体方法.包括初始化优化K-Means++, 距离计算优化 elkan  K-Means 算法和大数据情况下的优化 Mini Batch K-Means算法. 聚类问题的一些概念: 无监督问题:我们的手里没有标签了 聚类:就是将相似的东西分到一组 聚类问题的难点:如何评估,如何调…
EM算法也称期望最大化(Expectation-Maximum,简称EM)算法,它是一个基础算法,是很多机器学习领域的基础,比如隐式马尔科夫算法(HMM),LDA主题模型的变分推断算法等等.本文对于EM算法,我们主要从以下三个方向学习: 1,最大似然 2,EM算法思想及其推导 3,GMM(高斯混合模型) 1,最大似然概率 我们经常会从样本观察数据中,找到样本的模型参数.最常用的方法就是极大化模型分布的对数似然函数.怎么理解呢?下面看我一一道来. 假设我们需要调查我们学习的男生和女生的身高分布.你…
完整代码及其数据,请移步小编的GitHub 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/MachineLearningNote 在数据挖掘方面,经常需要在做特征工程和模型训练之前对数据进行清洗,剔除无效数据和异常数据.异常检测也是数据挖掘的一个方向,用于反作弊,伪基站,金融欺诈等领域. 在之前已经学习了异常检测算法One Class SVM和 isolation  Forest算法,博文如下: Python机器学习笔记:异常点检测算法--One…
完整代码及其数据,请移步小编的GitHub 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/MachineLearningNote 奇异值分解(Singular  Value Decomposition,后面简称 SVD)是在线性代数中一种重要的矩阵分解,它不光可用在降维算法中(例如PCA算法)的特征分解,还可以用于推荐系统,以及自然语言处理等领域,在机器学习,信号处理,统计学等领域中有重要应用. 比如之前的学习的PCA,掌握了SVD原理后再去看PC…
神经网络与机器学习 笔记-LMS(最小均方算法)和学习率退火 LMS算法和Rosenblatt感知器算法非常想,唯独就是去掉了神经元的压制函数,Rosenblatt用的Sgn压制函数,LMS不需要压制函数,两者一样是只有单个神经元. LMS算法信号流图 算法小结: 然后在说下退火: #pragma once #include "stdafx.h" #include <string> #include <iostream> using namespace std;…
Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow.是一个高度模块化的神经网络库,支持CPU和GPU. 本文学习的目的是学习如何加载CSV文件并使其可供Keras使用,如何使用Keras创建一个回归问题的神经网络模型,如何使用scikit-learn和Keras一起使用交叉验证来评估模型,如何进行数据准备以提高Keras模型的技能,如何使用Keras调整模型的网络拓扑. 前期准备之Keras的scikit-learn接口包装器 Git地址:https://github…
网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常详细,同时许多人对官方文档的理解和结构上都不能很好地把握,我也打算好好学习sklearn,这可能是机器学习的神器),下面先简单介绍一下sklearn. 自2007年发布以来,scikit-learn已经成为Python重要的机器学习库了,scikit-learn简称sklearn,支持包括分类,回归…
机器学习岗位的面试中通常会对一些常见的机器学习算法和思想进行提问,在平时的学习过程中可能对算法的理论,注意点,区别会有一定的认识,但是这些知识可能不系统,在回答的时候未必能在短时间内答出自己的认识,因此将机器学习中常见的原理性问题记录下来,保持对各个机器学习算法原理和特点的熟练度. 本文总结了机器学习一些面试题和笔试题,以便自己学习,当然了也为了方便大家,题目是网上找的额,如果有侵权请联系小编,还有,不喜勿喷,谢谢!!! 算法分类 下面图片是借用网友做的,很好的总结了机器学习的算法分类: 问答题…
集成学习(Ensemble  learning)是使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合,从而获得比单个学习器显著优越的泛化性能.它不是一种单独的机器学习算法啊,而更像是一种优化策略.因为单个机器学习模型所能解决的问题有限,泛化能力差,但是通过构建组合多个学习器来完成学习任务往往能够获得奇效,这些学习器可以看成一个个基本单元,由他们组合最终形成一个强大的整体,该整体可以解决更复杂的问题,其思想可以形象的概括为三个臭皮匠赛过诸葛亮. 集成学习是机器学习的一大分支,他通过建立…