- 博客(6)
- 收藏
- 关注
转载 L1和L2正则化为什么能防止过拟合
其中C0为初始的代价函数,加号后面的为添加的l2正则化项,为所有参数w的平方和,除以训练集样本总数n。其中C0为初始的代价函数,加号后面的为添加的l1正则化项,为所有参数w的绝对值之和,除以训练集样本总数n。其中 α为学习率,sgn(w)为w的正负号,当w大于0会减去一个正项,使w减小;其中 α为学习率,因为为非负项,因此w的系数是小于1的,在迭代更新中,w会不断地减小。数据集中的噪声点往往需要比较大的w值来拟合,也就是说w越大,模型的曲线越“陡峭”,因而网络模型能够更好得拟合噪声点,但也引起了过拟合。
2023-04-18 15:55:32 214
原创 求二叉树中结点值为x的个数
int xNum(BTNode* bt, char x){ int lnum, rnum; if (bt == NULL) return 0; else { lnum = xNum(bt->lchild, x); rnum = xNum(bt->rchild, x); if (bt->data == x) return lnum + rnum + 1; else return lnum + rnum; }}
2020-08-13 09:25:34 2829
原创 求给定二叉树的结点数和叶子结点数以及双分支结点数
#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include "createTree.h"using namespace std;int nodeNum(BTNode * bt){ int lnum = 0, rnum = 0; if (bt == NULL) return 0; else { lnum = nodeNum(bt->lchild); rnum = nodeNum(bt->rch.
2020-08-12 11:26:49 810
原创 求二叉树后序序列中第K(K>=1)个结点的值
#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include "createTree.h"using namespace std;BTNode* findK(BTNode * bt, int x){ BTNode* l = NULL, * r = NULL; static int k = x; if (bt != NULL && k != 0) { l = findK(bt->lchild,.
2020-08-12 10:59:52 365
原创 求二叉树中序序列中第K(K>=1)个节点的值
#include <iostream>#include "createTree.h"using namespace std;BTNode* findK(BTNode* bt, int x)//返回第K个结点的地址{ BTNode* l = NULL, * r = NULL; static int k = x;//静态变量,只初始化一次 if (bt != NULL && k != 0) { l = findK(bt->lchi
2020-08-12 10:25:45 689
原创 求二叉树先序序列中的第K(K>=1)个节点的值
求二叉树先序序列中的第K(K>=1)个节点的值#include <iostream>#include "createTree.h"using namespace std;int k = 4;//全局变量存储k的值BTNode* findK(BTNode* bt){ BTNode* l = NULL, * r = NULL; if (bt == NULL) return NULL; else { k--; if (k != 0
2020-08-11 15:25:19 363
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人