自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

转载 20届秋招面试记录

字节跳动提前批-财经-算法一面1. 自我介绍2. 项目经历介绍3. 推导 logistic regression 的代价函数和梯度(???这问的都是啥啊... 是因为觉得我菜吗...)4. 一个有序数组,可能以某个位置为界,前后两部位置调换,求 O(logn) 的搜索没复习就去了,本来想去先感受一下大厂面试难度,结果全程紧张不在线,噼里啪啦说太多了。。。提前批...

2019-09-27 17:10:00 413

转载 EM 算法 Expectation Maximization

转载于:https://www.cnblogs.com/chaojunwang-ml/p/11588819.html

2019-09-26 09:09:00 205

转载 隐马尔可夫模型 Hidden Markov Model

隐马尔可夫模型概率图模型;有向图模型;生成模型讨论 HMM,从三个问题展开:evaluation(给定模型参数求观测序列)、learning(如何求模型参数)、decoding(给定模型和观测序列,求状态序列)evaluation直接计算法复杂度太高,用前向算法和后向算法优化。前向算法:后向算法learningEM算法求参数...

2019-09-23 12:04:00 232

转载 协同过滤 Collaborative Filtering

协同过滤 collaborative filtering人以类聚,物以群分相似度1. Jaccard 相似度定义为两个集合的交并比:Jaccard 距离,定义为 1 - J(A, B),衡量两个集合的区分度:为什么 Jaccard 不适合协同过滤?—— 只考虑用户有没有看过,没考虑评分大小2. 余弦相似度根据两个向量夹角的余弦值来衡...

2019-09-22 13:12:00 363

转载 内容推荐

用户画像 User Profile基于内容推荐离不开用户画像。在推荐系统中,并不以市场销售人员的第一视角去看待用户(绘制标签云图像或者若干统计学属性),用户画像应该给机器看而不是给人看。推荐系统在对匹配评分之前,要先对 user 和 item 都向量化才能进行计算,其中用户向量化的结果,就是 user profile。用户画像不是推荐系统的目的,而是构建推荐系统过程中的一个...

2019-09-21 23:01:00 162

转载 推荐系统中的基本问题

什么是推荐系统?1. 能做什么?  找出 user 和 item 之间的联系、预测未来 user 和 item 可能出现的连接(产生了某种关系:比如用户点击、购买、评论了物品;或者用户某些属性和物品的属性一致 ...)2. 需要什么?  需要已经存在的 user 和 item 之间的连接记录3. 怎么做?  预测用户评分和偏好(机器推荐和人工推荐)...

2019-09-19 21:53:00 280

转载 动态规划

动态规划 Dynamic Programming一种设计的技巧,是解决一类问题的方法dp遵循固定的思考流程:暴力递归 —— 递归+记忆化 —— 非递归的动态规划(状态定义+转移方程)斐波那契数列暴力递归,看上去很简洁def fib(n): return n if n <= 1 else fib(n-1) + fib(n-2)...

2019-09-17 16:52:00 269

转载 梯度提升树 Gradient Boosting Decision Tree

Adaboost + CART用 CART 决策树来作为 Adaboost 的基础学习器但是问题在于,需要把决策树改成能接收带权样本输入的版本。(need: weighted DTree(D, u(t)) )这样可能有点麻烦,有没有简单点的办法?尽量不碰基础学习器内部,想办法在外面把数据送进去的时候做处理,能等价于给输入样本权重。(boostrapping)...

2019-09-15 19:44:00 227

转载 剑指offer-二叉树

1. 平衡二叉树输入一棵二叉树,判断该二叉树是否是平衡二叉树。解:要么是一颗空树,要么左右子树都是平衡二叉树且左右子树深度之差不超过1 1 # class TreeNode: 2 # def __init__(self, x): 3 # self.val = x 4 # self.left = None 5 ...

2019-09-09 15:57:00 67

转载 决策树 Decision Tree

决策树的核心思想就是 if else,实现了 conditional aggregation,关键问题在于分裂的时候哪些特征在前哪些特征在后。从 ID3 开始使用熵(entropy)来作为决策选择的度量。决策树可以做分类,也可以做回归,是一种比较灵活的算法。主要包括 ID3、C4.5、CART,可以作为后续许多 ensemble 方法(例如 random forest 和 gradien...

2019-09-05 14:26:00 305

转载 GAN生成的评价指标 Evaluation of GAN

传统方法中,如何衡量一个generator ?—— 用 generator 产生数据的 likelihood,越大越好。但是 GAN 中的 generator 是隐式建模,所以只能从 P_G 中采样但没法根据 pdf 算 likelihood。一个方法是把从P_G 中采样得到的点当作是一个高斯分布的 mean,所有的 sample 都共享一样的 variance,然...

2019-09-03 20:49:00 209

转载 GAN在seq2seq中的应用 Application to Sequence Generation

Improving Supervised Seq-to-seq Model有监督的 seq2seq ,比如机器翻译、聊天机器人、语音辨识之类的 。而 generator 其实就是典型的 seq2seq model ,可以把 GAN 应用到这个任务中。RL(human feedback)训练目标是,最大化 expected reward。很大的不同是...

2019-09-03 16:39:00 805

转载 基于GAN的特征抽取 Feature Extraction by GAN

InfoGAN期望的是 input 的每一个维度都能表示输出数据的某种特征。但实际改变输入的一个特定维度取值,很难发现输出数据随之改变的规律。InfoGAN 就是想解决这个问题。在 GAN 结构以外,把输入 z 分成两个部分 c 和 z' ,然后根据 generated data x 来预测给到 generator 的 c 是什么,这里的ae 做的事情是 code-x-...

2019-09-03 09:03:00 1173

转载 提升GAN的技术 Tips for Improving GAN

Wasserstein GAN (WGAN)在一些情况下,用 JS散度来衡量两个分布的远近并不适合:  1. 数据是高维空间中的低维流形(manifold),两个分布在高维空间中的 overlap 少到可以忽略。    2. 由于 sampling 的局限性,即使两个分布之间真的存在一定的 overlap,但如果采样的数据不够多的话,可能实际上并不能体现出来。  ...

2019-09-02 16:47:00 210

转载 剑指offer-链表&数组

1.圆圈中最后剩下的数每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0...m-1...

2019-09-01 17:18:00 284

转载 剑指offer-字符串&数字规律

1. 表示数值的字符串请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。解:思考方向应该是把非法的情况列举出来,合法的情况太多了。这题比较繁琐。 1 class Sol...

2019-08-31 23:49:00 190

转载 剑指offer-递归和循环

1. 斐波那契数列解:没啥好说的了,直接上高效的滚动迭代解法。矩阵解法和特征根解法这里不讨论了。class Solution: def Fibonacci(self, n): # write code here if n <= 1: return n dp_0, dp_1 = ...

2019-08-31 15:04:00 84

转载 GAN的理论 Theory behind GAN

任务:想要找到一个高维空间中的分布 P_data(x),要在目标类别的区域,采样的概率是高的;在那个区域之外,probability是低的。但这个P_data(x)分布的具体形式(pdf)是不知道的,GAN 就是要找到这个数据分布。没有 GAN 怎么做生成?—— 极大似然估计  1. 从 P_data(x) 中 sample 一些数据作为训练数据  2. 借助一个含有未...

2019-08-28 22:36:00 274

转载 对抗生成网络 Generative Adversarial Networks

1. Basic idea基本任务:要得到一个generator,能够模拟想要的数据分布。(一个低维向量到一个高维向量的映射)discriminator就像是一个score function。 如果想让generator生成想要的目标数据,就把这些真实数据作为discriminator的输入,discriminator的另一部分输入就是generator生成的数据...

2019-08-27 23:27:00 516

转载 自编码器 Autoencoder

自监督模型训练一个ae的encoder,就能把code和object对应起来,获得code。给定一个code,decoder就能输出对应的object。Autoencoder存在什么问题?  因为作为训练数据的object是有限的,导致decoder实际上只能把训练过程中见过的code给还原成对应的object。如果随机给一些code,它不会生成训练集中没有见过的obje...

2019-08-27 23:26:00 143

转载 杂七杂八的题汇总

在对问题的解空间树进行搜索的方法中,一个结点有多次机会成为活结点的是?  回溯,dfs显然可以回退到track的上一个点。分支界限法就是bfs,一个节点就遍历一次。用俩个栈模拟实现一个队列,如果栈的容量分别是O和P(O>P),那么模拟实现的队列最大容量是多少?  2P+1。大容量的栈A用于存储,小容量的栈B用于缓冲。1~P元素入栈A,然后弹出再P~1入栈B,如果从...

2019-08-25 16:10:00 539

转载 Flood Fill

染色问题其实就是对图进行上下左右四个方向的dfs或者bfs,再加上一些条件判断并做一些操作。举例说明Leetcode #733. 图像渲染:有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标(sr, sc)表示图像渲染开始的像素值(行 ,列)和一个新的颜色值newColor,让你重新上色这幅图像。为了完成上...

2019-08-23 16:23:00 109

转载 Leetcode-并查集

200.岛屿数量https://leetcode-cn.com/problems/number-of-islands/给定一个由'1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。示例:输入:11000110000010000011输...

2019-08-20 23:12:00 263

转载 Leetcode-位运算

191. 位1的个数https://leetcode-cn.com/problems/number-of-1-bits/编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’的个数(也被称为汉明重量)。提示:请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是...

2019-08-19 10:28:00 136

转载 Leetcode-动态规划

70. 爬楼梯https://leetcode-cn.com/problems/climbing-stairs/假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定n是一个正整数。解:暴力,如果只有一阶,就只有一种方法;如果只有二阶,就只有两种方法。那么n阶的方法数就等于n-1阶和n-2阶...

2019-08-16 18:01:00 151

转载 Leetcode-二分

69. x的平方根https://leetcode-cn.com/problems/sqrtx/实现int sqrt(int x)函数。计算并返回x的平方根,其中x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。解:二分,不断枚举可能的结果,判断其平方和x的关系。这题二分的过程中考虑直接用浮点型来处理,比用整型处理更通用。...

2019-08-16 16:30:00 80

转载 Leetcode-剪枝

51. N皇后https://leetcode-cn.com/problems/n-queens/n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。给定一个整数 n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个明确的n 皇后问题的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。解:dfs...

2019-08-16 12:36:00 158

转载 Leetcode-dfs & bfs

102. 二叉树的层次遍历https://leetcode-cn.com/problems/binary-tree-level-order-traversal/给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。解:利用队列实现bfs,从根节点开始入队,如果左右子树不空,就入队。把每层的所有节点都遍历完了,下一层的最左节点再出队。(用for循环控...

2019-08-15 20:42:00 187

转载 Leetcode-贪心

122. 买卖股票的最佳时机iihttps://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售...

2019-08-15 17:26:00 101

转载 Leetcode-递归&分治

50. Pow(x, n)https://leetcode-cn.com/problems/powx-n/实现pow(x,n),即计算 x 的 n 次幂函数。说明:-100.0 <x< 100.0n是 32 位有符号整数,其数值范围是[−231,231− 1] 。解:直接调库函数,不过面试中肯定不可以。暴力,写个循环直接乘,O(...

2019-08-15 12:00:00 176

转载 Leetcode-树

98. 验证二叉搜索树https://leetcode-cn.com/problems/validate-binary-search-tree/给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。解:中序遍历二叉排序树,判断...

2019-08-14 23:17:00 80

转载 Leetcode-哈希表

136. 只出现一次的数字https://leetcode-cn.com/problems/single-number/给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?解:遍历数组,哈希表存。如果key在哈希表中,就直接pop出去,最后剩下的那...

2019-08-14 17:52:00 115

转载 Leetcode-栈&队列

20. 有效的括号https://leetcode-cn.com/problems/valid-parentheses/给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。解:如果来一个左括号,还不能判断是否合法...

2019-08-13 23:03:00 85

转载 Leetcode-数组&链表

常见双指针技巧用法,只总结思路,具体边界判定想不清楚的时候稍微画个图就行了1. 快慢指针判断链表是否含有环、环入口(快慢指针再次相遇即有环;再从头节点和快慢指针的相遇位置同速度向后,相遇点即为环入口)。2. 快慢指针找链表中点、倒数第k个元素(快指针到达 Null 时慢指针所处位置即为中点;快指针先走k步,然后和慢指针一起同速度向后,快指针到达 Null 时慢指针的位置就是倒数第...

2019-08-13 20:55:00 197

转载 LRU Cache & Bloom Filter

Cache 缓存1. 记忆2. 空间有限3. 钱包 - 储物柜4. 类似背代码模板,O(n) 变 O(1)LRU Cache缓存替换算法1. Least Recently Used(最近最少使⽤的淘汰掉)2. Hash Table + Double LinkedList(哈希表 + 双向链表)3. O(1) 查询 (cach...

2019-08-12 17:48:00 187

转载 并查集

并查集 union & find 是一种树型的数据结构,用于处理一些不交集(Disjoint Sets)的合并及查询问题。一般用数组实现。Find:确定元素属于哪一个子集。它可以被用来确定两个元素是否属于同一子集。Union:将两个子集合并成同一个集合。在现实生活中的例子1. 小弟 => ⽼大2. 帮派识别...

2019-08-12 17:21:00 94

转载 位运算

位运算 Bitwise operations由于位运算直接对内存数据进行操作,不需要转成十进制,因此处理速度非常快。常见位运算符:编程常用的位运算操作x & 1 == 1 or == 0 判断 x 的二进制最后是 1 还是 0,即判断奇偶性(x % 2 == 1)x = x & (x - 1) 清零最低位的 1。例如 ...

2019-08-12 11:58:00 93

转载 映射&集合

哈希函数通过哈希表可以实现 O(1) 复杂度的查找。哈希函数构造方法:设计好的哈希函数的两个基本原则,计算简单+分布均匀1. 直接定址法  用key自身的某个线性函数来定址,f(key) = a*key + b。但需要知道关键字的分布情况。2. 数字分析法  适合处理关键字位数比较大的情况。抽取关键字的一部分作为哈希地址。3. 平方取中法  将key...

2019-08-10 22:07:00 75

转载 剑指offer-链表

1. 链表中环的入口节点给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。思路一:用哈希表存已经遍历过的节点,O(1)复杂度查找,如果再次遇到就是环入口# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# ...

2019-08-04 23:57:00 67

转载 排序

排序算法的稳定性:一个稳定的排序算法,如果两个等值键R和S在排序前后次序不变,称其是稳定的例如排序之前的序列为:(4, 1) (3, 1) (3, 7)(5, 6)(3, 1) (3, 7) (4, 1) (5, 6) 维持次序,稳定(3, 7) (3, 1) (4, 1) (5, 6) 次序被改变,不稳定1.冒...

2019-08-03 21:39:00 86

空空如也

空空如也

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

TA关注的人

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