- 博客(52)
- 收藏
- 关注
原创 【c++】类中成员函数和成员变量的存储
1. 非静态成员变量,属于类的一部分,sizeof(类名)的时候会包括进去2. 静态成员变量,不属于类的一部分,不会影响类的大小3. 成员函数,都不属于类的一部分4. 空类大小为1B
2024-03-07 14:02:23 342
原创 【c++】深拷贝和浅拷贝
浅拷贝:比如有对象1和对象2,对象2是对象1的拷贝(浅拷贝),对象2的所有值都与对象1相同,并且对象2共用对象1中指针所指的堆区变量这时候面临的问题就是堆区内存的重复释放,对象2先释放时,其指针所指的堆区释放,轮到对象1释放时,其指针所指堆区已经为空,故不可重复释放解决上述问题的方法是用深拷贝深拷贝:对象2的所有值都与对象1相同,并且对象2会在堆区另外开辟一个空间来存放与对象1相同的变量值
2024-03-06 11:47:05 778
原创 【c++】构造函数调用规则
1.在创建一个类时,C++编译器会给每个类都添加至少如下3个函数:(1)默认构造函数 (空实现)(2)析构函数 (空实现)(3)拷贝构造函数 (值拷贝)2.如果写了有参构造,编译器将不再提供默认构造,但依然提供拷贝构造3.如果写了拷贝构造,编译器将不再提供其他构造函数
2024-03-06 11:06:01 352
原创 OpenGL学习笔记1:你好窗口
本章开始opengl的学习,这是我的学习笔记,记录下来方便复习,也希望能为其他要学习opengl的小伙伴带来参考。1.2.本节我们将学习创建一个图形窗口,操作系统使用Win10。首先直接上代码,后面再解释每条语句的意思。
2023-01-13 14:40:17 172
原创 数据分析笔记5:建模评估
我们采用sklearn这个库来进行建模和评估1.分割训练集和测试集先来简单介绍一下数据分割的函数:train_test_split,资料来源于sklearn的官方文档X_train,X_test,y_train,y_test=sklearn.model_selection.train_test_split(train_data,train_target, test_size=None,train_size=None, random_state=None, shuffle=True, stratify
2021-08-25 20:38:03 319
原创 数据分析笔记4:数据可视化
1.可视化展示泰坦尼克号数据集中男女中生存人数分布情况(用柱状图)sex=data.groupby('Sex')['Survived'].sum()sex.plot.bar()plt.title('survived_count')plt.show()2.可视化展示泰坦尼克号数据集中男女中生存人与死亡人数的比例图group=data.groupby(['Sex','Survived'])['Survived'].count().unstack().plot(kind='bar',stacked=
2021-08-21 12:36:55 428
原创 数据分析笔记3:数据重构
1.数据合并(DataFrame)1.1 使使用concat方法:将数据train-left-up.csv和train-right-up.csv横向合并为一张表,并保存这张表为result_up)#先把两张表放进列表里,再用concat函数list=[data_left_up,data_right_up]result_up=pd.concat(list)result_up.head(3)1.2 将train-left-down和train-right-down横向合并为一张表,并保存这张表为r
2021-08-21 09:58:38 246
原创 数据分析笔记2:数据清洗及特征处理
1.缺失值观察#方法一:data.isnull().sum()#方法二:data.info()#方法三:data[['Age','Cabin','Embarked']].head(3)2.缺失值处理#方法一:data[data['Age']==None]=0#方法二:data[data['Age'].isnull()]=0#方法三:data[data['Age'] == np.nan] = 0data.isnull().sum()#方法四:data.dropna(
2021-08-18 21:13:50 136
原创 数据分析笔记1:Pandas的使用
本文采用的例子:kaggle上的泰坦尼克号预测一.1.载入数据import pandas as pddata=pd.read_csv("C:/Users/45168/Desktop/hands-on-data-analysis-master/第一单元项目集合/train.csv")2.每1000行为 一个数据模块,逐块读取chunker=pd.read_csv('C:/Users/45168/Desktop/hands-on-data-analysis-master/第一单元项目集
2021-08-17 10:26:12 277
原创 李宏毅《机器学习》笔记7:一点小总结
至此,这门课的笔记一共更新了6期,我们分别讲到了:● 机器学习是什么?● 回归模型● 梯度下降法求最优解● 深度学习简介● 反向传播机制● 自适应学习率● 卷积神经网络我们知道了机器学习的本质其实就是找一个函数,我们对其输入一些值,从中返回另一些值,可以是分类结果,也可以是预测数据等等。最先介绍的,也是比较简单直白的就是回归模型,回归模型分为线性回归与非线性回归,具体来说也分一元与多元回归。我们引入损失函数,通过梯度下降法,求出最优解的模型参数,确定模型。之后我们也简单介绍了深度学习中的全连
2021-07-25 19:11:17 260
原创 李宏毅《机器学习》笔记6:卷积神经网络
今天我们重点介绍卷积神经网络,即CNN。CNN架构在图像识别领域,CNN是这样工作的:首先我们输入一张猫猫的图片,这张猫图可通过卷积层的运算,进入Max Pooling,再把输出结果作为下一个卷积层的输入,再进入Max Pooling,以此类推,这取决于你一开始设定CNN有几层。最终我们得到影像辨识的结果。。。。Convolution我们假定现在的input是一张6x6的图,而且这张图仅仅是黑白图,故每个像素点只用1,0即可代表。在卷积层中,其实对应的由一组filter组成,这里的filter可
2021-07-23 20:57:51 241 2
原创 李宏毅《机器学习》笔记5:自适应学习率与分类
自适应学习率:今天介绍一种学习率调整的技术:自适应学习率。相比前两章里提到的,利用均方根来对学习率进行调整,这里利用一种更新的方法来控制学习率,称为RMSProp,具体的数学过程如下:我们只需要对参数阿尔法进行调整,便可间接的调整学习率,从而控制下降步长。论文参考:https://arxiv.org/pdf/1412.6980.pdf下图是利用均方根调整学习率,与自适应学习率的方法比较图:如上面两张图所示:图中的叉叉表示梯度下降的最低点,但不论我们如何调整学习率,也无法让其达到最低点。
2021-07-21 21:06:31 774
原创 李宏毅《机器学习》笔记4:深度学习
深度学习发展史:1958: Perceptron (linear model)1969: Perceptron has limitation1980s: Multi-layer perceptronDo not have significant difference from DNN today1986: BackpropagationUsually more than 3 hidden layers is not helpful1989: 1 hidden layer is “good e
2021-07-18 11:21:19 158
原创 李宏毅《机器学习》笔记3:梯度下降详解
上一章我们讲到,在做回归的时候,要对损失函数利用梯度下降的方法来求得最佳的参数以确定模型,本章将详细介绍梯度下降的原理和细节。先来简单复习一下梯度下降,在求线性模型中的w和b值时,要求loss function尽可能小,于是我们做如下的迭代计算:{wi+1=wi−η∂L∂W∣w=wi,b=bibi+1=bi−η∂L∂b∣w=wi,b=bi\left\{ \begin{array}{l} w_{i+1}=w_i-\eta \frac{\partial L}{\partial W}|_{w=w_i,b=
2021-07-16 18:26:34 296
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人