图像分割是图像处理,计算机视觉领域里非常基础,非常重要的一个应用.今天介绍一种高效的分割算法,即 simple linear iterative clustering (SLIC) 算法,顾名思义,这是一种简单的迭代聚类算法,这个算法发表于 2012 年的 PAMI 上. SLIC 算法有几个关键点, 1: 图像分割块的初始化,每一个图像块都是一个聚类,聚类的中心称为 superpixel,聚类的个数 k 是人为设定的,SLIC 算法先将图像分成大小大小一致的图像 patch,假设图像的像素个数…
前言 像素风最早出现在8bit的电子游戏中,受制于电脑内存大小以及显示色彩单一, 只能使用少量像素来呈现内容,却成就了不少经典的像素游戏.随着内存容量与屏幕分辨率的提升,内存与显示媒介的限制不再是问题,而像素风也慢慢演变成一种独特的创作风格. 像素画的一般的绘制流程包括了勾线.填色等,而逐个像素的绘制需要大量时间.一些流行的艺术方式,比如线描与绘画领域,都逐渐出现了自动化或半自动化生成的方法.本文将从零开始实现SLIC[1]算法,并实现一款生成像素画工具. 什么是SLIC算法 像素画的绘制之所以…
论文信息 论文标题:Simple Contrastive Graph Clustering论文作者:Yue Liu, Xihong Yang, Sihang Zhou, Xinwang Liu论文来源:2022,arXiv论文地址:download 论文代码:download 1 Introduction 贡献: 提出了一种简单的对比深度图聚类方法,称为 $\text{SCGC}$.$\text{SCGC}$ 不需要预训练,并为网络训练节省时间和空间: 提出了一种新的仅在增强的属性空间中进行数据…
STA 463 Simple Linear Regression ReportSpring 2019 The goal of this part of the project is to perform a thorough simple linear regression analysis on data collected by each group. In addition, a report will be created to introduce and summarize your…
============================================================================================ <机器学习实战>系列博客是博主阅读<机器学习实战>这本书的笔记,包括对当中算法的理解和算法的Python代码实现 另外博主这里有机器学习实战这本书的全部算法源码和算法所用到的源文件,有须要的留言 ====================================================…
神经网络与机器学习 笔记-LMS(最小均方算法)和学习率退火 LMS算法和Rosenblatt感知器算法非常想,唯独就是去掉了神经元的压制函数,Rosenblatt用的Sgn压制函数,LMS不需要压制函数,两者一样是只有单个神经元. LMS算法信号流图 算法小结: 然后在说下退火: #pragma once #include "stdafx.h" #include <string> #include <iostream> using namespace std;…
摘要:这篇文章将详细讲解自然语言处理过程,基于机器学习和TFIDF的情感分类算法,并进行了各种分类算法(SVM.RF.LR.Boosting)对比 本文分享自华为云社区<[Python人工智能] 二十三.基于机器学习和TFIDF的情感分类(含详细的NLP数据清洗)>,作者: eastmount. 在数据分析和数据挖掘中,通常需要经历前期准备.数据爬取.数据预处理.数据分析.数据可视化.评估分析等步骤,而数据分析之前的工作几乎要花费数据工程师近一半的工作时间,其中的数据预处理也将直接影响后续模型…
在<机器学习---线性回归(Machine Learning Linear Regression)>一文中,我们主要介绍了最小二乘线性回归算法以及简单地介绍了梯度下降法.现在,让我们来实践一下吧. 先来回顾一下用最小二乘法求解参数的公式:. (其中:,,) 再来看一下随机梯度下降法(Stochastic Gradient Descent)的算法步骤: 除了算法中所需的超参数α(学习速率,代码中写为lr)和epsilon(误差值),我们增加了另一个超参数epoch(迭代次数).此外,为方便起见,…
1. 聚类(Clustering) 1.1 无监督学习: 简介 在一个典型的监督学习中,我们有一个有标签的训练集,我们的目标是找到能够区分正样本和负样本的决策边界,在这里的监督学习中,我们有一系列标签,我们需要据此拟合一个假设函数.与此不同的是,在非监督学习中,我们的数据没有附带任何标签,我们拿到的数据就是这样的: 在非监督学习中,我们需要将一系列无标签的训练数据,输入到一个算法中,然后我们告诉这个算法,快去为我们找找这个数据的内在结构给定数据.我们可能需要某种算法帮助我们寻找一种结构.图上的数…
在Spark2.0版本中(不是基于RDD API的MLlib),共有四种聚类方法:      (1)K-means      (2)Latent Dirichlet allocation (LDA)      (3)Bisecting k-means(二分k均值算法)      (4)Gaussian Mixture Model (GMM)       基于RDD API的MLLib中,共有六种聚类方法:      (1)K-means      (2)Gaussian mixture     …
9. Clustering Content 9. Clustering 9.1 Supervised Learning and Unsupervised Learning 9.2 K-means algorithm 9.3 Optimization objective 9.4 Random Initialization 9.5 Choosing the Number of Clusters 9.1 Supervised Learning and Unsupervised Learning 我们已…
本章内容主要是介绍:单变量线性回归算法(Linear regression with one variable) 1. 线性回归算法(linear regression) 1.1 预测房屋价格 该问题属于监督学习中的回归问题,让我们来复习一下: 监督学习(Supervised'Learning'):对示例数据给出"正确答案". 回归问题(Regression 'Problem'):根据之前的数据预测出一个准确的输出值 . 1.2 训练集 m=训练样本数量 x's=输入变量/特征量 y'…
1. 聚类简介 0x1:聚类是什么? 聚类是一种运用广泛的探索性数据分析技术,人们对数据产生的第一直觉往往是通过对数据进行有意义的分组.很自然,首先要弄清楚聚类是什么? 直观上讲,聚类是将对象进行分组的一项任务,使相似的对象归为一类,不相似的对象归为不同类 但是,要达到这个目的存在几个很困难的问题 . 上述提及的两个目标在很多情况下是互相冲突的.从数学上讲,虽然聚类共享具有等价关系甚至传递关系,但是相似性(或距离)不具有传递关系.具体而言,假定有一对象序列,X1,....,Xm,所有相邻元素(X…
Linear discriminant analysis (LDA) 线性判别分析也是机器学习中常用的一种降维算法,与 PCA 相比, LDA 是属于supervised 的一种降维算法.PCA考虑的是整个数据集在高维空间的分散性,PCA降维之后依然要让数据在低维空间尽可能地分散.而LDA考虑的是类与类之间的差别(用距离来衡量). 我们考虑两类情况下的LDA, 给定一个训练集 D={xi∈Rd},i=1,2,...N, 假设其中有 n1 个属于第一类 c1,n2 个属于第二类c2,N=n1+n2…
时间过得很快,这篇文章已经是机器学习入门系列的最后一篇了.短短八周的时间里,虽然对机器学习并没有太多应用和熟悉的机会,但对于机器学习一些基本概念已经差不多有了一个提纲挈领的了解,如分类和回归,损失函数,以及一些简单的算法--kNN算法.决策树算法等. 那么,今天就用聚类和K-Means算法来结束我们这段机器学习之旅. 1. 聚类 1.1 什么是聚类 将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类.由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他…
最近在<机器学习实战>里学习了一些基本的算法,对于一个纯新手我也在网上找了写资料,下面就我在书上所看的加上在其他博客上的内容做一个总结,博客请参照http://www.cnblogs.com/BaiYiShaoNian/p/4567446.html K-近邻算法 K-近邻算法就是采用测量不同特征值之间的距离方法来进行分类. 优点:精度高,对异常值不敏感,无数据输入假定. 缺点:计算复杂度高,空间复杂度高. 适用范围:数值型和标称型. 工作原理: 存在一个样本数据集合,也称作训练样本集,并且样本…
机器学习实战笔记(1) 1. 写在前面 近来感觉机器学习,深度学习神马的是越来越火了,从AlphaGo到Master,所谓的人工智能越来越NB,而我又是一个热爱新潮事物的人,于是也来凑个热闹学习学习.最近在看<Machine Learning IN ACTION>(作者:Peter Harrington)这本书,感觉非常不错.该书不是单纯的进行理论讲解,而是结合了许多小例子深度浅出地进行实战介绍.本博文作为学习笔记,用来记录书中重点内容和稍微地进行知识点的补充,也希望给看到的人带来一些帮助.…
参考资料 [1]<Spark MLlib 机器学习实践> [2]http://blog.csdn.net/u011239443/article/details/51752904 [3]线性代数-同济大学 [4]基于矩阵分解的协同过滤算法 https://wenku.baidu.com/view/617482a8f8c75fbfc77db2aa.html [5]机器学习的正则化 http://www.cnblogs.com/jianxinzhou/p/4083921.html [6]正则化方法…
1.KNN算法 KNN算法即K-临近算法,采用测量不同特征值之间的距离的方法进行分类. 以二维情况举例:         假设一条样本含有两个特征.将这两种特征进行数值化,我们就可以假设这两种特种分别为二维坐标系中的横轴和纵轴,将一个样本以点的形式表示在坐标系中.这样,两个样本直接变产生了空间距离,假设两点之间越接近越可能属于同一类的样本.如果我们有一个待分类数据,我们计算该点与样本库中的所有点的距离,取前K个距离最近的点,以这K个中出现次数最多的分类作为待分类样本的分类.这样就是KNN算法.…
机器学习过程主要包括:数据的特征提取.数据预处理.训练模型.测试模型.模型评估改进等几部分 传统机器学习算法主要包括以下五类: 回归:建立一个回归方程来预测目标值,用于连续型分布预测 分类:给定大量带标签的数据,计算出未知标签样本的标签取值 聚类:将不带标签的数据根据距离聚集成不同的簇,每一簇数据有共同的特征 关联分析:计算出数据之间的频繁项集合 降维:原高维空间中的数据点映射到低维度的空间中 1 线性回归:找到一条直线预测目标值 2 逻辑回归:找到一条直线来分类数据 3 KNN:用距离度量最相…
1. Alternating Least Square ALS(Alternating Least Square),交替最小二乘法.在机器学习中,特指使用最小二乘法的一种协同推荐算法.如下图所示,u表示用户,v表示商品,用户给商品打分,但是并不是每一个用户都会给每一种商品打分.比如用户u6就没有给商品v3打分,需要我们推断出来,这就是机器学习的任务. 由于并不是每个用户给每种商品都打了分,可以假设ALS矩阵是低秩的,即一个m*n的矩阵,是由m*k和k*n两个矩阵相乘得到的,其中k<<m,n.…
1. LDA基础知识 LDA(Latent Dirichlet Allocation)是一种主题模型.LDA一个三层贝叶斯概率模型,包含词.主题和文档三层结构. LDA是一个生成模型,可以用来生成一篇文档,生成时,首先根据一定的概率选择一个主题,然后在根据概率选择主题里面的一个单词,这样反复进行,就可以生成一篇文档:反过来,LDA又是一种非监督机器学习技术,可以识别出大规模文档集或语料库中的主题. LDA原始论文给出了一个很简单的例子.Arts.Budgets.Children.Educatio…
http://blog.csdn.net/lsldd/article/details/41223147 从这一章开始进入正式的算法学习. 首先我们学习经典而有效的分类算法:决策树分类算法. 1.决策树算法 决策树用树形结构对样本的属性进行分类,是最直观的分类算法,而且也可以用于回归.不过对于一些特殊的逻辑分类会有困难.典型的如异或(XOR)逻辑,决策树并不擅长解决此类问题. 决策树的构建不是唯一的,遗憾的是最优决策树的构建属于NP问题.因此如何构建一棵好的决策树是研究的重点. J. Ross Q…
今天要来讨论的是EM算法.第一眼看到EM我就想到了我大枫哥,EM Master,千里马.RUA!!!不知道看这个博客的人有没有懂这个梗的. 好的,言归正传.今天要讲的EM算法,全称是Expectation maximization.期望最大化. 怎么个意思呢,就是给你一堆观測样本.让你给出这个模型的參数预计.我靠,这套路我们前面讨论各种回归的时候不是已经用烂了吗?求期望,求对数期望,求导为0,得到參数预计值.这套路我懂啊,MLE! 但问题在于,假设这个问题存在中间的隐变量呢?会不会把我们的套路给…
最近刚把<机器学习实战>中的决策树过了一遍,接下来通过书中的实例,来温习决策树构造算法中的ID3算法. 海洋生物数据:   不浮出水面是否可以生存 是否有脚蹼 属于鱼类 1 是 是 是 2 是 是 是 3 是 否 否 4 否 是 否 5 否 是 否 转换成数据集: def createDataSet(): dataSet = [[1, 1, 'yes'], [1, 1, 'yes'], [1, 0, 'no'], [0, 1, 'no'], [0, 1, 'no']] labels = ['n…
1.EM算法要解决的问题 如果使用基于最大似然估计的模型,模型中存在隐变量,就要用EM算法做参数估计. EM算法解决这个的思路是使用启发式的迭代方法,既然我们无法直接求出模型分布参数,那么我们可以先猜想隐含数据(EM算法的E步),接着基于观察数据和猜测的隐含数据一起来极大化对数似然,求解我们的模型参数(EM算法的M步).由于我们之前的隐藏数据是猜测的,所以此时得到的模型参数一般还不是我们想要的结果.不过没关系,我们基于当前得到的模型参数,继续猜测隐含数据(EM算法的E步),然后继续极大化对数似然…
朴素贝叶斯是经典的机器学习算法之一,也是为数不多的基于概率论的分类算法.对于大多数的分类算法,在所有的机器学习分类算法中,朴素贝叶斯和其他绝大多数的分类算法都不同.比如决策树,KNN,逻辑回归,支持向量机等,他们都是判别方法,也就是直接学习出特征输出Y和特征X之间的关系,要么是决策函数,要么是条件分布.但是朴素贝叶斯却是生成方法,该算法原理简单,也易于实现. 1,基本概念 朴素贝叶斯:贝叶斯分类时一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类.而朴素贝叶斯分类时贝叶斯分类中…
数据集 house.csv 数据集概览 代码 package org.apache.spark.examples.examplesforml import org.apache.spark.ml.classification.LogisticRegression import org.apache.spark.ml.feature.VectorAssembler import org.apache.spark.ml.regression.{IsotonicRegression, LinearRe…
Compact Projection: Simple and Efficient Near Neighbor Search with Practical memory Requirement Autor:Kerui Min1,2, Linjun Yang2, John Wright2, Lei Wu2,3, Xian-Sheng Hua2, Yi Ma2 Institute: 1 School of Computer Science, Fudan University  krmin@fudan.…
KNN的函数写法 import numpy as np from math import sqrt from collections import Counter def KNN_classify(k,X_train,y_train,x): assert 1<=k<X_train.shape[0],"k must be valid" assert X_train.shape[0] == y_train.shape[0],\ "the size of X_train…