看这篇文章前强烈建议你看看上一篇python实现梯度下降法: 一、为什么要提出随机梯度下降算法 注意看梯度下降法权值的更新方式(推导过程在上一篇文章中有)  也就是说每次更新权值都需要遍历整个数据集(注意那个求和符号),当数据量小的时候,我们还能够接受这种算法,一旦数据量过大,那么使用该方法会使得收敛过程极度缓慢,并且当存在多个局部极小值时,无法保证搜索到全局最优解。为了解决这样的问题,引入了梯度下降法的进阶形式:随机梯度下降法。 二、核心思想 对于权值的更新不再通过遍历全部的数据集,而是选择其中的一个样本即可(对于程序员来说你的第一反应一定是:在这里需要一个随机函数来选择一个样本,不是吗?
2022-12-04 22:30:51 69KB “人造太阳”计划 python python函数
1
通过纯Python完成股票回测框架的搭建。 什么是回测框架? 无论是传统股票交易还是量化交易,无法避免的一个问题是我们需要检验自己的交易策略是否可行,而最简单的方式就是利用历史数据检验交易策略,而回测框架就是提供这样的一个平台让交易策略在历史数据中不断交易,最终生成最终结果,通过查看结果的策略收益,年化收益,最大回测等用以评估交易策略的可行性。 代码地址在最后。 本项目并不是一个已完善的项目, 还在不断的完善。 回测框架 回测框架应该至少包含两个部分, 回测类, 交易类. 回测类提供各种钩子函数,用于放置自己的交易逻辑,交易类用于模拟市场的交易平台,这个类提供买入,卖出的方法。 代码架构 以自
2022-11-23 21:22:50 154KB date python python函数
1
最近用python的正则表达式处理了一些文本数据,需要把结果写到文件里面,但是由于文件比较大,所以运行起来花费的时间很长。但是打开任务管理器发现CPU只占用了25%,上网找了一下原因发现是由于一个叫GIL的存在,使得Python在同一时间只能运行一个线程,所以只占用了一个CPU,由于我的电脑是4核的,所以CPU利用率就是25%了。 既然多线程没有什么用处,那就可以使用多进程来处理,毕竟多进程是可以不受GIL影响的。Python提供了一个multiprocessing的多进程库,但是多进程也有一些问题,比如,如果进程都需要写入同一个文件,那么就会出现多个进程争用资源的问题,如果不解决,那就会使文
2022-11-22 18:39:11 59KB python python函数 python多线程并发
1
本文实例讲述了Python使用time模块实现指定时间触发器。分享给大家供大家参考,具体如下: 其实很简单,指定某个时间让脚本处理一个事件,比如说一个get请求~ 任何语言都会有关于时间的各种方法,Python也不例外。 help(time)之后可以知道time有2种时间表示形式: 1、时间戳表示法,即以整型或浮点型表示的是一个以秒为单位的时间间隔。这个时间的基础值是从1970年的1月1号零点开始算起。 2、元组格式表示法,即一种python的数据结构表示。这个元组有9个整型内容。分别表示不同的时间含义。     year (four digits, e.g. 1998)     month
2022-11-22 16:48:14 75KB python python函数 python算法
1
这是一个用来加载mnist数据集的python函数,其中每个函数都有相关注释,使用时只要引用这个类,然后写这条语句(x_train,y_train),(x_valid,y_valid) = load_mnist(normalize=True,**)括号里面是一些参数,关于参数在函数里面也有详细的注释,这个py文件适用于刚刚学习深度学习想要用mnist数据集联系分类的萌新小伙伴。
2022-11-21 09:26:34 3KB 深度学习
1
除了在Matlab中使用PRTools工具箱中的svm算法,Python中一样可以使用支持向量机做分类。因为Python中的sklearn库也集成了SVM算法,本文的运行环境是Pycharm。 一、导入sklearn算法包   Scikit-Learn库已经实现了所有基本机器学习的算法,具体使用详见官方文档说明   skleran中集成了许多算法,其导入包的方式如下所示,   逻辑回归:from sklearn.linear_model import LogisticRegression        朴素贝叶斯:from sklearn.naive_bayes import Gaussian
2022-11-18 16:44:31 178KB matlab函数 python python函数
1
pyCarpetPlot Python函数库,用于生成地毯图 作者:斯蒂芬·安德鲁斯(Stephen Andrews)< > 致谢:该库很大程度上基于McDonals博士在参考资料中提供的matlab函数。 1。 依存关系 麻木 matplotlib scipy(仅适用于阴影线) 参考 麦当劳,罗布。 “地毯图工具包”。 Powers,SA。 “地毯图的生成”。 地毯图基础 地毯图显示了两个自变量和一个因变量之间的关系。 在这些图中,横坐标使用任意比例,该比例会扭曲每个自变量与因变量之间的个体关系。 该图的优点是易于识别产生所需因变量值的两个自变量的组合。 地毯图上的每条线代表一个独立变量的变化,而另一个保持不变。 这些等值线中的每条均用保持不变的自变量的相应值标记。 去做 让用户更好地控制曲线标签的放置 允许将约束线添加到地毯图 简化三个自由度图的生成 例子 示例图包含在
2022-11-14 21:38:03 350KB Python
1
下面通过代码给大家介绍python打包压缩指定目录下的指定类型文件,具体代码如下所示: import os import datetime import tarfile import fnmatch def find_spe_file(root, patterns=['*'], non_cludedir=[]): for root, dirnames, filenames in os.walk(root): for pattern in patterns: for filename in filenames: if fnmatch.fnmatch(fi
2022-11-12 09:40:20 43KB csv python python函数
1
本文实例讲述了Python简单实现的代理服务器端口映射功能。分享给大家供大家参考,具体如下: 一 代码 1、模拟服务端代码 import sys import socket import threading #回复消息,原样返回 def replyMessage(conn): while True: data = conn.recv(1024) conn.send(data) if data.decode().lower() == 'bye': break conn.close() def main(): sockScr = socket.so
2022-11-10 20:19:30 81KB data python python函数
1
C4.5算法使用信息增益率来代替ID3的信息增益进行特征的选择,克服了信息增益选择特征时偏向于特征值个数较多的不足。信息增益率的定义如下: # -*- coding: utf-8 -*- from numpy import * import math import copy import cPickle as pickle class C45DTree(object): def __init__(self): # 构造方法 self.tree = {} # 生成树 self.dataSet = [] # 数据集 self.labels = [] # 标签集 # 数据导入
2022-11-10 10:16:14 85KB python python函数 python算法
1