Google盲人工程师讲述软件设计之路

拉蒙是一位来自印度的盲人程序员,擅长复原盲文魔方并创造了世界纪录。他利用读屏软件克服视觉障碍,高效使用互联网,并致力于开发帮助视障者更好地使用计算机的技术。拉蒙还改进了LaTeX系统以便视障者能够阅读数学公式。

拉蒙的网络主页上,第一句话是这么写的:“在互联网上,没有人知道你不是一条狗!”在接下来的页面中,出现了很多他和导盲犬艾斯卡的照片。

 从康奈尔到硅谷,从IBM、Adobe一直到Google公司,十几年间,导盲犬艾斯卡一直陪伴着这位来自印度的程序员。“可惜,他现在已经13岁。老了,我没法带着他长途旅行了。”带着墨镜的拉蒙遗憾地说。前段时间,他参加了北京举行的Google创新论坛,成为了全场的焦点,很多人也是第一次想到这么一个问题:互联网让世界发生了翻天覆地的变化,那么,它给盲人带来了什么?

 天赋 复原盲人魔方世界第一人

 “普通人的互联网,和盲人的互联网,是同一个互联网。”拉蒙似乎很高兴被问到这个问题。“这也是为什么互联网对于盲人来说是多么重要,这个工具赐予了人们平等。”

 “发电子邮件的时候,我们不会去关心对方用的什么电脑,什么键盘,屏幕是彩色的还是黑白的,只关心我们沟通了什么内容。你编辑了一篇文章放在网上,你不会去关心阅读你文章的人用的是PC还是移动设备。在万维网面前,没有限制,没有边界。所有人都是平等的。”

 坐在Google大楼的会议厅里,一桌人将他团团围住。拉蒙显然是个重要人物,而他显然也是所有人中最快乐的人物,从头到尾,都在用笑话点缀着对话,永远都有话说。

 他的手也似乎一直闲不下来。扳手指的动作让他看起来有些紧张。坐在旁边的美籍华人查尔斯给他递去一张纸。拉蒙放松了下来,边聊天边开始折纸。查尔斯是和他最接近的同事,两人共同设计着各种为盲人服务的软件。在Google,人们往往把他们喊成“拉蒙和查尔斯”。

 拉蒙出生在印度普纳一个有六个孩子的中产阶级家庭。哥哥也做软件工程的。“在印度,你不是软件工程师就是医生。”他口音浓重,笑声爽朗,似乎自己进入这个行业是一件理所应当的事。

 从小,拉蒙就显示出一些不同。如果在Youtube网站上输入拉蒙的名字,可以看到他的一些视频。拉蒙能在23秒内复原了盲文魔方,他是世界纪录的保持者。这是拉蒙年轻时最喜欢做的事情。再小一些的时候,比如15岁时,他刚因青光眼失去视力,几乎每天都要玩一个解谜游戏:通过日期,算出那天是星期几。“我从小就喜欢数学,喜欢解谜,可能是受哥哥影响。”他淡淡地笑道,“数学的兴趣是天生的。老实说,不管怎样我都会成为数学家。”

 多年后,有人向他提了这么一个问题:看不见东西,那做数学题是什么感觉?“我还真从来没想过这个问题,一想才觉得真是有趣。”于是,他为此写了一篇论文《数学思考》,讲述自己对数学的理解。他的核心想法是,数学远比人们想象的要大得多,玩数学的习惯并不需要阅读,而完全可以通过大脑心算来取得。

 读屏 语音是常人语速的3倍

 在还没有电脑的时代,学习对于盲人来说非常困难。尽管如此,拉蒙还是考入了印度最好的理工学校——印度理工学院,在这里开始数学和计算机科学的硕士研究,成为该校历史上第一个盲人学生。他如何与那么多优秀的青年学子一起求学?因为很多学生都被要求参与社会服务,所以他说服校长让同学通过阅读屏幕来帮助他学习。有一个学期,多达13个同学志愿帮助他朗读屏幕,再由他用盲文进行记录。

 1989年,拉蒙来到美国康奈尔大学做计算机科学博士研究。情况发生了变化。那时候,盲人用计算机刚刚出现。拉蒙也得到了自己第一台语音合成器和当时最先进的读屏软件。

 不过,哪怕是世界上领先的读屏器,面对文字只有一行,每行只有40个字的老式屏幕也没有更多招数。拉蒙只能一个字一个字慢慢地听。

 好在过去几十年里,计算机技术发生了翻天覆地的变化。现在的显示器可以漂亮地摆置60行字。而视觉障碍者使用电脑也已经不是什么新鲜事了。今天,他们可以很方便地借助读屏器阅读电脑屏幕,浏览互联网。因为听觉特别,他现在使用的读屏器,语音速度是正常语速的三倍。这个语速常常会让普通人“不知所云”。

 如果只是进行文字浏览,盲人在电脑上几乎没有障碍。他们几乎可以像其他人一样轻松地浏览互联网信息。上网查看新闻是拉蒙每天的爱好之一。不过,与大部分人漫无目的地通过超链接在网上闲逛的习惯不同,拉蒙更多地采用搜索的方式,通过谷歌新闻组链接到有兴趣的报纸文章,或者通过微博来找到有趣的东西。用他自己的话说,就是让朋友来做你的“编辑”,“过滤”出有趣的新闻给你读。

 数学 公式也可以阅读

 但在网络上,还有很多信息,其结构是为视觉而设计的。一些我们每天都离不开的计算机操作,对于无法读图的人却构成了巨大的障碍。如何将这些信息转化为主要依赖于听觉的盲人能够接受的信号,这成为了拉蒙一直以来的主要工作。

 就拿简单的电子邮件来说,“我们习惯于看到发信人栏,收信人栏,回复、转发、正文等栏。我们读的时候只会读‘这是拉蒙给查尔斯的一封信’,你眼睛一扫很快就看出是谁给谁的信。”拉蒙说,“这所有的结构设计都是为了让眼睛更方便。但是如果你用这个格式拿来读的话就变成‘发信人栏拉蒙,收信人栏查尔斯,标题如何如何,正文如何如何’这就非常没效率了。”

 还在康奈尔做博士时,拉蒙就设计出一些专为盲人辨别电子邮件各信息,甚至报纸报道标题的系统。

 阅读文字解决了,但阅读数学公式却成为另一个难题。“再伟大的数学家,也需要阅读其他数学家的东西。”他笑说。数学满是符号和公式,用的是一种名为LaTeX的排版系统。在上世纪90年代初的时候,读屏器在这个系统中读出来的数学公式简直让人抓狂。你能听到一堆这样的声音:“E反斜杠反斜杠X插入符号某某……”这样的读法是荒唐的,于是拉蒙决定重写LaTeX,让自己以及其他视障者都可以顺利阅读数学公式。这个研究成了他在康奈尔大学的博士毕业论文,也让他一直使用至今。

 说来有趣,当决定博士论文题目的时候,拉蒙最先想做的是制造出具有导航性能的机器人导盲犬。他花了9个月的时间投身其中。因为非常了解自己的导盲犬,他一开始很有自信能够做出来。但很快,一个不可逾越的困难却出现了。难题并不在导航上,而是出现在如何制造一个能应付人行道、台阶、雪地、冰地等各种地面的机器人。20年之后,人类已经有了可以走在火星上的机器人,可是这样的“万能型机器人”还是没有出现。

 图像 手机“看”世界

 不过,拉蒙还是让盲人也享受到了导航的便利。他拿出自己的手机,向记者展示智能的北京地图,随着他的手指的移动,语音快速地提示出走在哪条街,走了多少路,前方是什么路,还有多少距离到达目的地等信息。现在的拉蒙,只要一部手机给自己导航,一只爱狗给自己扫除路障,哪怕身在北京这样的陌生城市,也不会迷路。

 现在,拉蒙的工作焦点放到了图片识别上。这是“盲阅读”最难的一部分。“所有的格式都是信息。信息越多,结构也越多;结构越多,你就越能从中组织,处理这些信息。”拉蒙说,“阅读图片是最难的,给你一幅《蒙娜丽莎的微笑》,说‘这是一个女人微笑的画’。这并不能告诉你这是蒙娜丽莎,它的信息复杂得多。”地图其实就是图片,不过它是有结构的图片,各种道路、街道、大楼等信息组成了可以处理的数据。拉蒙和查尔斯开发的手机地图软件已经造福于很多人。当然,它现在还没到完美的程度,还有一些问题需要解决,比如,目的地大楼的入口在哪儿,进了大楼里面怎么办,这都需要更多的数据让工程师来设计。

 拉蒙说,现在另一个小组正在做一个通过手机“看”地貌的软件。通过手机摄像机拍下路上遇到的一些事物比如路牌,行人等,手机可以对照片进行分析,然后告诉使用者“看”到了什么东西。

 今天,互联网进入了云时代。他认为,这是视障者的福音。以前的视障人士,走出门外和邻居打招呼都很难。但现在他们可以坐在家里,和地球另一边的人直接沟通。“对于其他人来说,技术只是带来了更快捷便利的生活,但对于残疾人来说,他们本来做不了这些事情,但技术却让他们可以做这些事了,他们对技术的掌握反而比普通人更快。”相比以前动辄上百美元的读屏软件,今天出现了很多开源软件,人们都可以免费下载使用。对于残疾人来说,云时代的互联网就像给他们听、读、写能力的延伸。而对于拉蒙来说,更重要的是,科学的发展是建立在别人研究基础上,软件技术也是一样,只有通过开源,才能站在巨人的肩膀上,让技术的发展焕发活力。

标题SpringBoot智能在线预约挂号系统研究AI更换标题第1章引言介绍智能在线预约挂号系统的研究背景、意义、国内外研究现状及论文创新点。1.1研究背景与意义阐述智能在线预约挂号系统对提升医疗服务效率的重要性。1.2国内外研究现状分析国内外智能在线预约挂号系统的研究与应用情况。1.3研究方法及创新点概述本文采用的技术路线、研究方法及主要创新点。第2章相关理论总结智能在线预约挂号系统相关理论,包括系统架构、开发技术等。2.1系统架构设计理论介绍系统架构设计的基本原则和常用方法。2.2SpringBoot开发框架理论阐述SpringBoot框架的特点、优势及其在系统开发中的应用。2.3数据库设计与管理理论介绍数据库设计原则、数据模型及数据库管理系统。2.4网络安全与数据保护理论讨论网络安全威胁、数据保护技术及其在系统中的应用。第3章SpringBoot智能在线预约挂号系统设计详细介绍系统的设计方案,包括功能模块划分、数据库设计等。3.1系统功能模块设计划分系统功能模块,如用户管理、挂号管理、医生排班等。3.2数据库设计与实现设计数据库表结构,确定字段类型、主键及外键关系。3.3用户界面设计设计用户友好的界面,提升用户体验。3.4系统安全设计阐述系统安全策略,包括用户认证、数据加密等。第4章系统实现与测试介绍系统的实现过程,包括编码、测试及优化等。4.1系统编码实现采用SpringBoot框架进行系统编码实现。4.2系统测试方法介绍系统测试的方法、步骤及测试用例设计。4.3系统性能测试与分析对系统进行性能测试,分析测试结果并提出优化建议。4.4系统优化与改进根据测试结果对系统进行优化和改进,提升系统性能。第5章研究结果呈现系统实现后的效果,包括功能实现、性能提升等。5.1系统功能实现效果展示系统各功能模块的实现效果,如挂号成功界面等。5.2系统性能提升效果对比优化前后的系统性能
在金融行业中,对信用风险的判断是核心环节之一,其结果对机构的信贷政策和风险控制策略有直接影响。本文将围绕如何借助机器学习方法,尤其是Sklearn工具包,建立用于判断信用状况的预测系统。文中将涵盖逻辑回归、支持向量机等常见方法,并通过实际操作流程进行说明。 一、机器学习基本概念 机器学习属于人工智能的子领域,其基本理念是通过数据自动学习规律,而非依赖人工设定规则。在信贷分析中,该技术可用于挖掘历史数据中的潜在规律,进而对未来的信用表现进行预测。 二、Sklearn工具包概述 Sklearn(Scikit-learn)是Python语言中广泛使用的机器学习模块,提供多种数据处理和建模功能。它简化了数据清洗、特征提取、模型构建、验证与优化等流程,是数据科学项目中的常用工具。 三、逻辑回归模型 逻辑回归是一种常用于分类任务的线性模型,特别适用于二类问题。在信用评估中,该模型可用于判断借款人是否可能违约。其通过逻辑函数将输出映射为0到1之间的概率值,从而表示违约的可能性。 四、支持向量机模型 支持向量机是一种用于监督学习的算法,适用于数据维度高、样本量小的情况。在信用分析中,该方法能够通过寻找最佳分割面,区分违约与非违约客户。通过选用不同核函数,可应对复杂的非线性关系,提升预测精度。 五、数据预处理步骤 在建模前,需对原始数据进行清理与转换,包括处理缺失值、识别异常点、标准化数值、筛选有效特征等。对于信用评分,常见的输入变量包括收入水平、负债比例、信用历史记录、职业稳定性等。预处理有助于减少噪声干扰,增强模型的适应性。 六、模型构建与验证 借助Sklearn,可以将数据集划分为训练集和测试集,并通过交叉验证调整参数以提升模型性能。常用评估指标包括准确率、召回率、F1值以及AUC-ROC曲线。在处理不平衡数据时,更应关注模型的召回率与特异性。 七、集成学习方法 为提升模型预测能力,可采用集成策略,如结合多个模型的预测结果。这有助于降低单一模型的偏差与方差,增强整体预测的稳定性与准确性。 综上,基于机器学习的信用评估系统可通过Sklearn中的多种算法,结合合理的数据处理与模型优化,实现对借款人信用状况的精准判断。在实际应用中,需持续调整模型以适应市场变化,保障预测结果的长期有效性。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值