爱小说

第199章 大功告成

小说:重生学神有系统 作者:一碗酸梅汤 更新时间:2019-12-31 17:07
爱小说(www.ixs.cc)开通手机站了,手机用户可以登录 m.ixs.cc 进行阅读,效果更好哦!
  不过,在跑代码之前,还要对数据进行预处理。
  江寒先从报名信息表中,将性别信息仍然“健在”的行挑出来,只保留序号、姓名和性别,另存为。
  这些记录一共9527条,大约占三万多条数据总数的30%。
  它们对应着9527张真彩色照片。
  24位真彩色的图片,每个像素点在内存里,要占用3个字节的存储单元。
  每张照片有210×120个像素,这样读入一张照片,需要的内存空间就是210×120×3=75600个Byte。
  9527条数据,共需要9527×75600=720241200B≈686.88M≈0.7G!
  这个内存开销,还是比较容易接受的。
  但是,“感知机”的算法,需要进行大量浮点乘法运算。
  对每个像素的每个RGB分量都算一遍?
  没那个必要,也太浪费时间。
  所以,聪明的做法,是先把照片数据“压缩”一下。
  江寒给“感知机”的代码,添加了一个LoadData函数,用来读取和处理照片数据。
  在这个函数里,先定义一个二维的整形数组Feature。
  然后从中读出序号、姓名信息,按照刚才建立的索引表,找到对应的照片文件。
  下一步,将照片读取到内存中,读取的同时,将每个像素二值化。
  具体做法是:色彩浓度在阈值以上的像素,取值为1,低于阈值就让它为0。
  这样一来,原本的真彩色照片,就被转换成了黑白轮廓图。
  然后,再将轮廓图中的0或者1的取值,按照从左到右、从上到下的顺序,重新编排成一行数据,存放到数组Feature中。
  Feature中的每一行,都存储了一张照片的二值化信息。
  一共9027张照片,就需要9027行。
  全部照片处理完毕后,就得到了一个巨大的二维数组Feature。
  它有25200列、9027行!
  接下来,定义一个拥有9027个整形元素的一维数组Label。
  从中读入性别信息,男生设为1,女生设为0,存放在数组Label中。
  Feature加上对应的Label,就构成了训练数据集。
  训练“感知机”时,将一行行Feature代入公式中,进行加权和运算,其结果再通过sign函数,转换为0或1,然后和对应的Label值对照。
  如果不相符,就调整权重和偏置,然后重新计算。
  当每一个Feature代入公式后,都能计算出正确的Label时,就得到了一组权重和偏置。
  也就是说,构建出了一个可用的数学模型。
  依据这个模型,计算机就可以读入任何一张同尺寸、类型的照片,对其二值化的数据代入模型中运算,并根据运算结果判断分类归属。
  这就是典型的机器学习过程,计算机从数据中自己“学”到了某种规律。
  即使这种规律,人类并不一定完全理解,也不见得能用数学语言解释清楚……
  剩下的就比较简单了。
  接下来,江寒又添加了几个函数,用来输出运算结果、观察运行情况等。
  最后,从头调试了一遍,确认没啥bug后,将代码重新编译,然后运行了起来。
  屏幕上有一些数字,表示当前正在处理的数据,和训练进度的百分比。
  十分钟后,后一个数字才刚刚达到1.3%。
  这表示,完整训练一遍,大约需要13个小时……
  之所以这么慢,主要是江寒的程序,比较追求稳定性,以及调试的方便、快捷,并没特别讲究执行效率。
  当然,即使他用心优化,估计也需要8个小时以上,才能完成训练。
  虽然有点慢,但其实没什么关系,训练过程并不需要人工干预,挂机等着就行。
  第二天早晨,江寒起床后,先看了下训练进度,还差了大约13%才能完成,就先去班级上课。
  中午吃完饭回来,训练终于结束了。
  而存放权重和偏置参数的Weight数组,也以内存映像的方式,保存在了一个二进制文件中。
  接下来就简单了。
  重建一个一模一样的感知机模型,加载上这个权重文件,就可以用它来判断剩余照片的性别了。
  江寒重新改写代码,然后运行。
  这次十分迅速,只用了不到20分钟,就将两万一千来张照片,全部处理完毕。
  这就是“感知机”,或者说“人工神经网络”的特点。
  训练起来特别耗时,一旦训练完成,工作起来非常快捷。
  至于正确率,江寒初步估计,大大超过99%,21000条未经训练的数据里,判断出错的,绝不超过10人。
  比人类肉眼的识别率低不到哪里去。
  事实上,“感知机”或者说“人工神经网络”的错误率,跟训练数据、测试数据的质量有很大关系。
  如果比较规范,达到100%的识别率都不算稀奇。
  可惜实际运用中,总有个别实例,奇葩得超乎想象。
  有的时候,人类都几乎无法识别!
  根据老高的说法,这区区几个错误的,可以在把名单下达到各校后,根据反馈修改一下就行。
  如果没有这个托底,就没法使用“感知机”,因为没办法判断,哪些人被误分类了……
  得到了全部照片的性别数据后,江寒将其粘贴到了《报名信息表》中。
  大功告成后,江寒没急着找高老师复命。
  这么快就搞定,老高肯定会十分震惊,然后追问前因后果。
  “感知机”解释起来太费劲,而且也没那么高大上,还用不着见人就推销。
  关键老高一个人贡献的那点震惊值,江寒现在已经有点看不上眼了。
  休息了一会儿后,江寒就拿着《noip通关宝典》,回班级继续刷题。
  ※※※※※
  “杠上开”是一个营销号主。
  什么是营销号?
  百科上说,一般是指组织机构或者个人对外宣传散发信息所用的账号,具有目的性,一般是用来宣传产品或服务的。
  狭义上说,就是纯粹以赚钱为目的,专门在各大视频站上传垃圾内容的人。
  内容粗制滥造?那是基本操作;
  虚假宣传和科普?那是日常作业;
  动不动危言耸听、各种震惊?这根本就不算事儿。
  没事儿当当水军,引导引导舆论,才是他们的主要业务。
  反正很多事情,很多人既不了解,也不具备判别能力,还不是哪边人多信哪边……
  你说网友们义愤填膺?
  上面都不管,网友算老几,钱到手才是真的。
  为什么网站不整治?
  一个是很难区分,容易误伤正常的up主;
  再一个,网站跟流量什么仇、什么怨……
  “杠上开”就是这样一个营销号,每天出没于各个视频站,P站算是他最重要的基本盘。
  他最常做的,就是接受客户的委托,然后不择手段地完成任务。
  视频网站给的那点补贴,他根本没放在眼里,客户的赏金才是大头。
  今天,他做完“作业”,上传完几个视频,然后随便在P站逛了一会儿。
  忽然,一个点击、投币超高的视频,跃入了眼帘。
  本月热门?
  “杠上开”来了点兴趣。
  仔细一看标题,顿时有点无语。
  《旧光驱改造写字机器人》……真够夸张的,你怎么不改造成航母呢?
  不过,好奇之下,他还是点开了视频,看了一眼。
  结果,一看之下,他瞬间就惊呆了。
  卧槽,还真是个高手,这动手能力有点逆天了。
  本着一个营销号的职业精神,“杠上开”感到了一种久违的使命感。
  必须做点什么。
  没错,这么有创意的视频,不盗上一把,他简直浑身蓝瘦!
  不过,简单的重发是不行的,网站的审核员职位,也不是白设置的。
  所以,还需要用点技巧,稍微加工、处理一下……
爱小说WWW.IXS.CC努力创造无弹窗阅读环境,大家喜欢就按 Ctrl+D 加下收藏吧,有你们的支持,让我们走得更远!
可以使用回车、←→快捷键阅读