自我学习_人工智能自我学习能力 - CSDN
精华内容
参与话题
  • 自我学习(Self-Taught Learning)

    千次阅读 2014-08-13 12:38:36
    自我学习就是把稀疏自编码器与Softmax回归分类器串联起来。 稀疏编码器是用来无监督学习的,使用无标签数据。 Softmax回归分类器是有监督学习,使用标签数据。   实际生活中,我们能轻松获得大量无标签数据(如从...

    自我学习就是把稀疏自编码器与Softmax回归分类器串联起来。

    稀疏编码器是用来无监督学习的,使用无标签数据
    回归分类器是有监督学习,使用标签数据


    实际生活中,我们能轻松获得大量无标签数据(如从网上随机下载海量图片)
    难以获得大量有标签数据(有标签的数据库通常不会太大,而且很贵


    如果我们手头上只有少量标签数据,但是有大量的无标签数据,这是就可以采用自我学习的方式,得到有用的特征,进而获得比单纯Softmax好得多的效果。
    我们还是用MINST数据库,我们把0~4这些手写体数据作为无标签数据;把5~9这些手写体数据再次一分为二,一部分为测试数据,一部分为验证数据。


    程序方面因为有了前面几节的基础,把相关函数调用一下就好:




    minFunc
    display_network
    initializeParameters
    loadMNISTImages
    loadMNISTLabels
    softmaxCost
    softmaxPredict
    softmaxTrain
    sparseAutoencoderCost
    train-images.idx3-ubyte
    train-labels.idx1-ubyte
    


    各个部分的核心代码如下


    stlExercise

    opttheta = theta; 
    addpath minFunc/
    options.Method = 'lbfgs';
    options.maxIter = 400;
    options.display = 'on';
    [opttheta, cost] = minFunc( @(p) sparseAutoencoderCost(p, ...
                                       inputSize, hiddenSize, ...
                                       lambda, sparsityParam, ...
                                       beta, unlabeledData), ...
                                  theta, options);

    feedForwardAutoencoder

    activation=sigmoid(bsxfun(@plus,W1*data,b1));


    训练Softmax分类器

    options.maxIter = 100;
    softmaxModel = softmaxTrain(hiddenSize, numLabels, 1e-4, ...
                                trainFeatures,trainLabels, options);


    给出推断

    [pred] = softmaxPredict(softmaxModel,testFeatures);


    需要注意区分的几个变量,有可能弄混

    trainData
    trainLabels
    testData
    testLabels
    trainFeatures
    testFeatures

    本次试验消耗的计算时间是很长的,Andrew表示

    For us, the training step took less than 25 minutes on a fast desktop.

    在我Thinkpad i5上测试结果是半小时左右,我不小心手一滑,覆盖了原先数据,又消耗了半小时。。。

    半小时过后,可以瞧瞧稀疏自编码器学习到的特征

    图1

    最后的运行效果很不错,相比Softmax有了很大提升:

    Test Accuracy: 98.215453%


    欢迎参与讨论并关注本博客微博以及知乎个人主页后续内容继续更新哦~

    转载请您尊重作者的劳动,完整保留上述文字以及文章链接,谢谢您的支持!





    展开全文
  • 自我学习

    2019-04-09 17:41:55
    https://cloud.tencent.com/developer/information/java实现消息订阅 项目中问到的: 课程购买流程 支付怎么实现的 Session监听 ... openoffice实现文档在线预览 https://www.cnblogs...

     

    https://cloud.tencent.com/developer/information/java实现消息订阅

     

    项目中问到的:

    1. 课程购买流程
    2. 支付怎么实现的
    3. Session监听

    https://blog.csdn.net/qq_21439971/article/details/51478989

    1. openoffice实现文档在线预览

    https://www.cnblogs.com/xxyfhjl/p/6773786.html

    https://blog.csdn.net/m0_38012338/article/details/79374192

    1. shiro的认证流程

    https://www.cnblogs.com/davidwang456/p/4428421.html

    1. poi的实现原理

    HSSFWorkBook:操作2003版本以前的(包括2003版本),扩展名.xls,该类在org.apache.poi:poi中

     

    XSSFWorkBook:操作2007版本以后的(包括2007版本),拓展名.xlsx,该类在org.apache.poi:poi-ooxml中

     

    SXSSFWorkBook:对于海量的数据进行操作

     

    对于不同版本的EXCEL文档要使用不同的工具类,如果使用错了,会提示如下错误信息。

     

    org.apache.poi.openxml4j.exceptions.InvalidOperationException

     

    org.apache.poi.poifs.filesystem.OfficeXmlFileException

    1. docker部署项目

    https://blog.csdn.net/sinat_31032177/article/details/80282705

    https://blog.csdn.net/j123__/article/details/87205426

    1. solr是怎么全文检索的

    http://www.cnblogs.com/renzherushe/p/4782396.html

    1. 观察者模式实现订阅信息

    https://cloud.tencent.com/developer/article/1378907

    redis订阅:https://www.cnblogs.com/xinde123/p/8489054.html

    1. DFA算法 敏感词过滤

    https://blog.csdn.net/cdj0311/article/details/79789480

    https://www.cnblogs.com/magicalSam/p/7473780.html

    https://www.cnblogs.com/AlanLee/p/5329555.html

     

    技能中问到的:

    1. 讲一下你所了解的面向对象思想
    2. Spring

    基于依赖注入的核心机制,基于AOP的声明式事务(联想下编程式事务),整合多种持久层技术的整合

    Ioc:控制反转(依赖注入)

    https://www.cnblogs.com/wang-meng/p/5701982.html

     

    展开全文
  • 经过一个星期的学习,我在努力的学习了数组后,我学了一点函数。在此期间,我也做了些数组和循环的题目,感觉学的更加扎实了,但是还是能明显感觉有些思维是难以想象的。比如如何打印一个菱形,比如百元买百鸡问题。...

    总结:
    经过一个星期的学习,我在努力的学习了数组后,我学了一点函数。在此期间,我也做了些数组和循环的题目,感觉学的更加扎实了,但是还是能明显感觉有些思维是难以想象的。比如如何打印一个菱形,比如百元买百鸡问题。思考良久却没有所得,看了好久算法后才恍然大悟。
    遇到的问题
    1.単步调试
    之前由于编译器问题,不会単步调试。在努力的学习之后,终于学会了単步调试。在学会之后,我感觉到了単步调试的必要性和重要性。简直好用的不要不要的,虽然有些时候还是不太懂错在哪了。
    2.goto
    虽然在一些视频中,那些老师都不提倡用if goto进行循环,但是,我也体会到了在一小段程序中,他的便利性。比如判断一个数是否为素数的程序中。如果用户还想继续判断另一个数是否为素数。关闭后再运行就比较麻烦了。所以要求用户输入1则继续要求输入一个数,继续之前的步骤。否则退出。在这种情况下,我还没想出怎么用while,for去进行循环。但是如果用goto就很好用了。
    3.字符数组的输入
    在我还没学到字符数组之前,我一直在用输入其他数组的方法输入字符数组,但是却发现每次控制台都退闪退。在尝试了大概一天之后。我默默的看了书。终于发现了自己的一些错误。例如:字符数组的输入直接用gets(str)。
    4.编译器问题
    在这一周,我尝试了去学习使用vs,但是还有些地方很不舒服。而且之前一直用的c free,比较方便,而且是中文的。所以大部分时候我还在用c free。*划重点:希望大创中心可以开一节课教我们用vs!(期待脸)
    之后的计划
    1.首先,这个周末,我要学完函数这一部分,并且接触一部分指针。(说实话:我感觉我对c语言 其实不太感兴趣。都说c语言和硬件关系很强,但我感觉这不是我的最爱,所以c语言我可能会学的比较草率,但是那些思维,我是一个都不想放过!)
    2.其次,一些工作室的题目也差不多要交了,这个周末尽量写完。
    3.自己敲的代码,哭着也要找出bug!!!其实有些bug,自己看半天都看不出来,别人一卡就可以看出来的。对于这种错误,我希望自己以后能够细心一点!从头往后仔细看,単步调试的时候也慢慢来,不要着急!
    4.多看书上的例题,多看看他的思维是怎么样的。书上的题目都要仔细做一遍。不会做的,把题目记在脑子里,没事多想想。如果想了一两天还是不会。可以向学长请教,在思考一两天。如果还不行,就看源代码,多看几遍!努力理解!

    展开全文
  • 1.什么是自我学习(Self-Taught Learning)与半监督学习首先,什么是半监督学习?当你手头上拥有在大量未标注数据和少量的已标注数据,那这种场景就可以说是半监督学习自我学习和半监督学习的场景一样,不过有个...

    该章节参考ufldl

    1.什么是自我学习(Self-Taught Learning)与半监督学习

    首先,什么是半监督学习?当你手头上拥有在大量未标注数据少量的已标注数据,那这种场景就可以说是半监督学习。自我学习和半监督学习的场景一样,不过有个细节不一样。

    自学习(self-taught learning) 是更为一般的、更强大的学习方式,它不要求未标注数据 和已标注数据有同样的分布。而半监督学习不一样,它要求未标注数据 和已标注数据服从同样的分布。下面通过例子解释二者的区别。

    假定有一个计算机视觉方面的任务,目标是区分汽车和摩托车图像;哪里可以获取大量的未标注数据呢?最简单的方式可能是从互联网上下载一些随机的图像数据集,在这些数据上训练出一个稀疏自编码器,从中得到有用的特征。这个例子里,未标注数据对比已标注数据,是一个完全不同的数据分布(未标注数据集中,或许其中一些图像包含汽车或者摩托车,但不是所有的图像都如此)。这种情形被称为自学习。

    相反,如果有大量的未标注图像数据,要么是汽车图像,要么是摩托车图像,仅仅是缺失了类标号(没有标注每张图片到底是汽车还是摩托车)。也可以用这些未标注数据来学习特征。这种方式,即要求未标注样本和带标注样本服从相同的分布,有时候被称为半监督学习。在实践中,常常无法找到满足这种要求的未标注数据(到哪里找到一个每张图像不是汽车就是摩托车,只是丢失了类标号的图像数据库?)因此,自学习在无标注数据集的特征学习中应用更广。

    2.自我学习的模型

    2.1 数据预处理

    首先对未标记数据和已标记数据进行相同的数据预处理。比如进行相同的归一化。如果对未标记数据进行PCA,那么PCA过程得到的特征向量矩阵U需要保留下来。之后对于已标记数据,应用UTxU^TxUTx 得到降维后的数据。或者,将已标记,未标记两部分数据凑起来,一同进行PCA降维。

    2.2未标记数据训练稀疏自编码器

    不懂稀疏自编码器的同学,可以参考我这篇博客

    首先我们利用未标记数据训练一个自编码器。

    利用训练得到的模型参数$ W^{(1)}, b^{(1)}, W^{(2)}, b^{(2)}$,给定任意的输入数据 xxx,可以计算隐藏单元的激活量(activations)aaa。如前所述,相比原始输入 xxx 来说,aaa 可能是一个更好的特征描述。下图的神经网络描述了特征(激活量 a)的计算。
    在这里插入图片描述

    这实际上就是之前得到的稀疏自编码器,在这里去掉了最后一层。

    2.3 有标记数据特征转换,然后实现监督学习

    假定有大小为$ m_l$ 的已标注训练集
    KaTeX parse error: Expected '}', got 'EOF' at end of input: …, y^{(m_l)}) \}(下标 lll 表示“带类标”),我们可以为输入数据找到更好的特征描述。例如,可以将 xl(1)x_l^{(1)}xl(1) 输入到稀疏自编码器,得到隐藏单元激活量 al(1)a_l^{(1)}al(1)。接下来,可以直接使用 al(1)a_l^{(1)}al(1) 来代替原始数据 $ x_l^{(1)}$ (“替代表示”,Replacement Representation)。也可以合二为一,使用新的向量 (xl(1),al(1))(x_l^{(1)}, a_l^{(1)})(xl(1),al(1)) 来代替原始数据 $ x_l^{(1)}$ (“级联表示”,Concatenation Representation)。

    经过变换后,训练集就变成 KaTeX parse error: Expected '}', got 'EOF' at end of input: …, y^{(m_l)}) \}或者是KaTeX parse error: Expected '}', got 'EOF' at end of input: …, y^{(m_l)}) \}(取决于使用 $a_l^{(1)} $替换 $ x_l^{(1)} $还是将二者合并)。在实践中,将 $a_l^{(1)} $和 $ x_l^{(1)}$ 合并通常表现的更好。但是考虑到内存和计算的成本,也可以使用替换操作。

    最终,可以训练出一个有监督学习算法(例如 svm, logistic regression 等),得到一个判别函数对 y 值进行预测。预测过程如下:给定一个测试样本xtestx_{\rm test}xtest,重复之前的过程,将其送入稀疏自编码器,得到 atesta_{\rm test}atest。然后将 $ a_{\rm test}$ (或者 $ (x_{\rm test}, a_{\rm test}) $)送入分类器中,得到预测值。

    3.补充

    在有标记示例较少时,如何利用大量的未标记示例来改善学习性能已成为当前机器学习研究中最受关注的问题之一。**目前,利用未标记示例的主流学习技术主要有三大类[Zhou06],即半监督学习(semi-supervisedlearning)、直推学习(transductive learning)和主动学习(active learning)。**这三类技术都是试图利用大量的未标记示例来辅助对少量有标记示例的学习,但它们的基本思想却有显著的不同。在半监督学习[ChapelleSZ06][Zhu06]中,学习器试图自行利用未标记示例,即整个学习过程不需人工干预,仅基于学习器自身对未标记示例进行利用。直推学习[Vapnik98][Joachims99]与半监督学习的相似之处是它也是由学习器自行利用未标记示例,但不同的是,直推学习假定未标记示例就是测试例,即学习的目的就是在这些未标记示例上取得最佳泛化能力。换句话说,半监督学习考虑的是一个“开放世界”,即在进行学习时并不知道要预测的示例是什么,而直推学习考虑的则是一个“封闭世界”,在学习时已经知道了需要预测哪些示例。主动学习[SeungOS92][LewisG94][AbeM98]和前面两类技术不同,它假设学习器对环境有一定的控制能力,可以“主动地”向学习器之外的某个“神谕”(oracle) 2 进行查询来获得训练例的标记。因此,在主动学习中,学习器自行挑选出一些未标记示例并通过神谕查询获得这些示例的标记,然后再将这些有标记示例作为训练例来进行常规的监督学习,而其技术难点则在于如何使用尽可能少的查询来获得强泛化能力。对比半监督学习、直推学习和主动学习可以看出,后者在利用未标记示例的过程中需要与外界进行交互,而前两者则完全依靠学习器自身,正因为此,也有一些研究者将直推学习作为一种半监督学习技术来进行研究。(出自周志华教授)

    展开全文
  • 区别自我学习和半监督学习一样,当前手头上只有少量训练样本,但是周围手头上还有大量无标注样本。举一个经典的例子,分离大象和犀牛。 对于监督学习来说,我们手头有大量大象的样本和犀牛的样本,接下来训练分类器...
  • 我不懂,问他,他总是以各种各样的理由拒绝,最后,索性不问了,自己在网上找了免费学习网站来学习。最后技能高过了他,他辞职走了。我记得上学的时候,大多都是听着老师来讲课,也没有什么网上学习课程,近年来,...
  • 首先 得到直接将初始模型或者是训练很少次得模型 所有的标注数据基本都是测试集 直接将测试错误的数据 分为一个数据集 利用测试错误的数据集 进行迁移学习 从而不断的使模型自我纠正 这就叫做直接实践学习法 ...
  • 程序员如何正确的自我提升?

    千次阅读 多人点赞 2019-05-24 09:44:38
    程序员如何正确的自我提升 ...你说的对,学习就是自我提升,但是如何正确的学习,会直接影响你提升的速度,学习的扎实度等 前言 在接触计算机有一段时间之后,接触到越来越多的新知识新概念, 我就像刘姥姥进大观园,...
  • 深度学习自身的安全

    万次阅读 2018-08-29 10:36:13
    现在AI安全早已成为安全行业的热门词汇了,AI安全包括两个层面,一个用AI解决安全安全行业问题,一个是AI自身的安全问题,平时我们谈AI解决安全安全行业问题比较多,对AI自身安全确少有提及,今天要分享的就是AI自身...
  • 顾问个人成长的体会与建议

    万次阅读 2011-11-24 19:26:11
    周五完成认证,在与几位同事回家的路上,一起谈到了个人成长的问题。有的同事提出疑问:怎么样才能快速成长?为什么有的同事成长那么迅速?结合几天的认证感受,谈谈自己的一些体会与建议:从“要我成长”到“我要...
  • 求职面试准备——自我介绍

    千次阅读 2018-08-03 21:13:25
    为充分准备9月份秋招,作为一个小白四处学习如何准备面试的自我介绍,接下来将会以自身经历为例,结合各路大神的方法进行面试相关知识总结和整理。 面试的自我介绍 自我介绍的目的:给面试官一定的时间看一下你...
  • 迁移学习&自我学习

    万次阅读 2013-05-09 13:02:48
     监督学习在前一篇博客中讨论过了,这里主要介绍下迁移学习自我学习。因为监督学习需要大量训练样本为前提,同时对训练样本的要求特别严格,要求训练样本与测试样本来自于同一分布。要是满足不了这要
  • 项目管理工作中的一些自我反省

    千次阅读 2017-08-09 18:34:25
    项目管理培训学习体会总结,工作中自身的一点不足之处:  1.平时工作之外的交流太少 2.主动性不是很强,特别是针对上面的项目争取,人员争取 3.过于专注细节,有的时候缺少大局观  4.什么事情都想亲力...
  • 毕业实习自我鉴定

    万次阅读 2007-04-26 00:57:00
    ----三穗县第二中学,四年的学习,现在终于可以得到发挥,可以在实践中检验我们的学习理论了,作为实习生的我们,我们应该好好的把握这个机会,珍惜这个机会,在实践中学到在学校里学不到的知识,充实自我,正因为有...
  • 数据库之自身连接与外连接

    千次阅读 2017-12-15 23:52:05
    Cno为课程号,Cname为课程名,CPno为上这门课程之前必须学习的的课程号: 查询每一门课的间接先修课(即先修课的先修课)。 SELECT A.Cno, A.Cname, B.Cpno FROM Course A, Course B WHERE A.Cpno =B.Cno;
  • 软件工程师自我介绍

    万次阅读 2019-11-09 12:06:55
    各位前辈,大家好,我叫XXX,毕业于重庆理工大学,计算机科学与技术专业,以前在学校学的是.net,在学校实验室跟老师做过一个期刊网站,因为我比较喜欢学习新的知识,而且java语言也更加流行,所以大三选择在足下...
  • 机器学习--LGB模型学习

    万次阅读 2018-05-16 16:23:12
    自我的简书
  • 专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。 2.2 学科定位:人工智能(Artificial Intelligence, AI)的核心,是使计算机具有智
  • 程序员面试时如何优雅地自我介绍?

    万次阅读 多人点赞 2019-04-03 14:26:38
    有读者提问:如何在面试当中做一个最好的自我介绍? 结合了一下自己面试以及面试别人(模拟面试)的一些经验,简单总结了几点,供大家参考。 2.为什么要自我介绍 在面试官要求自我介绍后,有些同学会觉得信息都在...
  • 培训机构毕业的程序员被歧视的背后逻辑

    万次阅读 多人点赞 2015-11-27 17:01:06
    有的公司,看到来应聘的程序员是从培训机构毕业的,会直接PASS掉,这背后的逻辑是什么?
1 2 3 4 5 ... 20
收藏数 535,949
精华内容 214,379
关键字:

自我学习