



摘要:本文在介紹了生成式人工智能的基本功能以及如何與生成式人工智能對話的基礎上,通過教學實踐展現了計算思維涉及的抽象、分解、建模、算法設計等思維活動,為教師應用生成式人工智能開展教學改革提供了實踐經驗。
關鍵詞:生成式人工智能;計算思維;實驗教學
中圖分類號:G434 文獻標識碼:A 論文編號:1674-2117(2024)21-0045-04
計算思維是人類高階思維之一,它以發展學科知識和技能為基礎,以問題解決過程為載體,更多地體現于以直觀行動思維和具體形象思維為基礎的抽象邏輯思維。而生成式人工智能的思維是基于數據和統計模式,根據已經學習到的模式和規律來生成回答,不能主動提出問題,不具備批判性或創造性思維。但由于擁有巨大的模型規模、數據規模等,其具備了提示學習、情境學習與思維鏈技術。下面,筆者以“雞兔同籠”為例,嘗試利用生成式人工智能解答數學問題,讓學生體會它解決問題的思維過程。
生成式人工智能的基本功能以及如何與生成式人工智能對話
生成式人工智能能夠像人類一樣理解語言,通過自然、準確的對話與人類互動。除了基本的聊天功能,生成式人工智能還可以進行多項工作,如查詢天氣、預訂往返機票和酒店等。下面,筆者通過輸入“雞兔同籠”數學問題,嘗試與生成式人工智能對話并測試其解決數學問題的能力。
實驗1文本輸入——問題1:今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何。請列二元一次方程組求解。
如下頁圖1所示為生成式人工智能的回答,于是,猜測生成式人工智能大語言模型通過大量閱讀學會了編程。程序設計語言是自然語言的一個子集,自然語言交流存在模糊性,程序語言則講究精準、規范,不允許存在語法的二義性。讓生成式人工智能學習程序設計語言,可使其具有一定的邏輯思維能力及與人類相似的計算思維能力。
既然生成式人工智能大語言模型形成了一定的計算思維能力,那么生成式人工智能就能夠把一個復雜問題分解成多個解題步驟,并逐步完成多個問題的求解。也就是說,海量的程序代碼預訓練催生了生成式人工智能的數學能力,因此,筆者設計消融實驗來驗證它的計算思維。
從學習角度來說,消融實驗是一種通過干擾和破壞記憶的保持和檢索過程,探究學習和記憶機制的實驗方法。消融實驗可以研究多種記憶現象,如記憶的持久性、遺忘的原因、記憶的檢索和重構過程等。根據消融實驗的解釋,師生圍繞重構過程進行消融實驗設計。
生1:我知道生成式人工智能有編程的能力,我們可以把這個數學問題讓它編寫一段解題的程序。
生2:我們可以讓它編一段Python代碼,然后運行這個程序。
師:生成式人工智能有重組文本的功能,我們可以把這個數學問題轉換成一個代數問題。
經過師生討論,將實驗設計如下:先使用生成式人工智能直接求解數學問題,再應用消融實驗編程來求解,讓這兩個解題方法的答案互相驗證。只有數學求解與編程求解的答案是相同的,才認為生成式人工智能擁有了一定的計算思維,學生也能在思維鏈技術的迭代過程中了解計算思維。
基于生成式人工智能的計算思維培養教學實踐
1.猜想——認識問題轉化
代數問題是一種使用字母來代表數值和未知數的數學分支,將實際問題轉化為代數問題可以幫助學生用符號和表達式來描述和解決問題。對于“雞兔同籠”問題,首先可以將數學問題轉換為代數問題,通過使用鍵值對應將數字替換成字母,測試生成式人工智能將數學問題轉化為代數問題的能力。由于剛才求解了雞兔同籠問題,在設計實驗時,就要注意不考慮上下文的關系。
實驗2文本輸入——問題2:今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何。請把這道題目中的數字用字母m、n來代替,并重新復述題目。
生成式人工智能:今有雉兔同籠,上有m頭,下有n足,問雉兔各幾何。
從生成式人工智能的回答可以看出,它成功地將原始問題中的數字替換為字母m和n,并重新復述了問題。這個例子展示了如何通過代數的轉化將一個實際問題轉變為可以用數學抽象方法解決的問題。這種能力對學生來說是非常重要的,因為可以幫助他們在解決數學問題時更好地理解和應用代數的概念和方法,對于提高學生的數學抽象思維有著積極的影響。
2.列舉——促進邏輯思維
在把一個數學問題轉換成代數問題后,繼續實驗探究生成式人工智能能不能給出正確的方程表達式。列方程需要思考問題的本質和邏輯關系,從而推導出正確的方程式。方程表達式是否正確,通常需要將數學符號和概念轉化為自然語言或者圖表形式進行解釋和表達。
實驗3文本輸入——問題3:今有雉兔同籠,上有m頭,下有n足,問雉兔各幾何。請你列出求解雞兔只數的二元一次方程組。
生成式人工智能:雞兔同籠問題是一個經典的數學謎題,它要求在給定總數量和總腳數的情況下計算出可能的雞和兔子的數量。通常情況下,每只雞有2只腳,每只兔子有4只腳。根據題目條件可列出以下方程組:
x+y=m(其中x表示雞的數量,y表示兔的數量,m表示頭的總數)
2x+4y=n(其中n表示腳的總數)
從回答可以看出,生成式人工智能列出代數方程展示了“中間思考過程”的能力。由代數問題列方程,需要具有較強的邏輯思維能力,學生可以通過推理分析和拼圖游戲如數獨、迷宮、填字等增強邏輯思維能力,還可以通過閱讀、解決問題等,逐步提升邏輯思維能力。
3.求聯——學會有序思考
在數學課堂教學中,在用字母代替數字把代數問題陳述為數學問題后,教師往往要詢問字母與數字的對應關系,會采用逐一列舉的方法,通過列舉頭和腳的總數符合題目信息,讓學生學會有序思考,培養思維的嚴密性和邏輯性。筆者根據數學課堂的實際情況進行實驗設計,讓生成式人工智能分析代數問題中字母對應的確切數字。
實驗4文本輸入——問題4:不搜索網絡資源,根據上下文關系,先根據問題2找到雞兔頭、足的具體數量,再說出字母m、n分別是問題2中的哪個具體數值。
從生成式人工智能的回答(如圖2)可以看出,它能通過上文的關系正確地找到代數問題中字母所對應的數字,對這種對應關系的理解對代數學習的進一步發展和應用非常重要。在日常教學中,教師要多詢問字母與數字的對應關系,幫助學生建立數學符號與實際情境或數值之間的聯系,從而幫助他們理解和分析問題,推導解決方案,并解決更復雜的數學問題。
4.編碼——嘗試建構模型
編碼是用一組規則將一種信息形式(代數問題)轉換為另一種信息形式(Python代碼)的過程。代碼是基于0與1建立起來的抽象世界,編碼更像是在抽象世界里生成程序,解決實際問題,這個過程實際上就是建模過程。生成式人工智能可以生成Python、C語言等代碼,因此設計實驗,讓其進行Python編碼,學生根據回答的內容運行Python代碼。
實驗5文本輸入——問題5:今有雉兔同籠,上有m頭,下有n足,問雉兔各幾何。請編寫完整的Python代碼,雞兔的頭、足數量在程序運行時候輸入。
如圖3所示為生成式人工智能使用Python編寫的雞兔同籠問題的示例代碼。在代碼中,可以看到生成式人工智能定義了一個名為solve_chicken_rabbit的函數,該函數包含x和y兩個參數,分別表示頭的數量和腳的數量。函數使用雞和兔子的數量關系,計算出雞和兔子的數量,并返回。在主函數中,獲取用戶輸入的頭和腳的數量,調用solve_chicken_rabbit函數求解雞和兔子的數量,并輸出結果。
建模是一個抽象的過程,也是解決問題的關鍵。在問題求解過程中,學生通過自然語言描述問題解決的步驟,或者使用流程圖來構建解決問題的過程,這些都是建模過程。
5.驗證——聚焦計算思維
學生根據生成式人工智能的回答,打開Python編程軟件開始編寫腳本進行消融實驗驗證。運行Python IDLE編輯器,在打開的“Python 3.9.0 shell”窗口中單擊“File—New File”,把生成式人工智能輸出的Python代碼粘貼到Python文本編輯器窗口,然后單擊“Run—Run Module”,并在彈出的對話框中保存代碼。在保存代碼后,Python又自動切換到Python Shell窗口,提示“請輸入頭的數量”,按照提示輸入“35”。等待1秒,程序又提示“請輸入腳的數量”,按照提示輸入“94”。程序繼續qkgn10/vocHNZjYpyN0hB1QT0KllB24bND9eaknAKf4=運行輸出答案“雞的數量為:23.0只,兔子的數量為:12.0只”,與數學問題求解的答案相同。但是,當輸入“23,87”時,代碼計算輸出“雞的數量為:2.5,兔子的數量為:20.5”,這樣的答案顯然不符合實際情況,學生根據出現的問題重新設計實驗。
實驗6文本輸入——問題6:運行代碼,發現你能正確判斷雞兔頭、足的數量要大于0,但是如果雞兔的只數算出來不是自然數,你應該輸出無解。如果雞兔的只數是正確的,則應該輸出自然數。請按照要求修改代碼。
生成式人工智能:在代碼中,我添加了對round(x)和round(y)的判斷。如果round(x)!=x或者round(y)!=y,就說明x或y不是整數,即雞或兔的數量不為整數。此時,也輸出無解。
此外,將計算得到的x和y的值強制轉換為整數類型,以滿足輸出要求。
重新把圖4中的代碼復制粘貼保存為一個新的文件后運行,在“Python Shell”窗口分別再輸入“35,94”和“23,78”,第一組輸出“雞的數量為:23,兔子的數量為:12”,第二組則輸出“無解”。在得到Python代碼和正確的答案后,還需要多次開展計算驗證。經過反復多次的隨機實驗發現,如果雞、兔的只數不存在相應的關系,數學問題直接求解會輸出“這個問題沒有實際解”,代碼運行則提示“雞兔的數量無解”;如果雞、兔的只數存在相應的關系,數學問題直接求解和代碼運行輸出的答案是相同的。由此得出實驗結論:從數學問題開始,讓生成式人工智能依次輸出代數問題,回答字母與數字的對應關系,列出方程式后完成Python代碼的編寫。這個過程是計算思維在問題解決過程中涉及的抽象、分解、建模、算法設計等思維活動的外顯過程。不管是程序代碼還是數學問題求解,都是這個數學問題的正確答案,說明在消融實驗中生成式人工智能能正確地求解這個數學問題。
基于生成式人工智能的計算思維培養的教學反思
雖然在生成式人工智能的支持下形成了多種應用,為教育教學拓展了新的研究方向,但是由于在技術、數據、教學策略等方面還存在一些局限,其在教學過程中還有不足之處:①缺乏實時反饋。生成式人工智能是基于用戶的輸入來生成響應,如果學生在學習過程中不知道學習有錯誤,模型則無法提供即時的、具體的反饋。②缺乏情感交互。生成式人工智能不具備情感理解和情感表達的能力,而在教育教學中,情感和人際交互是課堂師生互動重要的組成部分,可以促進學生的情緒管理、情感發展,并最終影響學生的學習積極性。
總之,生成式人工智能的發展為教育提供了許多新的途徑,教師需要認真地思考、創新地行動,更好地應用人工智能推動教育教學的變革。