随机器学习兴起的Julia编程语言

Julia这个编程语言即有Python的开发效率,也有C的执行效率,是为数值运算设计的编程语言。Julia可以直接调用C,很多开源的C和Fortran库都集成到了Julia基础库。另外,它也有notebook。

Julia试图取代R, MATLAB, Octave等数值计算工具。其语法与其他科学计算语言相似。在许多情况下拥有能与编译型语言相媲美的性能。Julia的设计遵从三个原则,快、表达式丰富、动态语言。Julia的核心使用C语言编写,其他部分使用Julia本身编写。

目前这门编程语言在国内知名度不高,如果你在百度搜索Julia,第一页没有一个和Julia语言相关的条目,相反出现的是一个日本av star,这。。。

目前在机器学习领域最流行的编程语言还是Python,看一张图:

随机器学习兴起的Julia编程语言 继续阅读随机器学习兴起的Julia编程语言

TensorFlow练习25: 使用深度学习做阅读理解+完形填空

记的在学生时代,英语考试有这么一种类型的题,叫:阅读理解。首先让你读一段洋文材料,然后回答一些基于这个洋文材料提的问题。

我先给你出一道阅读理解

Big Panda learned to code when he was 21. He live in China and have no life, feel like a big loser. But here is one thing Panda want you to remember…it´s never too late! You can do anything if you put your heart on it!

____ is the loser.(下划线处该填什么呢?)

我出的这道填空题,对人来说轻而易举,但是要让机器回答就很难了。机器阅读和理解人类语言是非常有挑战性的。

本帖就使用TensorFlow练习一个阅读理解,看看准确率能到什么程度。 继续阅读TensorFlow练习25: 使用深度学习做阅读理解+完形填空

MovingAverage-滑动平均

MovingAverage可翻译为滑动平均或移动平均,是做时间序列预测时用到的简单方法。

计算方法:对于一个给定的数列,首先设定一个固定的值k,然后分别计算第1项到第k项,第2项到第k+1项,第3项到第k+2项的平均值,依次类推。

下面代码取自TensorFlow源代码:

以1、2、3、4、5共5个数为例,window为3,计算过程为:(1+2+3)/3=2,(2+3+4)/3=3,(3+4+5)/3=4。 继续阅读MovingAverage-滑动平均

Fizz Buzz in Tensorflow-一场奇怪的面试(译)

原文地址:http://joelgrus.com/2016/05/23/fizz-buzz-in-tensorflow(作者:Joel Grus)

话说Fizz Buzz是什么鬼?

Fizz Buzz是洋人小朋友在学除法时常玩的游戏,玩法是:从1数到100,如果遇见了3的倍数要说Fizz,5的倍数就说Buzz,如果即是3的倍数又是5的倍数就说FizzBuzz。

最后演变为一个编程面试题:写一个程序输出1到100,但是如果遇到数字为3的倍数时输出Fizz,5的倍数输出Buzz,既是3的倍数又是5的倍数输出FizzBuzz。 继续阅读Fizz Buzz in Tensorflow-一场奇怪的面试(译)

TensorFlow练习24: GANs-生成对抗网络 (生成明星脸)

GANs是Generative Adversarial Networks的简写,中文翻译为生成对抗网络,它最早出现在2014年Goodfellow发表的论文中:Generative Adversarial Networks。GANs是目前深度学习领域最火的网络模型,苹果最近发布的第一篇论文就是关于GANs的:SimGAN。

简单来说,GANs会学着生成和训练数据相似的数据,一个最典型的应用是生成图像。假设你有一堆猫的图片,你使用这些图片训练GANs,之后它会生成和训练数据相类似的猫的图片(它习的了猫的特征)。

GANs用到机器学习的两种模型:Generative生成模型和Discriminative判别模型。

GANs类比:假设G是大伪艺术家,以制作古董赝品为生,G的终极目标是以假乱真。但是呢,又有一些人以鉴宝为生(D)。开始你给D展示了一些古董真品,告诉D这是正品。然后G开始制作赝品,想骗过D,让他分辨不出真假。随着D看到越来越多的真品,G要骗过D就越来越难,当然,G也不是吃闲饭的,它会加倍努力的试图骗过D。随着这种对抗的持续,不仅D鉴宝的本领提高了,G也会越来越擅长制作赝品。这就是名字中生成-对抗的意思。 继续阅读TensorFlow练习24: GANs-生成对抗网络 (生成明星脸)

是AI就躲个飞机-纯Python实现人工智能

很久以前微信流行过一个小游戏:打飞机,这个游戏简单又无聊。在2017年来临之际,我就实现一个超级弱智的人工智能(AI),这货可以躲避从屏幕上方飞来的飞机。本帖只使用纯Python实现,不依赖任何高级库。

本文的AI基于neuro-evolution,首先简单科普一下neuro-evolution。从neuro-evolution这个名字就可以看出它由两部分组成-neuro and evolution,它是使用进化算法(遗传算法是进化算法的一种)提升人工神经网络的机器学习技术,其实就是用进化算法改进并选出最优的神经网络。

neuro-evolution

继续阅读是AI就躲个飞机-纯Python实现人工智能

可视化Google Inception V3模型的网络结构

深度学习涉及到图像就少不了CNN模型,前面我做过几个关于图像的练习,使用的CNN网络也不够”Deeper”。我在做对象检测练习( Object Detection)时,需要用到更复杂的网络结构。本帖就使用TensorBoard看看Inception V3模型的网络结构。

Inception (GoogLeNet)是Google 2014年发布的Deep Convolutional Neural Network,其它几个流行的CNN网络还有QuocNetAlexNetBN-Inception-v2VGGResNet等等。

Inception V3模型源码定义:tensorflow/contrib/slim/python/slim/nets/inception_v3.py

训练大的网络模型很耗资源,幸亏TensorFlow支持分布式:

继续阅读可视化Google Inception V3模型的网络结构

TensorFlow练习23: “恶作剧”

前面有一个帖《OpenCV检测场景内是否有移动物体》我用树莓派做了一个简单的Motion Detection,放在卫生间的,它会在我上大号时自动播放音乐。

我一个人租房,几个盆友周末时常会找我玩,他们觉得我做的Motion Detection很垃圾。于是我就想恶搞一下,用TensorFlow做一个“人脸识别”,在我上大号时播放音乐,如果是别人就播放《张震讲鬼故事》(@xingCI说放屁声更搞)。 继续阅读TensorFlow练习23: “恶作剧”

我是怎么学习英语的

网友提问:很多高质量的编程技术资源都是英文的,你是怎么学习英语的?

我先说一下我大学毕业时的英语水平,也就是3年前。你要知道的一点是,我一直就不是一个所谓的好学生,英语4级差不点就过了!现在的水平是读和听不费劲,写和说就不行了。我并没有刻意的学过英语,背单词啥的,而是在娱乐活动中就把英语学了。

我最初学英语的动机是看YouTube,YouTube上有很多好东西(川普和希拉里辩论撕B,我在YouTube上看的直播,很逗),洋文不好的话,看起来很费劲,很捉急。

我说一下我开始是怎么学英语的,不一定适合你。

有些洋文影视剧、动画做的非常优秀。首先我会找一些好片子,先带中文字幕看一遍,过一段时间在不带字幕看一遍,反反复复,看N遍,直到不看中文字幕能完全理解为止。

  • 看中文字幕的理解过程:听->中文->理解
  • 不看中文字幕的理解过程:听->理解(做到不用中间媒介,直接转换为意思)

当然,能让人看N遍的影视剧必然是精品,例如《肖申克的救赎》,我都忘了看多少遍了,著名台词 <“I guess it comes down to a simple choice, get busy living or get busy dying. “> <“First you hate ’em, then you get used to ’em. Enough time passes, gets so you depend on them. That’s institutionalized.”> <“It takes a strong man to save himself, and a great man to save another. “>。

还有就是尽可能多的接触英语资源,如Hacker News,刷Twitter(国际新闻大事件全都有)、听podcast、TED、国际名校公开课等等。这种方法学的可不止是英语,它还弥补了我颓废的大学4年。

至于写和说,说还好,写的话只能靠大量练习了。

如要转载,请保持本文完整,并注明作者@斗大的熊猫和本文原始地址: http://blog.topspeedsnail.com/archives/10921