摘要:本文通過對人工智能語言特點進行分析,以人工智能時代大數(shù)據(jù)背景為基礎(chǔ),對人工智能時代的計算機程序設(shè)計教學工作進行了有關(guān)探討。
關(guān)鍵詞:人工智能;計算機程序設(shè)計;教學
中圖分類號:G642;TP311.1-4文獻標識碼:A文章編號:1672-9129(2020)07-0004-01
Abstract:Based on the analysis of the characteristics of artificial intelligence language and the background of big data in the era of artificial intelligence, this paper discusses the teaching of computer programming in the era of artificial intelligence.
Key words:artificial intelligence;Computer programming;teaching
引言:人工智能正逐漸進入人們的日常生活,成為互聯(lián)網(wǎng)之后第四次工業(yè)革命的中堅力量。了解人工智能、學習人工智能應(yīng)用對當前計算機程序設(shè)計十分重要。本文希望做到拋磚引玉,促進人工智能時代計算機程序設(shè)計教學的改革。
1人工智能時代,計算機程序設(shè)計背景
作為計算機科學的分支之一,人工智能領(lǐng)域的研究包括語言處理系統(tǒng)、自主學習系統(tǒng)、專家系統(tǒng)等諸多方面。當前人工智能技術(shù)的發(fā)展主要依賴于機器學習與大數(shù)據(jù)分析。換而言之,人工智能的發(fā)展就是在大數(shù)據(jù)基礎(chǔ)上開展機器自主學習。而計算機程序設(shè)計是由算法和數(shù)據(jù)結(jié)構(gòu)組成的,因此,人工智能與計算機程序設(shè)計存在一定聯(lián)系。人工智能的發(fā)展必然離不開計算機程序設(shè)計。機器學習是讓計算機模擬人類的學習行為,自主獲取新的知識技能。該技術(shù)是人工智能的核心,實現(xiàn)該技術(shù)需要多種方法支持,比如集成學習、度量學習、強化學習等,其中大部分方法是由數(shù)據(jù)進行驅(qū)動,通過自主學習更好的分析數(shù)據(jù)、理解數(shù)據(jù),挖掘數(shù)據(jù)背后的隱藏關(guān)系。深度學習是由神經(jīng)網(wǎng)絡(luò)發(fā)展而來的,也包括許多種模型,比如卷積神經(jīng)網(wǎng)絡(luò)模型、循環(huán)神經(jīng)網(wǎng)絡(luò)模型等。大數(shù)據(jù)作為機器學習的基礎(chǔ),要做到三點,1、數(shù)據(jù)量大2、數(shù)據(jù)到達速度快3、數(shù)據(jù)類別多。大數(shù)據(jù)不單單指數(shù)據(jù)量大,而是要在量大的基礎(chǔ)上開展機器學習,挖掘出數(shù)據(jù)中的隱藏價值,提升機器智能水平。機器學習在大數(shù)據(jù)的支撐下,會有很大的計算量,例如深度學習中需要進行深度學習的神經(jīng)網(wǎng)絡(luò)可以達到上千層,為了提升學習效率,高性能多線程的計算機系統(tǒng)是必不可缺的,這也需要當今計算機硬件技術(shù)進行突破[1]。
2人工智能時代的計算機程序設(shè)計語言
在人工智能時代的背景下,計算機程序設(shè)計也應(yīng)當盡量迎合人工智能時代的發(fā)展。很多語言都可以應(yīng)用于人工智能的開發(fā),但不是所有語言都能夠以最大效率對人工智能進行開發(fā)。Python,是人工智能領(lǐng)域使用最廣泛的編程語言之一,可以無縫的和其他AI算法一同使用。該語言作為腳本語言語法結(jié)構(gòu)相對簡單,接近日常語言,因此可讀性較高,適用于作為計算機程序設(shè)計的入門語言。JAVA,作為一種面向?qū)ο蟮木幊陶Z言,也是進行AI項目的較好選擇,提供了內(nèi)置的垃圾回收,主要用于AI項目上的高級功能。C++作為速度最快的面向?qū)ο笳Z言,對于AI項目的建設(shè)十分重要,例如在智能搜索引擎中,可以廣泛使用該語言。Prolog,作為邏輯編程語言,可以提供模式匹配和基于樹的數(shù)據(jù)結(jié)構(gòu)化機制,該機制能夠給AI項目建設(shè)提供較為良好的框架,對AI編程十分有利[2]。
3人工智能時代的計算機程序設(shè)計教學
3.1入門語言選擇。計算機程序設(shè)計一般是高等院校設(shè)立的教學內(nèi)容,對于大學生來說,是一種較為新穎的學習內(nèi)容,因此對于計算機程序設(shè)計的入門語言,應(yīng)當選擇可以輕松上手,還能夠傳遞計算機程序設(shè)計的基本理念、培養(yǎng)學習興趣的編程語言。C語言作為最傳統(tǒng)的計算機編程語言,被廣泛作為高校計算機編程語言的入門語言,但容易使學生在學完之后沒有較高的性質(zhì),甚至產(chǎn)生畏懼心理。將Python為入門語言,能夠讓學生更為輕松的進入應(yīng)用開發(fā),作為入門語言基礎(chǔ),在學習面向?qū)ο蟪绦蛟O(shè)計語言,應(yīng)當更為有效[3]。
3.2編程環(huán)境。計算機程序設(shè)計的編程環(huán)境,應(yīng)當選擇盡量友好、界面簡單、簡潔的工作配置環(huán)境。對于學生來說,學習JAVA語言需要做大量的環(huán)境配置,這對新手來說十分不友好。編程環(huán)境也要盡量應(yīng)用高級程度的環(huán)境,在一個環(huán)境下完成多個編程周期的工作。編程環(huán)境也應(yīng)當包含進可能多的常用開發(fā)包,Anaconda就擁有超過1000個數(shù)據(jù)科學軟件開發(fā)包。
3.3教學案例。如果計算機程序教學活動將重心過多的放在編程語言的語法結(jié)構(gòu)上,就容易讓教學課堂變得枯燥,使學生丟失學習興趣。因此,傳統(tǒng)的計算機程序設(shè)計教材教學需要進行變動。教師在教學過程中應(yīng)當結(jié)合實際開發(fā)項目進行拓展教學,教學所選用的案例可以是教師自己的研發(fā)項目,也可以是一些著名的開發(fā)案例,這樣可以讓學生從理論聯(lián)系實際,動手進行程序開發(fā)設(shè)計,培養(yǎng)學生的學習興趣。
3.4引入數(shù)學建模思想。作為一種數(shù)學思考方法,數(shù)學建模是通過運用數(shù)學語言抽象刻畫解決實際問題的數(shù)學手段,可以將實際問題用數(shù)據(jù)和簡便語言表示。這樣一些問題就可以變形成為圖論問題,因此,在進行圖論問題教學時,可以將數(shù)學建模的思維融入到教學過程中,通過具體的案例,讓學生建立相應(yīng)的數(shù)學模型,再以此為基礎(chǔ)進行程序設(shè)計教學。
4結(jié)語
為了迎合人工智能時代的到來,計算機程序設(shè)計教學也應(yīng)當作出相應(yīng)改革,需要在先進的教育理論指導下,改變傳統(tǒng)的教學結(jié)構(gòu),發(fā)揮教師主導作用,同時培養(yǎng)學生學習興趣,提高編程能力,真正做到“教學并重”。
參考文獻:
[1]牟倫田.人工智能時代的計算機程序設(shè)計教學探討[J].科教導刊,2018,000(003):106-107,134.
[2]王筱竹,JosephOsunde,DannyBarthaud,等.人工智能輔助會話式編程:一種性別包容的程序設(shè)計教學法[J].中國遠程教育(綜合版),2018(8):70-78.
[3]聶芬.基于人工智能的計算機離線編程系統(tǒng)開發(fā)研究[J].電腦編程技巧與維護,2018,000(001):43-44,57.
作者簡介:金雯嵐(1980.6--),女,漢族,山東臨沂人,高級講師,碩士,主要從事計算機編程、數(shù)據(jù)庫、云計算平臺運維專業(yè)的研究和教學。