自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(218)
  • 资源 (2)
  • 论坛 (4)
  • 问答 (2)
  • 收藏
  • 关注

原创 洛谷题目AC代码总结(未完成,日更题目中)

【入门1】顺序结构P1001 A + B Problem【入门2】分支结构【入门3】循环结构P1009 阶乘之和P2669 金币【入门4】数组P2615 神奇的幻方P1319 压缩技术【入门5】字符串【入门6】函数与结构体【算法1-1】模拟与高精度P2036 PerketP1482 Cantor表(升级版)【算法1-2】排序P1104 生日【算法1-3】暴力枚举【算法1-4】递推与递归P2437 蜜蜂路线...

2020-09-24 15:14:03 138

原创 Linux下dcm2niix使用

在终端输入dcm2niix就可以查看各个参数是什么意思,这里我用到的是-f -o ,分别用于覆盖原来的文件和将.nii.gz .json放到指定目录下。使用dcm2niix有两种办法1、在终端进行dcm2niix使用,这种办法需要在要进行.dcm转化的文件夹中打开终端使用即可,如果要确定路径、文件名则直接进行输入即可。2、在python代码中使用dcm2niix这种办法需要先import os ,再使用os.chdir(ogr_dir)命令讲当前的工作目录转化为.dcm文件所在的文件夹。然后再使用

2021-06-09 16:51:04 9

原创 深度学习介绍

文章目录什么是深度学习硬件数据算法什么是深度学习深度学习用于计算机视觉的两个关键思想,即卷积神经网络和反向传播,在 1989 年就已经为人们所知。长短期记忆(LSTM,long short-term memory)算法是深度学习处理时间序列的基础,它在 1997 年就被开发出来了,而且此后几乎没有发生变化。那么为什么深度学习在 2012 年之后才开始取得成功?这二十年间发生了什么变化?总的来说,三种技术力量在推动着机器学习的进步:硬件数据集和基准算法上的改进由于这一领域是靠实验结果而不是理论指

2021-06-08 13:20:49 26

原创 力扣--将有序数组转化为平衡二叉搜索树

Given an integer array nums where the elements are sorted in ascending order, convert it to a height-balanced binary search tree.A height-balanced binary tree is a binary tree in which the depth of the two subtrees of every node never differs by more than

2021-06-06 13:04:40 9

原创 二叉树的层序遍历

Given the root of a binary tree, return the level order traversal of its nodes’ values. (i.e., from left to right, level by level).Example 1:Input: root = [3,9,20,null,null,15,7]Output: [[3],[9,20],[15,7]]Example 2:Input: root = [1]Output: [[1]]Exam

2021-06-06 12:02:59 8

原创 对称二叉树

Given the root of a binary tree, check whether it is a mirror of itself (i.e., symmetric around its center).Example 1:Input: root = [1,2,2,3,4,4,3]Output: trueExample 2:Input: root = [1,2,2,null,3,null,3]Output: falseConstraints:The number of nodes

2021-06-06 12:00:46 9

原创 力扣--有效的数独

Determine if a 9 x 9 Sudoku board is valid. Only the filled cells need to be validated according to the following rules:Each row must contain the digits 1-9 without repetition.Each column must contain the digits 1-9 without repetition.Each of the nine 3

2021-06-06 11:57:54 8

原创 力扣--合并两个有序数组

Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.The number of elements initialized in nums1 and nums2 are m and n respectively. You may assume that nums1 has a size equal to m + n such that it has enough space t

2021-05-26 22:43:16 29

原创 力扣--存在重复元素II

Given an integer array nums and an integer k, return true if there are two distinct indices i and j in the array such that nums[i] == nums[j] and abs(i - j) <= k.Example 1:Input: nums = [1,2,3,1], k = 3Output: trueExample 2:Input: nums = [1,0,1,

2021-04-07 15:58:01 12

原创 力扣--哈希表--两个列表的最小索引总和

Suppose Andy and Doris want to choose a restaurant for dinner, and they both have a list of favorite restaurants represented by strings.You need to help them find out their common interest with the least list index sum. If there is a choice tie between.

2021-04-02 18:10:34 8

原创 力扣--两数之和

Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.You may assume that each input would have exactly one solution, and you may not use the same element twice.You can return the answer

2021-04-01 21:15:35 12

原创 力扣---快乐数

快乐数挺快乐Write an algorithm to determine if a number n is happy.A happy number is a number defined by the following process:Starting with any positive integer, replace the number by the sum of the squares of its digits.Repeat the process until the number

2021-04-01 20:39:46 12

原创 力扣---两个数组的交集

Given two integer arrays nums1 and nums2, return an array of their intersection. Each element in the result must be unique and you may return the result in any order.题目:给定两个数组,寻找两个数组中相同的元素,如果该元素多次出现只需要记录一次即可,输出结果的顺序可以与样例中给的顺序不同。Example 1:Input: nums1 =

2021-04-01 18:51:41 13

原创 力扣 设计哈希集合

自己动手写一写发现收获其实还蛮大的。#define MAXLENGTH 10000class MyHashSet {private: vector<int> set[MAXLENGTH]; /*返回键的下标位置*/ int getIndex(int key){ return key%MAXLENGTH; } /*查找key对应的value*/ int getPos(int key,int index){ fo

2021-04-01 10:33:38 11

原创 使用逻辑回归进行肿瘤预测

文章目录数据集数据描述导入相关的包数据处理数据读取缺失值处理划分数据集特征工程机器学习模型评估数据集https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin下载.data文件即可数据描述(1)699条样本,共11列数据,第一列用语检索的id,后9列分别是与肿瘤相关的医学特征,最后一列表示肿瘤类型的数值。(2)包含16个缺失值,用”?”标出。导入相关的包import pandas as

2021-03-31 11:53:32 77

原创 预测波士顿房价

使用随机梯度下降(线性拟合里面的一种算法)进行波士顿房价预测,最后使用均方误差进行模型的评判代码:from sklearn.model_selection import train_test_splitfrom sklearn.datasets import load_bostonfrom sklearn.preprocessing import StandardScalerfrom sklearn.linear_model import SGDRegressorfrom sklearn.met

2021-03-30 23:11:50 15

原创 预测facebook签到位置

文章目录项目描述数据集介绍学习目标:熟练掌握KNN、数据集划分、交叉验证、网格搜索这些内容。项目描述本次比赛的目的是预测一个人将要签到的地方。 为了本次比赛,Facebook创建了一个虚拟世界,其中包括10公里*10公里共100平方公里的约10万个地方。 对于给定的坐标集,您的任务将根**据用户的位置,准确性和时间戳等预测用户下一次的签到位置。**数据被制作成类似于来自移动设备的位置数据。 请注意:您只能使用提供的数据进行预测。数据集介绍数据集:文件说明 train.csv, test.cs

2021-03-30 13:58:37 29

原创 力扣链表合并两个有序链表

Merge two sorted linked lists and return it as a sorted list. The list should be made by splicing together the nodes of the first two lists.应该考虑到链表是否为空的情况,代码如下:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNod

2021-03-29 17:35:12 12

原创 力扣链表:两两交换链表中的节点

写了一些关于力扣的链表的题,说明一下需要注意的地方:1、力扣链表无头结点,所以想要正常操作时需要自己添加一个头结点 2、最后一个节点的next指针指向NULL代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) :.

2021-03-27 14:34:41 11

原创 链表:寻找中间结点

代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* middleNode(ListNode* head) { ListNode *chaste.

2021-03-27 10:00:55 10

原创 力扣初级算法--数组 加一

题目:给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入:digits = [1,2,3]输出:[1,2,4]解释:输入数组表示数字 123。示例 2:输入:digits = [4,3,2,1]输出:[4,3,2,2]解释:输入数组表示数字 4321。示例 3:输入:digits = [0]输出:[1]提示:1 <= di

2021-03-25 18:07:27 14

原创 力扣初级算法题 旋转数组的讨论

文章目录题目描述题目描述给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。这个问题比较好想,我们就进行模拟就好了:用两个数组进行,一个数组负责从中取数,另一个数组负责存储变化后的数字,当一次变化完成后,数组进行相互赋值操作,该算法时间复杂度为o(k*n),空间复杂度为o(n),那么运行的时间会非常长,时间复杂度和空间复杂度都比较高,那么我们能不能用什么方法进行降低时间复杂度呢?改进:使用两个数组,并且只进行一次赋值运算操作,即:代码:class Solution {pub

2021-03-24 11:24:24 16

原创 翻转链表

题目描述输入一个链表,反转链表后,输出新链表的表头。示例1输入{1,2,3}返回值{3,2,1}思路遍历链表,使用头插法建立新的链表,不过需要注意一点,题目中所给的链表没有头结点。/*struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }};*/class Solution {public: List...

2021-03-21 10:48:08 12

原创 初级算法-数组-删除排序数组中的重复项

文章目录题目如下:题目思路:完整的代码为:题目如下:给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝in

2021-03-17 08:54:15 94

原创 NLTK自然语言处理工具包的使用

该工具包包括:读取数据、清理数据、使用模型导入所需要的包#导入所需要的包import numpy as npimport matplotlib.pyplot as pltimport pandas as pd导入数据dataset = pd.read_csv("Restaurant_Reviews.tsc",delimiter = '\t',quoting = 3)其中使用的数据后缀为tsv而并非csv,这是由于csv是以逗号作为分隔符,tsv是以tab作为分隔符,而大多数情况下我们无法

2021-03-09 21:28:28 61

原创 隐变量模型和EM算法

什么是隐变量模型?隐变量模型是去学习特征最好的表示方法数据表示也叫表示学习,表示学习的核心在于:对于图片,我们用像素表示;对于人,使用人的特征:工资、年龄、性别。这些特征是可以理解的。 文本中的单词,都是容易理解的特征。那么这些特征是最好的去表示物品的方法吗?从数学/AI角度:不是,因为有很多冗余的特征+有噪音特征+不需要的特征...

2021-03-09 09:41:20 51

原创 HMM中的F B 算法

Forward/Backward 算法:分为forward算法、backward算法,算法目标:得出complete o(z|x)由贝叶斯定理可得:Forward算法详解:backward算法详解:目标:将该问题拆分为更小的子问题通过边缘化的性质,可以得到:即:...

2021-03-09 09:19:26 48

原创 HMM中的inference问题

inference问题:给定θ,即给定 θ = (A,B,π)和x ,能否推出Z?如下图所示:方法一:穷举法将所有的可能的z的值进行罗列。由于A和B是已知的,也就是每个状态转移的概率是知道的,那么下面这个式子:P(z1)p(z2|z1)...p(zn|zn_1)*p(x1|z1)p(x2|z2)...p(xn|zn)是可以得到计算结果的,将所有的概率值算出来,并且值最大的作为结果即可。但是可能性太多了,而且可能性的罗列是指数级的,所以不使用该方法。方法二:Viterbi算法该算法的本质为

2021-03-08 21:31:40 21

原创 HMM里面的参数介绍

当我们讨论HMM里面参数的时候,通常Zi为离散型变量(为了好罗列Zi的)我们通常为了方便将变量进行标记,如下图所示:其中:参数A:代表状态的转移矩阵,大小为mm。i,j 表示为:某一个z前面是i后面是j的概率是多少参数B:用于生成观测值 (Emission),大小为mm i,j表示再i的状态下生成j的概率是多少。如果是连续型,则用GMM进行参数π:π1+π2+π3+…+πn = 1HMM模型中的两大问题:问题1:即inference和decoding问题2:分为以下两种情况(1)c

2021-03-08 20:12:28 117

原创 HMM模型介绍

时序模型:数据会随着时间的改变二进行改变,比如温度、说话等。HMM模型是一个时序模型,因为是个时序模型所以每时每刻都有一个观测值。下图所示:Z为隐式变量,X为已知的观测值。扔不均衡硬币有两枚硬币A和B,这两枚硬币正反面概率不一样,我们记A和B各自出现正面的概率分别为u1和u2。现在小明进行扔硬币,我进行结果的观测,我跟小明之间有东西挡着,互相看不见,观测结果如下图所示:那么就有两个问题:问题1:目前我们得到了观测序列,我们能否推出小明扔硬币的序列是什么?称为inference问题问题2:能够

2021-03-08 19:41:58 64

原创 时序模型

非时序数据:图片、特征、特征向量,就是说使用这些时数据维度不会进行改变 。时序数据:股票价格、文本、温度我们需要另一个模型去收集这些信息。

2021-03-08 17:47:19 23

原创 指代消解

解决一段文字中代词的指代。其实这类问题是一个经典的二分类问题,只需要判断0和1解决办法:1、最简单的办法:将代词指为离该代词最近的词2、基于有监督的学习方法。(1)、收集数据(2)、构造分类器(3)提取特征句法分析:理解一个句子,有两种方法:1、结构分析 主谓宾2、凭感觉 (基于语言模型)结构分析法:将句子的结构分为一颗语法树,该语法树以主语为树根,如下图所示:其中叶子结点称为:terminals 中间结点为inter node怎么从语法树中提取特征?根据父

2021-03-06 20:39:02 97

原创 实体统一算法

问题定义:给定两个实体,判断是否指向同一个实体?(本质:0和1 的问题)例如:str1 str2 是否统一实体?第一种办法:计算str1和str2之间的相似度,使用边际距离算法。第二种办法:基于规则的方法,通常用于地理名、公司名消除歧义。基于图的实体统一核心:计算A和B之间的相似度,即A的周围提取特征,B的周围提取特征,再计算A B 之间相似度怎么从图中生成特征?冲突中可以看出,我们可以提取如下特征:1、A节点本身的特征 2、A的度 3、与哪些节点相连? 同理得出B的特征

2021-03-06 15:00:06 67

原创 实体消歧 Entity Disambiguiation

实体消歧本质在于一个词可能有多个意思,也就是再不同的上下文中所表多钱啊的含义不太一样。例如:小米、苹果每个实体都有实体库,用于存储各种意思,如下图所示:实体消歧算法如下图所示:需要判断跟哪个意思接近,即实体相似度哪一个较高。方法:需要将句子与解释的意思转化为向量表示,核心问题:怎么提取特征并且转化为向量?1、要提取多少个字符串?2、将提取的字符串转化为向量。3、进行相似度计算...

2021-03-05 21:13:50 75

原创 信息抽取简介

从非结构化的文本中抽取出一些非常重要的、关键的、人们关心的数据 。核心店:挖实体+实体间的关系三元组表示(属于知识图谱范围):信息抽取为什么这么重要?1、问答系统。2、扩充原有的知识库。3、用于法律、金融领域一些关系展示:Ontological RelationIS-AInstance-of例如:开源的知识库:关系抽取方法介绍:当数据多的时候就不用第一种方法了。...

2021-03-02 20:40:44 45

原创 命名实体技术

简历分析:抽取有用分析。搭建ENR分类器1、定义实体种类。2、准备训练数据.3、训练ENRNER方法:利用规则(比如正则)、投票模型、利用分类模型(非时序 模型:逻辑回归、SVM;时序模型:HMM)基于规则的方法:用正则的办法写一些规则或者利用一定定义好的完整的词库,最后就是利用人工的办法。基于投票的方法:统计每个单词的实体类型,记录针对每个单词出现概率最大的实体模型。例前三句话中讲London划分为GEO,第四句话划分为location。那么再出现London这个单词那么它为GEO的可能性.

2021-03-02 17:52:25 22

原创 线性svm缺点以及解决办法的讨论

线性SVM缺点:线性SVM是做不到的,实际上的决策边界:怎么解决非线性模型:1、利用非线性模型-----神经网络2、把数据映射到高纬度的空间,在高纬度空间中学习一个线性模型数据映射到高维空间方法:将特征做加减乘除平方等方法获得更多的特征但是这种方法需要耗费大量时间:1、转化为高纬度模型2、高维度空间建立模型解决办法:kernel tack...

2021-02-28 17:14:30 56

原创 线性分类器

线性回归:线性分类器介绍:线性分类器图片如下图所示,有两堆数据,绿色和红色,以及有三条线将它们分开,我们需要从这三条线中选择一条线,那么选择哪一条线?这三条线准确率都是100%,那么选择哪条线?如果选择第一条线,那么如果数据有点杂音的话就不在那么准确,而且也能看出来1有点过拟合,3同理,所以我们选择第二条线。接下来解释为什么选择第二条线:从下图可以看出,我们以第二条线向这两对数据做平行线,即途中绿色虚线我们定义margin为这两条绿色线的距离,距离越大那么我们区分这两对数据的准确是不是也也越大

2021-02-28 11:10:48 31

原创 梯度下降算法的复杂度

与其它一般的算法并不一样,因为梯度下降是迭代算法,也跟初始化的值有关系,也跟步长有关。那么是否能比较各个算法之间的复杂度呢?直观方法:每个方法都跑一下。核心:需要多少次迭代?方法:收敛分析...

2021-02-27 22:56:23 260

原创 优化以及实例

AI问题 = 模型+优化优化是使用一些工具进行解决(SGD、Adm等各种算法进行优化),那么怎么选择优化算法?将得到的模型和问题,能够明确知道属于哪些问题,从而选择正确的方法。并不是使用算法就好了,也要加一些东西:比如正则化。objective function 目标函数,由目标函数分类,选择相应的优化算法全局最优解和局部最优解,如果是凸函数,那么找到的姐是全局最优解,如果不是凸函数找到的是局部最优解,此时想方设法得到最好的局部最优解。non-convex问题很难解决,解决办法:改变数学公式得到

2021-02-27 15:04:26 25 1

shell_final.zip

本代码中包含shell中一些命令的实现,各个命令由一个主函数进行连接,没有写shell界面,直接用ubuntu的c++编辑器即可运行。

2020-04-12

codeblocks 13:12

压缩文件,将文件解压后点击install应用程序,然后一直点击next直到finish。codeblocks就好了。

2018-05-01

用DFS寻找相同油田的题,acm上面的

发表于 2017-07-17 最后回复 2017-07-21

杭电 1003 max sum

发表于 2017-05-27 最后回复 2017-07-16

杭电的水题求绝对值

发表于 2017-05-21 最后回复 2017-05-27

杭电 求绝对值

发表于 2017-05-21 最后回复 2017-05-21

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

TA关注的人 TA的粉丝

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