![](https://img-blog.csdnimg.cn/20200422180130982.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
python
文章平均质量分 61
python
山高月小 水落石出
在广袤的空间和无限的时间中,能与你共享同一颗行星和同一段时光,是我莫大的荣幸。
展开
-
辅助编程coding的两种工具:Github Copilot、Cursor
目前有个人版、商业版和教育版三种,教育版里面学生账户比教师账户的免费功能更多,只需要一个学校邮箱和一卡通就可以认证学生账户或者教师账户,还是很方便。用工具自动写代码的时候,最好要用实际例子或实际数据检查一下,就算没有报错,对于数值计算最好也要debug跑一遍看它生成的代码是否符合你的描述或者数学原理。具体原因见上文的注意。原创 2023-04-04 21:49:36 · 2426 阅读 · 0 评论 -
知识图谱初步调研
知识图谱 python原创 2023-01-26 20:53:04 · 148 阅读 · 0 评论 -
在python中用seaborn.boxplot画图,以及带子分组的并排箱线图
在中,介绍了如何使用Excel自带图表插入带分组的并排箱形图,可以快速地使用鼠标实现。但有些地方要求更严格,或者对细节要求更丰富,就可以使用seaborn的boxplot,它和boxenplot都是matplotlib.pyplot.boxplot的优化版,出图更方便更美观,下面就以seaborn.boxplot为例进行说明。原创 2022-12-23 15:43:26 · 2112 阅读 · 0 评论 -
清除pycharm控制台console中所有变量
【代码】清除pycharm控制台console中所有变量。原创 2022-12-22 15:49:06 · 3362 阅读 · 0 评论 -
使用插值方法(scipy.interpolate)和三维数据构造二元函数
自变量保持顺序的方式传入插值函数,所得函数就可以保持原始数据应有的顺序和规律性;如果乱序传入,因为插值函数是按逐个数据点的顺序进行插值,所得函数就可能被切分为很多零散的曲面或超曲面。平滑因子s和样条灵活性kx和ky是插值函数最重要的超参数:s越大,函数越平滑,对数据点的拟合程度就越不是完全拟合;kx,ky越大,函数越灵活,(如kx=ky=1时则为平面插值),但也越可能出现振荡。......原创 2022-08-16 17:44:00 · 1030 阅读 · 2 评论 -
对于单峰函数(有唯一极值的函数),黄金分割法比二分法能用更少的搜索次数找到最优解(最值),这对于目标函数不可导时的最优解搜索很有效。
华罗庚在《优选法》中阐述了在一定条件下使用golden ratio黄金分割法搜索单峰函数的最值,比二分法搜索更快,可用更少的步数找到最值。当目标函数可导时,可使用梯度下降类的方法搜索极值点,但当目标函数不可导时,只能使用这些非梯度类的搜索方法。由下图中推导可知,使用黄金分割向下(即向自变量的减小方向)搜索时,该自变量×(1-φ);使用黄金分割向上(即向自变量的增大方向)搜索时,该自变量×2。使用二分法向下(即向自变量的减小方向)搜索时,该自变量×1/2;使用二分法向上(即向自变量的增大方向)搜索时,该自变量原创 2022-02-14 17:57:21 · 831 阅读 · 0 评论 -
用python来做数据预处理data preprocessing和特征工程Feature Engineering的一些常用方法
some usual metheds of data preprocessing and feature engineering with python原创 2022-02-13 19:49:41 · 538 阅读 · 0 评论 -
多项式拟合(polyfit)及局部加权回归(Lowess)对二维数据基础规律和离群特征学习的分析对比
from math import ceilimport numpy as npfrom scipy import linalgimport statsmodels.api as smimport matplotlib.pyplot as pltimport copyplt.style.use('seaborn-white')"""特别重要:当多项式拟合次数过高时,新的应变量会在除了原自变量点之外的区间发生振荡,所以在应用拟合得到的该多项式时,新的自变量不能落在这些区间,但若落在任意原自原创 2021-07-26 12:24:33 · 2350 阅读 · 0 评论 -
卷积神经网络入门:LeNet5(手写体数字识别)详解
第一张图包括8层LeNet5卷积神经网络的结构图,以及其中最复杂的一层S2到C3的结构处理示意图。第二张图及第三张图是用tensorflow重写LeNet5网络及其注释。这是原始的LeNet5网络:import tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_dataimport time...原创 2018-10-16 10:19:14 · 6019 阅读 · 4 评论 -
当待拟合函数为二元一次函数,即其最小二乘的损失函数为二元二次函数时,在python中采用全量梯度下降、随机梯度下降、批量梯度下降求解损失函数。
import tensorflow as tfimport numpy as npfrom mpl_toolkits.mplot3d import Axes3Dfrom matplotlib import pyplot as pltfrom datetime import datetimeimport randomt0 = datetime.now()x_data = np.ran...原创 2018-10-25 15:21:17 · 660 阅读 · 0 评论 -
使用插值方法(scipy.interpolate)和二维数据构造一元函数
通常情况下,当拥有较多数据点时,可构造具有某些特性的带未知参数的函数,采用拟合方法来近似出表达这些数据规律的函数。但当数据点在待求空间中分布较稀疏时,或对待求函数的形态特征、连续性光滑性等已知时,可采用插值(或分段插值)构造出表达该规律的函数。scipy.interpolate中最常用和全面的一维插值方法是interp1d,但本文采用了CubicSpline,因其可以自定义插值函数起止点处的一阶导数或二阶导数(bc_type),使函数形态特征在某些局部更可控。import numpy as npfro原创 2021-04-28 14:42:10 · 1437 阅读 · 2 评论 -
一些常用的判断预测、拟合、回归的精度评价函数和相关性评价函数
import pandas as pdimport matplotlib.pyplot as pltimport numpy as npimport randomimport seaborn as snsfrom sklearn import metricsfrom statsmodels.tools import eval_measuresfrom scipy import statsimport pandas as pdfrom warnings import filterwarni.原创 2020-11-04 15:31:32 · 6488 阅读 · 2 评论 -
用借款方实际付出的手续费(或利息)计算真实的手续费率(或利率),或快速估算年利率
真实的手续费率(或利率)需要用借款方实际付出的手续费(或利息)来计算;如果有需要额外计算资金时间价值的还款方式(如在借款时一次性付清利息)或借款方式(如每期定时借款),还需将所有资金折算到同一时间价值模型中,才可比较和计算资金的真实价值。原创 2018-10-16 18:12:03 · 2715 阅读 · 0 评论 -
拟合函数未知数个数与用于拟合的序列点数的关系
以二元一次函数为例(a、b为未知数),当序列点数为1个点或2个点,即序列点数小于拟合函数未知数个数或大于等于拟合函数未知数个数时,用最小二乘法构造目标函数,求其驻点,得到最优的拟合函数系数:从上图中可以看到,当拟合函数有两个系数,而只有一个点可用于拟合时,虽然在求解最优系数时,仍有两个偏导数方程,但这两个方程线性相关,其实只有一个方程是有效的,因为只有一个点进行拟合,所以这时系数a、b无解或有无穷多解。当有两个点用于拟合时,这两个方程线性无关,系数矩阵行满秩,这时a、b有唯一解。下面以pyth.原创 2020-07-02 12:00:12 · 2008 阅读 · 0 评论 -
平均绝对误差(MAE)、对数平均绝对误差(LMAE)、指数平均绝对误差(EMAE)用法的不同与相似之处
import numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom scipy.stats import pearsonrfreq = 'D't0 = '2020-01-01'data_length = 7*10num_ts = 3period = 7fit_series, origin_series = [], []time_ticks = np.array(range(data_length))ind原创 2020-09-18 17:54:24 · 12303 阅读 · 0 评论 -
numpy.random.seed()用法详解
numpy.random.seed()中每一个数字代表一种随机数生成规则,当种子数确定后,每次调用numpy.random下的随机函数时,都会根据该种子数对应的规则,依次生成随机数或随机数组;当第二次指定相同的种子数时,每次调用numpy.random下的随机函数,会依次生成跟上一次指定种子数再调用随机函数时,相同的随机数或随机数组,即依次一一对应;当不指定种子数时,每次调用numpy.random下的随机函数,numpy会随机指定一个种子数,即随机地采用该种子数所对应的规则,生成随机数或随机数组。下面给原创 2020-09-16 11:46:59 · 3246 阅读 · 0 评论 -
在python的编译环境中显示matplotlib绘图时所需的中文和负号
修改源文件,亲测可用,最全面。在python或anaconda的安装目录中找到配置文件: %Home%\Lib\site-packages\matplotlib\mpl-data\matplotlibrc (如我用的开发环境是pycharm,我的配置文件在D:\Program Files\anaconda\Lib\site-packages\matplotlib\mpl-data),用任...原创 2018-10-28 17:58:51 · 281 阅读 · 0 评论