机器学习基础算法
文章平均质量分 79
yokan_de_s
这个作者很懒,什么都没留下…
展开
-
numpy api简单说明和使用
1.flatten和ravel的区别它们都是拆分多维数组变一维的In [3]: arr = np.asarray([[1,2],[3,4]])In [4]: arrOut[4]: array([[1, 2], [3, 4]])In [5]: m = arr.flatten()In [6]: mOut[6]: array([1, 2, 3, 4])In [7]: n = arr.rave...原创 2018-05-17 11:16:39 · 449 阅读 · 0 评论 -
14.卷积神经网络
卷积神经网络的主要作用是图像处理,比如人脸识别拿神经网络处理图片,资源消耗是巨大的举个例子,上图上来输入为一张图片,输出为结果,形式是概率.卷积神经包含四种不同类型的层CONV,RELU,POOL,FCCONV 卷积层局部关联,一个神经元不看全图,只看一块区域,然后窗口滑动,然后对每次滑动的局部数据进行计算,比如这一块区域是3*3则会产生9个w(权重)第二个神经元也做同样的操作,不过会用9个新的权...原创 2018-06-12 15:43:05 · 347 阅读 · 0 评论 -
常见的非线性映射
1.sigmoid函数实现代码:def sigmoid(x): return (1/(1+np.exp(-x)))图像:2.tanh(双曲正切)函数实现 numpy自带np.tanh(),自己写和sigmoid类似套公式就行了图像:3.Relu 修正线性单元卷积神经网络 激励层用的比较多函数:f(x) = x (x > 0) f(x) = 0 (x <= 0)图像:变化...原创 2018-06-12 11:20:48 · 14237 阅读 · 1 评论 -
15.循环神经网络与LSTM
循环神经网络,一般运用于词条翻译,语调模仿,等等相对于人工神经网络和卷积神经网络,循环神经网络具有'记忆功能'对于人工神经网络,卷积网络来说,不管怎么梯度下降,输出层和输入层根据权重和池化层等的缩减,至少部分相关的循环神经网络则不止是输入层经过权重处理的结果,还有'记忆'的权重循环神经网络的结构x是输入,o是输出,中间展开则是右边的模型U是权重矩阵,所谓的记忆就是S(t-1)到St经过权重运算之后...原创 2018-06-12 20:38:52 · 802 阅读 · 0 评论 -
相关性算法和api
首先假设人群G,其次假设推荐集合S,还有推荐对单人的符合程度u,加入单个人g属于G,单个推荐s属于S.在评判标准u越大的情况下,这条推荐越靠前,这就是推荐...原创 2018-05-29 20:00:39 · 1926 阅读 · 0 评论 -
6.1 用户相关性推荐,python
这是个基于https://grouplens.org/datasets/movielens/数据所写的电影推荐算法,其中包括新用户的热门推荐,电影相关性推荐,用户的相似度推荐等等原创 2018-05-30 21:03:51 · 388 阅读 · 0 评论 -
10.贝叶斯方法
公式:P(Y|X) = P(X|Y)P(Y) / P(X)即在X事件已经确定发生的情况下,Y发生的概率P(Y|X)等于P(X|Y)即是Y发生的情况下,X发生的概率,乘以Y发生的P(Y)概率,除以X发生的概率P(X).所以联合概率P(X,Y) = P(X|Y)P(Y) = P(Y|X)P(X)P(Y)是先验概率,P(Y|X)是后验概率P(X,Y)则是联合概率用机器学习的角度来了解 其实就是概率性质的...原创 2018-06-07 19:45:39 · 518 阅读 · 0 评论 -
7.聚类算法
聚类算法是无监督学习,因为它不需要结果.其实聚类并不是特别准,因为它没有标准答案,就表示有很多种可能,那么实际机器判断的准确度可能就并不高了.聚类主要有:K-means聚类, 层次聚类,混合高斯模型有监督学习下的答案y,对应于聚类里面的相关性聚类的好坏分析:类内相似度高,类间相似度低,类内距离近,类间距离远,相关系数一般相关系数越低相关度越高一般来说距离就用欧式距离,相关系数就用person相关系...原创 2018-06-01 20:04:09 · 382 阅读 · 0 评论 -
13.神经网络
神经网络便是上述模型,从输入层,到隐层1,2然后过滤到输出层.进行分类,是其基本工作而神经网络的感知器就是逻辑回归上述是逻辑回归的两个函数,一个是用theta加权重拟合,一个阈值函数.这个图配合解说还是有点问题的b应该对应的是theta0,w1对应theta1,w2对应theta2生成z,然后根据sigmoid筛选出来的信息给a.这就是感知器...原创 2018-06-08 17:59:52 · 291 阅读 · 0 评论 -
matplotlib的笔记和代码python
matplotlib是一个可视化分析的神器,分为数据和渲染,数据一般教给numpy去处理然后她不管具体数据分析,她只接受处理好的数据,然后根据这些数据进行渲染这个是网上的一张图,借用下吧,matplotlib渲染分四个区域,不管是怎么绘制都离不开这个基本的框架,1.title,需要自己去设置,可以设置一些相关信息,比如人口普查表之类的2.axis坐标轴,里面分横坐标纵坐标3.legend图例,描述...原创 2018-05-28 15:08:08 · 754 阅读 · 0 评论 -
13.1 神经网络代码补充
# @Time : 2018/6/8# @Author : yokanprint_swtich = False #损失函数打印runloop_c = 2000 #梯度下降循环次数p_runloop = 100 #循环多少次打印一次studio_r = 0.0001 #学习率...原创 2018-06-11 16:46:26 · 308 阅读 · 0 评论 -
2.逻辑(斯特)回归 非正则化 学习代码
""" @author yokan @date 2018/5/16"""import numpy as npimport pandas as pdimport matplotlib.pyplot as plotfrom scipy.optimize import minimize#加载数据def loadfile(file_name,seg_c): o_dat...原创 2018-05-17 15:03:18 · 302 阅读 · 0 评论 -
3. 特征工程
1.离散化原创 2018-05-18 16:42:11 · 172 阅读 · 0 评论 -
sklearn基础应用和机器学习流程概览
众所周知sklearn是一个机器学习的集大成框架机器学习的流程1.获取数据,没数据肯定没法学习from sklearn import datasetsimport numpy as npimport pandas as pd#从数据里面看这就是一个分类的问题,因为答案只有0,1,2三个,一般机器学习不能识别字符之类的,用0,1,2表示三个数据#比如判断是否是一个女神,可以从大量的脸部数据,...原创 2018-05-25 10:42:57 · 524 阅读 · 0 评论 -
1.简单的线性回归算法
''' @author yokan @date 2018/5/15'''#简单的线性回归算法import mathimport numpy as npimport matplotlib.pyplot as pl#暂时无用,这是sklearn框架做线性回归的算法,框架学习在后面,我准备先学算法from sklearn.linear_model import Linea...原创 2018-05-16 13:52:02 · 593 阅读 · 0 评论 -
pandas笔记和代码
1.Seriesimport numpy as npimport pandas as pds = pd.Series([False,21,True,2018,'yokan'],index=['gender','age','ishandsome','nowDate','name']) #创建一个Series,和字典类似print(s) #可以不给index,不给的话...原创 2018-05-23 17:18:55 · 359 阅读 · 0 评论 -
9.SVM,支持向量机
SVM分为了三类问题,并有不同的解决方法hard margin来说解决分类问题对样本需求比较高,它需要一条线来直接分类soft margin则没那么高要求,并且也包含hard magin,所以是最常用的kernel 核函数不是SVM原生的,它可以在任何分类器里面用对偶函数更像一种转换方式,把问题转换成一种凸优化的问题,这样更方便求解支持向量机也是解决分类问题等问题的一门技术,原生只有hard ma...原创 2018-06-05 19:09:13 · 141 阅读 · 0 评论 -
8.决策树,随机森林,Adaboost
决策树,顾名思义就是树结构的.从上至下的有监督学习网上随便搞的一张图从最初开始薪水至少50000刀就是个根节点,而得出的拒绝和接受offer,就是有监督学习的标签,在这里叫叶子节点,而什么上班路上花的时间不超过1小时,提不提供咖啡什么的就叫决策节点,也叫分叉,而这些条件本身就叫做属性.建立决策树主要有三种算法ID3,C4.5,CART信息增益遍历所有特征,选出特征F对数据训练集T影响最大的特征,而...原创 2018-06-02 17:35:43 · 793 阅读 · 0 评论