如何训练自己的神经网络

人工智能(AI)如今似乎正蓄势待发:它正在检测皮肤癌,在Facebook上寻找仇恨言论,甚至在西班牙警方的报告中标出可能的谎言。但人工智能并非都由大型企业和政府管理;你可以下载一些算法,自己玩,结果往往很搞笑。...
This image created by an actual human. I think.

人工智能(AI)如今似乎正蓄势待发:它正在检测皮肤癌,在Facebook上寻找仇恨言论,甚至在西班牙警方的报告中标出可能的谎言。但人工智能并非都由大型企业和**管理;你可以下载一些算法,自己玩,结果往往很搞笑。

这是一张满是假乐队名字的假科切拉海报,通过把一堆真乐队名字输入一个神经网络,让它自己想出一些名字来创作。有一些菜谱也是以类似的方式**的,其中“烧烤牛肉”要求“1杯啤酒-切成方块”,还有我最喜欢的,珍妮尔·沙恩的人工智能生成的颜料(标记你自己,我是多克伍德)。

这些都是用神经网络**的,神经网络是一种人工智能,模拟了我们大脑的网络特性。你通过给神经网络输入来训练它:例如,食谱。在学习的过程中,这个网络比其他神经元(模仿脑细胞)之间的联系更为紧密。这个想法是,它要弄清楚输入的工作规则:例如,哪些字母倾向于跟随其他字母。一旦网络被训练,你可以要求它生成自己的输出,或者给它一个部分的输入,然后让它填充剩下的。

但是计算机实际上并不理解,比如说,**食谱的规则。它知道啤酒可以是配料,东西可以切成小块,但从来没有人告诉过它啤酒不是这些东西之一。看起来几乎正确,但误解了一些基本规则的输出,往往是最搞笑的。

我很高兴从远处看到这些滑稽动作,直到谢恩在推特上提到,一个中学的编码班产生了比她更好的冰淇淋名字。我想,如果孩子们能做到,我也能做到。

如何训练你的第一个神经网络

我从Shane用于冰淇淋口味的相同工具箱开始:一个名为textgenrnn的python模块,由Buzzfeed的Max Woolf编写。使用它需要基本的命令行知识,但它适用于任何安装了python编程语言/解释器的系统(Mac、Linux、Windows)。

在你训练你自己的神经网络之前,你首先需要一些输入。例如,中学一开始就有上千种口味的冰淇淋。不管你选择什么,你至少会想要几百个例子;几千块更好。也许你想下载你所有的推文,并要求网络生成一些新的推文。或者查看维基百科的创意列表。

不管你选择什么,把它放到一个文本文件中,每行一个条目。这可能需要一些创造性的复制粘贴或电子表格工作,或者如果你是一个老代码,你可以写一些难看的perl脚本来将数据提交。我是一个丑陋的perl脚本类型的女孩,但当我最终想要tl80标题为我的一个数据集,我只是要求我们的分析团队为标题的大名单,他们给我发电子邮件正是我需要的。问得好是一种被低估的编码技巧。

(如果你想把tl80的头条新闻输入到你自己的神经网络中,下面是这个列表。大约有一万个。)

为新项目创建一个文件夹,并编写两个脚本。首先,一个名为train.py:

from textgenrnn import textgenrnnt = textgenrnn()t.train_from_file(‘input.txt’, num_epochs=5)

这个脚本将让神经网络读取你的输入并思考它的规则是什么。脚本中有一些内容可以修改:

  • t=textgenrnn()可以在第一次运行脚本时使用,但是如果您想稍后再使用它,请输入运行脚本时神奇地出现在文件夹中的.hdf5文件的名称。在这种情况下,行应该如下所示:t=textgenrnn('textgenrnn\u weights.hdf5')
  • “input.txt”是文件名,每行有一个标题/recipe/tweet/etc。
  • num\u epochs是您希望处理文件的次数。你让神经网络学习的时间越长,它就越好,所以从2或5开始看看需要多长时间,然后从那里开始。

训练网络需要一段时间。如果你在笔记本电脑上运行你的脚本,一个epoch可能需要10到15分钟(更大的数据集需要更长的时间)。如果你有一个结实的桌面,也许你或朋友的游戏电脑,事情会发展得更快。如果你有一个大数据集,你可能会要求它提供几十个甚至几百个时代,让它在一夜之间运行。

接下来,编写另一个名为spit\u out\u stuff.py的脚本(您可以随意给出比我更好的名称):

from textgenrnn import textgenrnnt = textgenrnn(‘textgenrnn_weights.hdf5')t.generate(20, temperature=0.5)

这是有趣的部分!上面的脚本将给你20个有趣的新东西看。最后一行的重要部分是:

  • 要生成的东西的数量:这里,20。
  • 温度,就像一个创造性的表盘。在0.1时,您将得到非常基本的输出,这可能比您输入的内容更无聊。在1.0时,输出将变得非常有创意,以至于输出的内容往往甚至不是真实的文字。如果你敢的话,你可以升到1.0以上。

当您运行这个训练脚本时,您会注意到它显示了不同温度下的样本输出,因此您可以使用它来指导您运行了多少个历元,以及您希望使用什么温度来生成最终输出。

并不是你的神经网络想出的每一个点子都是喜剧黄金。你得自己挑最好的。以下是我的AI想出的一些更好的tl80头条:

**婴儿笔记本电脑的最佳方法

如何在退格游戏中生存

求职面试的最佳方式

如何得到最好的篝火你的生活与这个方便的图形

如何**自己的播客吧

如果你是Arduino的话,如何获得一个新的iPhoneX

如何在博物馆清理自己的尺寸

如何开始你的故事和焦虑

最好的办法,使你自己的墨水了冬天

如何用一个想象的概念来维持你的关系

用树莓皮做一杯完美葡萄酒的最佳方法

上厕所吃草莓的最好方法

如何在假期找到更好的工作

吃顽固罐子的最好方法

我是通过模拟温度和训练次数得到的,每次看到我喜欢的东西,我都会把它复制到我最喜欢的文本文件中。我还用逐字的算法进行了实验;上面的脚本使用默认的逐字符模型。我最后的标题列表包括了这两个方面的结果。

如果你对一些不合格品感兴趣,以下是我得到的0.1度的温度:

最好的方式保持流停止更多的替代品,使您的**

当你不需要了解这个世界的时候,最好的方法就是把最好的能量流出来

最好的办法是留下来开始留下来开始你常用的方法阻止任何人

如何以最佳方式查看最受欢迎的帖子

留下来的最好方法就是开始做你的**

如果我把它调到1.5(危险的创意):

今天的遗骸:如何指认不明真相

更新Qakeuage旅行历史,Ovenchime,或“Contreiting PassFleed”

风险不是两个复制品,集中在Zoomitas

如果你去了吸血鬼俱乐部,或者有信誉的高级厕所

DIY烧烤现在可以用我的嘶嘶声来传播你的话语了

显然,需要人的帮助。

成为你ai的伙伴

尽管神经网络可以从数据集中学习,但它们并不真正了解发生了什么。这就是为什么一些最好的结果来自于人和机器之间的伙伴关系。”“我知道这是我使用的一个工具,”珍妮尔·谢恩说,“但很难不把它看作是——‘来吧,小神经网络,你能做到’和‘哦,那太聪明了’或者‘你越来越糊涂了,可怜的小东西。’”

为了充分利用你们的关系,你必须指导你的人工智能伙伴。有时,它可能会很擅长猜测数据集的规则,以至于它会重新创建与您输入的AI版本剽窃相同的内容。你必须检查它有趣的输出是真正的原创。

Botnik工作室通过训练预测文本键盘将人与机器配对。想象一下,如果你拿起你朋友的**,只用他们键盘上的预想输入法输入信息。你最终会写下自己的信息,但风格却和你朋友的一样。同样,你可以用任何你想要的数据源训练一个Botnik键盘,然后用键盘提供的单词来写。这就是这个惊人的建议专栏决斗的来源:两个博尼克键盘训练野蛮的爱和亲爱的艾比。

如果你更喜欢与你的算法伙伴对抗,而不是与之合作,那么看看詹妮尔·谢恩是如何恶作剧一个神经网络的,这个神经网络一开始似乎很擅长识别放牧在草地上的绵羊。她用Photoshop把羊拍了出来,意识到人工智能只是在草地上寻找白点。如果她把羊涂成橙色,人工智能就会认为它们是花。因此,她向推特上的粉丝们询问在不寻常的地方养羊的情况,发现AI认为汽车里的羊一定是狗,树上的山羊一定是鸟,厨房里的羊一定是猫。

严重的人工智能也会有类似的问题,玩算法取乐可以帮助我们理解为什么它们如此容易出错。例如,一个早期皮肤癌检测AI意外地学会了区分癌变和良性皮肤病变的错误规则。当医生发现一个大的病灶时,他们经常把它放在尺子旁边拍照以显示其大小。人工智能意外地告诉自己,很容易发现癌症肿瘤:只要寻找统治者。

我们可以学到的另一个教训是,一个算法的输出只和你输入的数据一样好。ProPublica发现,在判决中使用的一种算法对黑人被告比白人被告更严厉。它没有把种族作为一个因素,但它的输入使它错误地认为,黑人被告的共同犯罪和背景比白人被告的共同犯罪和背景更能预测重复犯罪。这台电脑不知道种族的概念,但如果你的输入数据反映了一种偏见,电脑最终会延续这种偏见。我们最好理解算法的这种局限性,不要假设因为算法不是人类,所以它们必须是公正的(祝你的仇恨演讲好运(AI,Facebook!)

混合数据集

不需要停在一个数据集上;你可以把其中两个混在一起,看看结果如何(例如,我结合了Goop和Infowars商店的产品列表。稍有不慎。)

你也可以训练分类算法。谢恩说她已经有了一份金属乐队的名单和一份我的小马名字的名单,所以她训练了一个分类器来区分它们(小指末日:99%的金属。)一旦你有一个分类器训练,你可以输入任何东西到它,并得到一个读数。本尼迪克特坎伯巴奇:96%的金属。

你也可以把任何你喜欢的东西输入到一个训练有素的textgenrnn网络中。当您指定需要多少项以及网络应使用的温度(创造力)时,还可以为其指定前缀。然后,它会尝试找出应该跟在这个前缀后面的单词。在我训练了tl80头条之后,我让人工智能给我以“3种成分的快乐时光”开头的头条新闻。它用一些奇妙的虚构***作为回应(同样,这些是我从一个较长的列表中挑选出来的):

三、快乐时光:药草压力升级

快乐时光:蛋糕的休息时间

快乐时光:黑锅

3.配料快乐时光:为他们准备的比萨饼和饮料

快乐时光:费伦特锅

3.快乐时光:咽喉成清爽

3.欢乐时光:最佳酒吧点菜

快乐时光:剩下的派对

快乐时光:夏日朗姆酒

快乐时光:最好的椰子酱

快乐时光:美丽的希克林

快乐时光:奶酪糖

如果你在未来的tl80帖子中看到这些,不要惊讶;我们的食品和饮料编辑克莱尔·洛尔说,她想尝试**其中一些。

但我没有等待她的专家食谱,而是决定把它们也输入神经网络。我从chrislowder的***指南和WikiBooks***词汇表中收集了一些***食谱,并对它们进行了整理,使每一种***占据了文本文件的一行,***的标题是前几个单词。这意味着我可以选择一个***的名字,并要求我的***训练神经网络提供下面的食谱。以下是一些结果:

最好的可可豆-奥兹。本笃会。1破折号b<1盎司酸果蔓。5盎司柠檬汁。75盎司伊特伦d。2个短划线突出的狭缝。搅拌/过滤/搅拌/无装饰

奶酪糖i。1盎司白兰地雪利酒b。1.5盎司新鲜菠萝d。L***tine Brandy Bowl De there at large Jamac c.朗斯汀白兰地酒杯。2条菠萝d。一点芳香苦味。1.杜松子酒ii。1盎司伏特加ii。5盎司陈年朗姆酒。2片安格斯图拉苦味一。搅拌/过滤/尼克诺拉杯/冰/1

费伦特壶--1.25盎司绿黄褐色1.5盎司伦敦杜松子酒b。75盎司威士忌b。橙汁半威士忌

你可以要求任何东西,当然:

贝丝斯克瓦雷奇-1盎司混合苏格兰(果汁)水b。1盎司蛋清,装在大石杯中,配dets 1934或makes Babbino

生活黑客c。14伏特加马提尼。75盎司Campari i。摇瓶/细滤/双门轿车/柠檬汁

输入的数据只有几百种***配方,所以我必须把温度调高,才能得到任何有趣的东西。在高温下(本例中为1.0),有时你会得到一些不真实的单词。祝你在商店里找到任何朗斯汀白兰地或布伦迪雪利酒,但如果你找到了,我的宠物艾将非常高兴。

  • 发表于 2021-05-14 23:20
  • 阅读 ( 125 )
  • 分类:互联网

你可能感兴趣的文章

什么是神经网络?它们是如何工作的?

如果你跟上科技新闻,你可能会遇到神经网络(也称为神经网络)的概念。 ...

  • 发布于 2021-03-16 14:03
  • 阅读 ( 348 )

你有多蠢?5个大脑训练和分析应用程序来检查你的大脑

...能。这些大脑训练和分析应用程序显示了你有多笨,教你如何磨砺你的头脑。 ...

  • 发布于 2021-03-22 16:18
  • 阅读 ( 211 )

深度学习vs.机器学习vs.人工智能:它们是如何结合在一起的?

...所需的时间。将这种技术应用到深度学习中,产生了人工神经网络。 ...

  • 发布于 2021-03-22 20:26
  • 阅读 ( 263 )

如何使用googletensorflow和raspberry-pi构建diy人工智能项目

...。但它能和树莓皮一起吃吗?Pi是否能够维持一个工作的神经网络?有了谷歌TensorFlow,它可以! ...

  • 发布于 2021-03-23 18:25
  • 阅读 ( 209 )

通过以下11个基本视频了解网络安全

...使用轶事,使她的话更加难忘。看完之后,你会更加清楚如何通过实际的行为和措施来帮助遏制网络犯罪。 ...

  • 发布于 2021-03-25 05:00
  • 阅读 ( 186 )

深入研究replika:我的人工智能朋友

...nko的不幸去世所留下的空虚。通过将罗曼的短信输入一个神经网络来构建一个像他一样发短信的机器人,这个机器人的目的是作为一个“数字纪念碑”来保持他的记忆。 ...

  • 发布于 2021-03-28 12:58
  • 阅读 ( 387 )

如何学会用简单的方法编写代码(并赚更多的钱)

... 深度学习大师班:一门专注于深度学习和机器如何使用神经网络从数据中学习的课程。您将学习Keras、Tensorflow等核心工具。 ...

  • 发布于 2021-03-30 14:28
  • 阅读 ( 249 )

人工智能的问题是:机器在学习东西,但不能理解它们

...功能时,通常意味着该公司正在使用机器学习来构建一个神经网络。“机器学习”是一种让机器“学习”如何更好地执行特定任务的技术。 我们不是在攻击机器学习!机器学习是一种奇妙的技术,有很多强大的用途。但它不是...

  • 发布于 2021-04-04 05:25
  • 阅读 ( 146 )

facebook的下一个大型人工智能项目是在用户的公共视频上训练机器

...回答具体将收集多少视频用于培训其人工智能系统,以及如何监督公司研究人员获取这些数据的问题。 不过,在宣布该项目的博客文章中,社交网络确实指出了一个未来的推测用途:使用人工智能检索智能眼镜捕捉到的“数字...

  • 发布于 2021-04-16 02:30
  • 阅读 ( 238 )

聊天机器人是愚蠢的,但等到他们学会如何为你谈判

...。 这项研究的核心技术是在记录的谈判数据集上训练的神经网络。在这种情况下,谈判场景是“多议题谈判”,通过机械土耳其人招募的人类参与者被要求在他们之间分配一些项目。每个参与者对这些项目的评价都不同,他们...

  • 发布于 2021-05-11 14:56
  • 阅读 ( 137 )
gid8845ddw
gid8845ddw

0 篇文章

相关推荐