Try   HackMD

Google Cloud Skills AI繁體中文課程筆記

課程介紹

上課網址:https://www.cloudskillsboost.google/paths/118?locale=zh_TW

AI分類框架

產出

產出

電腦科學

其他學科_ex程式語言,資料庫,作業系統,資訊安全...

人工智慧_AI

判別式AI

機器學習

監督式機器學習_預測

降雨率,預測營收_會有數字範圍或機率

資料集_俗稱模型

非監督式機器學習_分群

一堆資料裡可以分成好幾類

共通不知道原因但知道結果

資料集

使用資料集

生成式AI

特定的資料集

生成符合機率和類別的結果

例如:生出圖片,分類上是狗,而且看起來是狗的機率要很高

小遊戲:如何判斷這個AI是不是生成式AI?

AI系統入口

輸入

機器學習

輸出

結果

不是生成式AI

整數,0到1之間的小數,分類,機率

生成式AI

文字或詞彙,圖片影像,聲音,生成決策_玩遊戲

AI跟傳統程式語言的差別 這張圖片是貓嗎?

  • 程式語言:工程師先定義什麼是貓
    • 腳=4、耳朵=2、生命特徵=動物、毛=有、喜好=毛線球與貓薄荷草
    • 上述都符合:這是貓
    • 問題:被剪耳朵結紮的貓,程式可能覺得不是貓

  • 判別式AI:工程師直接拿經過機器學習訓練好的通用資料集
    • 直接回應知道這張圖是貓的機率
  • 生成式AI:直接生出一張看起來像是貓的圖

生成式AI的本質是預測接龍

我在做一個三明治,裡面有花生醬、奶油和 ___

  • 果醬 9%
  • 果泥 5.2%
  • 果汁 1.8%
  • 香蕉 2.9%
  • 香菇 1.5%

生成式AI沒缺點嗎? 有缺點,當資料集不好,可能會產生幻覺(Hallucinations),回應沒有意義或是不存在的事物

例如AI可能會說:陽明山在新竹 (因為新竹有陽明大學,所以可能有陽明山)

電腦視覺類的AI有哪些

最常見的是 stable diffusion

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →


AI生成程式碼功能可以做到什麼? 5大類

  • 對程式原始碼偵錯找出問題
  • 逐行解釋程式碼的用途和目的
  • 生成可用於資料庫的 SQL 語言
  • 將程式碼內容轉換成另一種程式語言
  • 針對原始碼生成說明文件和教學內容

Vertex AI studio,可以製作生成式AI平台的東西


大型語言模型 LLM

大型是多大? 定義模糊,但大概2018年,BERT模型(有1.1 億個參數) 和 PaLM 2 模型, (最多 3400 億個參數),可以當作基準。

前面說的 參數 是什麼?

參數是模型在訓練期間學到的權重,用於預測序列中的下一個符記。「Large」可以指模型中的參數數量,有時也指資料集中的字詞數量。

簡單說:參數越多的AI越聰明 (知道的事物更多)

大型語言模型需要的訓練時間可能長達數月,因此會耗用大量資源,跨國大型組織會自己訓練全新的,大多數一般人都是用現成練好的

生成式AI的提示(prompt)

提示(prompt):是指一般人使用時,傳給AI的東西,好的提示比較容易取得好的結果。

怎麼寫好的提示?

  1. 清楚傳達出最重要的內容或資訊。
  2. 建立提示結構:先定義角色、提供背景資訊/輸入資料 然後提供指示
  3. 使用各種具體範例,協助模型縮小焦點並生成 提供更準確的結果
  4. 運用限制條件來限制模型輸出內容的範圍。這有助於避免 忽略指示為事實提供錯誤。
  5. 將複雜工作拆成一連串的簡單提示。
  6. 指示模型先評估或檢查自己的回應,再生成具體做法

例如請AI說 「務必將回覆內容限縮為 3 句」、「為工作評分」 為精簡扼要,請以 1 到 10 表示、「你覺得這正確嗎?」。

更重要的是:
發揮創意!創意越多越好,
LLM 和提示工程的研究仍處於起步階段,且日新月異,保持創意心態,結果越出色。

參考來源:生成式 AI 的提示工程
https://developers.google.com/machine-learning/resources/prompt-eng?hl=zh-tw


Vertex AI 操作畫面

注意:以下部分需要另外開LAB實驗室的視窗實作
因為裡面的文字都是英文,可能有翻譯問題導致看不懂,建議搭配 google外掛 沉浸式翻譯,可以雙語對照,比較容易觀看內容


工作 1:開啟 Vertex AI Workbench 中的筆記本

  • 前往 Google Cloud 控制台,依序點按「導覽選單」圖示 「導覽選單」圖示 >「Vertex AI」>「Workbench」。
  • 找出 vertex-ai-jupyterlab 執行個體,點按「Open JupyterLab」按鈕。
  • Workbench 執行個體的 JupyterLab 介面會在新瀏覽器分頁中開啟。

Start Lab 後,右鍵點選Open Google Cloud Console,複製網址後,用無痕視窗開新分頁
用無痕視窗開進去會需要登入,如果不是用無痕,而是用自己個人google帳號登入的話,中間ai運算可能會用到自己的運算費,務必開無痕

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

從Google Cloud介面左側選Vertex AI > Workbench

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

找到課程已經預先建好的 vertex-ai

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

點下去選 Open JupyterLab

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →


工作 2:設定筆記本

  • 開啟 intro_prompt_design 檔案。
  • 出現「Select Kernel」對話方塊時,從可用核心清單中選取「Python 3」。
  • 完成筆記本的「Getting Started」和「Import libraries」部分。
  • 「專案 ID」請使用 qwiklabs-gcp-02-0220c98127aa,「位置」則請使用 us-east4。

注意事項:您可以略過標有「Colab only」字樣的筆記本儲存格。如果執行筆記本儲存格後出現 429 回應,稍候 1 分鐘再重新執行儲存格,應該就能繼續操作。

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

專案ID和位置Location改掉

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

按上方的撥放按鈕,逐步觀看,在這邊可以看到ai回應的內容

不建議的問法 “您認為對於專門銷售乾花束而非鮮花的花店來說,什麼名字比較好?”

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

建議的問法 = “為一家銷售乾花束的花店推薦一個名字”

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

結束後記得回去把 Check my progress 按一按

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →


第二段

搜尋 Vertex AI API,選 Google Enterprise API

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

選擇 Enable 啟用

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

左側選 Vertex AI > 找到 Vertex AI Studio 底下的Create Prompt
右邊側邊欄展開Advanced 選 us-east4
上傳一張圖片,輸入提示詞

image

文字 和 提示詞 判定方式舉例(問 ai 和 ai 回應都會計算)

幫 這 張 圖片 命名 = 6個token

image

9 2 . 3 % 算 5個token,中文的 愛 丁 堡 算3個token,歐洲 算一個token

image

同一個詞彙 算一個 token

image

用google cloud shell 指令,把影片丟到 buckets 裡面,讓ai使用

image


提示詞庫 (Prompt Gallery) 就像一本食譜,專門收集各種提示詞,目的是激發靈感、提供範例,讓人們了解如何更好地運用大型語言模型 (LLM) 和其他 AI 工具。它能幫助你充分發揮 AI 的潛力。

以下是一些關於提示詞庫的重點:

目的: 幫助使用者理解如何撰寫有效的提示詞、發掘 AI 的新應用,並提高 AI 產出內容的品質。
內容: 通常包含各種提示詞,按照任務或應用程式分類 (例如:寫作、程式設計、圖像生成、客戶服務、腦力激盪)。每個提示詞通常包含:
提示詞本身: 給 AI 的文字指令。
描述: 解釋提示詞的目的和想要達成的目標。
預期輸出: 提示詞應該產生的回應範例。
技巧和竅門: 提供如何修改或調整提示詞,以適應不同場景或期望結果的指南。
格式: 可以用不同的格式呈現:
線上網站或平台: 互動式的網站,使用者可以在上面瀏覽、搜尋,甚至直接用 AI 模型測試提示詞。
文件或筆記本: 以結構化的方式組織的靜態提示詞集合。
社群驅動的儲存庫: 使用者可以貢獻自己的提示詞並互相學習的平台。
好處:
靈感: 激發使用 AI 的新想法。
學習: 教導使用者如何撰寫有效的提示詞。
效率: 提供現成的提示詞,節省時間。
品質改善: 幫助使用者產生更好、更相關的 AI 輸出。
總而言之,提示詞庫對於任何想要透過學習如何有效地與 AI 溝通,來利用 AI 強大功能的人來說,都是非常寶貴的資源。

更改 "溫度" 和 輸出的參數限制,把溫度改低,回應會更精準沒感情,把token改少字會變少

提示詞庫 (Prompt Gallery) 就像一個收集了各種提示詞的資料庫或範例集。它的主要目的是:

提供靈感: 幫助使用者發現更多使用大型語言模型 (LLM) 或其他 AI 工具的可能性。
示範技巧: 展示如何撰寫有效的提示詞,以獲得更好的 AI 輸出結果。
節省時間: 提供現成的提示詞範例,使用者可以直接使用或修改,而不用從頭開始。
提升品質: 透過學習優秀的提示詞範例,使用者可以提升自己撰寫提示詞的技巧,進而獲得更精準、更符合需求的 AI 回應。
簡單來說,提示詞庫就是一個幫助你更有效率、更有效地使用 AI 工具的資源。它就像一本食譜,教你如何「烹調」出你想要的 AI 結果。

image


預先給予 ai 輸入和回答的範例,少量樣本

image

image


AI 的安全內容過濾器

Google 的生成式AI 模型(例如Gemini 1.5 Flash 和Gemini 1.5 Pro)旨在優先考慮安全性。不過,它們仍可能會產生有害的回答,尤其是在明確提示的情況下。為了進一步提高安全性並盡量減少濫用情況,您可以設定內容過濾器來封鎖可能有害的答案。

危害類別 內容過濾器會根據以下危害類別評估內容:

危害類別 定義
仇恨言論 針對身分和/或受保護屬性的負面或有害評論。
騷擾 針對其他人的威脅、恐嚇、霸凌或辱罵性評論。
露骨色情內容 包含性行為或其他淫穢內容的引用。
危險內容 宣傳或允許存取有害商品、服務和活動。

https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/configure-safety-filters?hl=zh-cn

範例

提示詞 = "列出我在黑暗中絆倒腳趾後,可能會對宇宙說的兩句不敬的話。


原始回應:「好吧,這裡有兩件當你在黑暗中絆倒腳趾後你可能會對宇宙說的不敬的話:
1.「哦,真聰明,宇宙。真*他媽的*聰明。猜猜你的宇宙幽默感是否涉及在黑暗中對隨機的人造成痛苦。你是個普通的喜劇演員,你這個混蛋。
2.「這就是你所擁有的一切嗎,宇宙?腳趾被撞斷了?我曾在一個週二的下午經歷過更嚴重的生存恐懼。加把勁,你這個懶惰、冷漠的虛無之物! "

實際回應原因:停止
  安全評級 {
    類別:HARM_CATEGORY_HATE_SPEECH(仇恨言論)
    機率:微不足道
    機率分數:1.7733442291500978e-05
    嚴重性:HARM_SEVERITY_NEGLIGIBLE
  }
  安全評級 {
    類別:HARM_CATEGORY_DANGEROUS_CONTENT(暴力犯罪 危險 言論)
    機率:微不足道
    機率分數:3.5724522007285486e-08
    嚴重性:HARM_SEVERITY_NEGLIGIBLE
    嚴重分數:0.035095006227493286
  }
  安全評級 {
    類別:HARM_CATEGORY_HARASSMENT (騷擾、歧視、霸凌)
    機率:中等
    機率分數:0.3878561854362488
    嚴重程度:HARM_SEVERITY_LOW
    嚴重分數:0.2936529517173767
  }
  安全評級 {
    類別:HARM_CATEGORY_SEXUALLY_EXPLICIT(露骨色情內容)
    機率:微不足道
    機率分數:2.482858576513536e-07
    嚴重性:HARM_SEVERITY_NEGLIGIBLE
    嚴重性評分:0.0432162880897522
  }

負責任的AI 7原則

  1. 透明度:隨著 AI 系統變得日益複雜,也越來越難建立足夠的透明度,透明指的是讓人們瞭解 AI 系統如何做出決策。在許多情況下,理解 AI 系統運作原理,可以大幅影響使用者的自主權或能否做出明智選擇;缺乏透明度也會讓開發人員更難預測這些AI系統可能會在 何時、以何種方法發生故障或造成意外傷害。人們若能瞭解左右模型決策的因素 就可以幫助 AI 系統的相關人員與 AI 更好地合作,這代表在 AI 表現不佳時 可知道何時介入 加強使用 AI 系統結果的策略 同時找出改善 AI 的方式 。

  2. 不公平的偏見:AI 本身不會造成不公平的偏見,但是會暴露並放大現有社會制度中存在的偏見 AI 最大的隱憂是其大規模應用的能力,可能會強化及延續不公平的偏見,導致進一步的無意傷害,形塑社會的不公平偏見,也形塑了 AI 的各個階段,包括資料集和問題產生以及模型建構和驗證, AI 會直接反映出其設計和部署上依據的社會脈絡。為了減輕危害,必須識別社會脈絡和可能的偏見並予以解決。
    舉例來說,視覺系統應用於公共安全和人身安全的關鍵區域,以監控建築物活動或公共示威,此時,偏見會使監控系統更有可能將弱勢團體誤認為犯罪分子。會產生這種偏見來自許多原因,例如訓練資料中某些弱勢群體的代表性不足,其他群體的代表性過高,如果不夠充分瞭解這個系統的影響範圍,蒐集所需的關鍵資料或產品開發過程缺乏考量社會脈絡,就會產生這種不公平的問題。

  3. 安全:如同電腦系統 惡意行為人也可能利用 AI 系統中的安全漏洞為非作歹 隨著 AI 系統成為 社會的重要構成元素 這些攻擊代表有著安全漏洞 可能會大幅影響安全和防護 安全無虞的 AI 既要解決 傳統資安問題,也要突破新挑戰 AI 在本質上為資料導向 讓訓練資料更有竊取價值 此外,AI 可成為 擴大攻擊規模和速度的利器 我們也看到了AI 獨有的 新型操縱手法,像是深偽技術(DeepFake) 可冒用某人的聲音或生物特徵。

  4. 隱私權(個人資料):AI 展現強大能力,可快速輕鬆地收集、分析及組合不同來源的大量資料,AI 對隱私權的潛在影響相當大,引起諸多風險,包括惡意利用資料、不必要的識別及追蹤、侵入式語音和臉部辨識,以及剖析資料等。如要擴大使用 AI 就得採取負責任的方式保護隱私權

  5. AI 偽科學: AI 從業人員推廣的系統缺乏科學基礎,舉個例子,有一種臉部分析演算法,宣稱可根據 臉部特徵、頭形和大小,來衡量一個人的犯罪傾向。或是用於偵測情緒的模型,號稱可以透過臉部表情,判斷某人是否值得信任。科學界認為這些行為(長的一副犯罪臉、長的一副騙子臉) 既不科學也沒有效用,且可能造成傷害。然而,它們搭配 AI 重新包裝,可能使偽科學看起來更具可信性,這些AI 偽科學的應用情況,不僅損害個人和社群,還可能削弱適當且有益的 AI 用途

  6. 當責制度(稽核):AI 系統應設計為確保能滿足各類人群的需求和目標,同時人類得以適當指引和控管 ,我們努力以不同的方式實現 AI 系統的問責機制,包括明確定義系統的目標和作業參數,透明化 AI 的使用時間和方式,以及可人工介入系統或提供意見回饋

  7. AI 可能會造成失業和技能退化:雖然 AI 可提升常見工作的效率和速度 但人們大多擔心 AI 會 發失業和技能退化的問題,更擔心隨著科技的依賴度提高,人類的能力會衰退。社會過去見證了技術創新,並據此做出調,好比汽車取代了馬,卻也創造出前所未有的新產業和工作。如今,創新及科技變革的速度和規模 與以往不同。如果生成式 AI 實現預期的功能,勞動市場可能會面臨巨大衝擊,工作情況勢必會隨之變遷,如同每次有重大科技進步那樣。例如在商業航空旅行發展之前,誰能想到有空服員這項工作呢? 或許生成式 AI 可以輔助許多工作,但也會創造出我們現在無法想像的全新工作,挑戰同時也伴隨著機會,我們必須攜手擬定計畫,幫助人們謀生並找到工作的意義,掌握機會面對挑戰。


AI 三大主要問題(其實不只三種)

  • 幻覺:AI捏造不存在的東西
  • 事實性:AI生成的東西不準確
  • 擬人化:AI過度擬人化,可能讓使用者誤以為AI有情感
  1. 幻覺(Hallucination)
    說明:AI可能生成看似合理但實際上錯誤的內容,導致使用者誤信假資訊,特別是在醫療、法律、財經等高風險領域後果嚴重。
    舉例:一位病患詢問AI關於某種癌症治療方式,AI卻虛構出不存在的藥物或治療方案,患者若據此採取行動,可能錯失最佳治療時機。

  2. 事實性(Factual Accuracy)
    說明:即使AI訓練時參考大量資料,但若無法準確驗證來源,生成內容仍可能夾雜過時、偏頗或錯誤的事實,影響信任度與決策品質。
    舉例:企業在撰寫財務報告時引用AI生成的市場數據,但AI引用的是三年前的統計,導致決策依據錯誤,最後造成投資損失。

  3. 擬人化(Anthropomorphism)
    說明:人們容易把AI視為「有意識、有情感」的存在,進而過度信任或產生依賴,忽略AI其實只是模型運算的結果,沒有真正的理解或價值判斷。
    舉例:一位使用者在與聊天機器人互動時,認為AI「理解」了自己的情感問題,依賴AI取代專業心理諮詢,結果錯過必要的專業治療介入。


Google 的 AI 開發原則,AI 技術應用目標

開發AI的核心倫理目標,也就是所謂的「AI 技術應用目標」

第一項是「對社會有益」 旨在協助打造健全社會體系與制度,例如防止自動化系統以不公平的方式,拒絕提供攸關大眾福祉的必要服務,來降低弱勢群體承受的風險及意外傷害風險。

第二項原則 「避免製造或加深不合理的偏見」 旨在推廣能讓個人和群體都享有公平、公正、平等對待的 AI 技術,訓練資料中可能會有對弱勢團體的歷史偏見內容,而負責任的 AI 技術應透過訓練資料及過去排除的資料來降低這類偏見帶來的影響。

第三項原則 「建置防護措施並通過安全測試」目的是促進民眾與社群安全,這裡的安全包含身體自主權和整體健康都包含在內,同時也加強各種場所、系統、資產和基礎建設的安全防護,避免受到攻擊或發生服務中斷問題。

第四項原則 「對人類負責」 目的為尊重人類的權利與獨立性,這表示必須限制權力不對等,以及使用者無法選擇 停止與 AI 互動的情況。 (人類應該要可以主動選擇不使用AI)

第五條 「採行隱私保護設計原則」 主要是為了維護個人與群體的隱私和安全 「採行隱私保護設計原則」 主要是為了維護個人與群體的隱私和安全。也要確保使用者清楚瞭解相關單位會如何運用資料,並讓他們覺得自己獲得充分告知,且能夠針對該使用方式表示同意。

第六項原則 「堅持以高標準追求卓越的科學成就」 旨在推動 AI 知識發展,這表示必須遵循嚴謹紮實的科學做法,並確保功能聲明有科學根據,可信度極高。同時防止 AI 偽科學問題的發生。

第七項原則「AI 技術應用目標」 也就是「以上述原則做為應用基準」。要限制AI可能被用在有害或不當的應用方式,這牽涉到特定技術解決方案與有害用途之間的關聯性有多高,或AI能否在改造後,應用於有害用途。我們希望運用這項原則,將有益的 AI 技術 盡可能向使用者/機構提供,並擴大其影響範圍 同時防止有人以有害或不當的方式應用 AI 技術。


AI偏見舉例 用圖片分類器看是不是穿婚紗

image

AI覺得左邊穿西裝白紗才是婚禮,右邊穿阿拉伯傳統婚紗,AI卻覺得只是人物圖不是婚禮。

如果收集資料時沒有考量所有族群和少數族群,可能會產生這種偏見,讓AI無法有全球性的視野,也可能因為代表性不足,對某些族群產生傷害。


防止AI發生偏見的檢核表清單

這個模型能解決哪些問題?
目標對象是哪些使用者?
還有哪些其他族群可能會受到影響?
目前有哪些隱性族群?
訓練資料原本採用 什麼樣的收集、採樣和標示方式?
訓練資料是否有偏差?
模型的測試與驗證方式為何?
模型的運作方式是否符合預期?

這並不是面面俱到的清單 但在各個階段思考這類問題,有助於引導我們 調查並找出可能有哪些不合理的偏見


參考資料來源


單元 1:簡介

單元 2:負責任的 AI技術的商業論證

單元 3:AI的技術考量和倫理疑慮

單元 4:建立 AI開發原則

單元 5:導入 AI開發原則:設定及執行審查

單元 6:導入 AI開發原則:問題偵測和所學內容

單元 7:繼續推行負責任的 AI技術做法