Python机器学习之使用Keras进行回归预测
前期准备之Keras的scikit-learn接口包装器
Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow。是一个高度模块化的神经网络库,支持CPU和GPU。
Scikit-learn是基于Scipy为机器学习建造的的一个Python模块,他的特色就是多样化的分类,回归和聚类的算法包括支持向量机,逻辑回归,朴素贝叶斯分类器,随机森林,GradientBoosting,聚类算法和DBSCAN。而且也设计出了Pythonnumerical和scientificlibrariesNumpyandScipy。
我们可以通过包装器将Sequential模块(仅有一个输入)作为Scikit-learn工作流的一部分,相关的包装器定义在keras.wrappers.scikit_learn.py中。
1:目前有两个包装器可用
其中实现了sklearn的分类器接口是下面包装器:
1keras.wrappers.scikit_learn.KerasClassifier(build_fn=None,**sk_params)
实现了sklearn的回归器接口的是下面包装器:
1keras.wrappers.scikit_learn.KerasRegressor(build_fn=None,**sk_params)
2,参数build_fn:可调用的函数或者类对象
build_fn应构造,编译并返回一个Keras模型,该模型将稍后用于训练/测试,build_fn值可能为以下三种之一:
1,一个函数
2,一个具有call方法的类对象
3,None,代表你的类继承自KerasClassifier或者KerasRegressor,其call方法为其父类call方法
3,参数sk_params:模型参数和训练参数
sk_params以模型参数和训练(超)参数作为参数,合法的模型参数为build_fn的参数,注意:‘build_fn’应提供其参数的默认值。所以我们不传递任何值给sk_params也可以创建一个分类器/回归器。
sk_params还接受用于调用fit,predict,predict_proba和score方法的参数,如nb_epoch,batch_size等。这些用于训练或预测的参数按如下顺序选择:
传递给fit,predict,predict_proba和score的字典参数
传递个sk_params的参数
keras.models.Sequential,fit,predict,predict_proba和score的默认值
当使用scikit-learn的grid_search接口时,合法的可转换参数是你可以传递给sk_params的参数,包括训练参数。即,你可以使用grid_search来搜索最佳的batch_size或nb_epoch以及其他模型参数。
以上内容为大家介绍了Python机器学习之使用Keras进行回归预测,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:开发教育。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!