亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        人工智能時代的計算機(jī)程序設(shè)計教學(xué)探討

        2018-06-05 10:18:02牟倫田
        科教導(dǎo)刊 2018年3期
        關(guān)鍵詞:機(jī)器學(xué)習(xí)大數(shù)據(jù)人工智能

        牟倫田

        摘 要 本文介紹了人工智能時代的機(jī)器學(xué)習(xí)與大數(shù)據(jù)背景,分析了各種人工智能語言的特點,以此為基礎(chǔ),提出了人工智能時代開展計算機(jī)程序設(shè)計教學(xué)工作的幾點建議。希望本文對于高校的計算機(jī)程序設(shè)計教學(xué)與時俱進(jìn)的發(fā)展起到拋磚引玉的作用。

        關(guān)鍵詞 人工智能 人工智能時代 機(jī)器學(xué)習(xí) 大數(shù)據(jù) 計算機(jī)程序設(shè)計

        中圖分類號:G424 文獻(xiàn)標(biāo)識碼:A DOI:10.16400/j.cnki.kjdkx.2018.01.048

        Computer Program Design Teaching in the Age of Artificial Intelligence

        MOU Luntian

        (Beijing University of Technology, College of Metropolitan Transportation, Beijing 100124)

        Abstract This paper introduces the background of machine learning and big data in the era of artificial intelligence, and analyzes the characteristics of various artificial intelligence languages. Based on this, some suggestions are put forward to carry out computer programming in artificial intelligence. The author hopes this article is helpful to the development of computer programming in universities and advancing with the times.

        Keywords artificial intelligence; the Age of Artificial Intelligence; machine learning; big data; computer program design

        高性能計算與大數(shù)據(jù)的高速發(fā)展為機(jī)器學(xué)習(xí)尤其是深度學(xué)習(xí)提供了強(qiáng)大的引擎。自2006年取得突破以來,深度學(xué)習(xí)一直長驅(qū)直入,在圖像分類與語音識別領(lǐng)域取得了驕人的成績,在圖像識別上甚至超過了人眼識別的準(zhǔn)確率。[1]尤其是2016年Google研發(fā)的機(jī)器人AlphaGo擊敗世界圍棋冠軍李世石,使人工智能在經(jīng)歷了兩次寒冬之后再次復(fù)蘇并以極其強(qiáng)勁的態(tài)勢進(jìn)入大眾的視野。事實上,人工智能正在全面進(jìn)入人類生產(chǎn)和生活的方方面面,成為繼互聯(lián)網(wǎng)之后第四次工業(yè)革命的推動力量。人類正在進(jìn)入人工智能時代,人工智能正在成為這個時代的基礎(chǔ)設(shè)施。人臉識別、自動駕駛、聊天機(jī)器人、工業(yè)和家居機(jī)器人、股票推薦,人工智能的產(chǎn)業(yè)應(yīng)用正在遍地開花。[2]顯而易見,無論對計算機(jī)專業(yè)還是其他專業(yè)的大學(xué)生,了解人工智能、甚至學(xué)習(xí)開發(fā)人工智能應(yīng)用都是有必要的。那么,人工智能時代的內(nèi)涵是什么?有哪些人工智能編程語言?在程序設(shè)計教學(xué)上應(yīng)該做哪些調(diào)整?希望拋磚引玉,促進(jìn)計算機(jī)程序設(shè)計教學(xué)改革,培養(yǎng)出更加適應(yīng)人工智能時代要求的大學(xué)生。

        1 人工智能時代的計算機(jī)程序設(shè)計背景

        人工智能(Artificial Intelligence,AI),是研究、開發(fā)用于模擬、延伸和擴(kuò)展人的智能的理論、方法、技術(shù)及應(yīng)用系統(tǒng)的一門新的技術(shù)科學(xué)。人工智能是計算機(jī)科學(xué)的一個分支,該領(lǐng)域的研究包括機(jī)器人、語音識別、圖像識別、自然語言處理和專家系統(tǒng)等。[3]當(dāng)前人工智能的快速發(fā)展主要依賴于兩大要素:機(jī)器學(xué)習(xí)與大數(shù)據(jù)。也就是說,在大數(shù)據(jù)上開展機(jī)器學(xué)習(xí)是實現(xiàn)人工智能的主要方法。而計算機(jī)程序設(shè)計可視為算法+數(shù)據(jù)結(jié)構(gòu)。通過簡單的將機(jī)器學(xué)習(xí)映射到算法、將大數(shù)據(jù)映射到數(shù)據(jù)結(jié)構(gòu),我們可以理解人工智能與計算機(jī)程序設(shè)計之間存在一定程度上的對應(yīng)關(guān)系。人工智能離不開計算機(jī)程序設(shè)計。要弄清人工智能時代對計算機(jī)程序設(shè)計的新需求,需要首先對機(jī)器學(xué)習(xí)和大數(shù)據(jù)有一定的認(rèn)識。

        機(jī)器學(xué)習(xí)(Machine Learning, ML)是一門研究計算機(jī)怎樣模擬或?qū)崿F(xiàn)人類的學(xué)習(xí)行為以獲取新的知識或技能的多領(lǐng)域交叉學(xué)科,涉及概率論、統(tǒng)計學(xué)、逼近論、凸分析、算法復(fù)雜度理論等多門學(xué)科。機(jī)器學(xué)習(xí)是人工智能的核心,包括了很多方法,比如線性模型(Linear model)、決策樹(Decision tree)、神經(jīng)網(wǎng)絡(luò)(Neural networks)、支持向量機(jī)(Support Vector Machine)、貝葉斯分類器(Bayesian classifier)、集成學(xué)習(xí)(Ensemble learning)、聚類(clustering)、度量學(xué)習(xí)(Metric learning)、稀疏學(xué)習(xí)(Sparse learning)、概率圖模型(Probabilistic graph model)和強(qiáng)化學(xué)習(xí)(Reinforcement learning)等。[4]其中大部分方法都是數(shù)據(jù)驅(qū)動的(data-driven),都是通過學(xué)習(xí)獲得數(shù)據(jù)不同抽象層次的表達(dá),以利于更好的理解和分析數(shù)據(jù)、挖掘數(shù)據(jù)隱藏的結(jié)構(gòu)和關(guān)系。

        深度學(xué)習(xí)(Deep Learning)是機(jī)器學(xué)習(xí)的一個分支,由神經(jīng)網(wǎng)絡(luò)發(fā)展而來,一般特指學(xué)習(xí)高層數(shù)的網(wǎng)絡(luò)結(jié)構(gòu)。深度學(xué)習(xí)也包括各種不同的模型,比如深度信念網(wǎng)絡(luò)(Deep Belief Network,DBN)、自編碼器(AutoEncoder)、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)等。深度學(xué)習(xí)是目前主流的機(jī)器學(xué)習(xí)方法,在圖像分類與識別、語音識別等領(lǐng)域都比其他方法表現(xiàn)優(yōu)異。[5]

        作為機(jī)器學(xué)習(xí)的原料,大數(shù)據(jù)(Big data)的“大”通常體現(xiàn)在三個方面,即數(shù)據(jù)量(Volume)、數(shù)據(jù)到達(dá)的速度(Velocity)和數(shù)據(jù)類別(Variety)。數(shù)據(jù)量大既可以體現(xiàn)為數(shù)據(jù)的維度高,也可以體現(xiàn)為數(shù)據(jù)的個數(shù)多。對于數(shù)據(jù)高速到達(dá)的情況,需要對應(yīng)的算法或者系統(tǒng)能夠有效處理。而多源的、非結(jié)構(gòu)化、多模態(tài)等不同類別特點也對大數(shù)據(jù)的處理方法帶來了挑戰(zhàn)??梢?,大數(shù)據(jù)不同于海量數(shù)據(jù)。在大數(shù)據(jù)上開展機(jī)器學(xué)習(xí),可以挖掘出隱藏的有價值的數(shù)據(jù)關(guān)聯(lián)關(guān)系。

        對于機(jī)器學(xué)習(xí)中涉及的大量具有一定通用性的算法,需要機(jī)器學(xué)習(xí)專業(yè)人士將其封裝為軟件包,以供各應(yīng)用領(lǐng)域的研發(fā)人員直接調(diào)用或在其基礎(chǔ)上進(jìn)行擴(kuò)展。大數(shù)據(jù)之上的機(jī)器學(xué)習(xí)意味著很大的計算量。以深度學(xué)習(xí)為例,需要訓(xùn)練的深度神經(jīng)網(wǎng)絡(luò)其層次可以達(dá)到上千層、節(jié)點間的聯(lián)結(jié)權(quán)值可以達(dá)到上億個。為了提高訓(xùn)練和測試的效率,使機(jī)器學(xué)習(xí)能夠應(yīng)用于實際場景中,高性能、并行、分布式計算系統(tǒng)是必然的選擇??梢圆捎密浖脚_如Hadoop MapReduce或Spark,或者采用硬件平臺如GPU(Graphics Processing Unit,圖形處理器)或FPGA(Field-Programmable Gate Array,即現(xiàn)場可編程門陣列)。

        2 人工智能時代的計算機(jī)程序設(shè)計語言

        人工智能時代的編程自然以人工智能研究和開發(fā)人工智能應(yīng)用為主要目的。很多編程語言都可以用于人工智能開發(fā),很難說人工智能必須用哪一種語言來開發(fā),但并不是每種編程語言都能夠為開發(fā)人員節(jié)省時間及精力。Python [6]由于簡單易用,是人工智能領(lǐng)域中使用最廣泛的編程語言之一,它可以無縫地與數(shù)據(jù)結(jié)構(gòu)和其他常用的AI算法一起使用。Python之所以適合AI項目,其實也是基于Python的很多有用的庫都可以在AI中使用。一位Python程序員給出了學(xué)習(xí)Python的7個理由:(1)Python易于學(xué)習(xí)。作為腳本語言,Python語言語法簡單、接近自然語言,因此可讀性好,尤其適合作為計算機(jī)程序設(shè)計的入門語言。(2)Python能夠用于快速Web應(yīng)用開發(fā)。(3)Python驅(qū)動創(chuàng)業(yè)公司成功。支持從創(chuàng)意到實現(xiàn)的快速迭代。(4)Python程序員可獲得高薪。高薪反映了市場需求。(5)Python助力網(wǎng)絡(luò)安全。Python支持快速實驗。(6)Python是AI和機(jī)器學(xué)習(xí)的未來。Python提供了數(shù)值計算引擎(如NumPy和SciPy)和機(jī)器學(xué)習(xí)功能庫(如scikit-learn,Keras和TensorFlow),可以很方便地支持機(jī)器學(xué)習(xí)和數(shù)據(jù)分析。(7)不做只會一招半式的碼農(nóng)。多會一門語言,機(jī)會更多。

        Java也是AI項目的一個很好的選擇。它是一種面向?qū)ο蟮木幊陶Z言,專注于提供AI項目上所需的所有高級功能,它是可移植的,并且提供了內(nèi)置的垃圾回收。另外Java社區(qū)可以幫助開發(fā)人員隨時隨地查詢和解決遇到的問題。LISP因其出色的原型設(shè)計能力和對符號表達(dá)式的支持在AI領(lǐng)域占據(jù)一席之地。LISP是專為人工智能符號處理設(shè)計的語言,也是第一個聲明式系內(nèi)的函數(shù)式程序設(shè)計語言。Prolog與LISP在可用性方面旗鼓相當(dāng),據(jù)《Prolog Programming for Artificial Intelligence》一文介紹,Prolog是一種邏輯編程語言,主要是對一些基本機(jī)制進(jìn)行編程,對于AI編程十分有效,例如它提供模式匹配、自動回溯和基于樹的數(shù)據(jù)結(jié)構(gòu)化機(jī)制。結(jié)合這些機(jī)制可以為AI項目提供一個靈活的框架。C++是速度最快的面向?qū)ο缶幊陶Z言,這對于AI項目是非常有用的,例如,搜索引擎可以廣泛使用C++。

        其實為AI項目選擇編程語言,很大程度上都取決于AI子領(lǐng)域。在這些編程語言中,Python因為適用于大多數(shù)AI子領(lǐng)域,所以逐漸成為AI編程語言的首選。Lisp和Prolog因其獨特的功能,在部分AI項目中卓有成效,地位暫時難以撼動。而Java和C++的自身優(yōu)勢也將在AI項目中繼續(xù)保持。

        3 人工智能時代的計算機(jī)程序設(shè)計教學(xué)

        那么人工智能時代的計算機(jī)程序設(shè)計教學(xué)在高校應(yīng)該如何開展呢?下面給出一些初步的思考,供大家討論并批評指正:

        3.1 入門語言

        入門語言應(yīng)該容易學(xué)習(xí),可以輕松上手,既能傳遞計算機(jī)程序設(shè)計的基本思想,也能培養(yǎng)學(xué)生對編程的興趣。C語言是傳統(tǒng)的計算機(jī)編程入門語言。但學(xué)生學(xué)得并不輕松,不少同學(xué)學(xué)完C語言既不會運(yùn)用,也沒有興趣。有的非計算機(jī)專業(yè)的本科生甚至因為C語言對計算機(jī)編程產(chǎn)生畏懼心理。因此,宜將Python作為入門語言,讓同學(xué)們輕松入門并快速進(jìn)入應(yīng)用開發(fā)。有了Python這個基礎(chǔ),再學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計語言C++或JAVA,應(yīng)該可以觸類旁通。

        3.2 數(shù)據(jù)結(jié)構(gòu)與算法

        如前文所述,初略可以認(rèn)為計算機(jī)程序設(shè)計=數(shù)據(jù)結(jié)構(gòu)+算法。因此在學(xué)習(xí)編程語言的同時或之后,宜選用與入門語言對應(yīng)的教材。比如入門語言選Python的話,數(shù)據(jù)結(jié)構(gòu)與算法的教材最好也是Python描述。

        3.3 編程環(huán)境

        首先編程環(huán)境要盡量友好,簡單易用,所見即所得,無需進(jìn)行大量繁瑣的環(huán)境配置工作。對于學(xué)生而言,像JAVA那樣需要做大量環(huán)境配置,不是一件容易的事。其次編程環(huán)境要集成度高,一個環(huán)境下可以完成整個編程周期的所有工作。再次編程環(huán)境要能夠提供跨平臺和多編程語言支持。最后編程環(huán)境應(yīng)提供大量常用的開發(fā)包支持。Anaconda [7]就是這樣的一個編程環(huán)境,它擁有超過450萬用戶和超過1000個數(shù)據(jù)科學(xué)的軟件開發(fā)包。Anaconda以Python為核心,提供了Jupyter Notebook這樣功能強(qiáng)大的交互式文檔工具,代碼及其運(yùn)行結(jié)果、文本注釋、公式、繪圖都可以包含在一個文檔里,而且還可以隨時擦寫更新。GitHub上有很多有趣的開源Jupyter Notebook項目示例,[8]可供大家學(xué)習(xí)Python時參考。

        3.4 案例教學(xué)

        傳統(tǒng)的計算機(jī)程序設(shè)計教材和課堂教學(xué)過多偏重介紹編程語言的語法,既使課堂陷入枯燥,又讓學(xué)生找不到感覺。因此,提倡案例教學(xué),即教師在課堂上盡可能結(jié)合實際項目來開展教學(xué)。教學(xué)案例既可以是來自教師自己的研發(fā)項目,也可以是來自網(wǎng)絡(luò)的開源項目。案例教學(xué)的好處在于,學(xué)生容易理論聯(lián)系實際,縮短課本與實際研發(fā)的距離。

        3.5 大作業(yè)

        實驗上機(jī)除了常規(guī)的基本知識的操作練習(xí)外,還應(yīng)安排至少一個大作業(yè)。大作業(yè)可以是小組(比如3名同學(xué))共同完成。這樣不但可以鍛煉學(xué)生學(xué)習(xí)致用的能力、提升學(xué)生學(xué)習(xí)的成就感,還以讓學(xué)生的團(tuán)隊精神和管理能力得到提高??芍^一舉多得。大作業(yè)的任務(wù)應(yīng)該盡可能來自各領(lǐng)域的實際問題和需求,如果能拿到實際數(shù)據(jù)更好。

        綜上,人工智能時代的新需求要求我們探索計算機(jī)程序設(shè)計的新的教學(xué)內(nèi)容和教學(xué)形式。唯有與時俱進(jìn)、不斷創(chuàng)新,才能使高校的計算機(jī)程序設(shè)計教學(xué)達(dá)到更好的教學(xué)效果,才能培養(yǎng)出適應(yīng)各行各業(yè)新需求的研發(fā)人才。 (下轉(zhuǎn)第134頁)(上接第107頁)

        參考文獻(xiàn)

        [1] LeCun, Y., Bengio, Y. and Hinton, G. E. Deep Learning, Nature, Vol. 521, pp 436-444, 2015.

        [2] 杰瑞·卡普蘭.人工智能時代.浙江人民出版社,2016.

        [3] 周志華.機(jī)器學(xué)習(xí).清華大學(xué)出版社,2016.

        [4] Ian Goodfellow and Yoshua Bengio and Aaron Courville, Deep Learning, MIT Press, 2016.

        [5] Python, https://www.python.org/.

        [6] Anaconda, https://www.continuum.io/anaconda-overview

        [7] Jupyter Notebook, https://github.com/jupyter/jupyter/wiki/A- gallery- of-interesting- Jupyter-Notebooks

        猜你喜歡
        機(jī)器學(xué)習(xí)大數(shù)據(jù)人工智能
        2019:人工智能
        商界(2019年12期)2019-01-03 06:59:05
        人工智能與就業(yè)
        數(shù)讀人工智能
        小康(2017年16期)2017-06-07 09:00:59
        基于網(wǎng)絡(luò)搜索數(shù)據(jù)的平遙旅游客流量預(yù)測分析
        時代金融(2016年27期)2016-11-25 17:51:36
        前綴字母為特征在維吾爾語文本情感分類中的研究
        基于支持向量機(jī)的金融數(shù)據(jù)分析研究
        基于大數(shù)據(jù)背景下的智慧城市建設(shè)研究
        科技視界(2016年20期)2016-09-29 10:53:22
        下一幕,人工智能!
        全部孕妇毛片丰满孕妇孕交| 白白色视频这里只有精品| av熟妇一区二区三区| 亚洲综合激情五月丁香六月| 中文无码成人免费视频在线观看| 国内精品视频成人一区二区| 国产夫妻精品自拍视频| 国产无遮挡又黄又爽高潮| 欧美老熟妇欲乱高清视频| 中文乱码字幕高清在线观看| 邻居少妇太爽在线观看| 蜜臀av在线观看| 国产成人精品日本亚洲| 中文精品久久久久中文| 国产免费网站在线观看不卡| 婷婷综合另类小说色区| 国产色诱视频在线观看| 国产香蕉尹人在线视频你懂的| 日本按摩偷拍在线观看| 婷婷色香五月综合激激情| 丁香综合网| 亚洲av中文字字幕乱码| 欧美又大粗又爽又黄大片视频| 强行无套内谢大学生初次| 国产v综合v亚洲欧美大天堂| 日韩精品视频av在线观看| 无码av中文一区二区三区| 国产亚洲av片在线观看18女人| 国产呦系列呦交| 亚洲视频在线观看一区二区三区 | 亚洲一区二区视频蜜桃| 变态调教一区二区三区女同| 先锋影音av最新资源| 亚洲网站免费看| 青青草中文字幕在线播放| 日产亚洲一区二区三区| 亚洲aⅴ无码日韩av无码网站| 国产成人亚洲综合二区| 国产三级在线观看完整版| 国产日韩成人内射视频| 日韩一区二区三区天堂|