導航
- 一、 人工智能,機器學習,深度學習和傳統學習
- 二、數學基礎
- 三、編程語言
如果你剛剛入門機器學習,會接觸到了非常多的概念。比如人工智能,機器學習,深度學習,神機網絡,強化學習,各種算法等等。首先了解這些知識點所在的層級,以便進一步的深入學習。
一、 人工智能,機器學習,深度學習和傳統學習
人工智能是一種模擬人類智能的技術或系統。
機器學習是一種人工智能的分支,機器學習的核心思想是讓機器從數據中學習模式,從而能夠在未見過的數據上做出預測或決策。(注:我的理解是通過使用計算機或其它機器來實現人工智能的方法)
深度學習深度學習是機器學習的一種子領域,即是眾多機器學習算法中的一種,它專注于使用深層神經網絡來解決復雜的模式識別和特征提取任務。因為它在解決許多復雜的模式識別和數據分析任務中取得了顯著的成就,所以被總是被單獨提起,甚至作為很多書籍特意講解深度學習。
機器學習除了著名的深度學習意外,還有以下一些常見算法,它們也被稱為傳統算法:
線性回歸(Linear Regression):用于建立輸入特征與輸出之間的線性關系,用于預測連續值輸出。
邏輯回歸(Logistic Regression):用于分類問題,將輸入特征映射到二元分類或多元分類輸出。
決策樹(Decision Trees):基于特征的條件分割數據,用于分類和回歸任務。
隨機森林(Random Forest):由多個決策樹組成的集成方法,用于提高分類和回歸的準確性。
支持向量機(Support Vector Machines,SVM):尋找超平面來分隔不同類別的數據點,用于分類和回歸問題。
樸素貝葉斯(Naive Bayes):基于貝葉斯定理的概率方法,用于文本分類和其他分類任務。
K近鄰算法(K-Nearest Neighbors,KNN):通過找到最接近新數據點的K個訓練樣本來進行分類或回歸。
K均值聚類(K-Means Clustering):將數據分為K個不同的簇,用于無監督聚類任務。
主成分分析(Principal Component Analysis,PCA):用于降維,將數據映射到較低維度的空間,保留主要特征。
線性判別分析(Linear Discriminant Analysis,LDA):用于降維和分類,將數據投影到可以最大程度區分不同類別的子空間。
提升算法(Boosting):通過迭代訓練多個弱分類器,將它們組合成一個強分類器,如AdaBoost。
貝葉斯網絡(Bayesian Networks):用于建模變量之間的概率關系,進行概率推理和預測。
我們在學習機器學習,其實就是在學習機器學習和應用這些算法。
二、數學基礎
機器學習需要一定的高校的數學基礎,即數學三大件,高數,線代,概率論。你可以在學習機器學習之前,先補充相關的知識,這里非常推薦3Blue1brown的視頻,他簡明扼要,使用3D圖像的方式展示數學的本質,在開始某門數學之前,我非常建議先看完他的事情,對核心有一個大致的了解,對以后的深入學習是事倍功半的:
3BlueBrown 視頻合集列表
如果你已經在職,或者是不想重頭開始學習數學,那么你或許可以和我一樣,先開始看機器學習的算法,比如線性回歸開始,遇到不理解的數學再開始查閱資料學習。比如在線性回歸中,你會遇到矩陣的概念,如果你發現你不理解什么是矩陣,或者只是有一個非常模糊的概念,或者忘記如何運算,那么你可以搜索矩陣,這樣就可以補充這塊是數學知識。
另外,你可能會參考某一個本機器學習的教材或某一本書籍,如果某一章節你難以看懂,那就將主要主要在把主題放到搜索引擎上,看到更多的人是如何解釋這個算法的。
目前對于常見的算法,已經有非常多的教程。你很可能換了二三個視頻以后,發現茅塞頓開。
三、編程語言
理論上我們可以使用任何編程語言,但是目前最受歡迎的是python,所以如果你想學習機器學習,我也建議你學習python語言,他的基礎語法非常簡單,可能一周就可以掌握了。
接下來,我們從線性回歸這個簡單的機器學習開始作為入門,使用python來作為我們第一個機器學習的算法和實踐。