Scikit-Learn機器學習實踐:垃圾短信識別

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

Scikit-Learn機器學習實踐:垃圾短信識別

在scikit-learn中,每一個模型都會有一個fit()方法用來模型訓練,有一個predict()方法用來模型預測,在此我們就傳入了訓練特徵和訓練目標進行了模型的訓練。

模型測試

模型訓練好之後,我們可以使用模型的predict()方法來測試與預測數據。

在這之前,我們還得進行另外一步。

因為之前對文本提取特徵只是針對於訓練集,測試集並沒有進行,所以我先對測試集進行文本特徵提取:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

Scikit-Learn機器學習實踐:垃圾短信識別

在scikit-learn中,每一個模型都會有一個fit()方法用來模型訓練,有一個predict()方法用來模型預測,在此我們就傳入了訓練特徵和訓練目標進行了模型的訓練。

模型測試

模型訓練好之後,我們可以使用模型的predict()方法來測試與預測數據。

在這之前,我們還得進行另外一步。

因為之前對文本提取特徵只是針對於訓練集,測試集並沒有進行,所以我先對測試集進行文本特徵提取:

Scikit-Learn機器學習實踐:垃圾短信識別

再使用predict()方法進行預測:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

Scikit-Learn機器學習實踐:垃圾短信識別

在scikit-learn中,每一個模型都會有一個fit()方法用來模型訓練,有一個predict()方法用來模型預測,在此我們就傳入了訓練特徵和訓練目標進行了模型的訓練。

模型測試

模型訓練好之後,我們可以使用模型的predict()方法來測試與預測數據。

在這之前,我們還得進行另外一步。

因為之前對文本提取特徵只是針對於訓練集,測試集並沒有進行,所以我先對測試集進行文本特徵提取:

Scikit-Learn機器學習實踐:垃圾短信識別

再使用predict()方法進行預測:

Scikit-Learn機器學習實踐:垃圾短信識別

變量predicted_categories中包含的就是所有的預測結果。

模型評估

scikit-learn模塊中內置了很多模型評估的方法,對於分類問題,我們可以使用accuracy_score()方法,其返回一個數值,得分最高為1。

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

Scikit-Learn機器學習實踐:垃圾短信識別

在scikit-learn中,每一個模型都會有一個fit()方法用來模型訓練,有一個predict()方法用來模型預測,在此我們就傳入了訓練特徵和訓練目標進行了模型的訓練。

模型測試

模型訓練好之後,我們可以使用模型的predict()方法來測試與預測數據。

在這之前,我們還得進行另外一步。

因為之前對文本提取特徵只是針對於訓練集,測試集並沒有進行,所以我先對測試集進行文本特徵提取:

Scikit-Learn機器學習實踐:垃圾短信識別

再使用predict()方法進行預測:

Scikit-Learn機器學習實踐:垃圾短信識別

變量predicted_categories中包含的就是所有的預測結果。

模型評估

scikit-learn模塊中內置了很多模型評估的方法,對於分類問題,我們可以使用accuracy_score()方法,其返回一個數值,得分最高為1。

Scikit-Learn機器學習實踐:垃圾短信識別

打印出來的結果顯示:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

Scikit-Learn機器學習實踐:垃圾短信識別

在scikit-learn中,每一個模型都會有一個fit()方法用來模型訓練,有一個predict()方法用來模型預測,在此我們就傳入了訓練特徵和訓練目標進行了模型的訓練。

模型測試

模型訓練好之後,我們可以使用模型的predict()方法來測試與預測數據。

在這之前,我們還得進行另外一步。

因為之前對文本提取特徵只是針對於訓練集,測試集並沒有進行,所以我先對測試集進行文本特徵提取:

Scikit-Learn機器學習實踐:垃圾短信識別

再使用predict()方法進行預測:

Scikit-Learn機器學習實踐:垃圾短信識別

變量predicted_categories中包含的就是所有的預測結果。

模型評估

scikit-learn模塊中內置了很多模型評估的方法,對於分類問題,我們可以使用accuracy_score()方法,其返回一個數值,得分最高為1。

Scikit-Learn機器學習實踐:垃圾短信識別

打印出來的結果顯示:

Scikit-Learn機器學習實踐:垃圾短信識別

這個分類器的準確率達到了0.98,比上一次使用NLTK的貝葉斯算法高出了10%,很不錯。

可以打印部分測試的短信數據以及預測的結果來看:

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

Scikit-Learn機器學習實踐:垃圾短信識別

在scikit-learn中,每一個模型都會有一個fit()方法用來模型訓練,有一個predict()方法用來模型預測,在此我們就傳入了訓練特徵和訓練目標進行了模型的訓練。

模型測試

模型訓練好之後,我們可以使用模型的predict()方法來測試與預測數據。

在這之前,我們還得進行另外一步。

因為之前對文本提取特徵只是針對於訓練集,測試集並沒有進行,所以我先對測試集進行文本特徵提取:

Scikit-Learn機器學習實踐:垃圾短信識別

再使用predict()方法進行預測:

Scikit-Learn機器學習實踐:垃圾短信識別

變量predicted_categories中包含的就是所有的預測結果。

模型評估

scikit-learn模塊中內置了很多模型評估的方法,對於分類問題,我們可以使用accuracy_score()方法,其返回一個數值,得分最高為1。

Scikit-Learn機器學習實踐:垃圾短信識別

打印出來的結果顯示:

Scikit-Learn機器學習實踐:垃圾短信識別

這個分類器的準確率達到了0.98,比上一次使用NLTK的貝葉斯算法高出了10%,很不錯。

可以打印部分測試的短信數據以及預測的結果來看:

Scikit-Learn機器學習實踐:垃圾短信識別

感謝關注天善智能,走好數據之路↑↑↑

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

機器學習與垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

前不久,我們使用NLTK的貝葉斯分類模型垃圾對短信數據進行機器學習的垃圾短信識別。

其實除了使用NLTK,我們還可以使用Scikit-Learn這個集成了諸多機器學習算法的模塊進行上述的實驗。

Scikit-Learn的API設計非常合理和高效,對於初觸機器學習的同學來說非常友好,值得大家嘗試和使用。本人也經常在實驗環境和工作環境中使用scikit-learn進行機器學習的建模。

下面,我們就使用scikit-learn模塊,通過其樸素貝葉斯算法API對短信數據進行一次垃圾短信的識別。

導入短信數據

首先,我們需要對原始的短信數據進行處理,導入pandas模塊和jieba模塊。

Scikit-Learn機器學習實踐:垃圾短信識別

pandas模塊用於讀取和處理數據,jieba模塊用於對短信進行分詞。

接著,我們導入短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

查看一下部分短信數據:

Scikit-Learn機器學習實踐:垃圾短信識別

其中第一列為原始序號,第二列為短信的分類,0表示正常短信,1表示垃圾短信,第三列就是短信的正文。

我們只需要關注第二和第三列。

查看一下這個短信數據集的形狀:

Scikit-Learn機器學習實踐:垃圾短信識別

一共有七十餘萬條短信。

對短信進行分詞

文本的分類,基本上是基於詞袋模型,也就是一個文本中包含多少詞以及各個詞的頻率。對於英文而已,其天生的句子空格可以很容易的分割單詞出來,但是中文就得先進行分詞處理,也就是將一個完整的中文分割為一個一個詞。

在Python中,有第三方模塊——jieba,結巴分詞來提供對中文的分詞。

我們使用jieba對短信的內容進行分詞。

Scikit-Learn機器學習實踐:垃圾短信識別

得到的結果如下:

Scikit-Learn機器學習實踐:垃圾短信識別

提取特徵和目標數據

我們需要分別提取出特徵數據和目標數據,特徵數據表示輸入的數據,目標數據則是輸入數據的屬性,在這裡,短信內容就是特徵數據,短信的分類就是目標數據。

Scikit-Learn機器學習實踐:垃圾短信識別

X中都是特徵數據,y中都是目標數據,便於下一步的分割訓練集和測試集。

分割訓練集和測試集

使用sklearn的分割模塊對訓練集和測試集進行分割:

Scikit-Learn機器學習實踐:垃圾短信識別

提取文本特徵

從文本中提取特徵,需要利用到scikit-learn中的CountVectorizer()方法和TfidfTransformer()方法。

CountVectorizer()用於將文本從標量轉換為向量,TfidfTransformer()則將向量文本轉換為tf-idf矩陣。

Scikit-Learn機器學習實踐:垃圾短信識別

建立樸素貝葉斯分類器並進行訓練

樸素貝葉斯是一個很經典同時準確率也很高的機器學習算法,用它來做分類器可以得到很好的效果。

Scikit-Learn機器學習實踐:垃圾短信識別

在scikit-learn中,每一個模型都會有一個fit()方法用來模型訓練,有一個predict()方法用來模型預測,在此我們就傳入了訓練特徵和訓練目標進行了模型的訓練。

模型測試

模型訓練好之後,我們可以使用模型的predict()方法來測試與預測數據。

在這之前,我們還得進行另外一步。

因為之前對文本提取特徵只是針對於訓練集,測試集並沒有進行,所以我先對測試集進行文本特徵提取:

Scikit-Learn機器學習實踐:垃圾短信識別

再使用predict()方法進行預測:

Scikit-Learn機器學習實踐:垃圾短信識別

變量predicted_categories中包含的就是所有的預測結果。

模型評估

scikit-learn模塊中內置了很多模型評估的方法,對於分類問題,我們可以使用accuracy_score()方法,其返回一個數值,得分最高為1。

Scikit-Learn機器學習實踐:垃圾短信識別

打印出來的結果顯示:

Scikit-Learn機器學習實踐:垃圾短信識別

這個分類器的準確率達到了0.98,比上一次使用NLTK的貝葉斯算法高出了10%,很不錯。

可以打印部分測試的短信數據以及預測的結果來看:

Scikit-Learn機器學習實踐:垃圾短信識別

Scikit-Learn機器學習實踐:垃圾短信識別

基本上正常短信和垃圾短信都被正確識別出來了。

本文作者:天善智能社區 州的先生

可以加: xtechday (長按複製),進入機器學習愛好者交流群。

歡迎關注天善智能,我們是專注於商業智能BI,人工智能AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!

相關推薦

推薦中...