基於App Inventor的人工智能移動終端編程項目課程設計與實踐
本文介紹了移動終端和App Inventor的概念,探討了利用App Inventor進行人工智能教學的優勢,呈現了人工智能移動終端編程項目課程的具體案例,包括語音翻譯機、水果分類器和文字繪圖等應用。作者希望通過實施該課程,爲教育教學提供借鑑和參考,推動人工智能技術與移動終端編程的融合發展,培養更多具備創新能力和實踐能力的人才。
人工智能(Artificial Intelligence,縮寫AI)是研究、開發用於模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。在教育部出臺的《義務教育信息科技課程標準(2022年版)》中,人工智能是課程知識體系的邏輯主線之一,與數據、算法、網絡、信息處理和信息安全一起構成了信息科技課程的核心內容。
基於App Inventor的人工智能移動終端編程項目課程具有重要的研究意義和實踐價值。通過這樣的課程,學生可以深入瞭解人工智能的基本原理和應用領域,同時掌握移動應用開發的技能,培養創新思維和解決問題的能力。
本文旨在通過探討基於App Inventor的人工智能移動終端 編程項目課程的設計與實踐,爲教育教學提供有益的借鑑和參考,推動人工智能技術與移動終端編程的融合發展,培養更多具備創新能力和實踐能力的人才。
移動應用程序和App Inventor簡介
一
移動應用程序(App)是一種獨立的軟件程序,提供了豐富的功能,如地圖導航、音樂播放、輔助教學、遊戲娛樂、網上購物等服務。隨着移動技術的快速發展和普及,移動應用程序編程逐漸成爲一個熱門的領域,吸引了越來越多的開發者和學習者。
App Inventor是由谷歌公司和麻省理工學院教授共同創建設計的一款編程軟件,它是一個直觀、可視化的編程環境,也是一個通過構建移動應用程序來學習計算思維的教育教學工具。
通過學習移動應用程序的設計,學生能夠了解常用移動終端的功能和特點,逐步掌握移動應用設計與開發的思想方法,並根據實際需求設計與人工智能相結合的移動應用,創造性地解決日常學習和生活中的實際問題。
利用App Inventor開展人工智能教學的優勢
二
1.教學環境簡單方便,便於教師開展教學
教師不需要提前在學生電腦中安裝軟件,學生只需使用瀏覽器打開網站就可以進行移動應用的編程設計,同時,製作的程序作品會實時保存在雲端服務器中。在程序完成以後,只需要拿出手機,掃描一下電腦二維碼,就能在手機上看到程序的運行效果。在對程序修改調整後,代碼的變更也會自動同步到進行調試的手機中,不必重新安裝應用,大大提高教學效率。
2.採用圖形化編程環境,符合學生的認知特點
App Inventor具有可視化的界面設計工具,可以用它設計移動應用程序的外觀,還可以像玩拼圖遊戲一樣,將各類程序模塊通過拖拽的方式拼接在一起,實現應用的各種功能。
App Inventor的可視化界面設計和圖形化的編程操作,可以幫助學生快速入門,使其更容易理解編程的過程和程序的作用,進而瞭解人工智能是如何通過編程實現的,將創新的想法應用到實際項目中。
3.培養學生的計算思維和創新意識
使用App Inventor進行移動應用程序的設計與開發,學生需要學習和運用計算思維的方法和思維方式,從需求分析、問題拆解、算法設計、程序實現等方面進行思考和解決問題。這種思維方式培養了學生的邏輯思維、抽象思維和創新思維能力,提高了學生的問題解決能力和創新能力。
同時,App Inventor提供了豐富的組件模塊,如通信類組件、樂高機器人類組件等,學生可以根據自己的創意和需求,自由選擇和組合這些組件,設計出符合自己想法的移動應用程序。這種自主設計和創造的過程,激發了學生的創新意識和創造力,培養了學生的設計能力和實踐能力。
4.拓展組件實現人工智能、物聯網等項目的開發
除了自帶的組件模塊,App Inventor還支持導入外部拓展組件,學生可以根據自己的需求,導入適合的外部組件,實現更復雜和高級的功能。例如,可以導入人工智能組件,實現圖像識別、語音識別等功能,也可以導入物聯網組件,實現與傳感器、硬件設備的連接和控制。
此外,隨着以ChatGPT爲代表的生成式人工智能的發展,App Inventor也新增了ChatBot和ImageBot兩個生成式人工智能組件,用於生成對話文字和圖像。這樣,學生可以通過App Inventor進行人工智能、物聯網等項目的開發,深入學習和應用相關技術,拓寬自己的知識面和技能。
人工智能移動終端編程項目課程案例
三
生活中的人工智能主要有機器視覺、語音識別、自然語音處理和推薦系統等方面的應用。學生學習人工智能,可以將語音識別與合成、圖像識別和生成式人工智能作爲切入點,將教學設計的案例與現實生活中的應用相結合。
1.語音識別與合成教學案例——“語音翻譯機”APP
(1)案例介紹
本教學案例旨在通過製作一款“語音翻譯機”APP,讓學生體驗語音識別技術和語音合成技術在移動終端中的應用。在該應用中,當用戶用中文對着手機說話時,它可以將其翻譯成英語並朗讀出來。
(2)實施過程
第一階段:創設情境,明確任務。
教師創設情境:假設同學們準備出國旅遊,但目前外語水平有限,想製作一款APP方便與外國人口語交流。
第二階段:理解原理,確定方案。
引導學生了解語音識別技術和語音合成技術的原理。在App Inventor的多媒體類組件中,包含了語音識別器、文本語音轉換器和翻譯這三個組件,學生可以使用這些組件來實現從中文語音輸入到英文語音輸出的功能。鼓勵學生思考語音識別和語音合成技術在日常學習和生活中的應用,並分小組嘗試繪製程序流程圖,明確軟件功能和製作方案。
第三階段:合作探究,解決問題。
通過觀察樣例程序,學生可以在組件設計中添加一個名爲“開始識別”的按鈕和兩個文本框(分別用於顯示原文和譯文)。同時還需要添加語音識別器、文本語音轉換器和翻譯三個非可視組件,如圖1所示。
圖1 “語音翻譯機”APP組件設計
在邏輯功能設計過程中,學生可以將程序功能分爲語音識別、翻譯和語音合成三個部分。程序如圖2所示。
圖2 “語音翻譯機”APP程序模塊
語音識別部分:當按鈕被點擊後,調用手機中的語音識別器來識別語音。在識別完成後,將結果存放在原文文本框中。
翻譯部分:在原文文本框獲取到識別結果後,立即調用翻譯模塊,將原文進行“中文到英文”的翻譯。在翻譯完成後,將結果存放在譯文文本框中。
語音合成部分:最後調用文本語音轉換器來朗讀譯文。該組件可以朗讀多國語言,設置組件語言爲“en”代表使用英語進行文本朗讀。
第四階段:案例拓展,成果展示。
學生可以在原有的將漢語翻譯成英語的基礎上,擴展功能,實現將英語翻譯成漢語的功能,並添加更多語種,實現多語種之間的互譯。
此外,利用語音識別技術和語音合成技術,學生還可以創作各種富有創意的移動應用程序,如語音猜數字、語音計算器、變聲器等。這些應用程序可以進一步提升學生的創造力和實踐能力。在完成作品後,學生可以進行成果展示和學習交流,分享彼此的創意和經驗。
2.圖像識別教學案例——“水果分類器”APP
(1)案例介紹
圖像識別是人工智能的重要組成部分,用於處理、分析和理解圖像。在這個案例中,我們將以水果分類爲例,創建一個能自動識別和分類各種水果的移動應用程序,同時提供水果的營養價值信息。該應用程序類似於識花君、植物識別等軟件,通過基於機器學習的圖像分類技術,根據用戶拍攝的水果圖像進行自動分類和營養價值提示。
(2)實施過程
第一階段:創設情境,明確任務。教師可以創設情境,如在水果市場購物時,需要了解各種水果的營養價值。學生可以使用手機攝像頭對準水果,通過應用程序自動識別水果的種類,並顯示出相應的營養價值。學生可以先體驗“識花君”APP,嘗試識別不同類型的花朵。
第二階段:理解原理,確定方案。
引導學生了解機器學習的原理。機器學習是指機器模擬人類學習,不斷提高自身完成特定任務的能力,是實現人工智能的方式之一。圖像分類是機器學習的一個非常重要的組成部分,如自動駕駛汽車需要即時對所見圖像進行分類,如行人、交通信號燈等。
創建機器學習程序的一種方法是訓練它們進行圖像分類。例如,如果想讓程序分辨一個圖像是貓還是狗,可以給它很多貓和狗的圖像,標記爲貓和狗。通過足夠的例子,該程序將被訓練“知道”什麼類型的圖像是狗,什麼類型的圖片是貓。讓學生將人類的學習過程遷移至“讓計算機學會學習”,利用實驗和已有經驗理解並抽象出機器學習的一般過程。
第三階段:合作探究,解決問題。
學生組成小組,使用App Inventor的圖片分類系統,爲每個水果類別創建標籤,如蘋果、香蕉、生梨、橘子、柚子等。學生可以上傳各種水果的圖像示例,並進行模型訓練和測試。小組成員可以輪流擔任訓練和測試的角色,通過觀察測試結果,不斷調整和優化模型,直到對測試結果滿意,導出模型文件。具體如圖3所示。
圖3 訓練模型
在App Inventor中,學生可以根據樣例程序,設計應用程序界面,添加WebViewer組件和一個“開始識別”按鈕,並在按鈕的下方,插入兩個標籤,一個用於顯示水果名稱,另一個用於顯示水果介紹。
爲了實現圖像識別的功能,學生需要下載App Inventor拓展庫中的“Personal Image Classifier.aix”外部拓展組件,並導入到項目中,然後將之前訓練好的模型文件(model.mdl)上傳,並在組件屬性中選擇該模型文件(如圖4)。
圖4 “水果分類器”APP組件設計
學生可以思考並編寫程序:當“開始識別”按鈕被點擊時,啓動圖片分類功能。當得到分類結果後,設置水果名稱標籤的文本爲結果的第一項,即置信度最高的水果。同時,通過字典變量查詢該水果對應的營養價值,並將結果顯示在水果介紹標籤中。程序如圖5所示。
圖5 “水果分類器”APP程序編程模塊
第四階段:案例拓展,成果展示。
學生可以進一步拓展應用程序功能,如添加更多的水果類型,實現語音朗讀功能,提供雙語顯示等。此外,還可以引導學生思考圖像分類技術在生活中的其他用途,如表情識別、口罩識別、手勢識別、課堂考勤機等創意的移動應用程序。在完成作品後,學生可以進行成果展示和學習交流,分享彼此的創意和經驗。
3.生成式人工智能教學案例——“文字繪圖”APP
(1)案例介紹
生成式人工智能(Generative AI)是一種新的人工智能技術,旨在通過學習和理解數據的模式和規律,生成新的、原創性的內容,如圖像、音頻、視頻、文本等。
在“文字繪圖”APP這個案例中,將使用生成式人工智能中的圖像生成技術,創建一個能夠根據用戶輸入的文字生成相應圖像的移動應用程序。
用戶可以輸入不同的文字描述,如“夏天的海灘”“森林中的小屋”等,應用程序將根據這些描述生成相應的圖像。通過這個應用程序,學生們可以將自己的想象力轉化爲圖像,並與他人分享。界面如圖6所示。
圖6 “文字繪圖”APP界面
(2)實施過程
第一階段:創設情境,明確任務。
教師可以創設情境,如讓學生想象自己是一位畫家,可以根據文字描述創作出對應的圖像作品。學生可以先體驗類似的文字生成圖像應用程序,瞭解其功能和操作方式。
第二階段:理解原理,確定方案。
引導學生了解圖片生成式人工智能的原理。圖片生成式人工智能通過學習文字描述和圖像之間的映射關係,生成與文字描述相符的圖像。學生可以瞭解其基本原理和訓練過程,理解如何將其應用於文字生成圖像。
第三階段:合作探究,解決問題。
學生可以分組合作,在應用程序中添加文本輸入框、2個按鈕和圖像顯示組件。同時,還需要添加語音識別器和ImageBot組件。ImageBot是一個使用DALL-E 2來創建和編輯圖像的不可見組件,如圖7所示。
圖7 “你說我畫”APP組件設計
在邏輯功能設計過程中,學生可以將程序功能分爲文字輸入、語音輸入和圖像顯示三個部分(如圖8)。
圖8 “你說我畫”APP程序編程模塊
文字輸入部分:當按鈕被點擊後,ImageBot讀取文本輸入框中的文字。
語音輸入部分:當按鈕被點擊後,先使用語音識別器識別聲音,識別完成後,將結果顯示在文本輸入框中,ImageBot再讀取識別的文字。
圖像顯示部分:當ImageBot根據文字生成圖片後,將結果顯示在圖像組件中。
第四階段:案例拓展,成果展示。
學生可以進一步拓展應用程序的功能,如添加保存圖像的功能、添加分享功能,讓用戶可以將生成的圖像分享到社交媒體上。此外,學生還可以思考如何優化生成效果,提高圖像的質量和與文字描述的符合程度。在完成作品後,學生可以進行成果展示和學習交流,分享彼此的創意和經驗。
結語
四
利用App Inventor來開發與人工智能有關的移動應用軟件,因爲採用了模塊化的方法,符合中小學生的認知發展規律,而模塊封裝的利用,降低了對知識領會的難度,激發了學生的創作積極性。
開展基於App Inventor的人工智能移動終端編程項目課程的設計與實踐,可以爲學生提供一個全面的學習平臺,幫助他們掌握人工智能技術和移動應用開發的技能,培養他們的計算思維和創新意識。
本文作者:
丁力民
上海市楊浦區青少年科技站
文章刊登於《中國信息技術教育》2024年第02期
引用請註明參考文獻:
丁力民.基於App Inventor的人工智能移動終端編程項目課程設計與實踐.[J].中國信息技術教育,2024(02):78-82.
歡迎訂閱
點擊圖片即可訂閱