judyzhong 的blog

机器学习算法与Python实践之(一)k近邻(KNN)

    机器学习算法与python实践这个系列主要是参考《机器学习实战》这本书。因为自己想学习Python,然后也想对一些机器学习算法加深下了解,所以就想通过Python来实现几个比较常用的机器学习算法。恰好遇见这本同样定位的书籍,所以就参考这本书的过程来学习了。

一、kNN算法分析

K最近邻(k-Nearest Neighbor,KNN)分类算法可以说是最简单的机器学习算法了。它采用测量不同特征值之间的距离方法进行分类。它的思想很简单:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。

Python入门最容易犯的12个错误

Python 以其简单易懂的语法格式与其它语言形成鲜明对比,初学者遇到最多的问题就是不按照 Python 的规则来写,即便是有编程经验的程序员,也容易按照固有的思维和语法格式来写 Python 代码,有一个外国小伙总结了一些大家常犯的错误,16 Common Python Runtime Errors Beginners Find,我把他翻译过来并在原来的基础补充了我的一些理解,希望可以让你避开这些坑。

0、忘记写冒号
在 if、elif、else、for、while、class、def 语句后面忘记添加 “:”
if spam == 42
print('Hello!')

导致:SyntaxError: invalid syntax

1、误用 “=” 做等值比较
“=” 是赋值操作,而判断两个值是否相等是 “==”
if spam = 42:
print('Hello!')

导致:SyntaxError: invalid syntax

Zynq-7000学习笔记(八)——USB摄像头图像采集

PC平台:WINDOWS 10 64位 + 虚拟机Ubuntu 14.04

Xilinx设计开发套件:Xilinx_vivado_sdk_2015.4

开发板:Zed Board

USB摄像头:罗技 C270(720P)

Linux源码:2016_R1

Linaro文件系统:linaro-vivid-developer-20150618-705.tar.gz

各种编程语言的深度学习库整理

本文总结了Python、Matlab、CPP、Java、JavaScript、Lua、Julia、Lisp、Haskell、.NET、R等语言的深度学习库,赶紧收藏吧!

Python

1. Theano是一个python类库,用数组向量来定义和计算数学表达式。它使得在Python环境下编写深度学习算法变得简单。在它基础之上还搭建了许多类库。

   1.Keras是一个简洁、高度模块化的神经网络库,它的设计参考了Torch,用Python语言编写,支持调用GPU和CPU优化后的Theano运算。

  2.Pylearn2是一个集成大量深度学习常见模型和训练算法的库,如随机梯度下降等。它的功能库都是基于Theano之上。

深度学习的五个能力级别

本文作者在读完“理解AI四种类型”一文后,对深度学习进行了更加细致的能力分类,以下为译文:

Arend Hintze写了一篇很好的短文,叫《理解AI的四种类型》,分别是反应机器(Reactive Machine)、有限的记忆(Limited Memory)、思维理论(Theory of Mind)、自我意识(Self-Awareness)。

PC平台:WINDOWS 10 64位

Xilinx设计开发套件:Xilinx_vivado_sdk_2015.4

开发板:ZedBoard

1、打开学习笔记四构建的vivado项目,打开block design,把学习笔记六导出的FAST corner IP添加进来

2、add ip,把hls_fast_corner添加到block design,再添加一个VDMA连接起来

3、导出Hardware,启动SDK

4、初始化hls_fast_corner
int status = XHls_fast_corner_Initialize(&fast_corner, XPAR_HLS_FAST_CORNER_DEVICE_ID);
if(0 != status)

IBM一直在努力促使计算机变得更智能化、更人性化。本周该公司宣布,已经开发出一种技术,可以大幅缩短处理海量数据并得出有用结论的时间。IBM使用的“深度学习”技术是人工智能(AI)的一个分支,可模仿人脑的工作原理。它也是微软、Facebook、亚马逊和谷歌的重大关注焦点。

IBM的目标是将深度学习系统消化数据所需要的时间从数天缩短到数小时。IBM研究所的IBM研究员和系统加速及记忆主管希拉里·亨特(Hillery Hunter)说,这些改进可以帮助放射学家更快、更准确地找到病变部位,并读取大量医学图像。

到目前为止,深度学习主要是在单一服务器上运行的,因为在不同计算机之间移动大量数据的过程太过复杂。而且,如何在许多不同服务器和处理器之间保持数据同步也是一个问题。

IBM在周二的公告中说,已经开发出了能够将这些任务分配到64台服务器的软件,这些服务器总共有256个处理器,可在速度方面取得巨大飞跃。凡是拥有IBM Power系统服务器的用户,以及其他想要测试的技术人员,均可获得这项技术。

IBM使用了64个自主开发的Power 8服务器,每一个都将通用的英特尔微处理器和英伟达图形处理器连接起来,并使用快速的NVLink连接,以促进两种芯片之间的数据流传输。

Zynq-7000学习笔记(六)——HLS综合FAST corner并导出IP

PC平台:WINDOWS 10 64位

Xilinx设计开发套件:Xilinx_vivado_sdk_2015.2

开发板:Zed Board

参考文档:XAPP1167          

参考代码:XAPP1167.zip

作者:Mariya,TOPBOTS的研究和设计主管

摘要: 这14 种原创设计模式可以帮助没有经验的研究者去尝试将深度学习与新应用结合,对于那些没有机器学习博士学位的人来说是一个很好的起点。

自2011年以来,深度卷积神经网络(CNN)在图像分类的工作中的表现就明显优于人类,它们已经成为在计算机视觉领域的一种标准,如图像分割,对象检测,场景标记,跟踪,文本检测等。

但,想要熟练掌握训练神经网络的能力并不是那么容易。与先前的机器学习思维一样,细节决定成败。但是,训练神经网络有更多的细节需要处理。你的数据和硬件有什么限制?你应该是从何种网络开始?你应该建立多少与卷积层相对的密集层?你的激励函数怎样去设置?即使你使用了最流行的激活函数,你也必须要用常规激活函数。

学习速率是调整神经网络训练最重要的超参数,也是最难优化的参数之一。太小,你可能永远不会得到一个解决方案;太大,你可能刚好错过最优解。如果用自适应的学习速率的方法,这就意味着你要花很多钱在硬件资源上,以此来满足对计算的需求。

设计选择和超参数的设置极大地影响了CNN的训练和性能,但对于深度学习领域新进入者来说,设计架构直觉的培养可能就需要资源的稀缺性和分散性。

各厂商的 SATA 驱动器均能够与 Zynq UltraScale+ MPSoC 器件的 SATA 控制器连接。

用户需要了解以下完成测试的范围:

  • 所支持的 SATA 解决方案有哪些?
  • 哪些 SATA 驱动器可在 Xilinx Zynq UltraScale+ MPSoC 器件上测试以及能完成哪些类型的测试?
  • Xilinx 只能为列表中标示为“Xilinx 已测试和支持”的器件提供技术支持。

    解决方案

    下列是可通过 SATA 驱动器在 Zynq UltraScale+ MPSoC SATA 控制器上完成的测试:

    SATATest:

  • DMA 读取/写入命令。
  • FPDMA 读取/写入命令。
  • 48/28 位寻址。
  • 识别命令。
  • 某些在不同链路速率下检测的特定 HDD/SSD。
  • 所测试的最低事务处理量为 512 字节(单个扇区)。
  • 最大事务处理将限于 2k*7 = 14,336 字节(28 个扇区,主要取决于概率参数)的数据量。
  • 所涵盖的命令槽:31 3(在所有 28 个扇区都使用的情况下)。

  • 所涵盖的存储器:
  • 同步内容