自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (1)
  • 收藏
  • 关注

原创 函数实现将 DataFrame 数据直接划分为测试集训练集

 虽然 Scikit-Learn 有可以划分数据集的函数 train_test_split ,但在有些特殊情况我们只希望它将 DataFrame 数据直接划分为 train, test 而不是像 train_test_split 返回四个值。这里写了一个类似功能的函数:import numpy as npimport pandas as pdfrom sklearn.utils import...

2019-08-17 09:32:59 6817

原创 机器学习|线性回归三大评价指标实现『MAE, MSE, MAPE』(Python语言描述)

对于回归预测结果,通常会有平均绝对误差、平均绝对百分比误差、均方误差等多个指标进行评价。这里,我们先介绍最常用的3个:平均绝对误差(MAE)就是绝对误差的平均值,它的计算公式如下:MAE(y,y^)=1n(∑i=1n∣y−y^∣)MAE(y,\hat{y}) = \frac{1}{n}(\sum_{i = 1}^{n}\left | y - \hat{y} \right |)MAE(y,...

2019-01-04 12:38:34 22007 7

原创 [动态规划] 矩阵链乘法

讲解: 个矩阵相乘时, 为 行 列的矩阵,以 为例进行分析,这些矩阵的乘积有多种计算顺序。举个例子,我们按习惯的从左到右的顺序进行计算时可以写作 ,从左到右计算时可以写作 。除此之外还有 等等,计算的顺序多种多样。这些计算顺序得出的结果(矩阵链乘积)完全相同,但不同顺序下的 “ 乘法运算次数 ” 会有所差异。处理矩阵链乘法问题时,如果检查所有可能的计算顺序,那么算法的复杂度将达到 ...

2018-08-10 18:09:09 5964 4

原创 一文完成 Windows Terminal 设置与 zsh 安装【非WSL】

为 Windows Terminal 添加标签页添加 Anaconda 标签页在settings.json文件中的list列表中添加设置项:{ // Make changes here to the cmd.exe profile. "guid": "{0caa0dad-35be-5f56-a8ff-afceee452369}", "name": "Anaconda", "icon": "D:/laugh/Programs/Anaconda3/Menu/anaconda

2022-01-11 15:14:44 2379 1

原创 Ubuntu18.04 内核升级

查看当前版本 在终端输入以下命令并回车 uname -sr 可以发现当前内核为 Linux 4.15.0-88-generic查看目前最新的稳定内核 访问 The Linux Kernel Archives, 网站上黄色按钮的版本为当前最新的稳定版本。(下图为 5.5.9)正式更新 打开 Kernel Ubuntu 选择 5.5.9 版本 点击进入页面,根据不...

2020-03-17 14:54:59 2268

原创 基于 Keras 实现图像风格转移

 Style Transfer 这个方向火起来是从2015年Gatys发表的Paper A Neural Algorithm of Artistic Style(神经风格迁移) , 这里就简单提一下论文的主要思想。论文概述  Gatys这篇论文的核心思想就是 —— 图片的内容和风格是可以分离的,可以通过神经网络的方式,将图片的风格进行自由交换。 如果内容和风格是可以分离的,那么风格的迁移即可...

2019-04-17 13:44:49 774

转载 矩阵分解在推荐系统中的应用及实践

完整代码地址

2019-04-09 21:59:46 386

原创 线性回归之梯度下降详解

在了解梯度下降(Gradient Descent)之前,我们先要知道有关线性回归的基本知识,这样可以进一步的加深对梯度下降的理解,当然梯度下降(Gradient Descent)并不单单只能进行回归预测,它还可以进行诸如分类等操作。关于线性回归的具体讲解本文不详细涉及,只简单列出几个相关公式。(关于线性回归可以看这篇

2019-03-12 08:42:51 11087 1

原创 梯度下降法实现(Python语言描述)

原文地址:传送门import numpy as npimport matplotlib.pyplot as plt%matplotlib inlineplt.style.use(['ggplot'])当你初次涉足机器学习时,你学习的第一个基本算法就是 梯度下降 (Gradient Descent), 可以说梯度下降法是机器学习算法的支柱。 在这篇文章中,我尝试使用 pythonpyt...

2019-03-09 15:10:06 795 3

原创 阿里云服务器ECS Ubuntu16.04 + Seafile 搭建私人网盘 (Seafile Pro)

首先给出 Seafile 专业版的下载地址(Linux):

2019-01-24 10:33:21 2053 1

原创 阿里云服务器ECS Ubuntu16.04 初次使用配置教程(图形界面安装)

第一次登陆服务器时,是这个样子的:在 login: 后输入 root , 会出现 Password:, 然后输入你的实例密码注意:你输入的密码是不会显示出来的输入成功后效果如下:然后依次输入下面的命令(期间需要手动确认三次):# 更新软件库apt-get update# 升级软件apt-get upgrade# 安装桌面系统apt-get install ubuntu...

2019-01-23 22:55:50 5701 4

原创 机器学习|线性回归算法详解 (Python 语言描述)

线性回归线性回归是一种较为简单,但十分重要的机器学习方法。掌握线性的原理及求解方法,是深入了解线性回归的基本要求。除此之外,线性回归也是监督学习回归部分的基石。线性回归介绍在了解线性回归之前,我们得先了解分类和回归问题的区别。首先,回归问题和分类问题一样,训练数据都包含标签,这也是监督学习的特点。而不同之处在于,分类问题预测的是类别,回归问题预测的是连续值。例如,回归问题往往解决:股...

2019-01-03 22:58:51 417 1

原创 一站式搭建 GitHub Pages 博客 (一)

本文将详细讲解如何快速搭建 GitHub Pages 博客页面关于博客主题,博客信息更改,上传文章等将会在 一站式搭建 GitHub Pages 博客 (二) 中进行详细讲解准备阶段注册 GitHub 账号安装 GitHub Desktop在 GitHub 建立名为 username.github.io 的仓库首先登陆 GitHub 账户,点击右上角的 ➕ ,选择New re...

2018-12-24 14:05:34 183

原创 Jekyll + NexT + GitHub Pages 主题深度优化

前言笔者在用 Jekyll 搭建个人博客时踩了很多的坑,最后发现了一款不错的主题 jekyll-theme-next,但网上关于 Jekyll 版的 Next 主题优化教程少之又少,于是就决定自己写一篇以供参考。本文仅讲述 Next (Jekyll) 主题的深度优化操作,关于主题的基础配置请移步官方文档。主题优化修改内容区域的宽度打开 _sass/_custom/custom.scs...

2018-12-24 13:38:14 1831 2

原创 机器学习术语表——Beta

机器学习术语表 Beta提示:你可以通过中文名称拼音首字母快速检索。C超参数|Hyperparameter在机器学习中,超参数是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。通常情况下,需要对超参数进行优化,给模型选择一组最优超参数,以提高学习的性能和效果。超平面|Hyperplane将一个空间划分为两个子空间的边界。例如,在二维空间中,直线就是一个超平面,在三维空间...

2018-11-13 09:41:55 951

原创 【数据结构】哈夫曼树的编码与译码

#include <stdio.h>#include <malloc.h>#include <string.h>typedef struct { char info; int weight; int parent, lchild, rchild;} HTNode, *HuffmanTree;typedef char* *HuffmanCod...

2018-11-05 23:09:02 7510 4

原创 【数据结构】图的基本操作——图的构造(邻接矩阵,邻接表),遍历(DFS,BFS)

邻接矩阵实现如下:/*主题:用邻接矩阵实现 DFS(递归) 与 BFS(非递归)作者:Laugh语言:C++*******************************************样例输出如下:请选择图的类型(a - 无向图, b - 有向图):a请输入总顶点数,总边数:8 9请依次输入点的信息:a b c d e f g h输入一条边依附的顶点及权值 (e...

2018-11-02 17:42:39 2252

原创 【干货】小白的机器学习干货 (更新)

下文的这些链接都是笔者在初学机器学习时的一些资源干货,其中有大部分需要科学上网才能浏览。维基百科机器学习 —— 维基百科Matrix calculus(矩阵求导)—— 维基百科最小二乘法 —— 维基百科线性回归 —— 维基百科多项式 —— 维基百科Mean squared error —— 维基百科逻辑回归 —— 维基百科梯度下降法 —— 维基百科KNN 算法...

2018-10-25 18:51:50 381

原创 Windows 10 安装 Git 与初次运行前的配置

Windows 10 安装 Git 与初次运行前的配置在 Windows 上安装初次运行 Git 前的配置用户信息文本编辑器检查配置信息获取 Git 仓库在现有目录中初始化仓库克隆现有的仓库在 Windows 上安装在 Windows 上安装 Git 也有几种安装方法。 官方版本可以在 Git 官方网站下载。 打开 http://git-scm.com/download/win, 下载会自动开...

2018-10-16 13:27:05 500

原创 【数据结构】顺序表实现十进制转换任意进制

/*& File : 进制准换 * Author : Laugh* Copyright: Laugh* 主题 :对于输入的任意一个非负十进制小数,打印输出与其等值的任意进制小数 * Date : 2018/10/14 */#include <stdio.h>#include <stdlib.h>#include &lt...

2018-10-14 11:34:10 1485

原创 【洛谷】P1067 多项式输出

原题链接:P1067 多项式输出题目分析:学长推荐的OJ网站 —— 洛谷,发现挺好用的还可以下载提交出错的数据。                  废话就不多说了,这道题属于基础题。提交出错主要是因为一些小细节不到位,这里就不一一赘述了,直接上代码吧!代码如下:#include <bits/stdc++.h>using namespace std;const i...

2018-09-07 12:17:42 251

原创 【初等排序】插入排序法详解

插入排序法插入排序法是一种很容易想到的算法,它的思路与打扑克时排列手牌的方法很相似。比如我们现在单手拿牌,然后要将牌从左至右,从小到大进行排序。此时我们需要将牌一张张抽出来,分别插入到前面已排好序的手牌中的适当位置。重复这一操作直到插入最后一张牌,整个排序就完成了。插入排序的算法如下:insertionSort(A, N) // 包含 N 个元素的 0 起点数组 A for ...

2018-08-24 15:58:00 316

原创 KMP算法解题模板(更新)

/*kmp算法的主要作用在于对next数组的运用,所以这里只给出next数组的模板性质1:对于每一个长度len的子串,该子串的最小循环节为len-next[len]性质2:kmp的next不断向前递归的过程可以保证对于每一个当前前缀,都有一段后缀与之对应*/#include <iostream>#include <cstring>#include <...

2018-08-21 11:24:12 251

原创 HDU 1754 I Hate It(线段数-单点更新)

原题链接:I Hate It题目分析:这个是线段树的基本操作——更新和查询,属于基础题,也就相当于一个模板吧,这里就不再多说了。代码如下:(PS:特别注意——输入输出用  不然会超时)#include <cstdio>#include <algorithm>#include <cmath>using namespace std;const...

2018-08-21 10:45:06 143

原创 POJ 2456 Aggressive cows(贪心 + 二分)

原题链接:Aggressive cows题目大意:农夫 建造了一座很长的畜栏,它包括  个隔间,这些小隔间依次编号为. 但是, 的  头牛们并不喜欢这种布局,而且几头牛放在一个隔间里,他们就要发生争斗。为了不让牛互相伤害。 决定自己给牛分配隔间,使任意两头牛之间的最小距离尽可能的大,那么,这个最大的最小距离是什么呢?题目分析:题意想要表达的是 把头牛放到个带有编号的隔间里,使得任意两头牛...

2018-08-17 16:33:14 193

原创 HDU 1213 How Many Tables (并查集)

原题链接:How Many Tables题目大意: 要邀请他的朋友们来参加他的生日聚会,这些朋友中有互相认识的,也有不认识的,若与认识,与认识,那么可以通过,与也可当作互相认识。互相认识的朋友才可以坐在一桌,给出他们之间的认识情况,问邀请这么多朋友需要多少桌?题目分析:这道题其实就是 POJ 2524 Ubiquitous Religions (并查集)的低配版,算是一道水题了。详细的思路...

2018-08-15 17:36:39 178

原创 POJ 2524 Ubiquitous Religions (并查集)

原题链接:Ubiquitous Religions题目大意:有  个学生,编号 ,每个学生最多有  个宗教信仰,输入  组数据,每组数据包含 ,表示同学  和同学  有相同的信仰,求在  名学生中最多存在多少种不同的宗教信仰。题目分析:典型的并查集模版题,这里就不详细叙述了。对算法本身不太了解的可以参考这篇文章:并查集算法详解代码如下:#include <iostream&...

2018-08-15 17:25:26 186

原创 HDU 1863 畅通工程 (并查集)

原题链接:畅通工程题目分析:典型的并查集模版题,这里就不详细叙述了。对算法本身不太了解的可以参考这篇文章:并查集算法详解代码如下:#include <iostream>#include <algorithm>#include <cstring>using namespace std;const int MAX = 1000;int fa...

2018-08-15 17:02:26 142

原创 POJ 1611 The Suspects (并查集)

原题链接:The Suspects题目大意:需要找  病毒感染者嫌疑人数,凡与感染者  号同学有同组关系的皆为嫌疑人。题目分析:基础并查集应用,算是一道模版题了。将所有同属一大组的同学合并,最后找出  号同学所在组的人数,即为嫌疑人数。补充:关于并查集的基本算法还不太了解的话,可以参考这篇文章:并查集算法详解代码如下:#include <iostream>#in...

2018-08-15 15:32:18 133

原创 并查集算法详解

并查集在计算机科学中,并查集是一种树型的数据结构,用于处理一些不交集()的合并及查询问题。有一个联合- 查找算法( )定义了两个用于此数据结构的操作:Find:确定元素属于哪一个子集。它可以被用来确定两个元素是否属同一子集。 Union:将两个子集合并成同一个集合。由于支持这两种操作,一个不相交集也常被称为联合-查找数据结构()或合并-查找集合()。其他的重要方法,,用于建立单元素集合...

2018-08-15 10:38:51 712

原创 POJ 2387 Til the Cows Come Home (最短路径 模版题 三种解法)

原题链接:Til the Cows Come Home题目大意:有  个点,给出从  点到  点的距离并且  和  是互相可以抵达的,问从  到  的最短距离。 题目分析:这是一道典型的最短路径模版题,需要注意的是:使用dijkstra算法求解需要考虑有重复边问题,而使用bellman-ford算法 和 spfa算法 可以忽略这个问题。代码如下:// Dijkstra#in...

2018-08-14 16:47:41 585

原创 2018HPU暑期集训第四次积分训练赛 K - 方框 题解(图形打印)

 思路分析:题目已经明确透露了这道题的解法:就是画框。当 输入的边长  的话,就表示可以在内层继续嵌套一个方框。废话就不多说了,直接上代码吧!代码如下:#include <iostream>#include <algorithm>using namespace std;int n;char ch[105][105];int main() { ...

2018-08-13 18:45:51 158

原创 51 Nod 1134 最长递增子序列 (动态规划基础)

原题链接:1134 最长递增子序列题目分析:长度为  的数列  有多达  个子序列,但我们应用动态规划法仍可以很高效地求出最长递增子序列()。这里介绍两种方法。先考虑用下列变量设计动态规划的算法。这里设输入数列的第一个数为  。 一位数组, 为由  到  中的部分元素构成且最后选择了  的  的长度。 一位数组, 为由  到  中的部分元素构成且最后选择了  的  的...

2018-08-11 18:06:44 103

原创 51 Nod 1183 编辑距离 (动态规划基础)

原题链接:1183 编辑距离题目分析:这个最少的操作次数,通常被称之为编辑距离。“编辑距离”一次本身具有最短的意思在里面。因为题目有“最短”这样的关键词,首先我们想到的是 。是的,当  的距离为  的距离为  的时候,我们可以找到这样的操作次数的界限:把  中字符全删了,再添加  的全部字符,操作次数 。 把  中字符删或加成  个,再修改操作次数最多 。虽然,我们找到了这样的上界, ...

2018-08-11 17:14:51 126

原创 51 Nod 1006 最长公共子序列(LCS & DP)

原题链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1006题目分析:首先先知道LCS问题,这有两种: Longest Common Substiring —- 最长公共子串  Longest Common Sequence —- 最长公共子序列这两者的区别是:前者必须是原字符串中连续的一段,后者可...

2018-08-10 10:31:03 167

原创 51 Nod 1083 矩阵取数问题(动态规划)

原题链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1083题目分析:通过读题发现我们只能往右边或者下边走,意味着“不走回头路”,就是说矩阵里面每个位置最多只会经过一次。其实很多地方是“没有机会”经过的。比如我现在在第  行的第  列,不管之前走的路径是什么样子,则它左边和上边的位置都是不可能再走到的。也就是说...

2018-08-09 22:11:56 197

原创 01 背包问题的三种写法

不妨先用最朴素的方法,针对每个物品是否放入背包进行搜索:// 输入int n, W;int w[MAX_N], v[MAX_N];// 从第 i 个物品开始挑选总重小于 j 的部分int rec(int i, int j) { int res; if (i == n) { // 已经没有剩余物品了 res = 0; } els...

2018-08-08 17:34:36 710

原创 HDU 1009 FatMouse' Trade (贪心)

原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=1009题目大意:肥鼠准备了 磅的猫粮,准备和看管仓库的猫交易,仓库里装有他最喜爱的食物 豆。仓库有 个房间。第 间房包含了 磅的 豆,需要 磅的猫粮。肥鼠不必为了房间中的所有 豆而交易,相反,他可以支付 % 磅的猫粮去交换得到 % 磅的 豆。这里, 表示一个实数。现在他将这项任务分...

2018-08-08 15:28:44 452

原创 HDU 2041 超级楼梯 (斐波那契数列 & 简单DP)

原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2041题目分析:题目是真的水,不难发现规律涉及斐波那契数列,就直接上代码吧。代码如下:#include <iostream>#include <cstring>using namespace std;int t, n, num[40];int dp(in...

2018-08-07 21:25:45 151

原创 HDU 2044 一只小蜜蜂... (斐波那契数列)

原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2044题目分析:其实仔细读题就会发现其中的规律, 其中;这是一个典型的斐波那契数列。代码如下:#include <iostream>using namespace std;int t, a, b;long long num[50];long long dp(int ...

2018-08-07 21:18:29 174

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除