机器学习自学总结——day1

人工智能35

1.1 特征抽取目的

事实上,为了让计算机更好地理解数据,各种特殊格式都会转换成标准的数字格式,即特征值。

[En]

In fact, in order to enable the computer to better understand the data, a variety of special formats will be transformed into a standard digital format, that is, eigenvalue.

1.2 特征抽取实例

每一个字典为一个样本,用list将所有的样本储存起来

流程:1. 实例化DictVectorizer 2.调用fit_transform输入数据并转化(sparse = True: 用sparse矩阵返回,节约内存
sparse = False: 返回np.array)其实就是将所有的非数值特征转化成dummy variable。

from sklearn.feauture_extraction import DictVectorizer
def dictvec():
    my_dict = [{'city':'北京','temperature':100},{'city':'上海','temperature':60}]
    dict = DictVectorizer()
    data = dict.fit_transform(my_dict)
    feature = dict.get_feauture_names()
    original = dict.inverse_transform(data)

if __name__=='__main__':
    dictvec()

流程:1. 实例化CountVectorizer 2.调用fit_transform输入数据并转化
以上两步其实就是统计每个词在每个样本里出现的次数
返回的array(n*m) n 为样本个数,m为每个特征单词

from sklearn.feauture_extraction import CountVectorizer
def countvec():
    my_text = ['I am Cathy and I love coding.','what do you mean I?']
    cv = CountVectorizer()
    data = cv.fit_transform(my_text)
    print(data.toarray())

if __name__=='__main__':
    countvec()

如果用中文,则需要先分词:

import jieba
def cutword():
    con1 = jieba.cut('我的名字叫,今天,明天会更美好')
    #列表生成器变成列表
    content1 = list(con1)
    content1=  ' '.join(content1)
    #用空格连接字符返回
    return content1

1.3 TF-IDF(term frequency-inverse document frequency)

这是为了解决一些常出现且不具有特征性的文本被误认为是极具特征性的特征的问题,如英文中的一些代词,连接词。引入IDF就是为了统计这个词是否具有普遍性,如果这个词在所有的样本中都出现,那么它其实不具有任何代表样本特征的能力,那么它作为特征的能力应该为最小,这就是定义IDF=log(total document num/the num of documents the word appears in)的意义。
TF*IDF就是某个词的重要性程度。

from sklearn.feature_extraction.text.TfidfVectorizer
#其他的操作和上面的vectorizer是一样的

Original: https://blog.csdn.net/weixin_43787438/article/details/123774903
Author: Cathy. �
Title: 机器学习自学总结——day1

相关文章
mnist数据集LR实战 人工智能

mnist数据集LR实战

机器学习简要介绍,NLP基础+实战 让机器"写小说"教程-慕课网 (imooc.com) 目录 配置 代码 数据集导入及处理 创建神经网络 计算损失函数 采用adam自适应学习率优化器 计算准确率 s...
tensorflow详细安装过程 人工智能

tensorflow详细安装过程

我电脑安装的python是3.7.4的,所以python如果版本不一样的话(不是3.7的),下边的内容不建议完全参考,可以适当参考。 主要是注意很多numpy和models与你安装的tensorflo...
数学建模聚类模型 人工智能

数学建模聚类模型

聚类模型 聚类就是将样本划分为由类似的对象组成的多个类的过程。聚类后,我们可以更加准确的在每个类中单独使用统计模型进行估计、分析或预测也可以探究不同类之间的相关性和主要差异。聚类和分类的区别是分类是已...
OpenCV-白平衡(完美反射算法) 人工智能

OpenCV-白平衡(完美反射算法)

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 实现原理 白平衡的意义在于,对在特定光源下拍摄时出现的偏色现象,通过加强对应的补色来进行补偿,使...
YOLOv3/v4/v4/x中正负样本的定义 人工智能

YOLOv3/v4/v4/x中正负样本的定义

1.每一个目标都只有一个正样本,max-iou matching策略,匹配规则为 IOU最大(没有阈值),选取出来的即为 正样本; 2. IOU负样本; 3.除了正负样本,其余的全部为 忽略样本 比如...