http://hr.tencent.com/position_detail.php?id=22922&keywords=&tid=87&lid=2156
刷题:
- SVM核函数: 线性核函数、多项式核函数、径向基核函数、傅里叶核函数、样条核函数、Sigmoid核函数
- CRF模型对于HMM和MEMM模型的优势:特征灵活、全局最优、可容纳较多上下文信息
- 特征提取算法分为特征选择(互信息、文档频率、信息增益、期望交叉熵、开方检验、卡方检验等)和特征抽取两类。
- SVM算法中使用高斯核/RBF核代替线性核容易引起过拟合
- 序列模式挖掘算法:参看http://blog.csdn.net/rongyongfeikai2/article/details/40478335
- PMF(概率质量函数),PDF(概率密度函数),CDF(累积分布函数)
- L1正则化得到稀疏的权值,L2正则化得到平滑的权值
- 线性回归:基本假设包括随机干扰项是均值为0的同方差正态分布;在违背基本假设时,普通最小二乘估计量不再是最佳线性无偏估计量;可以使用DW检验残差是否存在序列相关性
- 在统计模式分类问题中,当先验概率未知时,可以使用最小最大损失准则和N-P判决
=============================================
happy数
class Solution(object):
def isHappy(self, n):
"""
:type n: int
:rtype: bool
"""
m = 0
while n:
n1 = n % 10
m += n1**2
n = n / 10
if m == 1:
return True
elif n == 0:
if m == 4:
return False
else:
n = m
- 生成方法和判别方法 参考网址http://blog.csdn.net/zouxy09/article/details/8195017
假如你的任务是识别一个语音属于哪种语言。例如对面一个人走过来,和你说了一句话,你需要识别出她说的到底是汉语、英语还是法语等。那么你可以有两种方法达到这个目的:
1)学习每一种语言
2)不去学习每一种语言,你只学习这些语言模型之间的差别,然后再分类
那么第一种方法就是生成方法,第二种方法是判别方法。
- 最大概率分词
数据挖掘工作岗位要求:
熟悉常用机器学习和数据挖掘算法
熟悉hadoop、spark等分布式框架者优先
有用户行为分析,用户建模等相关经验者优先
熟悉Linux开发环境
有 1000 个一模一样的瓶子,其中有 999 瓶是普通的水,有一瓶是毒药。任何喝下毒药的生物都会在一星期之后死亡。现在,你只有 10 只小白鼠和一星期的时间,如何检验出哪个瓶子里有毒药?
根据2^10=1024,所以10个老鼠可以确定1000个瓶子具体哪个瓶子有毒。具体实现跟3个老鼠确定8个瓶子原理一样。 000=0 001=1 010=2 011=3 100=4 101=5 110=6 111=7
一位表示一个老鼠,0-7表示8个瓶子。也就是分别将1、3、5、7号瓶子的药混起来给老鼠1吃,2、3、6、7号瓶子的药混起来给老鼠2吃,4、5、6、7号瓶子的药混起来给老鼠3吃,哪个老鼠死了,相应的位标为1。如老鼠1死了、老鼠2没死、老鼠3死了,那么就是101=5号瓶子有毒。 同样道理10个老鼠可以确定1000个瓶子