跳到主要內容

發表文章

Poetry 問題指南

  1. Poetry下任何指令都會出現No Python 問題 PS D:\雜項\python範例> poetry config --list No Python at '"C:\Users\Bryant.lin\AppData\Local\Programs\Python\Python311\python.exe'\ <b>Ans: </b> C:\Users\Bryant.lin\AppData\Roaming\pypoetry\venv\pyvenv.cfg 將內容python的目錄修改,就可以重新執行 home = C:\Users\Bryant.lin\AppData\Local\Programs\Python\Python313 include-system-site-packages = false version = 3.11.3 executable = C:\Users\Bryant.lin\AppData\Local\Programs\Python\Python313\python.exe command = C:\Users\Bryant.lin\AppData\Local\Programs\Python\Python313\python.exe -m venv --clear C:\Users\Bryant.lin\AppData\Roaming\pypoetry\venv
最近的文章

淺談機器學習原理-Nonlinear Transform

Nonlinear Transform 淺談機器學習原理-Nonlinear Transform Nonlinear Transform *通用能力 gerneralization : 就是將訓練好的模型,放到正式環境可以正常的運作,通常Linear Model的gerneralization會比較好,因為線性模型解決的問題比較單純。缺點是應用侷限比較大。 參考Chih-Chung Chang老師的範例:縣性與非線性分類範例 https://www.csie.ntu.edu.tw/~cjlin/libsvm/ 非線性問題 當如果今天假設要圈出裡面小圈圈的資料,我們就無法使用線性的模型,我們可以用非線性解像圈圈的方程式 s i g n ( − x 1 2 − x 2 2 + r ) sign(-x1^2-x2^2+r) s i g n ( − x 1 2 − x 2 2 + r ) 來解決,在演算法我們利用reduce來將不會的問題透過已知的問題來解決,所以在這個問題 我們將圈圈的方程式(非線性模型)reduce成線性模型來解決。 Reduce 方法論 我們調整圓形的方程式改為 z 0 z_0 z 0 ​ , z 1 z_1 z 1 ​ , z 2 z_2 z 2 ​ 來轉換線性方程式, { ( x n , y n ) } \{{(x_n,y_n)}\} { ( x n ​ , y n ​ ) } => { ( z n , y n ) } \{{(z_n,y_n)}\} { ( z n ​ , y n ​ ) } 在這空間資料中只要能找線,就可將不同的分類區分,圖中可以線性可以線去做分類。 透過向量方式來轉換成線性方程式 我們找到一個方式將非線性資料X透過向量轉換為Z後,希望透過線性方程式方式來學習,得到正解。 當我們Nonlinear transform轉換成線性方程式,當有新的資料進來我們無法使用invertiable(逆向工程)的方式去轉回非線

淺談機器學習原理-Linear Model

Linear Regession 淺談機器學習原理-Linear Model Linear Regession 需要預測數值,輸出為實數的數值,我們就稱為它是regession的任務。 範例:Netflix百萬獎金比賽,有100萬筆的rating資料與480K的使用者給17.7k的電影來評分,預測使用者評分電影的星星*數量。 (1) 定義問題是否需要使用ML : 預測使用者評分電影的星星*數量,算是一個複雜的問題。且知道評分結果為1~5星,可以知道這是一個regression的任務 (2) 收集資料 : Netflix有100萬筆的rating資料與 (3) 定義模型 :假設它是regession問題,我們可以知道hypothesis: h(x) = w T ∗ x w^T *x w T ∗ x 的方程式。我們可以與分類Perceptron的公式來比較。 Linear Regession :用來找到最接近實際目標值,也就是最小誤差error的值 (4) 測量誤差 : squared error : ( 預測值 − 真實的值 ) 2 (預測值-真實的值)^2 ( 預測值 − 真實的值 ) 2 ,我們算出誤差值後,如何得到最小的誤差min(Error(x)) 理想化的誤差值 我們可以假設誤差接近於0值為球體的位置,是在曲線的最下方也就是偏微分等於0的位置,我們要找的讓W偏微分等於零。 Statistics vs Machine Learning Statistics: 統計比較著重在數學的推論 Machine Learning: 機器學習比較著重在資料計算,統計工具對機器學習領域是很有幫助 Logistic Regression 邏輯回歸 需要預測機率,輸出為小數點,我們就稱為它Logistic Regression任務。資料輸出為+1,-1的值,可以預測為機率發生,可以由公式可以知道x在發生+1的機率是多少。範例: 疾病預測、鐵達尼的死完的機率 機

淺談機器學習原理-概念

機器學習 淺談機器學習原理筆記-- 機器學習 Learing : 人類學習是透過各種觀察(observatoins)去學到能力 , 輸入:觀察、輸出:能力 Machine Learning : 機器是透過各種資料的方式來學習到能力 ,輸入:資料、輸出:功能 範例: 使用股票資料來預測投資的方向。 總結: 我們希望機器可以像人一樣,透過學習就可以獲得技能,機器學習就像在解決一個任務(Y)透過資料(X)和找到一個方程式(F)來求出接近任務的解。Y = F(X) ,常用的範例:語音辨識、天氣預測、股票預測、圖片辨識、機器玩遊戲。簡單說機器學習利用資料與合適的模型來解決一個複雜的問題,通常這個問題無法使用簡單程式來解決。 Artifical Intelligence(AI) Machine Learning(ML) 說明 希望模擬人的智慧行為 透過資料學習來改善整體效能 範例 資料、演算法 資料、演算法 集合關係 AI AI的子集合 機器學習先決條件 : 解析問題的複雜度,是否真的需要建立模型來解決 必須有資料並需要處理 從資料中建立模型(Hypothesis) 選擇測量誤差的方法,模型得到的解與現實結果的誤差 建立模型到正式環境(沒有學習過的資料),也可以達到正確解 範例: KDD 2010 出題系統可以根據過去的練習,去調整出題的難度=> binary classifiation 機器學習過程 問題公式 上圖表視輸入、輸出、資料和Hypothesis(模型)、f 現實世界答案 Step 0 : 定義問題是否需要使用ML (1) 先理解這個問題是否需要透過ML來處理,如果可以使用if-else或是簡單邏輯判斷來解決,表示問題簡單,不需要使用ML來解決。ML通常解決比較複雜的問題,像股票預測是否可以使用ML來預測未來趨勢。 (2) 是否有資料跟結果有關聯 Step 1 : 收集資料 收集資料並且都須要有

Vector Search and Embeddings 向量搜尋與生成嵌入

參加Google Cloud AI Study Jam 2024 - 生成式 AI 培訓計劃 參加Google Cloud AI Study Jam 2024 - 生成式 AI 培訓計劃 網站: https://rsvp.withgoogle.com/events/csj-tw-2024 指定學習教材 Path 3: Advanced: Generative AI for Developers Learning Path (12 堂課程) Vector Search and Embeddings Search 搜尋 每天都會有搜尋的需求,例如要找某個產品的資料、想要旅遊行程。在企業上想要用影像搜尋、自然語言搜尋、推薦工具來管理內部資訊等等。在企業內部搜尋相關文件、找出必要的主題內容專家(SME)或跨團隊探索使用範例。向量搜尋是著重於語意相似度(Semantic similarity)的技術,可以用於上面情境。 Vector Search and Embeddings (1) 向量搜尋如何工作 Encode:將輸入資料(文字、圖片、聲音、影像、編碼等等)使用embeding模型來將資料轉成向量格式, Index:然後建立索引,以向量的方式可以更快速與更廣的方式搜尋 Search:在向量空間上搜尋類似的資訊 (2)向量搜尋運作的方式 Build: 會將Meta資料透過embeding模型產生向量並建立索引後,儲存在向量資料庫(Vector Space)中 Query: 先把搜尋的句子透過embeding模型產生向量來跟向量資料庫(Vector Space)進行搜尋 (3)向量資料庫的挑戰 問題 技術 編碼 如何建立多模態的資料(文字、圖片、聲音、影像、編碼)來語意表示 Embeddings 建立索引與搜尋 建立快速且有效的搜尋 Vector Search 傳統與向量搜尋的比較 傳統搜尋 選項 說明

Vue 3.0 -5 slot

摘要 Vue 3.0 -5 slot 摘要 slot用來將組件定義插槽使用,可將組件的插槽內容 ,由上層元件(呼叫層)所決定顯示的內容,分為三種 (1) 默認插槽: 默認組件插入的位置 (2) 具名插槽:插入具名的插槽 (3) 作用域插槽:由父組件來決定顯示的樣式 例如:提供圖片使用可以命名為useImage; 默認插槽 我們利用slot將商品內容,可以根據我們需要擺放資料格式來擺放 這是商品的圖卡,支援文字、圖片、影像,將 slot顯示內容 檔案路徑: slot\Category.vue <template> < div class = "category" > < h2 > {{ title}} </ h2 > < slot > </ slot > </ div > </template> < script setup lang = "ts" name = "category" > defineProps ([ "title" ]) </ script > < style scoped > .category { background-color : aqua; border-radius : 10px ; box-shadow : 0 0 10px ; padding : 10px ; margin : 0px 10px 0px 10px ; width : 200px ; height : 300px ; } h2 { background-color : orange;

Vue 3.0 -4 hooks自定義

摘要 Vue 3.0 -4 hooks自定義 摘要 hooks 直譯是"鉤子",hooks命名方式為useXXXX,以use為開頭。所以Hooks是一種自訂的獨立的組件其將封裝內部邏輯,讓該hooks可以重複使用。 例如:提供圖片使用可以命名為useImage; hooks範例 Hook宣告方式 檔案路徑: hooks\useCalculate.ts import { ref } from "vue" ; /** * @description 計算總和的參數 * @param { number } interval 間隔 * @param { number } initValue 初始值 **/ interface useCountParam{ interval : number ; initValue?: number ; } export default function useCalculate ( {initValue= 0 , interval}:useCountParam ){ const sum = ref (initValue) ; function increase ( ): void { sum. value += interval ; } function decrease ( ): void { sum. value -= interval ; } return { sum, increase, decrease } } HooksView.vue <template> <div> <hr> <img v-for=