算法

算法是一组用于解决特定问题或执行特定任务的有序步骤。在计算机科学中,算法是用于完成计算任务的一系列定义明确的指令。算法可以用于处理数据、执行计算、解决问题或执行其他与计算有关的任务。

机器学习算法是机器学习领域中用于从数据中学习模式并做出预测或决策的数学模型或规则。这些算法可以分为多个主要类别,取决于学习任务的类型和目标。

【算法学习】空洞卷积

一、空洞卷积的提出

空洞卷积(atrous convolutions)又名扩张卷积(dilated convolutions),向卷积层引入了一个称为 “扩张率(dilation rate)”的新参数,该参数定义了卷积核处理数据时各值的间距。

该结构的目的是在不用pooling(pooling层会导致信息损失)且计算量相当的情况下,提供更大的感受野。 顺便一提,卷积结构的主要问题如下:
池化层不可学
内部数据结构丢失;空间层级化信息丢失。
小物体信息无法重建 (假设有四个pooling layer 则 任何小于 2^4 = 16 pixel 的物体信息将理论上无法重建。)

而空洞卷积就有内部数据结构的保留和避免使用 down-sampling 这样的特性,优点明显。

二、空洞卷积原理

如下如,卷积核没有红点标记位置为0,红点标记位置同正常卷积核。

Canny边缘检测算法的一些改进

传统的Canny边缘检测算法是一种有效而又相对简单的算法,可以得到很好的结果(可以参考上一篇Canny边缘检测算法的实现)。但是Canny算法本身也有一些缺陷,可以有改进的地方。

1. Canny边缘检测第一步用高斯模糊来去掉噪声,但是同时也会平滑边缘,使得边缘信息减弱,有可能使得在后面的步骤中漏掉一些需要的边缘,特别是弱边缘和孤立的边缘,可能在双阀值和联通计算中被剔除。很自然地可以预见,如果加大高斯模糊的半径,对噪声的平滑力度加大,但也会使得最后得到的边缘图中的边缘明显减少。这里依然用Lena图为例,保持Canny算法中高阀值100,低阀值50不变,高斯半径分别为2,3,5的Canny边缘二值图像如下。可知高斯模糊把很多有用的边缘信息也模糊掉了,因此如何精确的选择高斯半径就相当重要。

图像几何变换(缩放、旋转)中的常用的插值算法

在图像几何变换的过程中,常用的插值方法有最邻近插值(近邻取样法)、双线性内插值和三次卷积法。

最邻近插值:

这是一种最为简单的插值方法,在图像中最小的单位就是单个像素,但是在旋转个缩放的过程中如果出现了小数,那么就对这个浮点坐标进行简单的取整,得到一个整数型坐标,这个整数型坐标对应的像素值就是目标像素的像素值。取整的方式就是:取浮点坐标最邻近的左上角的整数点。

举个例子:
3 * 3 的灰度图像,其每一个像素点的灰度如下所示
图像几何变换(缩放、旋转)中的常用的插值算法

我们要通过缩放,将它变成一个 4 * 4 的图像,那么其实相当于放大了4/3倍,从这个倍数我们可以得到这样的比例关系:
图像几何变换(缩放、旋转)中的常用的插值算法

【译】如何给你的机器学习问题选择正确的算法

随着机器学习浪潮的高涨,越来越多的算法在许多任务中表现得很好。但是我们通常不可能在事先知道哪种算法会是最优的。如果你有无限的时间逐一去尝试每一个算法那就另当别论。接下来的文章我们将依赖从模型选择和超参数调节中得到的知识向你一步一步展示如何来选择最优的算法。

原文地址:http://www.askaswiss.com/2017/02/how-to-choose-right-algorithm-for-your-...

Step 1: 基本知识

在深入讨论之前,我们应当确保已经疏通了基本的知识点。首先,我们应该知道机器学习主要有三大分类:监督学习、无监督学习和强化学习。

机器学习算法中的过拟合与欠拟合

在机器学习表现不佳的原因要么是过度拟合或欠拟合数据。

机器学习中的逼近目标函数过程

监督式机器学习通常理解为逼近一个目标函数(f)(f),此函数映射输入变量(X)到输出变量(Y).

Y=f(X)Y=f(X)

这种特性描述可以用于定义分类和预测问题和机器学习算法的领域。

从训练数据中学习目标函数的过程中,我们必须考虑的问题是模型在预测新数据时的泛化性能。泛化好坏是很重要的,因为我们收集到的数据只是样本,其带有噪音并且是不完全的。

机器学习中的泛化

在In机器学习中,我们描述从训练数据学习目标函数的学习过程为归纳性的学习。

归纳与特别的样本中学习到通用的概念有关,而这就是监督式机器学习致力于解决的问题。这与推演不同,其主要是另一种解决问题和寻求从通常的规则中找寻特别的内容。

泛化即是,机器学习模型学习到的概念在它处于学习的过程中时模型没有遇见过的样本时候的表现。

好的机器学习模型的模板目标是从问题领域内的训练数据到任意的数据上泛化性能良好。这让我们可以在未来对模型没有见过的数据进行预测。

机器学习算法综述

近些年来,随着大数据、云计算、移动互联网、人工智能技术的兴起,“机器学习”成为了行业内炙手可热的一个名词。从通信互联网领域的专家,到各式各样的企业,甚至到普通的老百姓,都对“机器学习”技术略知一二。那么,机器学习到底是什么,它与我们常见的“人工智能”、“神经网络”、“数据挖掘“等相似概念都有什么关系?机器学习有那些基本分支、基本方法?在本文中,我们将用最简单易懂的语言解释这些问题。

问题一:“机器学习”和“人工智能”的关系是什么?

随着“机器学习”火起来的还有一个词语,即“人工智能”。每个人都肯定还记得不久以前的AlaphGo,随着机器打败围棋顶级高手李世石,人们也不得不感叹:“人工智能”时代真正到来了。

那么,“机器学习”和“人工智能”的关系到底是什么尼?其实,“人工智能”是一个很大的学科领域,里面包含很多子领域,如“机器学习”,“数据挖掘”,“模式识别”,“自然语言处理”等。这些子领域可能有交叉,但侧重点往往不同。比如”机器学习“就比较侧重于算法方面。总的来说,“人工智能”是一个学科领域,是我们研究的最终目的,而”机器学习“是这个领域中比较核心的,比较重要的,侧重于算法的一门学科,可以说,“人工智能”和“机器学习”是包含与被包含的关系。

基于双目视觉的无人驾驶算法

引言

基于现实世界是一个三维空间,所以对计算机视觉的研究也应该是在三维空间中进行的。在自动驾驶过程中的首要任务就是道路识别 [1],主要是图像特征法和模型匹配法来进行识别。行驶过程中需要进行障碍物检测 [2] 和路标路牌识别等,此时车辆,上的信息采集便可以运用单目视觉或者多目视觉。相比之下,运用多目视觉更具优势,获取的图像信息可构建成三维空间物体运动以及遮挡等问题对其影响较小。目前有很多智能小车的研究都是基于室内环境的研究,本文基于室外环境,采用双目摄像机模型 [3],考虑光照、路面材质等问题,采用分水岭算法 [4] 对智能车的区域进行定位,以及在行驶区域中采用多阈值 canny 算法来进行障碍物的检测,进而计算出障碍物大小位置等信息。

分水岭算法

机器学习十大算法的每个算法的核心思想、工作原理、适用情况及优缺点

一、C4.5 算法:

ID3 算法是以信息论为基础,以信息熵和信息增益度为衡量标准,从而实现对数据的归纳分类。ID3 算法计算每个属性的信息增益,并选取具有最高增益的属性作为给定的测试属性。

C4.5 算法核心思想是ID3 算法,是ID3 算法的改进,改进方面有:
1)用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足;
2)在树构造过程中进行剪枝
3)能处理非离散的数据
4)能处理不完整的数据

优点:产生的分类规则易于理解,准确率较高。

缺点:
1)在构造树的过程中,需要对数据集进行多次的顺序扫描和排序,因而导致算法的低效。
2)C4.5 只适合于能够驻留于内存的数据集,当训练集大得无法在内存容纳时程序无法运行。

二、K means 算法:

是一个简单的聚类算法,把 n 的对象根据他们的属性分为k 个分割,k < n。算法的核心就是要优化失真函数J,使其收敛到局部最小值但不是全局最小值。

图像质量评估算法 SSIM(结构相似性)

SSIM的全称为structural similarity index,即为结构相似性,是一种衡量两幅图像相似度的指标。该指标首先由德州大学奥斯丁分校的图像和视频工程实验室(Laboratory for Image and Video Engineering)提出。而如果两幅图像是压缩前和压缩后的图像,那么SSIM算法就可以用来评估压缩后的图像质量。

SSIM如何表征相似性:

先给出一组公式:
图像质量评估算法 SSIM(结构相似性)
uX、uY分别表示图像X和Y的均值,σX、σY分别表示图像X和Y的标准差,σX*σX、σY*σY(实在打不出上标啊,理解万岁)分别表示图像X和Y的方差。σXY代表图像X和Y协方差。C1,C2和C3为常数,是为了避免分母为0而维持稳定。通常取C1=(K1*L)^2, C2=(K2*L)^2, C3=C2/2, 一般地K1=0.01, K2=0.03, L=255( 是像素值的动态范围,一般都取为255)

2018AIIA人工智能开发者大会—-Imagination为您带来DNN IP应用与算法开发前沿技术

2018 AIIA人工智能开发者大会将于2018年10月15日到16日在苏州国际博览中心举办。本次大会是由国家发展和改革委员会高技术司、工业和信息化部科技司、国家互联网信息办公室网络数据与技术局指导,中国人工智能产业发展联盟(AIIA)主办,中国人工智能媒体官网等协办,汇集多位学术界专家和企业界高管,精准面向人工智能开发者举办的专业峰会。