用Python實現人臉檢測-3(BP-ANN Classification)

嗯,此次小項目的最後一個模塊,也是最為核心的模塊,後向反饋人工神經網絡,咱簡稱BP-ANN。

本模塊通過一點的樣本訓練之後,就是用來進行分類了。

這也是咱做的最為醜陋的一個模塊了,整個代碼寫下來,可讀性不是一般的差。。。。有時候,自己都不知道在寫得什麼玩意兒,真是給跪了,因為沒有使用向量化實現,完全使用迭代的方法,效率簡直。。。。反正就是寫得很醜陋,而且由於某個設計的缺陷,導致 隱層和輸出層的神經元數目不能大於輸入量。。。。orz 很多时候跑起來還會經常拋出“超出數域”的錯誤。。。。不知道是個什麼情況,不過還真覺得python在處理實數上,略為糾結,咱用了無數多個round函數來降低運算精度。 继续阅读“用Python實現人臉檢測-3(BP-ANN Classification)”

机器学习笔记-7(神经网络的实现)

第九部分终于出来了,迅速看完。总算了解些许神经网络的实现和运作流程。

Neural Network (Classification)

神经网络/分类

按照自己的理解是,神经网络一般用于特征规模比较大或者是特征粒度特别细的情况下,也就是用微粒去寻找内在的模式。比如,前面提到的汽车识别的问题。像素在特征粒度来看是非常细密的,单看像素信息,是没法看出内禀模式的,所以多层结构的神经网络在这种情况下,就变得比较厉害。隐层内的逻辑处理单元对应这神经结构中的神经元,同层中的多个逻辑单元其实就是对上一层的输入进行不同组合的操作(配以不同的参数/权重),这样子通过对像素信息的不同组合,就能抽象出其中的不同模式(例如,图片区域方向/材质之类的信息)。层数越多,寻找到的模式就有可能越抽象,能实现的东西就会越强大。 继续阅读“机器学习笔记-7(神经网络的实现)”