当前位置: 首页 > 科技观察

Python用5行代码学习机器学习——线性回归

时间:2023-03-21 23:10:50 科技观察

我准备用scikit-learn给大家介绍一下模型的一些基础知识,今天就来说说线性回归模型。1.在开始之前,您需要确保您的计算机上已经成功安装了Python和pip。如果没有,请访问这篇文章:超详细的Python安装指南进行安装。如果使用Python进行数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手-AnacondaWindows环境打开Cmd(开始-运行-CMD),苹果系统环境请打开Terminal(命令+空格输入Terminal),准备开始输入命令来安装依赖。当然,我更推荐你使用VSCode编辑器,将本文代码复制,在编辑器下方的终端中运行命令安装依赖模块。多么惬意的一件事:Python编程的最佳搭档——VSCode详解指南。在终端输入如下命令安装我们需要的依赖模块:pipinstallscikit-learn2。简单的训练集冬天来了,这几天深圳准备开始过冬了。从生活出发,外界温度对是否穿大衣的影响是线性的:现在,考虑这样一个问题:如果深圳的温度是12度,我们是否应该穿大衣?这个问题很简单,Concentrated上面的简单训练,我们甚至不需要机器学习就可以轻松得到答案:应该。但是如果训练集变得稍微复杂一点怎么办:你能看出x1、x2、x3和y之间的规律性吗?这很难,但如果你有足够的数据(比如100),机器学习可以快速解决这个问题。为了展示机器学习的强大,这里我们制作100个这样的训练集(公式为:y=x1+2*x2+3*x3):fromrandomimportrandintTRAIN_SET_LIMIT=1000TRAIN_SET_COUNT=100TRAIN_INPUT=list()TRAIN_OUTPUT=list()foriinrange(TRAIN_SET_COUNT):a=randint(0,TRAIN_SET_LIMIT)b=randint(0,TRAIN_SET_LIMIT)c=randint(0,TRAIN_SET_LIMIT)op=a+(2*b)+(3*c)TRAIN_INPUT.append([a,b,c])TRAIN_OUTPUT.append(op)然后让线性回归模型使用训练集(TrainingSet)进行训练(fit),然后给定三个参数(TestData),做一个预测(predict),让它得到y值(Prediction),如下图所示。3.训练和测试我为什么要用sklearn?因为实在是太方便了。像这样训练只需要3行代码:fromsklearn.linear_modelimportLinearRegressionpredictor=LinearRegression(n_jobs=-1)predictor.fit(X=TRAIN_INPUT,y=TRAIN_OUTPUT)需要注意线性回归模型的参数(LinearRegression):n_jobs:默认为1,表示使用的CPU数量。当-1时,表示使用所有CPU预测器。fit是训练模型,X是我们生成训练集时的TRAIN_INPUT,Y是TRAIN_OUTPUT。训练后可以立即进行测试,只需调用预测函数即可:X_TEST=[[10,20,30]]outcome=predictor.predict(X=X_TEST)coefficients=predictor.coef_print('Outcome:{}\nCoefficients:{}'.format(outcome,coefficients))这里的系数指的是系数,即x1,x2,x3。得到的结果如下:Outcome:[140.]Coefficients:[1.2.3.]Verify:10+20*2+30*3=140完全正确。怎么样,机器学习模型其实并没有想象中那么难用。大多数人可能只是卡在了安装scikit-learn的路上……顺便给大家留个小练习,下面的欧氏距离,Representationusingalinearregressionmodel。解决思路其实和本文的解决方案类似,只是需要修改一下。

最新推荐
猜你喜欢