介绍
小编给大家分享一下python怎么实现梯度下降和逻辑回归,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
具体内容如下
import numpy as np import pandas  as pd import 操作系统 , 时间=data pd.read_csv (“iris.csv"), #,这里的虹膜数据已做过处理 m, n =data.shape 时间=dataMatIn np.ones ((m, n)) dataMatIn (:,,: 1),=, data.ix (:,,: 1) 时间=classLabels data.ix (:,, 1) , #,乙状结肠函数和初始化数据 def 乙状结肠(z): ,return 1,/, (1, +, np.exp (- z)) , #,随机梯度下降 def Stocgrad_descent (dataMatIn, classLabels):=,,dataMatrix  np.mat (dataMatIn), #,训练集=,,labelMat  np.mat (classLabels) .transpose (), #, y值 ,m, n =, np.shape (dataMatrix), #, m: dataMatrix的行数,护士:dataMatrix的列数=,,weights  np.ones ((n,, 1)), #,初始化回归系数(n,, 1) ,alpha 0.001=,, #,步长 500年,maxCycle =,, #,最大循环次数 epsilon 0.001=,=,,error  np.zeros ((n, 1)) ,for 小姐:拷贝范围(maxCycle): for 才能;j 拷贝范围(米): ,,h =,乙状结肠(dataMatrix *,权重),#,sigmoid 函数 ,,weights =, weights +, alpha *, dataMatrix.transpose (), *, (labelMat 安康;h), #,梯度 if 才能np.linalg.norm (weights 安康;错误),& lt;,ε: ,才能休息 其他的才能: ,,error =重量 ,return 权重 , #,逻辑回归 def pred_result (dataMatIn):=,,dataMatrix  np.mat (dataMatIn)=,,r  Stocgrad_descent (dataMatIn, classLabels)=,,p 乙状结肠(dataMatrix *, r), #,根据模型预测的概率 , ,#预测结果二值化=,pred [] ,for 小姐:拷贝范围(len(数据)): if 才能;p[我],祝辞,0.5: ,,pred.append (1) 其他的才能: ,,pred.append (0) ,数据(“pred"),=, pred ,os.remove (“data_and_pred.csv"), #,删除List_lost_customers数据集,#,第一次运行此代码时此步骤不要 ,data.to_csv (“data_and_pred.csv",指数=False,编码=皍tf_8_sig"), #,数据集保存 pred_result (dataMatIn)
以上是“python怎么实现梯度下降和逻辑回归”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!