研究CNTK(六):ResNet

发挥图像识别的威力还是需要ResNet结构,最早是微软亚洲研究院提出的,这是可以达到90%以上识别率的网络结构,比如resnet cifar10,需要使用高达21个卷积层,并且每一步都要进行重新的批量正则化与归一化。 谷歌2016年8月份开源了Inception-ResNet-v2,是基于TensorFlow的,识别效果更为强大,能够将阿拉斯加雪橇犬(左)和西伯利亚雪橇犬给准确分类出来,另外还有V3与V4,网络结构也变得更深,唯一值的一提的是Inception-v4没有residual连接,但是效果与V2一样。 不过这都是些是些个人计算机运行起来很吃力的东西,在CNTK里这个同样有ResNet的各种实现,默认的ResNet20_CIFAR10.cntk将会进行160次迭代,这个运算量非常大也非常缓慢,不过识别精度非常高,但是不是妨尝试运行下的。 在第16次迭代时可以达到准度度已经可以达到是百分之86.1%以上的正确率了,每次迭代花费时间约在25s左右,所以时间也就花费了几分钟而已,它提高识别率的速度甚至比简单的卷积网络还快。在达到28次左右时,实际上就达到了89~90%左右的识别率,真正突破90%大概是到了36次左右,即大概15分钟便可以做到90%的识别,这个完全可以接受。不过按文档说,训练到最后错误率最高也只能达到8.2%左右,而人类的估计是6%左右,这个网络结构还是不足以超过人类,而叠加到了n=18的网络,则可以达到6.2-6.5%的效果。简单测试了一下,网络的一代迭代大概153秒,要迭代160次,约要跑6.8个小时,才可以达到6.2-6.5%的效果。   根据有人做过的研究来看,ResNet也不是层次越多越好。 到了1202层的时候,反而效果比110层更差了。   比较了一下: ResNet20_CIFAR10,numLayers =3,learningRatesPerMB = 1.0*80:0.1*40:0.01 ResNet18_CIFAR10,numLayers = 18,learningRatesPerMB = 0.1*1:1.0*80:0.1*40:0.01 除此之外并无区别了。 所以分析ResNet20_CIFAR10.cntk源文件就好 # ConvNet applied on CIFAR-10 dataset, with data augmentation (translation and flipping). command = TrainConvNet:Eval precision = “float”; traceLevel = 1 ; deviceId = “auto” rootDir = “../..” ; configDir = “./” ; dataDir … 阅读全文 研究CNTK(六):ResNet

研究CNTK(五):ConvNet_CIFAR10.cntk、ConvNet_CIFAR10_DataAug.cntk

从任务上来说,识别物体是最艰难的,因为物体大小开关都会发生灵活变化,传统的神经网络识别这个几乎是不可能的任务,而卷积技术则克服了这一点,不过仍然需要依赖强大的计算量。 ConvNet中的模型是: model = Sequential (             Normalize {featMean, featScale} :             ConvolutionalLayer {64, (3:3), pad = true} : ReLU :             ConvolutionalLayer {64, (3:3), pad = true} : ReLU :             MaxPoolingLayer {(3:3), stride = (2:2)} :             ConvolutionalLayer {64, (3:3), pad = true} : ReLU :             ConvolutionalLayer {64, (3:3), pad = true} … 阅读全文 研究CNTK(五):ConvNet_CIFAR10.cntk、ConvNet_CIFAR10_DataAug.cntk

研究CNTK(四):ConvNet_MNIST.cntk

可以看出结果为: Minibatch[1-10]: errs = 0.470% * 10000; ce = 0.01797164 * 10000 Final Results: Minibatch[1-10]: errs = 0.470% * 10000; ce = 0.01797164 * 10000; perplexity = 1.01813410 错误仅只有0.47,相当于正确率为99.53%,这个非常高了。 这是采用了三层卷积的效果,迭代了40次,算了挺久的,按MNIST的网站上的公布最好成绩为0.23,共计用了35个卷积层,很难想象这个得算多久。 与之前的代码几乎还是相同,不同主要是在model上,它是这样的:  model = Sequential (             Scale {featScale} :             ConvolutionalLayer {32, (5:5), pad = true} : ReLU :             MaxPoolingLayer    {(3:3), stride=(2:2)} :             … 阅读全文 研究CNTK(四):ConvNet_MNIST.cntk

研究CNTK(三):MNIST识别之02、03、04

与一个隐含层的神经网络不同的体现只在MODEL这里,它是这样定义的:      在01中定义是:      model(x) = {             s1 = x * featScale             h1 = DenseLayer {200, activation=ReLU} (s1)             z = LinearLayer {labelDim} (h1)         }     在02中的定义要配合图比较直观:         model = Sequential (             #归一化             Scale {featScale} :             #创建卷积层,函数使用RELU,对图像进行5:5的卷积,这就滤波器,这里使用16个滤波器,因为不补零,所以是16个24×24的sudo-image             ConvolutionalLayer {16, (5:5), pad = true} : ReLU :             #进行最大池化,得到feature … 阅读全文 研究CNTK(三):MNIST识别之02、03、04

研究CNTK(三):MNIST识别之01_OneHidden.cntk

# Parameters can be overwritten on the command line # for example: cntk configFile=myConfigFile RootDir=../.. # For running from Visual Studio add # currentDirectory=$(SolutionDir)/ command = trainNetwork:testNetwork precision = “float”; traceLevel = 1 ; deviceId = “auto” rootDir = “..” ; dataDir = “$rootDir$/DataSets/MNIST” ; outputDir = “./Output” ; modelPath = “$outputDir$/Models/01_OneHidden” #stderr = “$outputDir$/01_OneHidden_bs_out” … 阅读全文 研究CNTK(三):MNIST识别之01_OneHidden.cntk

CNTK研究(二):测试MNIST几种识别效果

01_OneHidden,一个隐藏层,相当于简单的三层神经网络,直接用的RELU,效果不错。 Minibatch[1-10]: errs = 1.560% * 10000; ce = 0.05553107 * 10000 Final Results: Minibatch[1-10]: errs = 1.560% * 10000; ce = 0.05553107 * 10000; perplexity = 1.05710186 02_OneConv,一层的卷积神经网络,测试显然有所提升。 Minibatch[1-10]: errs = 1.190% * 10000; ce = 0.03576933 * 10000 Final Results: Minibatch[1-10]: errs = 1.190% * 10000; ce = 0.03576933 * 10000; perplexity = … 阅读全文 CNTK研究(二):测试MNIST几种识别效果

CNTK研究(一):MNIST的文件转换

CNTK的MNIST例子中,它是一个py文件,首先是将图像文件转换为文本来表达,以方便CNTK中读取。 文件位置:\cntk\Examples\Image\DataSets\MNIST\mnist_utils.py import sys import urllib import gzip import shutil import os import struct import numpy as np //定义一个读数据的函数 def loadData(src, cimg):     print ('Downloading ' + src)     gzfname, h = urllib.urlretrieve(src, './delete.me')  //从URL下载该数据文件     print ('Done.')     try:         with gzip.open(gzfname) as gz:         //使用gzip打开它             n = struct.unpack('I', gz.read(4))    //读4个字节解包成无符号整型             # Read … 阅读全文 CNTK研究(一):MNIST的文件转换

正一派授箓心印的千古之秘(下)

上文已经说过,将呢,就是那些众生所膜拜的神明,这句话有更深的含义,要牢牢记住。   而不同的人,与不同的神明缘分是不同的,有一些更深一些,有一些浅一些,这种缘分可以理解为一种相性,相性相合时,那么对于该神明就会更具感应。   所以在授箓的时候,会进行拨将,其实就是告诉你与哪位神明更有缘份,而所拨的将实际上是根据箓生的出生时间计算出来的,当计算出来后,便会将相应的神将拨给箓生,然后受箓的法官就可以通过一定的方式与神将沟通。   有一些流派会拨得更多,比如心将,属将,这个将,那个将之类的,这些并非说完全没有意义,不过将多则难专了。   一定要记住白玉蟾祖师说过的话,炼将要专门炼一个将,炼精了才叫本事。   将的本质就是那些与学道者具有天然相性的神明,而按照传统,常用的神将通常被归纳成了三十六名,即雷霆三十六将。 然而有人会问,为什么在道教不同的流派中,这三十六将的身分也各有不同?并有雷霆三十六将中,有很多将显然是在汉代以后出现的,比如关帅显然是三国时期的,而岳元帅显然是宋代的。 早年正一授箓时,哪里有那么多将领?起码在唐代的时候肯定没有岳元帅。 实际上这并不是矛盾,因为雷霆三十六将,实际上是后来的说法,它的目的只是为了凑足三十六将满足天罡之数,所以有的流传的雷霆三十六将中,有些也会将风雨雷电也拿来凑数。 不过也有左拼右凑的凑出来像模像样的雷霆三十六将系列,并且每一个将都有自己的真形符(即常说的天师符),这个有机会再详说。 那么将的划分是依据什么?这个很简单,当然是依据五行特点来的,如马元帅属火,自然与火相性的更加有缘,赵元帅属金,自然与金相性的更加有缘,其它的也大体如此。 那么有了将以后,如何沟通呢?一般的资料上通常对于这个问题,会故意隐而不说,实际上,沟通自己的神将的办法,关键的秘密就在于心印。 这个心印是在授箓的时候会填写在箓牒上,一般分花押心印与急难心印。 有人会好奇心印是什么样的,打开你们的传度证,看经师、戒师、度师那里,每个名字下都有一个符篆,那个就是花押心印。 每个人的心印是不同的,当授箓拨了将后,法官便可以通过心印,与神将进行结盟。 虚靖天师在《破妄章》里明确说过:   召将先轰令一声,令声惊起我雷神。 缘何不见元神面,只为元神昧本真。 心印相传付有缘,今人刊木不知玄。 祖师心印相同处,颗颗光明彻九天。   唯一需要注意的是,召将的使用,心印必须要两个,一个是自己,一个是神将的,通过自己的心印与神将的心印相合,便能召来相应的神将。 这就好比一把钥匙,而神将的心印好比一把锁,当这把钥匙插入到了锁里,于是便可以召来相应的神将了。 这种方式最为奇妙的是,即使是你的内炼不足,同样可以招来神将护佑,提升自己行法的灵验程度,当然最终将的法力强弱仍然还是取决于法官的内炼水平。 专门修炼神将的方法,称之为炼将,炼将的本质是借外而修内,修炼得好,最终是可以通真达道的,其中更有隐秘。 按生辰八字来定的适合炼什么将,不仅仅只是个形式,炼将的本质,实际上相当于是在告诉法官,应该修炼什么样的功法。 如果熟悉术数的道友,在这里便应该能够联想得到,一般针对八字采用五行补益得当,只要方式正确,改变运气多能收到明显的效果,然而这些都是在外的影响。 然而如果结缘的神将本身便对自己的八字有补益作用的话,那么再进行炼将,修炼了相应的功法,这种由内而外的影响,又会导致什么的情况发生? 这个可以认真思考一下。 一般通行炼自己的心印,有些会采用五行炼将法,大体是澄心静虑之后,根据日子的五行,分别采炼五行气,配合掐诀、咒语,混合本宫祖炁。 针对元帅炼将则有所变化,如殷帅是先凝神,用中央黄气与天中黄气相混,然后心火上接再降下,混合在一起,最后发出再吸入变成金黄炁,直接砸到地上,再右手叉腰左手雷局,将气从耳出,伴随火召出元帅,然后取毫光转下丹田过尾闾与肾中金光相合,再冲上泥丸,再将金光团成一小团,然后变成一个点,纳入中宫去。 具体到不同的元帅的召炼方式又要有所区别。 比如召温帅的经典仪式,是用剑诀在香烟上写雷电,然后存思金光。再用下令从空中霹雳中震出,从香烟随之而下。然后再书温帅符进行策役,最后用雷局从耳发出,并噀水喷出。 而召马帅的则是用嘘肝呵心呬肺青红白三炁,变成唵吽咤三字,如光灼灼,然后吸入元三宫相合,然后嘘出于丹天斗口,变为元帅,然后想丹天之上有云霞犹若流火一般,再剔顺斗,兆九目视上,存有红光九道冲元帅。然后再剔逆斗,想元帅九目中亦放九光射我,二炁相合化。 炼神将能够不断增强法官与相应神将的沟通能力,而对于法官行法平时也有很强的加持作用。 曾经有一些自己也会书符的道友,来问过贫道,明明照着贫道的写法,书写一模一样的招财符式,为什么效果仍然不如贫道的? 这个问题如果是问到一般书符的,多会神乎其神告诉是因为组成的讳字不同,或是故作神秘告诉你有什么特别的秘诀,其实这个没有那么复杂。 说白了这是因为贫道主将是赵公明元帅,而恰好的是赵帅麾下其中有四位被认为是财神,所以也被称为五路财神,所以书写招财符时,自然获取了更多的神将护佑。当然赵元帅还有其它职能,比如驱雷役电,唤风呼风,除瘟剪疟,保病禳灾,和合散讼等,有机会再谈这个。 每个人命理情况不同,适合的神将也不同,而在与相应的神将结盟后,初期行法自然也会各自有不同的倾向。 大凡正一修道的法官,首先要明白自己的神将特点,并加以擅加利用,才能更好的济世度人。 比如与丰都拷鬼孟元帅结盟的话,会显然会加强驱邪的能力,尤其体现在拷附方面,其它法师可能并不擅长收捉拷问,然而换到这类法师手上就会比较容易解决。 但是又有可能非常擅长驱邪治病的,去做求子夫妻和合之类的法事时,可能就不那么顺手。 又比如与火犀雷府的朱帅结盟,那么会有很强的灭巫的能力,非常擅长斗法,然而在一般的法上可能表现就未必有那么强大。 再比如与殷帅结盟,而殷太岁主管天下神煞,对于化煞改运,起煞退犯方面就会效果非常显著。 当然这个是不一定的,又比如擅长驱邪,然而比如有三奶派传承的法师,有陈靖姑仙师护佑的缘故,安胎求子上又会有得天独厚的优势。 所以也不能一言以蔽之,具体情况具体分析。 另外,当然实际的效果还是看个人使心印与元帅沟通的情况,沟通感应越深,那么效力自然就越强。 最后说一下,这种倾向性主要是体现在前期,不管专修的是哪位神将,只要修得深入了,无论用什么法,效果都会一样会非常显著。 比如说殷帅主管天下神煞,虽然是地司神明,然而比如有人求子多年不得,借用殷帅将阻碍求子的神煞都除掉,那么同样可以实现顺利求子的目的。 … 阅读全文 正一派授箓心印的千古之秘(下)

正一派授箓心印的千古之秘(上):源流

参加授箓并成为一名正式的法官以外,其实其中还埋藏有很多的秘密,这里便是要说说这个问题。 唯一遗憾的是祖天师只为正一嫡血的留下了这条路,只有领受正一三山嫡血字辈的,才能将心印真正发挥出力量来。 贫道看到不少全真的道友也在龙虎山天师府授初箓,不知是否授箓时也给予了嫡血字辈,如果是给了,那么便恭喜了,同样可以修炼正一的法,只是称职行法时,仍然需要使用正一字辈,不然心印仍然难以发挥作用。 如果有佛门的朋友则不必看下去了,除非是普庵传承的得授中盟箓,不然非正一三山嫡血的道统,盗用会反受天谴,这不是光凭狂热的宗教情结,幻想佛祖多么厉害就能解救得了的。 如果你是一名正一三山嫡血的修道者,并且还不明白心印是什么,同时也没有真正领悟什么才是道法,传说中那些术法是否真实存在并可以重现,那么耐心看下面的内容将会非常有用,如果你能够真正领悟并找到自己的方向,那么诸天气荡荡,指日可期。 虽然说现代天师府的授箓,在努力尽力恢复当年天师授箓仪式,然而道众人所皆知的是无论是天师府也好,还是其它什么地方也好,授箓更多是一种宗教意义上的仪式。 并不可能像古代那样,一旦授了箓后便瞬间升级,然后箓中官将云集护佑,行使相应的道法立即变得心应手。 贫道曾经在知乎上说,现代授箓的法效已失,便是这个道理。 所以一定要明白,并不是授箓了的法师就一定水平有多高,更何况还有一大批混入道教的江湖神棍,在混到了箓职后,只是将箓牒当作一个用来凭依吹嘘的资本。 据一些道众说,有些所谓的授箓法师,整天就在QQ群或是其它地方跟人口水喷架,一旦喷不过了,就说自己是授过箓的云云。 早些年授箓的道众中,鱼目混珠之辈太多,贫道亲眼见过有开佛堂的神婆,找了关系也跑去授箓。 然而即便如此,现代授箓混乱不堪没有了法效,然而老祖天师对后世岂能没有预料。 所谓天留一线,在箓牒中仍然藏有很大的秘密,如果能够一心求道,真心修炼,其实仍然还有一条路留给了正一三山嫡血的真正学道者。 这就是心印。 首先要从基本的说起,道教正一派的制度中,从一名信众成为一名合格的法官,从现代的历程来说,一般要经历三个步骤,第一步是皈依,皈依之后是传度,当传度后就说明正式开始学道了,而学道积累到一定程度后,就会进行授箓,授箓后的道士称为法官。 信众在皈依通常是没有道名的,除非在这个时候已经拜了师,师父已经赐下了道名,不然便是传度的时候才会拥有道名。 为什么说传度很重要呢?因为传度之后死籍会转由三官大帝来管理,不再由地府阴司所管理,如果没有修炼到一定的地步,而是正常逝世,那么逝世后会直接由三官大帝进行考校。 这个有些人或者不明白,被地府阴司管理与被三官大帝考校管理有什么区别,一个现代比较有意义的事是:假如你生活在海外,只要你是传度过的,那么羽化后一样会回归三官大帝来考校功过,而不必受限于当地宗教文化的影响。 授箓与未授箓的明显区别是,授了箓后的法官,就有了职,通常被称为XX仙官,会被划归到某一个院的麾下,同时还会进行拨将。 而这个仙职在行法的时候也称之为箓职,大凡依科行法,总是要先述职,然后再行法。同时,在授箓之后,需要进行功德缴箓,这样即使是法官未修炼到足够的高度,那么去世后也会有祖师接引照拂。 由于法官每行一个法,都会用自己的职来进行,施法前都会表述自己的职位,这个会产生功德的累积,如果功德累积得不多的话,会成为转世的福报;如果功德够高能直接上升天界;如果功德更高,便是成神也是可以的。 如有些人去世了,因为生前积善较多,所以大众为其修庙,于是享受香火祭祀而成了一方城隍土地,对于一般人来说,死后借助这种方式不但能活着,还能享受荣耀,这是件好事。 然而对于真正修道的人来说,并不认为这是一种多好的事,这只能称为“庙食下鬼”,而“庙食下鬼”即使是修炼得好点断离灭三界不昧因果,也最多只能升级为“清灵爽善之鬼”,凡此种种,皆不是正统道家修炼者的目标。 全真与正一在体系上有一个极大的不同,便是全真如果行科,那么都必须要以邱祖的名义进行,因为全真的道士是受戒,所以并无箓职。正一的则完全不一样,凡是法官均有自己的箓职,而行法的时候只需要述自己职便可以了。 这个是因为当初全真启教王重阳祖师主要是修炼丹道为主,并不从事斋醮活动,而全真开始斋醮活动的时候,基本上所有的科仪都是从正一学习去的,如果翻过一些早年的全真科本,上面大多会写明抄自于何处,来源通常比较清晰明了。 即便是在清人编制科仪时制作的《广成仪制》,也是在上清派的杜光庭祖师的《道门科范大全集》基础上进行的整编。然而到了现代,如果细心翻过《全真秘旨》之类的书籍的话,会发明里面基本上都是正一的东西被套上了全真的名字,然而至于其中内容源自何处则无一处说明,以至于混乱了来源,扰乱了很多修道者的认识。 一般来说正一行法都比全真要更加灵验,这并非是说全真后世形成的科仪不好,而是后世一些人故意对以前经典的篡改导致了行科过程出现了问题。 举一个例子,例如在一些科中,会提及“金真”或是“金真演教天尊”,便是有人非要把这个“金真”改成“全真”,然后得意洋洋认为自己才是对的。这种现象在国内一些著名的道教网站上收录经典时,也经常会干这样的事,几乎所有涉及写“全真”二字的地方,实际上本来都是“金真”。 “金真”是指的道教的经文,道经有载:“金真,金简真文也。昔真文始现结於玄空,莹发光芒,刻书金简,故明朗郁郁然也。云营,云宫也。百玉容堂在玄都龙山之上,言上帝高吟金简,清音响亮, 流入云宫。” 本来有明确的含义的,非要改成“全真”,自然完全就失去了原来的概念,行科不验,自然便在理法之中。 明白了这个源流就会明白,道教行科的正统终究还以正一为宗,同样的想要行法更加灵验,修炼内容仍然还是要以正一道为主。 说明这个道理,并非是要说要有正一与全真门派之别,而是要正本清源。 全真的丹道同样是高妙法门,至于历代全真高人神通显化,多是金丹有成之后的事,所以多属于厚积薄发。 很多人会将道术与巫术混为一谈,其实它们之间有天壤之别,一般的法术,按吾阴符派的习惯通常称为香火之法,而只有召将行法的才能真正称之为道法。 所以并不是有科仪形式的,才能称为道法,它究竟是香火法还是道法,取决于内容及形式。 所谓香火法,必须要依赖于神明,与法师自身的信仰等因素,决定了与神明感应沟通,那么少不了相应的祭祀。 供奉神明这样的方式通常认为是阳性的,而通过施食等行为恩泽众生,然后众生自然也会有所回报的称为阴法。通常一个好点的法师,这两条路是并行的,一方面供奉神明为大众解决问题,另一方面也会积极与众生搞好关系,获得额外的助力。 当然,这些方法,如果演进的话,便又会成为一种新的形式,便是法师自己养兵马以获得更强大的法力。 凡是这类直接与鬼神众生打交道的,都是属于香火法的范畴,其中又包括比如佛教,比如巫教等,又或西方的各类魔法流派,这类的特征便是往往会鼓励你多供奉,以换取相应的助力。 比如在东方多是让你多烧香,多烧钱纸来进行供奉,而在西方则多是通过燃烧香料,或是虔诚赞咏或是其它供奉形式,总离不开这个形式。 而真正的道法是出离于这个范畴的,因为道法的核心是将,什么是将? 将便是众生膜拜的各类神明。 将的作用,明人的博物志《五杂俎》里说得比较清楚:““古之善禁气者,能于骨中出镞,移痈疽向庭树。至于驱龙缚魅,又其易者耳。此却是真符咒,非幻术也。诸符咒,《道藏》中皆有之,但须炼将耳。今游僧中有燃眉烧指,及五七日不饥者,非真有道也,亦能禁气耳。至其伪者,又不论也。” 此文的意思便是是说古时能做到那些非常显赫的道法,确实是真的符咒可以办到的,并非是幻术,但是必须要炼将。而今日有很多四处游走的僧人,做些燃眉烧指,几天不吃饭的,都并非是真正有道,有些法的也不过是禁气而已,当然其它还有更假的就不说了。 所以将是一个非常重要的环节,然而炼将,首先要有将,将是从哪里来的?它与心印又有什么关系?下文再述。