Python机器学习库scikit-learn安装与基本使用教程

  

本文实例讲述了Python机器学习库scikit-learn安装与基本使用。分享给大家供大家参考,具体如下:

  

<>强引言

  

scikit-learn是Python的一个开源机器学习模块,它建立在<代码> NumPy ,<代码> SciPy 和<代码> matplotlib 模块之上能够为用户提供各种机器学习算法接口,可以让用户简单、高效地进行数据挖掘和数据分析。

  

scikit-learn安装

  

python中安装许多模板库之前都有依赖关系,安装scikit-learn之前需要以下先决条件:

  
  

Python(祝辞=2.6或祝辞=3.3)
  NumPy(祝辞=1.6.1)
  SciPy(祝辞=0.9)

     

如无意外,下面用皮普的安装方法可以顺利完成~ ~

  
安装numpy h5>   sudo pip安装numpy      之前      
安装scipy h5> 需要先安装matplotlib ipython ipython-notebook熊猫sympy

        sudo apt-get python-matplotlib ipython ipython-notebook安装   sudo apt-get安装python-pandas python-sympy python-nose   sudo pip安装scipy      之前      
安装scikit-learn h5>   sudo pip安装- u scikit-learn      之前      
测试h5> 在终端里面输入

        皮普列表      之前      

这个会列出pip安装的所有东西,如果里面有sklearn这一项,应该就是大功告成了!

  

或者尝试着将几个模板库导入进来

        进口numpy   进口scipy   进口sklearn      之前      

加载数据(数据加载)

  

本文所使用的数据集为“今日头条“近期两篇热门新闻“牛!川大学霸寝室5人获16份名校通知书”,“张超凡的最后14天:山西15岁休学少年是如何殒命网吧的“分别500条评论,共1000条评论。

  

去除停用词后得到了词库大小为3992的词库。因此构建了1000×3992的特征矩阵,以及长度为1000的对应评论所属类别列表

  

具体爬虫和特征矩阵构建代码

  

class_result_save。npy下载feature_matrix_save.npy下载

        进口numpy np   feature_matrix=np.load(“数据集/feature_matrix_save.npy”)   class_list=np.load(“数据集/class_result_save.npy”)      之前      

数据归一化(数据规范化)

  

大多数机器学习算法中的梯度方法对于数据的缩放和尺度都是很敏感的,在开始跑算法之前,我们应该进行归一化或者标准化的过程,这使得特征数据缩放到0 - 1范围中.scikit-learn提供了归一化的方法:

        从sklearn进口预处理   #归一化(归一化)   normalized_X=preprocessing.normalize (feature_matrix)   打印normalized_X   #标准化(标准化)   standardized_X=preprocessing.scale (feature_matrix)   打印standardized_X      之前      

特征选择(特征选择)

  

在解决一个实际问题的过程中,选择合适的特征或者构建特征的能力特别重要。这成为特征选择或者特征工程。

  

特征选择时一个很需要创造力的过程,更多的依赖于直觉和专业知识,并且有很多现成的算法来进行特征的选择。

  

下面的树算法(树算法)计算特征的信息量:

        从sklearn。整体进口ExtraTreesClassifier   模型=ExtraTreesClassifier ()   打印feature_matrix。#原形状特征矩阵规模   feature_matrix=模型。fit (feature_matrix class_list) .transform (feature_matrix)   打印feature_matrix。形状#特征选择后特征矩阵的规模      之前      

特征提取(特征提取)

  

用TFIDF算法来计算特征词的权重值是表示当一个词在这篇文档中出现的频率越高,同时在其他文档中出现的次数越少,则表明该词对于表示这篇文档的区分能力越强,所以其权重值就应该越大。

        从sklearn.feature_extraction。文本导入TfidfTransformer   tfidf_transformer=TfidfTransformer ()   feature_matrix=tfidf_transformer.fit_transform (feature_matrix) .toarray ()      之前      

朴素贝叶斯(朴素贝叶斯)

  

朴素贝叶斯是一个很著名的机器学习算法,主要是根据训练样本的特征来计算各个类别的概率,在多分类问题上用的比较多。

        从sklearn进口指标   从sklearn。naive_bayes进口GaussianNB   #构建朴素贝叶斯模型   模型=GaussianNB ()   模型。fit (feature_matrix class_list)   打印模式   #使用测试集进行测试(此处将训练集做测试集)   预期=class_list   预测=model.predict (feature_matrix)   #输出测试效果   打印指标。classification_report(预期,预测)   打印指标。confusion_matrix(预期,预测)      

Python机器学习库scikit-learn安装与基本使用教程