零基礎入門的機器學習圖鑑:2大類機器學習╳ 17種演算法 ╳ Python基礎教學,讓你輕鬆學以致用 | 維持健康的好方法 - 2024年11月
零基礎入門的機器學習圖鑑:2大類機器學習╳ 17種演算法 ╳ Python基礎教學,讓你輕鬆學以致用
★★★最淺顯易懂的機器學習專書★★★
與其害怕被AI取代,
不如學會機器學習,讓AI為你所用!
★日本亞馬遜資訊相關類暢銷榜No. 1
.針對各類機器學習全圖像化,深入淺出的機器學習入門書
.詳解各種機器學習演算法的概念和用途,學會如何選對演算法
.所有機器學習演算法皆提供Python範例程式碼,讓你現學現用
【什麼是機器學習?】
人工智慧(AI)、機器學習、深度學習⋯⋯與人類的生活密不可分,
但多數人對這些專有名詞一知半解,甚至有些誤解,
實現 AI 的方法包羅萬象,但機器學習是實現AI最普及的方法,
有些人誤以為深度學習就是AI,但事實上深度學習也是種機器學習。
機器學習顧名思義,就是電腦會透過演算法,根據問題或環境自動學習,
並運用學習結果來解決問題。
【機器學習的應用觸及各領域】
機器學習可以應用在各種領域,包括:
自動駕駛、文書處理、資料分析、自動翻譯、醫療診斷、預測天氣⋯⋯
近年來,因為電腦價格降低,讓機器學習普及,不再是高深的技術,
讓非理科出身的文科人也能容易學習,運用在工作上。
由於機器學習有許多種類,因此懂得如何選擇最適合的演算法,
才能讓精準解決問題,事半功倍。
【2大類 ╳ 17種演算法,弄懂機器學習的邏輯與概念】
◎ 9種監督式學習:將問題的答案輸入電腦,讓電腦自己學習,像是過濾垃圾郵件
.問題分類(分類):羅吉斯迴歸、單純貝氏分類器
.找出特徵關聯性(迴歸):線性迴歸、正則化
.分類且找出關聯性:支持向量機、Kernel法、隨機森林、類神經網路、kNN
◎ 8種無監督式學習:提供電腦問題與特徵,讓電腦自行分類,例如找出有車的照片
.選擇特徵與數量(降維): PCA、LSA、NMF、LDA、LLE、t-SNE
.特徵分類(分群):k-means分群法、高斯混合分布
【Python是時下最熱門的程式語言】
在學習機器學習的演算法時,
Python是最容易上手,適用於各作業系統,也完全免費的程式語言軟體,
與機器學習及統計相關的函式庫也非常豐富。
本書所有範例程式碼都是使用Python語法編寫,
因此書中還附有Python基礎教學。
本書用一張圖帶你掌握機器學習的整體輪廓,學會機器學習的基礎知識和概念,
了解在學習機器學習的演算法時最重要的處理過程,
幫你學會如何精準選對演算法,只要掌握每一種演算法的性質,
相信就能學會實際操作機器學習,解決生活和工作上的問題,讓AI為你所用!
【本書適合哪些人閱讀?】
.對機器學習感興趣,已經開始學習的人
.已懂得一些機器學習演算法,想學習更多的人
.不熟悉方程式,看不懂機器學習專書的人
.想學會如何因應問題來選擇機器學習演算法的人
.有程式設計經驗,有能力執行範例程式碼的人
專業推薦
李忠謀|國立台灣師範大學資訊工程系教授、國際資訊奧林匹亞競賽主席
資工心理人|竹謙科技研發工程師
鄭國威|泛科知識公司知識長
蘇書平|為你而讀/人資商學院創辦人
「這本書可作為對機器學習完全不懂的新手,踏入這個領域的敲門磚,本書先是說明機器學習的基礎知識,接著介紹17種機器學習的基礎演算法,每個章節皆有實際的程式碼範例,並且用圖片來視覺化這些演算法是如何去處理分類資料,建議讀者可以邊學邊做,嘗試著書中的程式碼來解決問題,相信會有滿滿的收穫,讓您在讀完本書之後,也能夠掌握機器學習的基礎知識,不管是要面對實作的問題,或者是學習更進階的方法,都能夠無往不利。」──資工心理人,竹謙科技研發工程師
「商業分析師在台灣的求職市場上已經慢慢變成最熱門的職缺之一,如果你懂得機器學習的基礎技術,更可以幫助你從大量原始的數據挖掘有意義的情報,解決各種複雜性的商業問題。這是我一本我看過最淺顯易懂的好書,非常推薦給你。」──蘇書平,為你而讀/人資商學院創辦人
作者簡介
秋庭伸也
2012年畢業於早稻田大學基礎理工學院
2015年畢業於早稻田大學理工學術院基礎理工學研究科機械科學專攻碩士班
現為Recruit Communications股份有限公司技術長
杉山阿聖
曾任職於某製造業旗下之資訊子公司,iOS App開發資歷3年、聊天機器人開發資歷2年。
現於SENSY股份有限公司擔任市場分析研究員,將機器學習運用於業務中。
樂於參加工程師讀書會、發表演說。
寺田學
・CMS Communications股份有限公司董事長
・一般社團法人PyCon JP 代表理事
・Plone Foundation Ambassador
・一般社團法人Python工程師培育推廣協會 顧問理事
・PSF(Python Software Foundation) Contributing members
協助建構Python Web相關業務並提供諮詢。2010年起積極參與日本國內之Python社群,致力發展PyCon JP。2013年3月擔任一般社團法人PyCon JP之代表理事,同時也在OSS相關社群擔任版主或工作人員。
擔任一般社團法人Python工程師培育推廣協會顧問理事,積極推廣Python教育。
為了向人們傳達Python的魅力,近期致力於擔任講師,教導初學者機器學習領域的Python。
共著作品有《使用Python之最新資料分析教科書》,審定作品有《輕鬆了解Python》,文章散見於各處。
監修者簡介
加藤公一
Silver Egg Technology股份有限公司首席科學家。主要從事推薦系統(Recommendation System)相關之研究開發,尤其擅長機器學習演算法之設計和實作。資訊工程博士。
著有《機器學習的精華》。
審定者簡介
王立綸
美國伊利諾大學香檳分校電腦科學博士,Google Research軟體工程師。
李重毅
台大資訊系畢,Google Ads軟體工程師。
馮俊菘
台大資訊系畢,Google Research軟體工程師。
蔡明亨
台大資訊系畢,Google Research軟體工程師。
譯者簡介
周若珍
日文教師,日文翻譯。對教育充滿熱忱,並從事各領域的口筆譯工作。
深愛動物,支持以領養代替購買,以結紮代替撲殺。
FB粉絲頁「なるみの楽しい日本語教室」:facebook.com/narumi.nihongo
好評推薦
推薦序 兼具實作與理論的機器學習實用指南/蔡明亨
前言 把機器學習化繁為簡的圖鑑大全
本書使用方法
第1章 機器學習的基礎
1.1 機器學習的概要
何謂機器學習
機器學習的種類
機器學習的應用
1.2 機器學習的主要步驟
資料的重要性
監督式學習(分類)範例
實作
非監督式學習(分群)範例
視覺化
圖的種類與繪製方法:使用Matplotlib繪圖
使用pandas分析並處理資料
小結
第2章 監督式學習
01 線性迴歸
02 正則化
03 羅吉斯迴歸
04 支持向量機
05 支持向量機(Kernel法)
06 單純貝氏分類器
07 隨機森林
08 類神經網路
09 kNN
第3章 非監督式學習
10 PCA
11 LSA
12 NMF
13 LDA
14 k-means分群法
15 高斯混合分布
16 LLE
17 t-SNE
第4章 評估方法及各種資料的運用
4.1 評估方法
監督式學習的評估
分類問題的評估方法
迴歸問題的評估方法
均方誤差與決定係數的差異
使用不同演算法時的差異
超參數的設定
模型的過度擬合
防止過度擬合的方法
訓練資料與測試資料的切分
交叉驗證
超參數的搜尋
4.2 文字資料的轉換處理
透過詞彙計數進行轉換
透過TF-IDF進行轉換
套用機器學習模型
4.3 圖像資料的轉換處理
將畫素資訊直接視為數值
輸入轉換後的向量資料,套用機器學習模型
第5章 環境設置
5.1 安裝Python3
Windows
macOS
Linux
使用Anaconda在Windows安裝
5.2 虛擬環境
使用官方安裝程式的使用者
使用Anaconda安裝程式的使用者
5.3 安裝套件
何謂第三方套件
安裝套件
附錄
方程式說明
專有名詞說明
參考文獻
推薦序
兼具實作與理論的機器學習實用指南
蔡明亨,台大資訊系畢,Google Research軟體工程師
近年來,機器學習的技術有許多突破,並且應用在許多產業,創造了更多產值。此外,許多產業也準備以機器學習解決以前無法處理的問題,或是提高效率。因此,對於具備機器學習知識的人才需求也越來越高。
以前,只有人工智慧研究員需要機器學習的知識,然而,現今很多不同領域的人都需具備這方面的能力,因為跨領域的合作將創造更大產值,例如將機器學習應用在醫療與商業決策等方面。我相信,隨著產業發展,機器學習會像是寫程式一樣,將會成為一個現代人或多或少都必須具備的技能。
這本書深入淺出地介紹許多機器學習的概念及演算法,並且對於每個演算法都附有實作的程式範例,可以幫你了解實作上的細節,而非只是理論。本書兩百多頁的內容,各個章節的長度安排適合在通勤或是飯前等零碎時間閱讀。除此之外,這本書的難度對於需要「使用」機器學習相關知識的人而言,是十分合宜的。
我在加州大學柏克萊分校延伸教育學院教授機器學習時,課堂上選用的經典演算法也和這本書涵蓋的範圍類似。如果讀完本書之後,對於這個領域特別感興趣,可以考慮學習更進階的理論學與實作細節,甚至可以考慮做個資料科學家。
把機器學習化繁為簡的圖鑑大全 「大數據」、「AI」、「深度學習」等自2010年代初期開始流行的用語,如今已完全普及;而其相關技術─ 機器學習─ 更是與人們的生活密不可分。 該如何學習機器學習的演算法、該如何將機器學習應用在商務場合等課題,並非數據科學家專屬,軟體工程師或PM往往也必須面對。而本書正是一本介紹各種機器學習演算法的書籍。 剛開始接觸機器學習的讀者,是否常因為艱澀的方程式或統計學用語而傷透腦筋呢?這時若有一張淺顯易懂的圖來幫助理解,相信一定有助於各位在腦中建構機器學習的概念。為了讓不是機器學習專家的一般讀者也能輕鬆吸收,本書盡可能減少方程式,改以圖表為主來進行說明,使各種演算法的特徵與差異一目了然。 希望本書能為曾學過機器學習,卻因為複雜的方程式和統計學用語而受挫的讀者帶來幫助。 此外,本書的範例程式碼皆使用Python語法編寫。Python是當前最熱門的程式語言,與機器學習及統計相關的函式庫也非常豐富。在閱讀本書時,請務必親自操作,實際執行各範例程式碼。 本書適合對象 本書乃以下列讀者為對象撰寫而成。 對機器學習感興趣,已經開始學習的人。 已懂得一些機器學習演算法,想學習更多的人。 不熟悉方程式,看不懂機器學習專書的人。 想學會如何因應問題來選擇機器學習演算法的人。 有程式設計經驗,有能力執行範例程式碼的人。 本書並無詳細解說機器學習的數學原理及最佳化的具體運算過程,若想更深入了解,請參考本書引用的文獻或專書。 本書建議閱讀順序 本書各章內容如下: 第1章:說明機器學習的基礎知識。若想掌握機器學習的整體輪廓,請從第1章開始依序閱讀。 第2章與第3章:介紹各種機器學習演算法。若已具備某種程度的機器學習相關知識,或想查詢特定演算法,亦可從這兩章挑選自己所需的部分閱讀。 第4章:統整機器學習的評估方法。在實際使用機器學習時,本章的解說應能帶來幫助。 另外,Python環境設定方法、機器學習所需的數學知識等,皆詳載於附錄中。 何謂機器學習 機器學習,是指電腦根據被賦予的問題或環境,自動進行學習,並運用學習結果來解決問題的一連串過程。