人工智能 传统机器学习

一. 什么是机器学习

定义:机器学习是从数据中自动分析获得模型,并利用模型对未知数据进行预测

数据集的构成:特征值+目标值(对于每行数据可以称之为样本,有些数据集可以没有目标值)

二. 机器学习算法分类

监督学习:

目标值:类别 -- 分类问题

算法:k-近邻算法,贝叶斯分类,决策树与随机森林,逻辑回归

目标值:连续型数据 -- 回归问题

算法:线性回归,岭回归

目标值:无 -- 无监督学习(聚类)

算法:k-means

三. sklearn应用

(一)sklearn.datasets

1. datasets.load_*()

获取小规模数据集,数据包含在datasets里

2. datasets.fetch_*(data_home=None,subest=’train’)

subest : ’train’或’test’或’all’,选择要加载的数据集。训练集的“训练”,测试集的“测试”,两者的“全部”

获取大规模数据集,需要从网上下载,函数的第一个参数是data_home,表示数据集下载的目录,默认是~/scikit_learn_data/

3. 数据集的返回值

datasets.base.Bunch(继承自字典)

dict[“key”] = values

Bunch.key = values

key:

data: 特征数据数组

target: 标签数组

DESCR: 数据描述

feature_names: 特征名

target_names: 标签名

4. 数据集划分

sklearn.model_selection.train_test_split(arrays,*options)

x: 数据集特征值

y: 数据值标签值

return:

x_train: 训练集特征值

x_test: 测试集特征值

y_train: 训练集目标值

y_test: 测试集目标值

test_size: 测试集大小,一般为float

random_state: 随机数种子

(二)文本特征提取

方法1:CountVectorizer

sklearn.feature_extraction.text.CountVectorizer(stop_words=[])  # stop_words停用的词表

CountVectorizer.fit_transform(X) X:文本或包含文本字符串可迭代对象,返回sparse矩阵

CountVectorizer.iverse_tranform(X) X:arry数组或sparse矩阵,返回转换之前数据格式

CountVectorizer.get_feature_names() 返回单词列表

方法2: TfidfVevtorizer

sklearn.feature_extraction.text.TfidfVevtorizer(stop_words=None,...)

TfidfVevtorizer.fit_transform(X)  X:文本或包含文本字符串可迭代对象,返回sparse矩阵

TfidfVevtorizer.iverse_tranform(X)  X:arry数组或sparse矩阵,返回转换之前数据格式

TfidfVevtorizer.get_feature_names() 返回单词列表

你可能感兴趣的:(人工智能,人工智能,机器学习)