广义来说,有三种机器学习算法
1、监督式学习
工作机制:这个算法由一个目标变量或结果变量(或因变量)组成。这些变量由已知的一系列预示变量(自变量)预测而来。利用这一系列变量,我们生成一个将输入值映射到期望输出值的函数。这个训练过程会一直rrays
x_train<-input_variables_values_training_datasets
y_train<-target_variables_values_training_datasets
x_test<-input_variables_values_test_datasets
8
9
10
11
x<-cbind(x_train,y_train)
12
13
#Trainthemodelusingthetrainingsetsandcheckscorelinear<-lm(y_train〜.,data=x)summary(linear)#PredictOutput
predicted=predict(linear,x_test)
2、逻辑回归
别被它的名字迷惑了!这是一个分类算法而不是一个回归算法。该算法可根据已知的一系列因变量估计离散数值(比方说二进制数值
0或1,是或否,真或假)简单来说,它通过将数据拟合进一个逻辑函数来预估一个事件出现的概率。因此,它也被叫做逻辑回归。因为它预估的是概率,所以它的输出值大小在0和1之问(正如所预计的一样)。
让我们再次通过一个简单的例子来理解这个算法。
假设你的朋友让你解开一个谜题。这只会有两个结果:你解开了或是你没有解开。想象你要解答很多道题来找出你所擅长的主题。这个研究的结果就会像是这样:假设题目是一道十年级的三角函数题,你有70%的可能会解开这道题。然而,若题目是个五年级的历史题,你只有30%勺可能性回答正确。这就是逻辑回归能提供给你的信息。
从数学上看,在结果中,几率的对数使用的是预测变量的线性组合模型。
10dds=p/(1-p)=probabilityofeventoccurrence/probabilityofnot
_eventoccurrence
31n(odds)=ln(p/(1-p))
3logit(p)=ln(p/(1-p))=b0+b1X1+b2X2+b3X3….+bkXk
在上面的式子里,p是我们感兴趣的特征出现的概率。它选用使观察样本值的可能性最大化的值作为参数,而不是通过计算误差平方和的最小值(就如一般的回归分析用到的一样)。
现在你也许要问了,为什么我们要求出对数呢?简而言之,这种方法是复制一个阶梯函数的最佳方法之一。我本可以更详细地讲述,但那就违背本篇指南的主旨了。
IO
0246810
Ei
二g£
Python代码
1
2
3
4
5
6
#ImportLibrary
#Assumedyouhave,X(predictor)andY(target)fortrainingdatasetandx_test(predictor)oftest_dataset
Createlogisticregressionobject
7
8
9
10
model=LogisticRegression()
(X,y)(X,y)
11“
12#EquationcoefficientandIntercept
13print('Coefficient:n',)
14print('Intercept:n',)
15八
16#PredictOutput
predicted=(x_test)
R代码1x<-cbind(x_train,y_train)
2#Trainthemodelusingthetrainingsetsandcheckscore
3logistic<-glm(y_train〜.,data=x,family='binomial')4summary(logistic)
5
6#PredictOutput
7predicted=predict(logistic,x_test)
更进一步:
你可以尝试更多的方法来改进这个模型:
加入交互项
精简模型特性
使用正则化方法
使用非线性模型
3、决策树
白unn:
|Play
1Play
HUMIDITY?
/、
<=7
10种机器学习算法的要点 来自淘豆网m.daumloan.com转载请标明出处.