Python相關機器學習'武器庫'

2021-03-02 機器學習算法與Python學習

開始學習Python,之後漸漸成為我學習工作中的第一輔助腳本語言,雖然開發語言是Java,但平時的很多文本數據處理任務都交給了Python。這些年來,接觸和使用了很多Python工具包,特別是在文本處理,科學計算,機器學習和數據挖掘領域,有很多很多優秀的Python工具包可供使用,所以作為Pythoner,也是相當幸福的。如果仔細留意微博和論壇,你會發現很多這方面的分享,自己也Google了一下,發現也有同學總結了「Python機器學習庫」,不過總感覺缺少點什麼。最近流行一個詞,全棧工程師(full stack engineer),作為一個苦逼的程序媛,天然的要把自己打造成一個full stack engineer,而這個過程中,這些Python工具包給自己提供了足夠的火力,所以想起了這個系列。當然,這也僅僅是拋磚引玉,希望大家能提供更多的線索,來匯總整理一套Python網頁爬蟲,文本處理,科學計算,機器學習和數據挖掘的兵器譜。

一、Python網頁爬蟲工具集

一個真實的項目,一定是從獲取數據開始的。無論文本處理,機器學習和數據挖掘,都需要數據,除了通過一些渠道購買或者下載的專業數據外,常常需要大家自己動手爬數據,這個時候,爬蟲就顯得格外重要了,幸好,Python提供了一批很不錯的網頁爬蟲工具框架,既能爬取數據,也能獲取和清洗數據,也就從這裡開始了:

1. Scrapy

Scrapy, a fast high-level screen scraping and web crawling framework for Python.

鼎鼎大名的Scrapy,相信不少同學都有耳聞,課程圖譜中的很多課程都是依靠Scrapy抓去的,這方面的介紹文章有很多,推薦大牛pluskid早年的一篇文章:《Scrapy 輕鬆定製網絡爬蟲》,歷久彌新。

官方主頁:http://scrapy.org/
Github代碼頁: https://github.com/scrapy/scrapy

2. Beautiful Soup

You didn’t write that awful page. You’re just trying to get some data out of it. Beautiful Soup is here to help. Since 2004, it’s been saving programmers hours or days of work on quick-turnaround screen scraping projects.

客觀的說,Beautifu Soup不完全是一套爬蟲工具,需要配合urllib使用,而是一套HTML / XML數據分析,清洗和獲取工具。

官方主頁:http://www.crummy.com/software/BeautifulSoup/

3. Python-Goose

Html Content / Article Extractor, web scrapping lib in Python

Goose最早是用Java寫得,後來用Scala重寫,是一個Scala項目。Python-Goose用Python重寫,依賴了Beautiful Soup。前段時間用過,感覺很不錯,給定一個文章的URL, 獲取文章的標題和內容很方便。

Github主頁:https://github.com/grangier/python-goose

二、Python文本處理工具集

從網頁上獲取文本數據之後,依據任務的不同,就需要進行基本的文本處理了,譬如對於英文來說,需要基本的tokenize,對於中文,則需要常見的中文分詞,進一步的話,無論英文中文,還可以詞性標註,句法分析,關鍵詞提取,文本分類,情感分析等等。這個方面,特別是面向英文領域,有很多優秀的工具包,我們一一道來。

1. NLTK — Natural Language Toolkit

NLTK is a leading platform for building Python programs to work with human language data. It provides easy-to-use interfaces to over 50 corpora and lexical resources such as WordNet, along with a suite of text processing libraries for classification, tokenization, stemming, tagging, parsing, and semantic reasoning, and an active discussion forum.

搞自然語言處理的同學應該沒有人不知道NLTK吧,這裡也就不多說了。不過推薦兩本書籍給剛剛接觸NLTK或者需要詳細了解NLTK的同學: 一個是官方的《Natural Language Processing with Python》,以介紹NLTK裡的功能用法為主,同時附帶一些Python知識,同時國內陳濤同學友情翻譯了一個中文版,這裡可以看到:推薦《用Python進行自然語言處理》中文翻譯-NLTK配套書;另外一本是《Python Text Processing with NLTK 2.0 Cookbook》,這本書要深入一些,會涉及到NLTK的代碼結構,同時會介紹如何定製自己的語料和模型等,相當不錯。

官方主頁:http://www.nltk.org/
Github代碼頁:https://github.com/nltk/nltk

2. Pattern

Pattern is a web mining module for the Python programming language.

It has tools for data mining (Google, Twitter and Wikipedia API, a web crawler, a HTML DOM parser), natural language processing (part-of-speech taggers, n-gram search, sentiment analysis, WordNet), machine learning (vector space model, clustering, SVM), network analysis and canvas visualization.

Pattern由比利時安特衛普大學CLiPS實驗室出品,客觀的說,Pattern不僅僅是一套文本處理工具,它更是一套web數據挖掘工具,囊括了數據抓取模塊(包括Google, Twitter, 維基百科的API,以及爬蟲和HTML分析器),文本處理模塊(詞性標註,情感分析等),機器學習模塊(VSM, 聚類,SVM)以及可視化模塊等,可以說,Pattern的這一整套邏輯也是這篇文章的組織邏輯,不過這裡我們暫且把Pattern放到文本處理部分。我個人主要使用的是它的英文處理模塊Pattern.en, 有很多很不錯的文本處理功能,包括基礎的tokenize, 詞性標註,句子切分,語法檢查,拼寫糾錯,情感分析,句法分析等,相當不錯。

官方主頁:http://www.clips.ua.ac.be/pattern

3. TextBlob: Simplified Text Processing

TextBlob is a Python (2 and 3) library for processing textual data. It provides a simple API for diving into common natural language processing (NLP) tasks such as part-of-speech tagging, noun phrase extraction, sentiment analysis, classification, translation, and more.

TextBlob是一個很有意思的Python文本處理工具包,它其實是基於上面兩個Python工具包NLKT和Pattern做了封裝(TextBlob stands on the giant shoulders of NLTK and pattern, and plays nicely with both),同時提供了很多文本處理功能的接口,包括詞性標註,名詞短語提取,情感分析,文本分類,拼寫檢查等,甚至包括翻譯和語言檢測,不過這個是基於Google的API的,有調用次數限制。TextBlob相對比較年輕,有興趣的同學可以關注。

官方主頁:http://textblob.readthedocs.org/en/dev/
Github代碼頁:https://github.com/sloria/textblob

4. MBSP for Python

MBSP is a text analysis system based on the TiMBL and MBT memory based learning applications developed at CLiPS and ILK. It provides tools for Tokenization and Sentence Splitting, Part of Speech Tagging, Chunking, Lemmatization, Relation Finding and Prepositional Phrase Attachment.

MBSP與Pattern同源,同出自比利時安特衛普大學CLiPS實驗室,提供了Word Tokenization, 句子切分,詞性標註,Chunking, Lemmatization,句法分析等基本的文本處理功能,感興趣的同學可以關注。

官方主頁:http://www.clips.ua.ac.be/pages/MBSP

5. Gensim: Topic modeling for humans

Gensim是一個相當專業的主題模型Python工具包,無論是代碼還是文檔,我們曾經用《如何計算兩個文檔的相似度》介紹過Gensim的安裝和使用過程,這裡就不多說了。

官方主頁:http://radimrehurek.com/gensim/index.html
github代碼頁:https://github.com/piskvorky/gensim

6. langid.py: Stand-alone language identification system

語言檢測是一個很有意思的話題,不過相對比較成熟,這方面的解決方案很多,也有很多不錯的開源工具包,不過對於Python來說,我使用過langid這個工具包,也非常願意推薦它。langid目前支持97種語言的檢測,提供了很多易用的功能,包括可以啟動一個建議的server,通過json調用其API,可定製訓練自己的語言檢測模型等,可以說是「麻雀雖小,五臟俱全」。

Github主頁:https://github.com/saffsd/langid.py

7. Jieba: 結巴中文分詞

「結巴」中文分詞:做最好的Python中文分詞組件 「Jieba」 (Chinese for 「to stutter」) Chinese text segmentation: built to be the best Python Chinese word segmentation module.

好了,終於可以說一個國內的Python文本處理工具包了:結巴分詞,其功能包括支持三種分詞模式(精確模式、全模式、搜尋引擎模式),支持繁體分詞,支持自定義詞典等,是目前一個非常不錯的Python中文分詞解決方案。

Github主頁:https://github.com/fxsjy/jieba

三、Python科學計算工具包

說起科學計算,大家首先想起的是Matlab,集數值計算,可視化工具及交互於一身,不過可惜是一個商業產品。開源方面除了GNU Octave在嘗試做一個類似Matlab的工具包外,Python的這幾個工具包集合到一起也可以替代Matlab的相應功能:NumPy+SciPy+Matplotlib+iPython。同時,這幾個工具包,特別是NumPy和SciPy,也是很多Python文本處理 & 機器學習 & 數據挖掘工具包的基礎,非常重要。最後再推薦一個系列《用Python做科學計算》,將會涉及到NumPy, SciPy, Matplotlib,可以做參考。

1. NumPy

NumPy is the fundamental package for scientific computing with Python. It contains among other things:
1)a powerful N-dimensional array object
2)sophisticated (broadcasting) functions
3)tools for integrating C/C++ and Fortran code
4) useful linear algebra, Fourier transform, and random number capabilities

Besides its obvious scientific uses, NumPy can also be used as an efficient multi-dimensional container of generic data. Arbitrary data-types can be defined. This allows NumPy to seamlessly and speedily integrate with a wide variety of databases.

NumPy幾乎是一個無法迴避的科學計算工具包,最常用的也許是它的N維數組對象,其他還包括一些成熟的函數庫,用於整合C/C++和Fortran代碼的工具包,線性代數、傅立葉變換和隨機數生成函數等。NumPy提供了兩種基本的對象:ndarray(N-dimensional array object)和 ufunc(universal function object)。ndarray是存儲單一數據類型的多維數組,而ufunc則是能夠對數組進行處理的函數。

官方主頁:http://www.numpy.org/

2. SciPy:Scientific Computing Tools for Python

SciPy refers to several related but distinct entities:

1)The SciPy Stack, a collection of open source software for scientific computing in Python, and particularly a specified set of core packages.
2)The community of people who use and develop this stack.
3)Several conferences dedicated to scientific computing in Python – SciPy, EuroSciPy and SciPy.in.
4)The SciPy library, one component of the SciPy stack, providing many numerical routines.

「SciPy是一個開源的Python算法庫和數學工具包,SciPy包含的模塊有最優化、線性代數、積分、插值、特殊函數、快速傅立葉變換、信號處理和圖像處理、常微分方程求解和其他科學與工程中常用的計算。其功能與軟體MATLAB、Scilab和GNU Octave類似。 Numpy和Scipy常常結合著使用,Python大多數機器學習庫都依賴於這兩個模塊。」—-引用自「Python機器學習庫」

官方主頁:http://www.scipy.org/

3. Matplotlib

matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell (ala MATLAB®* or Mathematica®†), web application servers, and six graphical user interface toolkits.

matplotlib 是python最著名的繪圖庫,它提供了一整套和matlab相似的命令API,十分適合交互式地進行製圖。而且也可以方便地將它作為繪圖控制項,嵌入GUI應用程式中。Matplotlib可以配合ipython shell使用,提供不亞於Matlab的繪圖體驗,總之用過了都說好。

官方主頁:http://matplotlib.org/

四、Python 機器學習 & 數據挖掘 工具包

機器學習和數據挖掘這兩個概念不太好區分,這裡就放到一起了。這方面的開源Python工具包有很多,這裡先從熟悉的講起,再補充其他來源的資料,也歡迎大家補充。

1. scikit-learn: Machine Learning in Python

scikit-learn (formerly scikits.learn) is an open source machine learning library for the Python programming language. It features various classification, regression and clustering algorithms including support vector machines, logistic regression, naive Bayes, random forests, gradient boosting, k-means and DBSCAN, and is designed to interoperate with the Python numerical and scientific libraries NumPy and SciPy.

首先推薦大名鼎鼎的scikit-learn,scikit-learn是一個基於NumPy, SciPy, Matplotlib的開源機器學習工具包,主要涵蓋分類,回歸和聚類算法,例如SVM, 邏輯回歸,樸素貝葉斯,隨機森林,k-means等算法,代碼和文檔都非常不錯,在許多Python項目中都有應用。例如在我們熟悉的NLTK中,分類器方面就有專門針對scikit-learn的接口,可以調用scikit-learn的分類算法以及訓練數據來訓練分類器模型。

官方主頁:http://scikit-learn.org/

2. Pandas: Python Data Analysis Library

Pandas is a software library written for the Python programming language for data manipulation and analysis. In particular, it offers data structures and operations for manipulating numerical tables and time series.

Pandas也是基於NumPy和Matplotlib開發的,主要用於數據分析和數據可視化,它的數據結構DataFrame和R語言裡的data.frame很像,特別是對於時間序列數據有自己的一套分析機制,非常不錯。這裡推薦一本書《Python for Data Analysis》,作者是Pandas的主力開發,依次介紹了iPython, NumPy, Pandas裡的相關功能,數據可視化,數據清洗和加工,時間數據處理等,案例包括金融股票數據挖掘等,相當不錯。

官方主頁:http://pandas.pydata.org/

3. mlpy – Machine Learning Python

mlpy is a Python module for Machine Learning built on top of NumPy/SciPy and the GNU Scientific Libraries.mlpy provides a wide range of state-of-the-art machine learning methods for supervised and unsupervised problems and it is aimed at finding a reasonable compromise among modularity, maintainability, reproducibility, usability and efficiency. mlpy is multiplatform, it works with Python 2 and 3 and it is Open Source, distributed under the GNU General Public License version 3.

官方主頁:http://mlpy.sourceforge.net/

4. PyBrain

PyBrain is a modular Machine Learning Library for Python. Its goal is to offer flexible, easy-to-use yet still powerful algorithms for Machine Learning Tasks and a variety of predefined environments to test and compare your algorithms.

PyBrain is short for Python-Based Reinforcement Learning, Artificial Intelligence and Neural Network Library. In fact, we came up with the name first and later reverse-engineered this quite descriptive 「Backronym」.

「PyBrain(Python-Based Reinforcement Learning, Artificial Intelligence and Neural Network)是Python的一個機器學習模塊,它的目標是為機器學習任務提供靈活、易應、強大的機器學習算法。(這名字很霸氣)

PyBrain正如其名,包括神經網絡、強化學習(及二者結合)、無監督學習、進化算法。因為目前的許多問題需要處理連續態和行為空間,必須使用函數逼近(如神經網絡)以應對高維數據。PyBrain以神經網絡為核心,所有的訓練方法都以神經網絡為一個實例。」

5. Theano

Theano is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. Theano features:
1)tight integration with NumPy – Use numpy.ndarray in Theano-compiled functions.
2)transparent use of a GPU – Perform data-intensive calculations up to 140x faster than with CPU.(float32 only)
3)efficient symbolic differentiation – Theano does your derivatives for function with one or many inputs.
4)speed and stability optimizations – Get the right answer for log(1+x) even when x is really tiny.
5)dynamic C code generation – Evaluate expressions faster.
6) extensive unit-testing and self-verification – Detect and diagnose many types of mistake.
Theano has been powering large-scale computationally intensive scientific investigations since 2007. But it is also approachable enough to be used in the classroom (IFT6266 at the University of Montreal).

「Theano 是一個 Python 庫,用來定義、優化和模擬數學表達式計算,用於高效的解決多維數組的計算問題。Theano的特點:緊密集成Numpy;高效的數據密集型GPU計算;高效的符號微分運算;高速和穩定的優化;動態生成c代碼;廣泛的單元測試和自我驗證。自2007年以來,Theano已被廣泛應用於科學運算。theano使得構建深度學習模型更加容易,可以快速實現多種模型。PS:Theano,一位希臘美女,Croton最有權勢的Milo的女兒,後來成為了畢達哥拉斯的老婆。」

6. Pylearn2

Pylearn2 is a machine learning library. Most of its functionality is built on top of Theano. This means you can write Pylearn2 plugins (new models, algorithms, etc) using mathematical expressions, and theano will optimize and stabilize those expressions for you, and compile them to a backend of your choice (CPU or GPU).

「Pylearn2建立在theano上,部分依賴scikit-learn上,目前Pylearn2正處於開發中,將可以處理向量、圖像、視頻等數據,提供MLP、RBM、SDA等深度學習模型。」

官方主頁:http://deeplearning.net/software/pylearn2/

轉載於:「我愛自然語言處理」:www.52nlp.cn



相關焦點

  • Python的武器庫05:numpy模塊(下)
    說到程式語言python,有一個著名的格言"餘生太短,只用python"。如果要分析為什麼會存在這麼一句格言?python的語法並不簡單,有複雜難懂的部分,之所以有這樣一句格言,是因為python中有很多強大的模塊,就像一個武器庫。
  • Python的武器庫07:sympy模塊
    說到程式語言python,有一個著名的格言"餘生太短,只用python"。如果要分析為什麼會存在這麼一句格言?python的語法並不簡單,有複雜難懂的部分,之所以有這樣一句格言,是因為python中有很多強大的模塊,就像一個武器庫。Python正式由於這些模塊的出現,只要引入這個模塊,調用這個模塊的集成函數,問題迎刃而解;不需要從頭開始,節省了大量的時間。
  • Python的武器庫02:math模塊
    說到程式語言python,有一個著名的格言"餘生太短,只用python"。如果要分析為什麼會存在這麼一句格言?python的語法並不簡單,有複雜難懂的部分,之所以又這樣一句格言,是因為python中有很多強大的模塊,就像一個武器庫。
  • Python的武器庫04:numpy模塊(上)
    說到程式語言python,有一個著名的格言"餘生太短,只用python"。如果要分析為什麼會存在這麼一句格言?python的語法並不簡單,有複雜難懂的部分,之所以又這樣一句格言,是因為python中有很多強大的模塊,就像一個武器庫。
  • 利用 Python,四步掌握機器學習
    因為 Python 擁有更廣闊的分布(使用 Jango 託管網站,自然語言處理 NLP,訪問 Twitter、Linkedin 等網站的 API),同時類似於更多的傳統語言,比如 C python 就比較流行。
  • Python機器學習·微教程
    在這個教程裡,你將學會:如何處理數據集,並構建精確的預測模型使用Python完成真實的機器學習項目這是一個非常簡潔且實用的教程,希望你能收藏,以備後面複習!接下來進入正題~這個微課程適合誰學習?如果你不符合以下幾點,也沒關係,只要花點額外時間搞清楚知識盲點就能跟上。所以這個教程既不是python入門,也不是機器學習入門。
  • 小白python機器學習之路(一)
    對的,就是這麼直接,理解了什麼是機器學習,才能更好的學習機器學習。(怎麼像是繞口令。。)機器學習就是利用算法,從數據中尋找一定的模式和知識,並對看似結果不可知的事件做出預測。從自然科學專業學生的角度而言,我們更關注如何從實驗中獲取數據,而機器學習更關注獲得數據之後的事情。我們處理實驗數據的理論基礎是統計學,而機器學習可以理解為更「高級」的統計學,從數據到結論,是機器學習所關注的事情。
  • 《Python 機器學習》-Python Machine Learning第一版+第二版(附電子版 pdf)
    》,機器學習與預測分析正在改變企業和其他組織的運作方式,本書將帶領讀者進入預測分析的世界。全書共16章,除了簡要介紹機器學習及Python在機器學習中的應用,還系統講述了數據分類、數據預處理、模型優化、集成學習、回歸、聚類、神經網絡、深度學習等內容。本書將機器學習背後的基本理論與應用實踐聯繫起來,通過這種方式讓讀者聚焦於如何正確地提出問題、解決問題。本書講解了如何使用Python的核心元素以及強大的機器學習庫,同時還展示了如何正確使用一系列統計模型。
  • 《Python 機器學習》-Python Machine Learning(附電子版 pdf)
    》,機器學習與預測分析正在改變企業和其他組織的運作方式,本書將帶領讀者進入預測分析的世界。全書共16章,除了簡要介紹機器學習及Python在機器學習中的應用,還系統講述了數據分類、數據預處理、模型優化、集成學習、回歸、聚類、神經網絡、深度學習等內容。本書將機器學習背後的基本理論與應用實踐聯繫起來,通過這種方式讓讀者聚焦於如何正確地提出問題、解決問題。本書講解了如何使用Python的核心元素以及強大的機器學習庫,同時還展示了如何正確使用一系列統計模型。
  • python機器學習:常用庫的介紹及安裝
    現在,隨著人工智慧的興起,機器學習越來越被各行業看重,從而使得人工智慧的需求會越來越大。今天,我們就從零基礎開始學習人工智慧的基礎篇——機器學習。工欲善其事必先利其器,所以,我們首先來看一下,我們要學習這些東西,需要準備些什麼!首先電腦一臺,這是必備的。下面我們來看一下需要安裝些什麼軟體到電腦上!
  • 搞機器學習,Python 和 R 哪個更合適?
    機器學習和數據分析之間的區別隨著時間的推移都是相對變化,但是,其主要的區別是機器學習偏向模型解釋,而數據分析側重解釋和事實推測。在不斷增長的質疑聲中,Python在機器學習領域獲得了一席之地。R則作為一門用於事實推斷和統計推斷的語言在數據分析領域享有盛譽。
  • 《Python 機器學習》第一版+第二版(附電子版 pdf)
    》,機器學習與預測分析正在改變企業和其他組織的運作方式,本書將帶領讀者進入預測分析的世界。全書共16章,除了簡要介紹機器學習及Python在機器學習中的應用,還系統講述了數據分類、數據預處理、模型優化、集成學習、回歸、聚類、神經網絡、深度學習等內容。本書將機器學習背後的基本理論與應用實踐聯繫起來,通過這種方式讓讀者聚焦於如何正確地提出問題、解決問題。本書講解了如何使用Python的核心元素以及強大的機器學習庫,同時還展示了如何正確使用一系列統計模型。
  • 算法應用|機器學習python應用,初識機器學習是怎樣滴感受?
    本系列文章主要介紹機器學習在實踐中的應用,介紹利用 Python 的生態環境,使用機器學習的算法來解決工程實踐中的問題,而不是介紹算法本身。本系列文章參考了《機器學習Python實踐》,會通過例子一步一步地引導大家使用機器學習來處理和分類與回歸模型相關的問題。
  • 跟著吳恩達老師學習機器學習,Python筆記分享!
    譯者:AI研習社(成語風)雙語原文連結:A Full-Length Machine Learning Course in Python for Free吳恩達在史丹福大學講授的機器學習課程堪稱Coursera上最具人氣的課程。我之前試聽了好幾門別的機器學習課程但我覺得他的在拆解概念使之變得易於理解方面做得最好。
  • Python機器學習課程(代碼與教程)
    >https://github.com/machinelearningmindset/machine-learning-course目錄簡介這個項目的目的是提供一個全面但簡單的用python完成機器學習的教程。
  • 開源《Python 機器學習》-Python Machine Learning第一版+第二版(附電子版 pdf)
    》,機器學習與預測分析正在改變企業和其他組織的運作方式,本書將帶領讀者進入預測分析的世界。全書共16章,除了簡要介紹機器學習及Python在機器學習中的應用,還系統講述了數據分類、數據預處理、模型優化、集成學習、回歸、聚類、神經網絡、深度學習等內容。本書將機器學習背後的基本理論與應用實踐聯繫起來,通過這種方式讓讀者聚焦於如何正確地提出問題、解決問題。本書講解了如何使用Python的核心元素以及強大的機器學習庫,同時還展示了如何正確使用一系列統計模型。
  • 資源│機器學習、深度學習、算法工程師等 AI 相關崗位面試需要知識
    本資源整理了機器學習、深度學習、算法工程師等 AI 相關崗位面試需要知識點,常見代碼實戰(分為 C/C++和 python 版本)、常見問題,簡歷模板
  • 可能是史上最全機器學習和Python速查表(附下載連結)
    機器學習有很多方面。 當我開始刷新這個主題時,我遇到了各種「速查表」,這裡僅列出了需要知道的給定主題的所有要點。 最後,我收集了與機器學習相關的速查表。有些我經常參考,並且認為其他人也可能從中受益。因此, 這篇文章把我從網上發現的很好的27個速查表分享出來,以供大家參考。後臺回復關鍵詞「速查表」下載27個速查表。
  • Python & 機器學習項目集錦 | GitHub Top 45
    >機器學習年度最佳文章連結:https://medium.mybridge.co/learn-to-build-a-machine-learning-application-from-top-articles-of-2017-cdd5638453fcPython
  • python機器學習--線性回歸
    python機器學習--線性回歸線性回歸是最簡單的機器學習模型,其形式簡單,易於實現,同時也是很多機器學習模型的基礎。對於一個給定的訓練集數據,線性回歸的目的就是找到一個與這些數據最吻合的線性函數。多項式回歸的代碼實現python的多項式回歸需要導入PolynomialFeatures類實現#scikit-learn 多項式擬合(多元多項式回歸)#PolynomialFeatures和linear_model