笔记||Python3之算法】的更多相关文章

循环嵌套:先从外层循环里面取出一个元素,再执行内层的循环:当内层的循环都执行后,再执行外层循环. for循环嵌套语法: for  x  in  range(): for  y  in  range(): statements(s) statements(s) 案例1:9 * 9乘法表:                           for  i  in  range(1,10): for  j  in  range(1, i+1): print('{}**{}'.format(j,i,j…
python聚类算法实战详细笔记 (python3.6+(win10.Linux)) 一.基本概念:     1.计算TF-DIF TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度. 字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降. TFIDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现, 则认为此词或者短语具有很好的类别区分能力,适合用来分类.TFIDF实际上是:…
机器学习实战笔记-k-近邻算法 目录 1. k-近邻算法概述 2. 示例:使用k-近邻算法改进约会网站的配对效果 3. 示例:手写识别系统 4. 小结 本章介绍了<机器学习实战>这本书中的第一个机器学习算法:k-近邻算法,它非常有效而且易于掌握.首先,我们将探讨k-近邻算法的基本理论,以及如何使用距离测量的方法分类物品:其次我们将使用Python从文本文件中导入并解析数据:再次,本文讨论了当存在许多数据来源时,如何避免计算距离时可能碰到的一些常见错误:最后,利用实际的例子讲解如何使用k-近邻算…
Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统中几乎都要检索数据,而这些欲检索的数据如果有规律的话,比如按照某些字段.属性降序排序的话,那么从这些有规律的数据查询结果或者结果集的话就快速得多. 2. 常用算法 常用的算法有:直接选择排序.堆排序.冒泡排序.快速交换排序.直接插入排序.折半插入排序.Shell排序.归并排序.桶式排序.基数排序.这…
目录 1 问题描述 2 解决方案 2.1 具体编码   1 问题描述 何为spfa(Shortest Path Faster Algorithm)算法? spfa算法功能:给定一个加权连通图,选取一个顶点,称为起点,求取起点到其它所有顶点之间的最短距离,其显著特点是可以求含负权图的单源最短路径,且效率较高.(PS:引用自百度百科:spfa是求单源最短路径的一种算法,它还有一个重要的功能是判负环(在差分约束系统中会得以体现),在Bellman-ford算法的基础上加上一个队列优化,减少了冗余的松弛…
EM算法也称期望最大化(Expectation-Maximum,简称EM)算法,它是一个基础算法,是很多机器学习领域的基础,比如隐式马尔科夫算法(HMM),LDA主题模型的变分推断算法等等.本文对于EM算法,我们主要从以下三个方向学习: 1,最大似然 2,EM算法思想及其推导 3,GMM(高斯混合模型) 1,最大似然概率 我们经常会从样本观察数据中,找到样本的模型参数.最常用的方法就是极大化模型分布的对数似然函数.怎么理解呢?下面看我一一道来. 假设我们需要调查我们学习的男生和女生的身高分布.你…
本文是<算法笔记>KMP算法章节的阅读笔记,文中主要内容来源于<算法笔记>.本文主要介绍了next数组.KMP算法及其应用以及对KMP算法的优化. KMP算法主要用于解决字符串的匹配问题.即给定两个字符串text与pattern,需要判断pattern是否是text的子串.假设text的长度为n,pattern的长度为m,那么用暴力搜索的算法解决该问题需要的时间复杂度为O(m*n).这种算法在m,n大于105级别是无法被接受.而KMP算法需要的时间复杂度仅为O(m+n).Knuth…
提出混合模型主要是为了能更好地近似一些较复杂的样本分布,通过不断添加component个数,能够随意地逼近不论什么连续的概率分布.所以我们觉得不论什么样本分布都能够用混合模型来建模.由于高斯函数具有一些非常有用的性质.所以高斯混合模型被广泛地使用. GMM与kmeans相似,也是属于clustering,不同的是.kmeans是把每一个样本点聚到当中一个cluster,而GMM是给出这些样本点到每一个cluster的概率.每一个component就是一个聚类中心. GMM(Gaussian Mi…
1.KNN算法 KNN算法即K-临近算法,采用测量不同特征值之间的距离的方法进行分类. 以二维情况举例:         假设一条样本含有两个特征.将这两种特征进行数值化,我们就可以假设这两种特种分别为二维坐标系中的横轴和纵轴,将一个样本以点的形式表示在坐标系中.这样,两个样本直接变产生了空间距离,假设两点之间越接近越可能属于同一类的样本.如果我们有一个待分类数据,我们计算该点与样本库中的所有点的距离,取前K个距离最近的点,以这K个中出现次数最多的分类作为待分类样本的分类.这样就是KNN算法.…
这篇其实应该作为机器学习的第一篇笔记的,但是在刚开始学习的时候,我还没有用博客记录笔记的打算.所以也就想到哪写到哪了. 你在网上搜索机器学习系列文章的话,大部分都是以KNN(k nearest neighbors)作为第一篇入门的,因为这个算法实在是太简单了.简单到其实没啥可说的. 问题:已知正方形和三角形两种分类,现在来了个圆,问:应该归到正方形更合适还是三角形更合适? 算法的思想很朴素,假设我们有一个M*N的矩阵(M个样本,每个样本有N个特征).当我们来了一个新的样本test,我们要去判断这…