跳到主要內容

發表文章

目前顯示的是 11月, 2024的文章

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'\ Ans: 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) 是否有資料跟結果有關聯...