人工智能专业Python课程建设的研究与实践
2023-01-02赵莉
赵 莉
(上海工程技术大学电子电气工程学院,上海 201620)
1 以人工智能应用为驱动
随着数据井喷、算法算力的突破,人工智能已然成为全球新一轮科技革命与产业革新的核心驱动力。目前,人工智能技术已被广泛应用于石油勘探、医疗卫生、智能制造等领域,取得了较好的应用成效。“超大规模智力模型”时代的来临,人工智能专业的创新型、应用型人才培养成为实现我国2030年总体战略目标的重中之重。
人工智能的应用与发展方兴未艾,为人工智能专业的建设提供了前所未有的机遇。截止到去年,根据教育部网站公布的普通高等学校本科专业备案和审批结果公布,在三年来公布的高校新增本科专业名单中,人工智能专业排行第一,成为新增备案专业数量最多的学科[1-5]。各大高校纷纷利用学校学术资源,开设了具有学校特色的培养项目,致力于培养创新性人才。
早在2017年,Python语言就取代C#,Java,C与C++,成为世界脚本语言排行第一的通用型语言[6-10]。在人工智能所覆盖的六大核心领域──视觉、语言、认知、机器人、机器学习、多智能体,Python几乎无处不在。
该课程建设,通过对Python语言“胶水”融合能力的发掘,及软件自身“开源”基因的运用,快速、有效地弥补数字鸿沟,为全面提升人工智能专业本科生的实践能力与科学素养,培养人工智能应用工程师探索有效途径。本文对Python语言课程建设的优点、痛点、难点等工作进行了一一探讨。
2 Python语言课程建设
2.1 Python语言的优点
如前所述,Python语言是一门免费、开源、跨平台的“胶水语言”,被誉为世界上最简单的语言[11]。其简洁、易读、可扩展成为Python语言最显著的优势。无论是计算机或非计算机专业,Python语言已然走向了本专科院校的课堂。国内外高校,诸如清华北大、斯坦福大学等世界一流大学,纷纷将其列入非计算机专业学生的必修名单。
此外,Python功能强大、数量众多的扩展库,形成了丰富多彩的Python生态圈,其官网的衍生品数量达到了一百多万[12],简化了开发的复杂度,使得人们不必反复纠结于一些基础的“造轮子”问题,而将注意力集中在系统开发与算法优化本身,从而在功能多样性与开发周期之间达到动态平衡。
2.2 Python语言的发展
基于以上现状,使用Python语言成为一种大势所趋,为人工智能的后续课程建立了天然优势。功能强大的标准库,与日新月异的第三方库奠定了Python未来发展的基石[13],是Python发展壮大的基础,官网提供的第三方库主要基于以下四个方面:
2.2.1 文本处理
文本处理是一种各行各业的常规功能,一般需要使用Office办公软件。文本处理过程一般涉及关键词提取、排序、错别字纠正、句法分析等内容。以人工为主,功能键与快捷键为辅,错误率高,耗时较长。10行代码便创建了一个可以自动生成10000个文档的答辩决议书,5分钟内统计平均分、投票表决数的技能,在过去属于高级办公技能,门槛很高。拥有了Python语言之后,通过requests库抓取网页数据,使用BeautifulSoup解析网页并清晰和组织数据就可以快速精准获取数据,稍许查询网络资源与官方文档,即可让人们从烦琐的统计工作中解脱出来。
2.2.2 网络爬虫
大数据是Python语言处理的主要对象。正如《娱乐至死》一书坦言[14],无用信息或噪音信息,正在吞噬着人类。大数据时代,根据思科白皮书统计,人类每天产生2.5万亿字节的数据量[15]。小视频正带给人们极大的享受,而大量有用的信息,正湮没在浩如烟海的无关数据之中。面向芸芸众生,利用Python语言的网络爬虫功能,仅用20行语句,采用正则表达式,即可完成5000条网页搜索,快速、准确提取信息的能力。实现大数据为我所用,而不受大数据所驱使,是人们适应人工智能时代发展的基本生存技能。
2.2.3 深度学习
深度学习是大数据的典型算法,其核心是算法与模型。本质上,深度学习是遍历层到层全部函数组合,找到定义从输入到输出的映射函数。然而,因为数据量庞大、技术门槛高,对很多企业与开发者而言,深度学习技术似乎高不可攀。考虑到开发者迫切希望找到深度学习模型在产业中落地的支点。目前主流的两款深度学习框架Tensor-Flow和Pytorch均由Python程序开发[16],是推动人工智能时代发展的强大引擎。面向广大的Python从业人员,泛化能力较强的深度学习框架,淡化了专业性较强的内容,针对数据实现自动标注,结合可扩展处理器,总能给出令产业开发者满意的解决方案,为语音识别、人脸识别等方面发挥了强有力的作用。即便是一些相对复杂的情况,例如光谱分析,石油勘探,也能为专家预测提供辅助预测。
2.2.4 大模型
所谓“大模型”,是从弱人工智能到强人工智能的必然产物。它是继深度学习之后的基础性共性模型,被称为新一代人工智能的核心。总的来说,是从海量大数据中学到蕴含在数据中的知识、逻辑,凝练到神经网络上变成大模型,旨在训练一套算法,为各种通用智能任务,建立提供服务的基础性平台。开发者的个性化需求,通过大模型采集后,针对特定任务,启动个性化参数和智能转化接口得以实现。在“大模型”领域,人工智能负责“全能”,知识图谱负责“全知”,“全知全能”相结合,为实际场景应用落地提供了有力支撑。
2.3 Python语言的难点
基于上述理由,Python语言课程建设是一项比较复杂的系统工程,是弥补数字鸿沟,促进智能化转型,促进社会发展的必由之路。该课程理论教学内容跨度较大,横贯文本处理、语音识别、人脸识别、网络爬虫、深度学习与人工智能的方方面面。此外,Python版本更新换代很快,即便是实践部分,旧的语句语法也经常停用,语句内容必须时常更新。理论与实践的快速迭代,是Python语言学习的主要障碍。
3 结语
最后,清晰的课程目标,“一万小时定律”是学习Python语言的良好基础。而发挥集体智慧,凝聚团队合力,精准课程定位,更新教学内容,优化教学手段,是上好该课程的先决条件。本文在人工智能专业本科生中开设,年均授课120人,通过线上与线下相结合,提供了高质量的课堂体验。考虑到本课程建设尚在起步阶段,后续本项研究将于本地企业相结合,为学生创造更多真实应用场景与实习途径,为全面提升人工智能专业本科生的实践能力与科学素养,培养人工智能应用工程师探索有效途径。