当前位置 : 主页 > 手机开发 > ROM >

如何利用AI识别未知——加入未知类(不太靠谱),检测待识别数据和已知样本

来源:互联网 收集:自由互联 发布时间:2021-06-10
from:https://www.zybuluo.com/sambodhi/note/1208157 解决方案是什么?——加入未知类(不太靠谱),检测待识别数据和已知样本数据的匹配程度, 不幸的是,我并不知道如何简单地解决这个问题

from:https://www.zybuluo.com/sambodhi/note/1208157

解决方案是什么?——加入未知类(不太靠谱),检测待识别数据和已知样本数据的匹配程度,

不幸的是,我并不知道如何简单地解决这个问题。好消息是,有一些策略让我看到了希望的曙光。最明显的开始是在训练数据中添加“未知”类。坏消息是,这将带来一系列完全不同的问题,如下:

  • 那个类应该包括哪些样本?潜在的自然图像几乎是无限的,所以你要如何选择包括哪些样本呢?
  • 在未知类中,你需要多少种不同类型的物体?
  • 对于看起来与你关心的类非常相似的位置物体,你应该如何处置?例如,添加一个不在ImageNet 1000中的犬种,但它看起来跟数据集中的犬种几乎相似,可能会强制许多正确的匹配进入“未知桶”中。
  • 你的训练数据中,有多少比例应该是由未知类的样本组成?

上述最后一点实际上涉及到了一个更大的问题。从图像分类网络得到的预测值不是概率。它们假设看到的任何特定类的几率等于这个类在训练数据中出现的频率。如果你尝试使用包括亚马逊丛林的企鹅在内的动物分类器,你就会遇到这个问题,因为(可能)所有的企鹅的目击报告都是误报。即使是美国城市的犬种,在ImageNet训练数据中,稀有品种出现的频率也要高于出现在狗狗公园的品种,因此它们经常被误报。通常的解决方案是计算出在生产中遇到的情况下的先验概率是多少,然后使用它们将校准值应用于网络的输出,从而得到更接近实际概率的结果。

有助于解决实际应用中整体问题的主要策略是,将模型的使用限制在对将要出现的物体的假设与训练数据相匹配的情况下。一种简单的方法是通过产品设计来解决问题。你可以创建一个用户界面,指导人们在运行分类器之前,使设备关注你所感兴趣的物体,就像要求你拍摄支票或其他文档的应用一样。

更复杂一点的话,你可以编写一个单独的图像分类器,尝试识别主图像分类器没有为之设计的条件。这与添加一个“未知”类不同,因为它更像是一个级联,或者详细模型之前的一个过滤器。在作物发生病害的情况下,操作环境在视觉上足够清晰,因此,只需训练模型来区分叶片和随机选择的其他照片即可。由于有足够的相似之处,门控模型至少应该能够判断图像是否在不受支持的场景中拍摄。这个门控模型将在完整的图像分类器之前运行,如果它没有检测到看起来像是一个植物的东西,它将会提前显示出错误信息,表明没有发现任何作物。

要求你给信用卡拍照或者执行其他类型OCR的应用,通常会结合使用手机屏幕的方向和检测模糊度的模型,或拍照未对准时引导用户正确拍照可成功处理的照片,还有一种“是否存在叶片”的模型,是这个界面模式的简单版本。

这可能不是一组非常令人满意的答案,但是这正反映出了,当机器学习超出了一定的研究问题范围,用户所期望的结果是各不相同的。人们对物体的识别,有很多常识和外部知识,而在经典的图像分类任务中并没有这些知识。为了得到满足用户期望的结果,我们必须围绕我们的模型设计一个完整的系统,该系统能够理解将要部署到的世界,并且不仅仅是基于模型输出即可作出明智的决策。

 

下文使用了CNN降维,再用knn类似距离来实现。

基于深度学习的未知调制类型的信号识别

张劭   【摘要】:为了能够快速、有效、准确地传递不同性质的通信信号,发送端可以采用不同类型的调制方式,因此准确识别接收信号的调制方式成为下一步通信信号处理的重要前提。随着通信技术的飞速发展,通信环境越来越复杂,通信信号变得更加多样化和复杂化,各种类型的调制方式也不断地涌现。在某些通信应用背景下,接收方会接收到一些应用未知调制方式的通信信号,因此,如何有效地识别出未知调制类型信号成为调制识别领域的一大研究性课题。在基于特征的传统调制识别技术中,特征主要来自人工提取的专家特征,人工提取不仅耗时费力而且鲁棒性不佳。随着深度学习在语音识别以及图像处理等领域的成功应用,研究人员对深度学习的特征学习能力更加关注。鉴于调制识别领域面临的问题和深度学习的超强学习能力,本文提出了两种不同环境中的未知调制类型信号识别方法,主要研究内容如下:(1)本文针对数据库中存在大量有标签数据集的情况,提出了一种基于监督学习分类模型与降维算法相结合的未知调制类型信号识别方法。该方法建立了卷积神经网络(Convolutional Neural Network,CNN)分类模型的网络结构图,输入已知调制类型信号的I/Q分量,并选择合适的网络参数训练CNN分类模型, 利用训练好的CNN分类模型对接收到的含有未知调制类型的信号样本集进行特征学习,获得能够表征样本信号内在信息的特征。最后利用不同的降维算法对得到的高维特征降维并可视化,根据可视化后的效果图,选择降维效果最佳的算法得到的低维特征数据,并基于距离公式计算未知调制类型信号的识别率。仿真结果证明本方法能够有效地识别未知调制类型的信号。(2)本文针对获得标签数据比较困难的情况,提出了一种基于长短期记忆网络(Long Short-term Memory,LSTM)预测模型和高斯分布模型相结合的未知调制类型的信号识别方法。该方法设计了LSTM预测模型的网络结构图,输入已知调制类型信号的幅值,利用不同的网络参数实现了LSTM层的构建和训练过程。用LSTM模型的预测值和真实值的差,估计出已知调制方式的信号数据集的误差分布,用误差作为高斯分布检测模型的特征值实现未知调制类型信号的识别。LSTM模型对序列数据拥有较强的学习能力,本文中的调制信号数据集本身就属于一种序列数据,因此该模型可以很好地识别未知调制类型的信号,且仿真结果证明了该模型同样适用于小样本数据集的情况。 【学位授予单位】:西安电子科技大学
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TN911.7;TP181   http://cdmd.cnki.com.cn/Article/CDMD-10701-1019011745.htm      

在这里我们可以得出一个结论:如果分类器在测试域中不是分类完全的,那么分类器在测试域中未定义的类别,如果被强制分类那么一定会被错分。

    我们知道人对于任意概念如果知道其类别那么将其分类,如果不知道其类别那么分类为"未见过类别"。所以我们引申出一个问题,对于算法F,任意的概念C在训练域中是PAC可学习的,且测试域的某些概念X不属于训练域,也就是训练域中没有关于概念X的数据,在训练域中训练出的算法F如何将概念X分类为"未见过类别"?

分类与域描述
   分享图片

    如上图所示,我们可以明显看到分类(判别)算法比数据域描述(data domain description)有更松弛的界(boundary),即分类只需要划类间的界限,只要分类算法达到小的分类误差就可以了,而没有具体的描述类别的边界,所以在未见过类别需要区别的时候,分类算法只能决策到已知类别(在低概率拒绝分类的决策分类算法仍然有较大的问题),所以很容易被愚弄[8],而域描述恰恰因为描述了类别的边界,所以能在界之内的数据点分类为已知类别标记,界之外的数据被分类为未见过类别。(不正式的说,在标记类别趋向于无穷大的时候分类算法的界收敛到域描述的界)。

显式优化类间与类内距离
    对于分类任务即是优化一个函数F(x)使得代价函数最小,如下Cross Entropy 代价函数

   分享图片

     这样得到的决策面就如上图1,2。

     为了得到类似于上图域描述的效果,我们可以显式优化内间距离和类内距离,如Contrast Loss[9-11]

    

    或者Triple Loss[12]

   分享图片

分享图片

 

    这也是人脸识别面对广域问题(Open-Set)所提出的算法,在人脸识别领域广泛使用,而人脸识别更类似人类大脑识别,其更像是一个特征搜索问题而非决策问题,所以很多人脸识别算法能够解决未见过类别的问题,不管是1:1的对比还1:N的搜索。

判别模型与生成模型
    判别模型(discriminative model),判别模型是直接学习p(y|x),即输入输出映射,我们通常的分类算法就是判别模型,如SVM,LR,NN...;

    生成模型(generative model)是对p(x,y)进行学习,即学习p(y|x)和p(x),最后p(x,y)=p(y|x)p(x),可以认为p(y|x)为判别模型给出的后验概率,而p(x)为先验概率(也可以叫上下文或者熟悉度,比如是否是熟悉的输入,不熟悉[即不属于训练数据分布的数据] 有较小的p(x)值),而p(x,y)可以理解为给定 x 时 y 的综合置信度,所以生成模型更不容易像判别模型那样将未见过类别分类为错误类别[8]。

 


---------------------
原文:https://blog.csdn.net/u010165147/article/details/54429644

美国Numenta公司2016年11月14日宣布,实际导入了该公司提出的基于大脑模型的独创神经网络理论“Hierarchical Temporal Memory(HTM)”,与已有的多种DNN(Deep Neural Network,深度神经网络)技术进行了性能比较,获得了良好结果(参阅)。并且该公司还发表了相关。

 

   图1:对纽约出租车乘客数量的预测精度超过其他AI技术  左侧为预测误差的比较,HTM的误差最小。右侧为中途变更输入数据的条件时出现的预测误差。4月1日将早晨出租车的需求减少了2成,将夜间需求增加了2成。LSTM6000(绿线)基本不能应对这一变更,而HTM(红线)花了两周左右的时间来学习,之后预测误差逐渐降低。(图片出自Numenta公司)

 

Numenta是由美国Palm Computing公司的创始人杰夫·霍金斯(Jeff Hawkins)在2005年创建的企业,从事HTM理论的研发及实用化。据霍金斯介绍,HTM是一种以脑科学的最新知识为基础,以再现大脑新皮质(Neo-Cortex)的功能为目标的神经网络模型。

与已有的DNN最大的不同之处是,“神经元”之间作为开关及存储器的“突触”多很多倍。在以前的DNN中,每个神经元上相当于突触功能的部分最多只有数百个,处于配角地位。而HTM会向1个“神经元”分配数千个“突触”。研究人员认为大脑中实际的神经元每个具有1万个左右的突触。

Numenta提出的HTM算法在性能上的特点是:(1)与已有DNN相比,在时序数据处理上也有很强的能力;(2)可在学习这些时序数据的同时进行推断(也就是能够实现“在线训练”);(3)可同时实施多项推断;(4)不对每个任务做细致调整也可获得良好结果。HTM将大量“突触”用于记录及辨别时序数据的前后逻辑关系。

HTM最近被美国国防高级研究计划局(DARPA)的“Cortical Processor”项目采用,引起了一定的关注。此次Numenta首次实际导入了3月份发表的理论(),通过与竞争技术比较,确认了其工作性能。

迅速跟随数据的变更

通过实验对比了AutoRegressive Integrated Moving Average(ARIMA)、Extreme Learning Machine(ELM)、Long Short Term Memory(LSTM)、Echo State Networks(ESN)等与HTM的工作性能。具体来说,比较了对纽约市的出租车乘客数量做出预测的精度。

结果显示,HTM的预测误差平均值最小(图1左),而且凭借在线训练功能,即使中途变更输入数据的模式,也可迅速学习,降低预测误差(图1右)。而LSTM不能降低预测误差。

霍金斯表示,“我们的第一个目标是查明大脑新皮质的机制。第二个目标是在神经科学与人工智能(AI)之间做桥接。此次的实验结果显示,我们现在正朝着这一目标前进”。

 

HTM算法的白皮书:https://numenta.com/assets/pdf/biological-and-machine-intelligence/zh-cn/BaMI-HTM-Overview.pdf 有中文翻译版,可以看下。

网友评论