| Python 3.10 | 模式比對 | PEP 634 | Java | 多型 | 程式人 | 林信良 | 程式學習
模式比對與多型
模式比對就是函數式世界的多型,不同於物件導向推崇的子型態多型,模式比對是特定(ad-hoc)多型,在同時支援物件導向與函數式典範的語言中,必要時兩者也可以併用
2021-11-18
| Java 17 | 彌封類別 | 程式人 | 林信良 | 程式學習
揭露型態邊界的彌封類別
彌封類別在語法上,作用看似限制類別階層,然而在語義上,目的是明確地揭露型態邊界,因為邊界透明化,模式比對、解構模式,甚至是代數資料型態,都將有實現的可能
2021-11-11
| 程式人 | 林信良 | 程式學習 | Java | 記錄類別 | Record class
不只是語法糖的記錄類別
Java的記錄類別(Record class)只是能自動產生equals、hashCode等方法的語法糖?既然如此,為何要有不可變動、無法繼承等限制呢?因為語義上,記錄類別就是不可變資料的透明載體
2021-11-04
| 程式人 | 林信良 | 程式學習 | Java | Java 17 LTS
從Java 11到Java 17
新版Java問世,當中調整了LTS版本釋出週期、免費授權,以及對設計有重大影響的新語法特性
2021-10-28
| 程式人 | 林信良 | 程式學習 | 柏拉圖多面體 | 測地線多面體
圓與球中的數學
在電腦繪圖中,圓與球的繪製看似簡單,然而,進一步所延伸出來的需求,並非依賴直覺就能解決,事實上,正確地認識圓與球中的數學,才是正確的解決方式
2021-10-14
| 程式人 | 林信良 | 程式學習 | 卷積 | 深度學習
從卷積到卷積神經網路
若對於卷積神經網路中卷積、填補、池化等觀念感到難以理解,我們可以試著從圖像處理的卷積運算這類可解釋模型當中來理解,從而認識到卷積神經網路,其實就是從資料生成濾鏡的事實
2021-10-07
| 程式人 | 林信良 | 程式學習 | 機器學習 | 深度學習 | 模型 | AI
思考模型的可解釋性
在深度學習的領域,放棄了解釋最終模型的可能性,來換取解決複雜任務的可能性;然而,這可不是暴力法,無論模型可解釋或難以解釋,該做的事情其實都相同!
2021-09-30
| 程式人 | 林信良 | 程式學習 | Numpy | PyTorch | 深度學習
從NumPy到PyTorch
PyTorch是支援深度學習的框架,為了不迷失在API之中,可藉由NumPy實現簡單的學習模型,逐步轉換至PyTorch,認識相關元件的方便,瞭解支援的流程典範
2021-09-23
| 程式人 | 林信良 | 程式學習 | Code+CAD | OpenSCAD | Computer-Aided Design
Code+CAD的選擇
目前如果要使用程式碼進行CAD的設計,能選擇的方式很多,而且應用上日漸成熟
2021-09-16
| 程式人 | 林信良 | 程式學習 | 感知器 | 神經網路 | 核方法 | Kernel method
從感知器到神經網路
神經網路是一堆感知器的組合,由一堆單純運算來達成複雜的任務,多從運算組合的本質來思考神經網路,可避免迷失於繁雜的公式推導
2021-09-09
| K-means | 分群 | Clustering | 資料分析 | 程式人 | 林信良 | 程式學習 | 機器學習 | ML | 非監督式學習
畫分勢力範圍的K-means
在非監督式的K-means分群方式下,無論是勢力範圍、群數的衡量等,都是以距離作為依據,同一勢力範圍內的資料,必要時,也可以使用群心來加以代表
2021-09-02
| 程式人 | 林信良 | 程式學習 | 貝氏分類 | 機器學習
從疾病檢驗到單純貝氏分類
在各種分類方法當中,面對基於貝氏定理的單純貝氏分類,我們可以從生活實例理解,像是疾病檢驗、垃圾郵件、氣象,進一步地抽取現象的特徵作為計算
2021-08-12