舆情,文本挖掘

news/2024/7/5 10:59:27

MLEMAPEM point estimation 之间的关系是怎样的


和点估计相对应的是区间估计,这个一般入门的统计教材里都会讲。直观说,点估计一般就是要找概率密度曲线上值最大的那个点,区间估计则要寻找该曲线上满足某种条件的一个曲线段。


最大似然和最大后验是最常用的两种点估计方法。以最简单的扔硬币游戏为例,一枚硬币扔了五次,有一次是正面。用最大似然估计,就是以这五次结果为依据,判断这枚硬币每次落地时正面朝上的概率(期望值)是多少时,最有可能得到四次反面一次正面的结果。不难计算得到期望概率0.2


用五次试验结果来估计硬币落地时正面朝上的概率显然不够可靠。这时候先验知识可以发挥一些作用。如果你的先验知识告诉你,这枚硬币是制币局制造,而制币局流出的硬币正面朝上的概率一般是0.5,这时候就需要在先验概率0.5和最大似然估计0.2之间取个折中值,这个折中值称为后验概率。这时候剩下的问题就是先验知识和最大似然估计结果各应起多大作用了。如果你对制币局的工艺非常有信心,觉得先验知识的可靠程度最起码相当于做过一千次虚拟试验,那么后验概率是(0.2 * 5 + 0.5 * 1000)/(5 + 1000) = 0.4985,如果你对制币局技术信心不足,觉得先验知识的可靠程度也就相当于做过五次试验,那么后验概率是(0.2 * 5 + 0.5 * 5)/(5 + 5) = 0.35. 这种在先验概率和最大似然结果之间做折中的方法称为后验估计方法。这是用贝耶斯观点对最大后验方法的阐述,其实也可以用用经典统计学派的偏差方差的折中来解释。


EM方法是在有缺失值时进行估计的一种方法,这是一个迭代方法,每个迭代有求期望(E)和最大化(M)两个步骤。其中M可以是MLE或者MAP。一般需要先为缺失值赋值(E步骤初始化),然后重复下面的步骤:

1)用MLEMAP构造模型(M步骤)

2) 用所得模型估计缺失值,为缺失值重新赋值(E步骤)

仍然以扔硬币为例,假设投了五次硬币,记录到结果中有两正一反,还有两次的数据没有记录下来,不妨自己用上述步骤演算一下硬币正面朝上的概率。需要注意,为缺失值赋值可以有两种策略,一种是按某种概率赋随机值,采用这种方法得到所谓hard EM,另一种用概率的期望值来为缺失变量赋值,这是通常所谓的EM。另外,上例中,为两个缺失记录赋随机值,以期望为0.80-1分布为他们赋值,还是以期望为0.20-1分布为他们赋值,得到的结果会不同。而赋值方法的这种差别,实际上体现了不同的先验信息。所以即便在M步骤中采用MLEEM方法也融入了非常多的先验信息。

上面的例子中只有一个随机变量,而LDA中则有多个随机变量,考虑的是某些随机变量完全没有观测值的情况(也就是Latent变量),由于模型非常复杂,LDA最初提出时采用了变分方法得到一个简单的模型,EM被应用在简化后的模型上。从学习角度说,以PLSA为例来理解EM会更容易一点。另外,kmeans聚类方法实际上是典型的hard EM,而soft kmeans则是通常的EM,这个在[1]中的讨论最直观易懂。

[1] Information Theory, Inference, and Learning Algorithms, http://www.http://inference.phy.cam.ac.uk/mackay/itila/


辛苦了,EM 针对有缺失值这个情况的确是关键。

我一直记得 EM 是实现 MLE 的(当年教这个的老板就是搞这个的,特强调这个,所以真得死也忘不了)。看了你说的,去查了查,原来 EM 改改后也能作 MAP

soft kmeans 是不是就是或类似 fuzzy c-means

k-means 很烂,主要是不够稳定,对初始值太敏感。但这方法作 E-M 的例子真很好。如果再往前追溯的话,还有一个模数信号量化转换的 Lloyd–Max quantization 算法,也是很经典,比 E-M 还有历史。

David Mackay 的书很赞。同推荐。




不做进一步假设,认为这个概率分布(如果是实数域上的数据)可以是正态分布,可以是学生t-分布,可以是拉普拉斯分布,可以是各种其他各种分布,甚至还可以是把以上分布用另一个随机变量混合起来的。在这种情况下,她要做的就是非参数统计。这个和题目中提到的四个名词关系都不大,暂且按下不表。

假设形成数据的概率分布是某一族分布中的一个。每一族概率分布都可能有无数个。这时她要问自己的问题是:我们面前的这个概率分布的参数是多少。比如说她假设数据是由某种正态分布形成的,就要对这个分布的期望和方差做一个估值(estimation),也就是推论(inference)。这里就可以提到题主问题中的 point estimation 这个词了,MLEMAPEM都是对模型估值的方式或者方法。实际上,在对模型的参数做出估计以后,买算法的小女孩们还可以问自己另一个问题:眼前的数据确实被这个推论得知的概率分布形成的概率是多少。这时就要用到假设检验,并以此得到参数的置信区间(confidence interval),point estimation 中的“点”就是和置信区间中的“区间”相对的。

现在小女孩决定了要使用的分布族群,她还是不知道怎么估计参数的值。其实这里有三种可能的状况:

小女孩选择的模型很简单,数据量也很大,给定一组参数以后,数据的似然函数(likelihood function)可以很明白的写出来(tractable)。这时候,一个很明显也很自然的选择就是使用最有可能生成了数据的参数值,也就是说,选择让似然函数最大化的参数值,也即 maximum likelihood estimation。如果似然函数可以直接在理论上求最大值当然好,算不出最大化的表达式,可以靠数值运算最大化也可以。因为数据量很大,模型简单(甚至足够规则),MLE 是一个不错的选择。

小女孩选择的模型很复杂。似然函数虽然貌似可以写出来,但是要给指数级的项目求和,或者似然函数根本写不出来。这样的模型就不能简单最大化似然了之了。这时候,买算法的小女孩们或者老板突然发现,虽然不能直接写出模型的似然函数,要是给模型加上几个隐变量,那么给定参数下,数据与隐变量的联合分布倒是很容易算,要是知道隐变量的值,针对参数最大化似然函数也很容易。唯一的问题是,他们既不知道隐变量的值,也不知道参数的值。这时就可以用到 EM 算法了,这个两步的算法很好地解决了这个两不知的问题,也即:第一步,给定参数,对隐变量做期望,算出包括隐变量的似然函数;第二步,对这个似然函数最大化,update 参数。因为这个模型可以让似然函数递增,如果似然函数是凹函数,那就一定会收敛到最大值,如果似然函数有多个极值,则要随机化初始参数值,算很多次,选择似然最大的参数。

小女孩的模型未必很复杂,但是数据非常少,与此同时,小女孩或者老板已经关注这个问题很久,对参数有一定的想法了。这时候就可以用到贝叶斯统计了:我们可以给参数定一个先验统计分布,然后用数据算出参数的后验分布(posterior probability,其实大概就是把先验的概率密度和数据的似然函数乘一乘,然后再标准化一下的问题),然后再最大化后验,这个最大化后验分布的参数值就是 maximum a posteriori 了。其实在贝叶斯统计中,最大化后验概率的参数值未必是最好的参数值,根据决策论的看法,一般会最小化某个 loss function,得到的结果可能是后验分布的期望或者中值。不过如果参数的空间是非凸的(比如离散集合),这两个值未必在参数空间内,说不定也很不好算,所以在实际应用中,用 MAP 的也不少。

现在正在学习使用EM算法处理数据,你的答案很便于我这种初入门理解~

然后我想请问一下,如果我想 计算由EM算法获得的(概率密度函数的)参数的置信区间,请问我可以实现么?

假如我有一组数据,假设他的分布是一个mixture weibull distribution, 使用EM算法重复计算之后,我确定了他的多个参数。 现在如何我需要计算这些参数,或者这整个参数组合(因为是联合分布)的参数误差/置信区间(e.g. 95%), 请问我如何实现?

『不过如果参数的空间是离散的,这两个值未必在参数空间内,说不定也很不好算,所以在实际应用中,用 MAP 的也不少』,是不是矛盾了啊?

这是两种不同的情况嘛……两种都可以用map来解决这个问题。

『根据决策论的看法,一般会最小化某个 loss function,得到的结果可能是后验分布的期望或者中值』,还有『算期望、求中位值和求最大值这三件事那件最容易,真不是轻易能说清楚的,说不定没一个好用的』这两个结论已经超出我理解的范围了......这是贝叶斯统计的一个研究方向吗?(我只有基础的机器学习和概率论知识)

loss function是根据decision theory的原则来取得符合一定最优性质的estimator,不同的loss function会得到不同的理论上estimator。但是要真的把它们算出来,经常要优化一个不能explicitly写出来的概率密度,或者对它算期望,所以就要用到各种蒙特卡洛模拟了。很多贝叶斯统计的研究都是围绕这些问题展开的。想要进一步了解可以试着读一两本教科书。我看的是Christian Robert写的Bayesian Choice。但是其实我也不是做贝叶斯的,只是上过Robert老师的蒙特卡洛课……

当然MAP这种东西在机器学习(graphical models)里也有用到,很多机器学习的算法也是通过决策论来提出estimator


point estimation 是某类问题的通称,指用数据估计某参数常量;

剩下三个都是估计方法。

MLE 是先验估计,找到由对像参数决定的数据分布,参数值就是依该分布观测数据出现概率最大的那个。

其中 EM 是一种实现 MLE 的具体方法,好处是总能收敛。

MAP 是后验估计,比如假设由对像参数决定的数据分布本身不完全由数据决定,还有先验知识的成份,通常表现为由经验来的对各种数据分布本身的信任程度。计算更复杂些。

很多书都讲,不知道你具体背景如何。可以看 signal estimation 这样的书。Steven Kay 的那本很容易懂的。


point estimation 是某类问题的通称,指用数据估计某参数常量;

剩下三个都是估计方法。

MLE 是先验估计,找到由对像参数决定的数据分布,参数值就是依该分布观测数据出现概率最大的那个。

其中 EM 是一种实现 MLE 的具体方法,好处是总能收敛。

MAP 是后验估计,比如假设由对像参数决定的数据分布本身不完全由数据决定,还有先验知识的成份,通常表现为由经验来的对各种数据分布本身的信任程度。计算更复杂些。

很多书都讲,不知道你具体背景如何。可以看 signal estimation 这样的书。Steven Kay 的那本很容易懂的。




一般是用词袋模型+隐含主题模型来完成。

在短文本的主题模型有一些研究工作,我没有全面做过调研,自己了解的包括:

1. KDD 2014上来自Twitter团队的Large-Scale High-Precision Topic Modeling on Twitter,对Twitter数据上进行主题模型建模做了大量定制化工作。

2. WWW 2008上的Learning to classify short and sparse text & web with hidden topics from large-scale data collections,专门研究如何用主题模型帮助解决短文本类分类的稀疏性问题。

3. ECIR 2011上的Comparing twitter and traditional media using topic models提出TwitterLDA,假设每条短文本只属于一个隐含主题,属于专门针对短文本隐含主题建模所做的合理性假设。


我是某计算机小菜一枚,我打算对微博数据 先用word2vector 处理,然后再做情感多标签分类..不知您有什么看法.. 可否做为论文出发点


尝试word2vec,不知道有没有人将word2vec用于短文本处理上。


数据降维,一般说的是维数约简(Dimensionality reduction)。它的思路是:将原始高维特征空间里的点向一个低维空间投影,新的空间维度低于原特征空间,所以维数减少了。在这个过程中,特征发生了根本性的变化,原始的特征消失了(虽然新的特征也保持了原特征的一些性质)。

而特征选择,是从 n 个特征中选择 d (d<n) 个出来,而其它的 n-d 个特征舍弃。所以,新的特征只是原来特征的一个子集。没有被舍弃的 d 个特征没有发生任何变化。这是二者的主要区别。



特征选择,是在给定一组特征(也即确定了坐标)后,从中选取一个特征子集,因此相当于把一些坐标去除的过程。在大部分情况下特征选择都是在冗余变量较多的情况下使用,此时相当于坐标为斜坐标,甚至还存在冗余坐标(即用p个特征表达了k (k<p)维空间),因此删除冗余坐标并不会显著降维。另一方面,若原来的特征本身就是正交坐标系,那么删除多少特征就降了多少维,此时与降维类似,只是这种降维方式限定了只通过删除某几个坐标轴来实现。

降维,如果特指PCA这种线性降维方法,则降维所得的子空间是在原始坐标系旋转下不变的。而如果坐标系恰好选取为主向量,则PCA实际上等价于对这组特殊的坐标系进行特征选择,方式是根据样本在坐标轴上分散的程度来决定该坐标轴的去留。而在一般情形下,PCA降维所得的子空间是由几乎所有原始特征张成的,因此原始特征全部起作用。

因此,有学者(Zou & Hastie)提出了sparse PCA,旨在强迫使用部分原始特征张成尽量“优质”的子空间,同时实现了降维+特征选择,从而能在分析主成分的同时还可以加入模型的解释性。

如果涉及到非线性降维,如流形学习等方法,则与特征选择区别甚大,此时不仅有降维,还带有坐标轴的非线性扭转伸缩等操作。特征选择在更多情形下,还只是限于线性的范畴(此处的线性指对参数的线性)。


在我看来,特征选取与特征降维最大的不同是特征选取不对原始的特征进行变换,而是直接选择少数几个。记得,不做变换,只是选择。而降维一般都是做了变换,产生少数几个特征的,甚至有时做变换时会拿之前所有的特征来做。 所以,做不做变换是他们两者本质的区别,希望有所帮助。





结论:Feature extractionfeature selection 都同属于Dimension reduction。要想搞清楚问题当中二者的区别,就首先得知道Dimension reduction是包含了feature selection这种内在联系,再在这种框架下去理解各种算法和方法之间的区别。

feature selection不同之处在于feature extraction是在原有特征基础之上去创造凝练出一些新的特征出来,但是feature selection则只是在原有特征上进行筛选。Feature extraction有多种方法,包括PCA,LDA,LSA等等,相关算法则更多,pLSA,LDA,ICA,FA,UV-Decomposition,LFM,SVD等等。这里面有一个共同的算法,那就是鼎鼎大名的SVD

SVD本质上是一种数学的方法, 它并不是一种什么机器学习算法,但是它在机器学习领域里有非常广泛的应用。

PCA的目标是在新的低维空间上有最大的方差,也就是原始数据在主成分上的投影要有最大的方差。这个是方差的解释法,而这正好对应着特征值最大的那些主成分。

有人说,PCA本质上是去中心化的SVD,这可以看出PCA内在上与SVD的联系。PCA的得到是先将原始数据X的每一个样本,都减去所有样本的平均值,然后再用每一维的标准差进行归一化。假如原始矩阵X的每一行对应着每一个样本,列对应着相应的特征,那么上述去中心化的步骤对应着先所有行求平均值,得到的是一个向量,然后再将每一行减去这个向量,接着,针对每一列求标准差,然后再把每一列的数据除以这个标准差。这样得到的便是去中心化的矩阵了。


我在整理相关文档的时候,有如下体会:

我们的学习是什么,学习的本质是什么?其实在我看来就是一种特征抽取的过程,在学习一门新知识的时候,这里一个知识点,那儿一个知识点,你头脑里一篇混乱,完全不知所云,这些知识点在你的大脑中也纯粹是杂乱无章毫无头绪的,这不正是高维空间里数据的特征么?最本质的数据完全湮没在太多太多的扰动中,而我们要做的就是提炼,从一堆毫无头绪的扰动中寻找到最本质的真理。

经过一段时间的摸索,你上升到了一个台阶,从这个台阶上去看原来所学到的知识点,你突然之间豁然开朗,原来TMD这些概念,这些知识点都TM是想通的。为什么你原来却从这些知识点中看不到任何联系呢?原因就在于你之前的维度太高,而你永远只能在这个杂乱无章的高维空间里窥探到真理的一些细枝末叶,本来在低维空间里相互联系的事物,由于你看到的是这些事物在各个方向各个领域里的一部分投影,你所学到的只是这些投影,那你如何仅仅依靠这些少量的投影以管窥豹呢?不可能的,所以你的知识只能是杂乱无章,毫无头绪的。但是,一旦你所拥有的投影越来越多,你所学到的知识点越来越多,你就逐渐拥有了依靠投影获取全貌的能力,这个时候你会发现,哇,原来过去的那些都是想通的。这就是高维空间里杂乱无章的知识点,经过降维后,回归到了最本质特征的全过程。

从今以后,你可以只拿着这个低维空间里的真理,摒弃掉以前学习到的任何细枝末叶的东西,然后在任何需要的时候,经过这个降维的逆算法去还原到你所学到的知识点。

那么,人与人之间的区别在哪里呢?那就是,对任何一个新领域的知识点建立一套降维工具的能力。

反观SVDPCALSA等等,它们做的不正是这些么?比如在文本分类领域,最初始的数据是将文档表示成向量空间模型的一个矩阵,而这个矩阵所拥有的就是不同的词,这里一个词,那里一个词,对于我们人类来说,我们都已经拥有将不同词在低维空间上总结归纳的能力,知道这些词的联系和区别,但是对于计算机来说,它们怎么知道这些的联系呢?也就是它们根本还不拥有这些降维的能力,那么就要依靠我们人类告诉它们这个方法,这个工具就是SVD,其核心思想就是:将这些不同的词都映射到低维空间中去,在低维空间中去总结,去发现这些词的内在联系,一旦这些内在联系建立了,那么我们就知道了这些文档的内在联系了。这不正是高维空间里杂乱无章的数据经过降维工具之后获取到最本质的特征么。这正是特征抽取所要做的事情。


最后总结之:

1. 特征提取是从杂乱无章的世界中,去到更高层的世界去俯瞰原始世界,你会发现很多杂乱无章的物理现象中背后暗含的道理是想通的,这时候你想用一个更加普世的观点和理论去解释原先的理论,这个是特征提取要做的事情。

2. 而你仍呆在原始世界中,只是想对现有的“取其精华,去其糟粕”,这个是所谓特征选择。只是对现有进行筛选。

3. 特征提取和特征选择统称为降维。(Dimension Reduction



dimension reduction有两种方法 一种是feature selection

,就像Ling Yu说的,只进行选择并不改变feature的值;另一种是feature extraction,会通过对feature变换进行降维,但不一定是线性的,也不一定是保留最大信息量,这取决于你用什么算法降维以及降维后要做什么


把这些算法应用到图像处理,如人脸识别,针对某个算法的一维算法相较于该算法的二维算法,这两者之间的区别又具体是什么呢?除了说“是一维算法是把图像矩阵拉伸为一个向量,二维是直接对图像矩阵进行处理


比如说,对于lpp2dlpp,我怎么感觉二维的lpp最后在求解特征向量矩阵时的矩阵维数比一维的矩阵维数要小的多,一般编程实现时,lpp在求解时还要对矩阵进行分解,才能比较容易的算出,二维是不是直接调用求解函数就行了?


还是有差异的 个人认为 题主有这样的疑问 主要是认为它们都可以认为是一个 降维 的过程?

一般来讲 数据降维 是合理的信息丢失的范围里面 将原来的高维数据 映射到 一个低维空间里面 这样可以降低模型的复杂度和计算的复杂度 减少过拟合和增加泛化的能力

特征选择 在某种意义下 也是一种降维的计算 但是在这种意义下 需要人为的去理解降维后的特征表示的意义

数据降维后 不一定就直接按照降维后的维度作为特征的维度 (也许只是先做了一个数据间去相关之类的操作 )在训练模型前 还要对于这些处理之后的数据 进行特征选择的。



谈到其它领域的就开始了,他们发表了大量自己对能量、对生命、对智能的思考。当然是混在他人已发表的思想中,我不知道有多少是他们原创。我认为,复杂系统理论发展依赖于:1.数学带来的理论推进;2.实验带来的理论验证。如果你提出的思考即无法数学化,又无法得到来源于某一个系统(可以是生物种群,胶体化学,颗粒物理,互联网分析……)的实验支持,说句不客气的,基本和民科没什么两样。


对于一个尚未进入某个领域,仅仅对“复杂系统”感兴趣的新手,真正切实的机器学习讨论看不懂,“看懂”的都是这些哲学思考,我觉得很危险。





我也对这方面很感兴趣,之前看过楼上各位推荐的的大部分中文科普书,仍觉不满足。

后来发现一个超棒的在线课程:Complexity Explorer 。 负责方是复杂系统领域里的牛Santa_Fe_Institute

最近的开课日是在930号。

(希望你看到这个回答的时候并没有错过注册:)


查到的教学大纲如下:

What is Complexity?

Dynamics and Chaos

Fractals

Information, Order, and Randomness

Genetic Algorithms

Cellular Automata

Complexity Economics: Two Interviews

Models of Self-Organization

Biological Scaling

Urban Scaling: An Interview with Luis Bettencourt

Networks

Virtual Field Trip

Final Exam



P.S: 金晨羽姐姐说得没错,正统的东西还是要老老实实学。不过选择学术的话试错成本太大,题主不妨先尝试着参加网课看看自己到底是不是真的热爱&Hold住,之后再选择投身学术什么的吧~

P.P.S:关于网课的学习,可以参阅 听不懂美国大学公开课如何应对 ? 有非常赞的分享~



其实用下面一个公开课 “Mathematics for Complex Systems” 来测试比较好呢……


这门课算入门,难不起来。可以继续跟进看看,有好多课呢~

金晨羽姐姐之前说 Mathematics for Complex Systems 更适合题主的问题,可以试试今夏选这门课~

感觉其实拼的还是数理(摊手





香港城市大学的陈关荣教授(Prof. Guanrong CHEN)是该领域的资深专家。他专门为其主讲的一门课(EE6605 Complex Networks: Modeling, Dynamics and Control)整理了很多材料,链接为: http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks.htm

其内容十分丰富,包括:

1)各种工具包和数据,Software/Databases

http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks/SoftwareDatabases.htm

2)一些知名院校所开设的相关课程,University Courses

http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks/Courses.htm

3)一些重要会议,Conferences

http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks/Conferences.htm

4)重要研究者的个人主页,Personal Websites

http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks/PersonalWebsites.htm

5)重要的实验室和研究中心等,Centers

http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks/Centers.htm

6)推荐书目,Books

http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks/Books.htm

利益相关:本学期选修了该课程,今天开课。虽不在该领域摸爬滚打,但一为兴趣,二为感受大师风采。



从利用复杂系统理论建立数学模型的角度来说,我推荐这本书:

Sterman, J. (2000). Business Dynamics: Systems Thinking and Modeling for a Complex World. McGraw-Hill/Irwin.

作者是 MIT Sloan 商学院教授,是 System Dynamics 领域的大牛。

可惜的是这本书写于 Big Data 流行起来之前,比较之下只算是利用了「Small Data」。

(网上能找到电子版。)









最近刚读到一本书Think Complexity,作者把该书的Latex源码都贡献出来了。很多例子都是基于很经典的模型,然后用Python编程来模拟。引用特别多,值得参考。


最后该书附录有一个Reading List :

Axelrod, Complexity of Cooperation.

Axelrod, The Evolution of Cooperation.

Bak, How Nature Works.126

Barabasi, Linked.

Buchanan, Nexus.

Epstein and Axtell, Growing Artificial Societies: Social Science from the Bottom Up.

Fisher, The Perfect Swarm.

Flake, The Computational Beauty of Nature.

Goodwin, How the Leopard Changed Its Spots.

Holland, Hidden Order.

Johnson, Emergence.

Kelly, Out of Control.

Kluger, Simplexity.

Levy, Artificial Life.

Lewin, Complexity: Life at the Edge of Chaos.

Mitchell, Complexity: A Guided Tour.

Mitchell Waldrop, Complexity, the emerging science at the edge of order and chaos.

Resnick, Turtles, Termites, and Traffic Jams.

Rucker, The Lifebox, The Seashell, and the Soul.

Sawyer, Social Emergence: Societies As Complex Systems.

Schelling, Micromotives and Macrobehaviors.

Schiff, Cellular Automata: A Discrete View of the World.

Strogatz, Sync.

Watts, Six Degrees.

Wolfram, A New Kind Of Science.





入门读物,推荐 米歇尔·沃尔德洛普 的《复杂》,这本书市面上已很难找到,但电子版有很多。然后可以考虑约翰·霍兰的《隐秩序》。

至于第三本,没有一定之规,我个人是看的《复杂系统建模与仿真》,属于“术”的层面。

在这以后建议根据你所从事的领域再进行选择,目前在生物、物理、经济领域,此类文章很多。

学术杂志方面,国内有份学报《复杂系统与复杂性科学》,有兴趣也可以订阅。

网络资源方面,推荐集智俱乐部http://www.swarmagents.com/,是复杂系统爱好者们交流的地方。





看周涛(最年轻教授那个周涛)的论文的参考文献。各种经典名著基本上挖不出来有效信息,要么玄学,要么在数学上过于老旧,要么容量只有一两篇论文。隔壁有人推荐的Think complexity 看样子可行,毕竟有各种经典算例的代码。

不过论文的前置教材课本需要看,至少包括数学基础教科书,可选博弈论和统计物理。

另外被折叠的答案说是垃圾专业反映了相当一部分实际情况。这类研究的范式有问题,在现实数据不足时模型只能停留在宗教式比喻的层面上,而数据足够的时候玩法又完全不一样(变成模式识别/机器学习了)。




关于郑钧的回答,我觉得涉及的点很好,但是有些知识不是很准确;

map/reduce 是一种分布式计算的框架,TIIDF可以看作是一种特征表示方法;统计方法比较常用的包括,朴素贝叶斯,最大后验概率,EM算法,CRF(比如用于分词)等;

SVM不是聚类方法,而是分类回归方法; VSM应该是vector-space-model吧,是向量空间模型,是文本表示的基本模型;常见的聚类方法分为两类,层次聚类和扁平聚类,扁平聚类的代表算法是经典的KMean算法。分类方法也用的很多,比如SVM和决策树。

NLP本身有一点比较特别的是语言模型;


聚类分:基于划分(k-meansk中心)、基于层次(凝聚和划分)、基于密度等



文本挖掘、NLP包括的细分领域都非常非常的宽阔。工作中,实际使用的领域,比较有限,因此一个人没有那么多精力把所有这些细分领域都搞清楚搞明白。


既然如此,不如针对工作中实际是用的文本挖掘或NLP领域的某个细分方向,搞熟悉、搞透彻,玩明白。总比大而泛的学习,要好一些。


作文本挖掘需要学习NLP,因为你需要处理文本,提取出你感兴趣的信息。如果你对机器学习熟悉,学习statistical NLP还是比较容易的。另外,也需要补充一些语言学基础知识。



既然是“文本挖掘”,自然语言处理最基本的功能点肯定都要做:

新词发现、分词、词性标注、分类、自动提取标签、实体自动发现和识别。

最基本的这些功能点做了之后,可以用统计方法完成简单文本挖掘应用,统计方法比如:

TF/IDFMap/Reduce、贝叶斯。

再深入一些,就需要:

聚类(层次聚类、SVMVSM)、情感趋势分析。

再想提高:

语法分析、句式判断。

但一般做到NLP最基本功能点+统计方法即可搞定一般的互联网应用。


map/reduce 不是统计方法。

“统计方法比如:TF/IDFMap/Reduce、贝叶斯”

聚类(层次聚类、SVMVSM


SVM主要是分类、回归?

“聚类(层次聚类、SVMVSM)”


关于郑钧的回答,我觉得涉及的点很好,但是有些知识不是很准确;

map/reduce 是一种分布式计算的框架,TIIDF可以看作是一种特征表示方法;统计方法比较常用的包括,朴素贝叶斯,最大后验概率,EM算法,CRF(比如用于分词)等;

SVM不是聚类方法,而是分类回归方法; VSM应该是vector-space-model吧,是向量空间模型,是文本表示的基本模型;常见的聚类方法分为两类,层次聚类和扁平聚类,扁平聚类的代表算法是经典的KMean算法。分类方法也用的很多,比如SVM和决策树。

NLP本身有一点比较特别的是语言模型;


我有问题,在做文本挖掘时,先要对文本进行分词,而如何分,和这些x词语的使用频率,以及这个词语可存在性有关,特别是新词,而现在的文本挖掘软件好像都没有这些信息,或者没有接入这些信息的入口,比如搜狗输入法。那是否会存在缺陷?


SASEM模块中有一个Text Miner插件,可以做文本挖掘,支持30几种语言;它的帮助文档很详细,要用的功能基本上都有介绍。


贵不在多,首先在于能真正了解文本挖掘的过程,以及中间涉及到的技术及应用场合。然后根据你的需求,对其中某一个分支领域(比如是特征抽取,还是句法分析等等)或者某一个算法(是贝叶斯还是SVM?)进行钻研...

了解一下还是好的,我觉得现在数据挖掘的问题在于:算法学习的太多,却不能够有效的解决自己面临的问题和持续优化,算法和问题之间是存在很大的沟壑的

同意@骆逸的说法,数据挖掘的说法太大了,关键看你要做什么,自然语言、推荐系统、图像处理等都可以叫数据挖掘,关键看你要做什么

作为一个科班出身的人,我一直给门外汉们混用数据挖掘和自然语言处理。


文本挖掘的基础是提取文本特征,而特征的提取就看对自然语言理解的好坏了。


从本质上来讲,自然语言处理是文本挖掘的基础,学好自然语言理解能够更有效地设计出完美的文本挖掘的应用算法。但是,从学术领域讲,自然语言处理和文本挖掘是平行的,二者有交集,也有不同的地方。自然语言处理顾名思义更侧重于语言学,涉及词汇、语义、语法等方面的知识,而文本挖掘更侧重于技术手段,包括算法时间复杂性、算法空间复杂性、基于网络的应用、数据的存储等方面的内容。


其他答案都已经说的很好了,我也是刚入门没多久,以前关注的也是数据挖掘方面,最近开始研究文本挖掘。我的理解是文本挖掘可以等价于自然语言处理加数据挖掘。因为数据挖掘需要的是数据,而文本提供的是文字,所以文本挖掘需要通过自然语言处理技术,提取文本特征,往往是一个向量表示,特征提取也有很多模型,提取特征以后,就可以进行数据挖掘。所以,文本挖掘肯定是需要自然语言处理技术的。


课程:https://class.coursera.org/nlangp-001/class/index

书:信息检索导论=Introduction to information retrieval()曼宁(Christopher D. Manning),()Prabhakar Raghavan, ()Hinrich Schutze著;王斌译.—北京:人民邮电出版社,2010

我用Java


这本综述不错,很全面http://www.amazon.com/Mining-Text-Data-Charu-Aggarwal/dp/1461432227/ref=sr_1_1?ie=UTF8&qid=1435160429&sr=8-1&keywords=mining+text+data

作者的Coursera的课程https://class.coursera.org/textanalytics-001


我们学校用的是SPSS Modler, 专业版自带text mining。 这个几乎不需要懂编程语言,教材就是IBM自己的pdf版本user guide。搜索:ftp://public.dhe.ibm.com/software/analytics/spss/documentation/modeler/15.0/en/Users_Guide_For_Text_Analytics.pdf


我们学校用的是spss modeler 14.2, 不过好像15更稳定一点。如果你是个人用的话,R什么的好像比较好。spss这个挺贵的,都是企业才买。

学习Clementine text mining模块有没有什么比较好的资料?感觉text mining模块资料比较少,难以入门·····求帮助


1. LDA换成supervised LDA,对新来的样本可以做inference判断类别

2. 用“已经训练得到一些话题”作为feature,训练一个分类器,对新来的样本做判别

3. 扔掉LDA,直接用文本词袋训练分类器,对新来的样本做判别


LDA模型的根本目的,就是把一个高维的文档向量降维成一个低维度的文档向量。对于高维的文档向量来说,就是原始的被切词后的特征向量,每个特征是一个维度,降维后的低维的文档向量,每个维度是一个主题,每个主题是通过Dirichlet参数估计得到的一个基于各个原始特征的Multinominal Distribution。所以,理解清楚Dirichlet过程的本质,是个降维的过程,我们就知道,文本最终还是被视作一个Vector来处理的。

那么一个Vector就是一个高维的数据点,怎么分类?无非还是传统的方法。分类本身就是一个Supervised方法,对于高维数据点,主流的方法是:

1)Decision Tree

2)Neural Network

3)Naive Bayesian

其他的稍微复杂点,可以自行构造!


labeledlda 方法,效果不错,有兴趣可以讨论






文本分类中如何降维?修改

如果是以词作为特征,有的词总是同时出现在某一篇文档中,怎么样把这些词合并起来?比如说在我的数据集合里,中国和北京这两个词大部分时间总是同时出现,那么如果按正常的分词,这就生成了两维特征,我怎么把这两维特征合并呢?

你的问题其实在数据挖掘里面不难,其实也没有涉及到降维,真在的降维是数量级的降维。

你的这个问题应该按照以下方案处理:

1、对文本做共现词汇统计,可以统计相邻距离不超5的词,也可以统计邻接词。

2、选择共现比较多的组合作为特征,加入特征集。

3、生成训练模型。

传统特征选择的方法包括以下几种:信息增益(IG),互信息(MI),卡方检验(卡方 ),最大熵等。降维的方法可以使用粗糙集(Rough SetRS)属性约简。

分类器构筑可以使用SVM等工具

《集体智慧编程》不错!

传统特征选择的方法包括以下几种:信息增益(IG),互信息(MI),卡方检验(卡方 ),最大熵等。 这几种方法怎么用R实现?

请看Mahout In Action,其中提到了两种方法,一是基于LDATopic Model,把相同主题的词抽取为特征。另一种方式我不太记得名字了。当然,使用各种MF(矩阵分解Matrix Factorization)方法也可以提取特征,就是运算量太大。


LSI的计算量非常大的说,因为SVD的时间复杂度是OD^3


Coursera - Free Online Courses From Top Universities: https://www.coursera.org/about/partners

推荐UIUC的这门课,介绍了搜索引擎的整个流程,也有programming assignments~~

当然也介绍了BM25page rank算法~~~

用了MeTA这个工具,挺好的课程。




去年专业实训做过一个简单的搜索引擎,所以可以简单说下框架。《数学之美》里面提到搜索引擎分为三大块:下载,索引,搜索。

下载:

这部分是需要把你想要搜索的范围的原始数据。如果搜索的范畴是网页上的内容,那么它就是一个网络爬虫。我当时做的是一个校内网的搜索引擎,所以就写了一个爬虫从校园网主页开始下载,分析网页内的链接把符合要求的链接加入待下载队列,这样一直把所有校园网的网页全部都下载下来。

索引

搜索引擎之所以可以搜的那么快,都是索引的功劳。索引是一种专门针对搜索优化的结构,详情可以百度 倒排索引 。

前面搜索下载的是网页全文,里面的html标签是不需要被搜索的,所以要把数据清洗一下,提取出其中的重要内容。

文本内容的预处理还需要分词 、去除无意义的停用词等。分词是什么呢…你还是百度吧

建立索引有现成的库:LUCENE ,它自带有几个默认分词器,如果想要你的搜索引擎搜索的结果更好,你可以使用的中文分词器(这个当然也有现成的工具啦,ik分词,NLPIR这些都是现有的解决方案,效果也还不错)如果之前没有接触过它,那就需要学习一下。

索引建立好了,接下来就是搜索了。搜索是将根据查询词,搜索索引内匹配的内容,然后展示出来。符合查询词的结果多了的时候怎么办呢,这就涉及到排序的问题,这就有点复杂啦,这就涉及到很多排序算法比如tfidf之类的东西,不过这些luceneapi也帮你做了,它的内部有一个打分机制,将打分高放在搜索结果的前面。

以上三个点,每一个地方如果要展开,都可以写一部小书了,根据题主情况选择了解学习。

说了以上,如果你只是想实现一个小文本量的检索功能,select * from xxx like ...就可以满足你的需求。


如果基础知识木有神马问题,那么当然是可以的。

所谓的基础知识没有问题,起码是高等数学、线性代数和统计学没有啥问题。在此基础之上,可以学习下统计语言学。

基本上这样就能做很简单的文本检索了。


首先需要一个爬虫。如果你用java的话 写一个不难。需要分析html。然后 做索引 可以用lucene。然后做个界面 显示lucene的搜索结果。


看题主的描述是想在站内建一个搜索引擎,根本不需要考虑什么爬虫的问题,建议以开源搜索框架Solr(或者Elasticsearch)开始。

DB-Engines Ranking,这里是一个搜索引擎流行度的排行,以Lucene为基础的工具非常流行,掌握了相关的应用和技术足以应对一般的搜索场景,同时对搜索的方方面面有一定的了解。

如果想对搜索的原理有更多了解,建议通过《信息检索导论》建立主干。其他内容完全可以靠google填充。

张俊林的《这就是搜索引擎-核心技术详解》号称详解实则科普,如果决定认真学习,不建议看这本书。



其实电子商务搜索引擎在整个搜索引擎家族的制作中相对来说应该算是不难的一个,只要有一定的技术和电商头脑都可以做出不错的来。当然,里面涉及的经济学、美学等等交叉学科的知识,也是需要掌握的。下面就说几点我认为重要的东西。


1.必须要掌握搜索原则和搜索方法

因为电子商务搜索引擎最主要的目标就是让受众看到你的东西,这才有可能产生你期望的效益,无论是购买还是帮你推广。所以首先要理解搜索引擎的概念及其工作原理,然后要理解一些最基本的算法,如果你连爬虫什么的都不知道,那就别指望去做出好的引擎了。即使再小也做不出。

理论和方法层面可以看看入门经典教科书籍,例如《搜》巴特尔,《低智商社会》;国内的《搜索引擎》、《深入搜索引擎》都不错。

2.必须掌握一定的技术性内容

这个就没得说啦!除非你要把工程外包。这里我觉得一定要注意电子商务搜索引擎和其他搜索引擎的区别,比如说具体的排序算法。你究竟想让自己的网站到达什么程度?如何排名?都是你工作不同的动力。与此同时,要掌握些推广的方法,也许你不屑于做这些,可以,但是请不要忘记你的对手是做这些的,所以要学习些SEO SEM的知识。某宝上的推广营销虽然非常不靠谱,但也可以“取其精华去其糟粕”。

3.有关电子商务搜索引擎的小细节

例如分析自己的网站是否适合竞价排名?如何安排搜索引擎的关键词排放?如何根据自己想要推广的内容来进行关键词设定?如何提高点击率与业务转换率的关系等。


曾今也想自己做一个简单的搜索引擎,学长推荐的一个BLOG,我按照BLOG的思路用c++实现了一个,可以检索自己学校网站的信息。

一个简单的搜索引擎只需要:网络爬虫,分词和检索。IBM developerWorks 中国 : Java technology : 文档库


你的搜索引擎的用途是:用在一个不大的电商网站或是类似果壳的网站上

说明你的数据来源的问题解决了。所以就剩下:索引处理和查询处理这两步了。为什么需要这两步?你需要了解信息检索的理论基础知识,不需要很深。


索引处理:每个库的方式都不一样。但是基础理论知识都一样

查询处理:每个库的查询DSL都不一样。


总一句话:先简单学习信息检索的基础理论知识,然后学习一个现成的搜索引擎工具:SolrElasticsearch等。


搜索引擎门槛较高,最好建立在一款成熟的开源框架之上。当然搞之前最好花点时间了解搜索引擎的本质——索引。

爬虫、分词、page ranking、查找都是围绕着索引做文章。题主需要了解索引相关的数据结构和算法,比如B+树、hash表以及经典的排序查找算法。mysql用的是B+树,通用搜索引擎的结构简单来说是倒排索引。

https://www.elastic.co/





词典资源:
SentiWordNet
《知网》中文版
中文情感极性词典 NTUSD
情感词汇本体下载

自然语言处理工具和平台:
哈尔滨工业大学社会计算与信息检索研究中心
isnowfy/snownlp · GitHub

汉语分词:
自然语言处理与信息检索共享平台 NLPIR.org
fxsjy/jieba · GitHub

语料资源:
信息分类与情感发现

课程:
斯坦福大学自然语言处理第七课“情感分析(Sentiment Analysis)”

网站和博客:
Text Classification for Sentiment Analysis
Second Try: Sentiment Analysis in Python : Andy Bromberg
Basic Sentiment Analysis with Python

论文:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.244.9480&rep=rep1&type=pdf

工具:
建议使用Python. 集成上述所有功能,简单易学。

自己写过一个博客,基本有简单实现上述步骤,厚脸皮贴出。
Explore in Data



分享下我知道的,虽然还了解得不多…自己做的东西只是中文的,所以对英文的文本分析不太熟悉,而且算法的东西也涉及得很少。抛砖引玉求推荐更多,尤其是博客和论坛。

资料:
这本书记得也是在知乎看到的,可以当做教材参考http://book.douban.com/subject/5373023/
以文本挖掘、情感分析、观点挖掘等关键词搜索论文,综述和应用类都可以看一些;
情报类的期刊,如《情报杂志》、《图书馆情报学》等也会涉及到这方面的内容。
网站:
我爱自然语言处理 NLP的算法和模型为主
武大沈阳的博客 思路和应用,也有部分工具分享
语料库语言学在线 语料和语言学的论坛,理论、工具和编程开发方面的问题都可以讨论
工具:
ROST
虚拟学习团队 就是武大沈阳出的,傻瓜式但功能很强大
语料库在线 语料库资源




腾讯文智
腾讯文智是一个语义分析开放平台,它基于并行计算和分布式爬虫系统,给用户提供语义分析OpenAPI。用户通过短短几行代码即可调用文智API,实现语义分析功能。文智的主要应用场景包括舆情监控、个性化推荐、语义搜索等。



OM的方法其实不算太多,模型也都不复杂
这篇综述还不错,可以看看:
http://www.cse.iitb.ac.in/~pb/cs626-449-2009/prev-years-other-things-nlp/sentiment-analysis-opinion-mining-pang-lee-omsa-published.pdf
但是这篇坑爹之处在于没有目录。。。





国内第一个券商舆情监测平台首次提供券商业舆情监测、舆情预警、舆情报告、舆情咨询一条龙服务的平台。


国内第一大券商信源数据库国内最大券商财经信源库:可监测1800个新闻网站、1273家报刊、96家境外中文媒体、2000家全球英文媒体、1.5亿博客、20万贴吧及全部核心财经论坛。


国内第一大券商网络社区监测体系大型计算机系统每10分钟抓取一次券商新闻数据,全面提供论坛、博客、贴吧、微博中关于券商经纪业务、资管业务、投行业务、自营业务、直投业务等内容的讨论。


国内第一个券商情报监测平台全面监测券商国内外竞争对手、旗下产业基金、正在保荐的企业新闻、投资者关系及市场与战略动态等;并提供券商业关联部委与关联行业实时政策动态。


和讯通对于A+H股公司或在欧美 上市的券商提供英文内容监测, 还可实现券商在国外竞争对手官 网信息的全部抓取。


和讯通将券商行业新闻细分为: 经纪业务、资管业务、投行业务、 自营业务、直投业务、研究业务 等多个分类。和讯作为一家财经 门户,历史数据库可以提供500- 1000个细分行业的分类,这一分 类大约是中国证监会和ICB国际分 类总量的10倍。


和讯通能够提供电脑、苹果iPadiPhone三种产品版本,一个号码 就可以同时登录三种平台,真正 实现了无缝传播。


和讯通是一种保密的舆情客户端, 一个账号绑定一台电脑,防止盗 号,也防止内部泄露账号;支持 目前国内市场上全部主流的浏览 器;产品最佳分辨率1024*768。 平台定制完成后,我们向客户提 交账号,账号不限制数量。


和讯通作为定制平台,由专业新闻编辑 早晚班人工值守后台,可自由添加券商 竞争对手名单,实时甄选同业要闻等内 容;并提供以邮件、短信及弹出框三重 方式预警公司敏感新闻。它独家研发的 弹出框预警功能,可以像QQ一样实时 在线预警。同时,对重要客户的重大事 件可以提供电话通知。







国内信源
港澳台信源
欧美信源
平媒舆情
量化分析

网媒监测
综合门户
地域门户
行业门户
网媒舆情
量化分析

社区监测
微博
论坛
博客
贴吧
社区舆情
量化分析

机构监测
券商公司研报
券商行业研报
资金进出报告
报告舆情
量化分析

情报监测
券商同业
新闻监测
券商旗下产
业基金监测
保荐企业监测
券商关联部委及
关联行业监测
国内外财经
要闻监测



舆情分析系统

概述:

在社会中当一种论调得到大家的认同后,舆情甚至可以对事件的走向产生重大的影响,利用舆情分析系统重这些舆情中分析出些什么,得到些什么,那么就可以做出一个正确的决定。舆情分析,就是一个风向标。

产品功能:

1. 热点话题、敏感话题识别

可以根据新闻出处权威度、评论数量、发言时间、密集程度等参数,识别出给定时间段内的热门话题。利用关键字布控和语义分析,识别敏感话题。

2. 倾向性分析

对于每个话题了解发表人的文件观点,对倾向性进行分析和统计。

3. 主题跟踪

分析网络上新发布的新闻文章和论坛帖子,关注话题是否与已有主题相同或类似。

4. 趋势分析

分析某个主题在不同的时间段内,人们所关注的程度。

5. 突发事件分析

对突发事件进行跨时间、跨空间综合分析,获知事件发生的全貌并预测事件发展的趋势

6. 报警系统

对突发事件、涉及内容安全的敏感话题即时发现并报警。

7. 统计报告

根据舆情分析平台处理后的结果生成报告,用户可通过浏览器浏览,提供信息检索功能,根据指定条件对热点话题、倾向性进行查询,并浏览信息的具体内容,提供决策支持。

产品特点:

1. 信息采集自定义

可以设定采集的栏目、URL、更新时间、扫描间隔等。

2. 支持多种字符集编码

舆情分析采集系统能够自动识别多种字符集编码。

3. 支持整个互联网采集

用户只需输入搜索关键词就能够直接向互联网中定制的内容进行直接采集。

4. 支持内容抽取识别

系统可对网页进行内容分析和过滤,自动去除广告、版权、栏目等无用信息,精确获取目标内容主体。

5. 自动去除相似内容

通过内容相关识别技术自动判断采集数据间的关系,如果发现描述时间的文章,自动去除重复部分。






舆情监测解决方案

通过科学的数据采集、数据挖掘与自然语言处理技术,结合红麦软件成熟的舆情监测模型,我们为客户提供专业的舆情监测解决方案。

红麦舆情观点

解决思路

用技术手段进行全面监测 
面对复杂的舆情环境,单依靠人力显然不足,需要采用技术手段进行全面监测。红麦舆情监测系统可以全面地对客户相关信息进行立体监测,对舆情信息“一网打尽”。

一体化的专业舆情监测服务体系 
采用舆情监测系统进行监测只是第一步,我们将提供从舆情信息监测、舆情预警、舆情分析到舆情应对等一体化的专业服务。

关键环节

舆情采集 
利用舆情监测系统我们的监测监测范围覆盖论坛类、新闻类、博客、SNS、视频以及平面媒体等, 根据客户的需求,调整相应的监测配置,实现7*24小时全天候监测。

舆情分析 
舆情系统的舆情分析功能将对舆情信息进行自动分类、聚类,权重分析,情感判断,数据统计等分析,在此基础上,红麦舆情分析师结合自身在舆情领域的专业知识与经验,对客户舆情进行热点事件研判、舆情发展趋势等深入分析。 根据客户的需求,调整相应的监测配置,实现7*24小时全天候监测。

舆情预警 
利用舆情系统的自动预警功能,客户能够在预警信息出现的第一时间收到邮件、短信、IM等方式的预警通知,实现真正意义的舆情监测。 根据客户的需求,调整相应的监测配置,实现7*24小时全天候监测。

追踪导控 
对于热点舆情,一方面,系统可做到持续追踪,通过趋势分析图和传播路径分析图等技术帮助用户了解热点事件的报道趋势及来龙去脉;另一方面,舆情分析师会为客户提供专业的舆情导控方案。 根据客户的需求,调整相应的监测配置,实现7*24小时全天候监测。





申万宏源金工新闻云:

http://news.bignews.la/news100.html

http://www.kui4.com/SWSPhotos/newslist.html








大数据技术正在彻底改变IT技术与产业格局
作为大数据技术王冠上的宝石,Hadoop正在引领一个全新技术时代的到来
不懂Hadoop,你将与大数据技术失之交臂;不通Hadoop,你将被大数据时代无情抛弃

█ 高薪酬

数据说话——权威高薪技术排行榜(Dice Tech Salary Survey)最新排名Hadoop居首,也就是说,Hadoop人才的薪酬是所有技术工种中最高的。随着企业对大数据的重视程度日益加深,具备多元统计分析、数据挖掘、预测建模、自然语言处理、内容分析、文本分析以及社交网络分析等职业背景的技术人员必将更受重视,Hadoop将成为大数据时代技术人员获得高薪高职的必备技术技能。

█ 
高需求 

Hadoop
人才薪酬高的同时,伴随着Hadoop人才缺口巨大导致的高需求,本已排名最高的薪酬水平还将持续上涨。企业对Hadoop以及大数据相关技术的兴趣日益高涨,这同时也让大数据技术方面的技术人才炙手可热,Hadoop人才需求成为刚需。 除IT企业外,越来越多的传统行业企业也开始拥抱大数据,在相当长的时期内,企业对Hadoop人才的高需求仍将会持续。

█ 
高回报 

没有高薪酬是万万不能的,但高薪酬也不是万能的。除了获得高薪外,技术人员也希望进行职业提升,在企业内获得更多的重视与尊重,通过Hadoop技术的部署和实施为企业带来更大的商业价值。《Hadoop技术开发与管理实战》精品培训将陪伴你从入门到精通,全面掌握Hadoop技术与维护;同时推动你从技术高手到职场精英的华丽转变,获得真正的高回报。

█ 全新美国同步课程

Hadoop技术开发与管理实战》精品培训引进美国Hadoop先进课程体系,并实时同步更新。国内培训,即可全面了解Hadoop最新的前沿趋势与技术细节。

█ Cloudera认证讲师实力授课

Hadoop技术开发与管理实战》精品培训的讲师是中国第一个获得Cloudera Hadoop课程认证的业界先行者与技术专家,实力授课保证培训质量。

█ 大数据学院权威主办

Hadoop技术开发与管理实战》精品培训由大数据学院权威主办。是国内首家大数据专业教育培训机构。依托于大数据世界论坛,大数据培训学院拥有丰富的师资资源、国际同步的课程体系与优质的服务流程。

█ 身临其境的实战体验

Hadoop技术开发与管理实战》精品培训提供实机操作的培训体验,同时,讲师在授课过程中,实战思想将贯穿始终,保证学员学以致用,学的好,用的精。        

█ 希望事业和职务发展中更进一步的高级技术人才

通过培训补充Hadoop专业技能,丰富自身的知识结构和技术储备,为日后的事业发展和职业晋升赢得核心竞争力。

█ 正在选择和寻找新的职业机会的技术从业者

通过培训获得有关Hadoop分析的专业技能,也有助于希望更换公司和职务的技术从业者获得新的发展机会与职业回报,同时也有助于新入行的技术从业者获得更高的职业起点。

█ 企业高层管理者及IT决策者

通过培训了解Hadoop对管理决策的重要意义及实现方式,培养数据知道决策的意识,助力构建“数据驱动型”企业。

█ Hadoop技术有浓厚兴趣的研发人员及相关人员

通过培训全面地进行Hadoop方面的技术积累,构建系统的Hadoop知识结构,有效推进Hadoop相关研发及相关项目的进展并实现既定目标。

█ 未来希望以Hadoop技术、营销、市场、管理、研究等为事业和职业目标为相关人员

通过培训深入了解Hadoop相关技术和行业应用,为未来的事业和职业发展打下坚实基础。                

与国际同步的《Hadoop技术开发与管理实战》精品培训从市场需求出发,紧密结合行业及企业对数据分析技术的需求实际,针对目前最热门的Hadoop技能提供专业培训。《Hadoop技术开发与管理实战》精品培训拥有全面、系统的体系与内容结构,参考如下:

█ Hadoop Overview | Hadoop概述
• Hadoop Introduction | Hadoop
简介
• Hadoop Ecosystems | Hadoop
生态系统
• Hadoop 2.0 |
新一代Hadoop

█ The Motivation for Hadoop | 为何选择Hadoop
• Problems with Traditional Large-Scale Systems |
传统大规模数据处理系统面临挑战
• Requirements for a New Approach |
需求催生新技术方案
• Introducing Hadoop | Hadoop
出现

█ Hadoop: Basic Concepts | Hadoop: 基本概念
• The Hadoop Project and Hadoop Components | Hadoop
项目与组件
• The Hadoop Distributed File System | Hadoop
分布式文件系统(HDFS) 
• Hands-On Exercise: Using HDFS |
实机操作:使用HDFS 
• How MapReduce Works | MapReduce
如何运行
• Hands-On Exercise: Running a MapReduce Job |
实机操作:运行MapReduce作业
• How a Hadoop Cluster Operates |
如何运行Hadoop集群

█ Writing a MapReduce Program | MapReduce编程
• The MapReduce Flow | MapReduce
工作流
• Basic MapReduce API Concepts | MapReduce API
基本概念 
• Writing MapReduce Drivers, Mappers and Reducers in Java 
• Writing Mappers and Reducers in Other Languages Using the Streaming API 
• Speeding Up Hadoop Development by Using Eclipse |
使用Eclipse加速Hadoop开发
• Hands-On Exercise: Writing a MapReduce Program |
实机操作:MapReduce编程
• Differences Between the Old and New MapReduce APIs | MapReduce
新旧API区别

█ Unit Testing MapReduce Programs | MapReduce程序单元测试
• Unit Testing |
单元测试 
• The JUnit and MRUnit Testing Frameworks | JUnit
MRUnit测试框架 
• Writing Unit Tests with MRUnit |
使用MRUnit进行单元测试 
• Hands-On Exercise: Writing Unit Tests with the MRUnit Framework |
实机操作:MapReduce单元测试框架

█ Delving Deeper into the Hadoop API | Hadoop API深入研究
• Using the ToolRunner Class |
使用ToolRunner类 
• Decreasing the Amount of Intermediate Data with Combiners |
使用组合器减少中间数据
• Hands-On Exercise: Writing and Implementing a Combiner |
实机操作:组合器的编写与实现
• Setting Up and Tearing Down Mappers and Reducers by Using the Configure and Close Methods |
使用配置和关闭方法建立和解除MappersReducers 
• Writing Custom Partitioners for Better Load Balancing |
为更好的负载均衡编写自定义Partitioner
• Accessing HDFS Programmatically |
以编程方式访问HDFS
• Using The Distributed Cache |
使用分布式缓存
• Using the Hadoop API’s Library of Mappers, Reducers and Partitioners |
使用Hadoop APIMappersReducersPartitioners

█ Practical Development Tips and Techniques | 开发技巧与实践
• Strategies for Debugging MapReduce Code | MapReduce
代码调试策略
• Testing MapReduce Code Locally by Using LocalJobReducer |
使用LocalJobReducer测试本地MapReduce代码
• Writing and Viewing Log Files |
日志文件写入和查看
• Retrieving Job Information with Counters |
检索作业信息和计数器
• Determining the Optimal Number of Reducers for a Job |
确定最优Reducer数量
• Creating Map-Only MapReduce Jobs |
创建Map-Only作业
• Hands-On Exercise: Using Counters and a Map-Only Job |
实机操作:使用计数器及Map-Only作业

█ Data Input and Output | 数据输入和输出
• Creating Custom Writable and WritableComparable Implementations |
创建自定义WritableWritableComparable的实现
• Saving Binary Data Using SequenceFile and Avro Data Files |
使用SequenceFileAvro保存数据 
• Implementing Custom Input Formats and Output Formats |
实现自定义输入和输出格式
• Issues to Consider When Using File Compression |
压缩文件时需要注意的问题
• Hands-On Exercise: Using SequenceFiles and File Compression |
实机操作: 使用SequenceFiles和文件压缩

█ Common MapReduce Algorithms | MapReduce常见算法
• Sorting and Searching Large Data Sets |
大型数据集合分类与查找
• Performing a Secondary Sort |
二次排序
• Indexing Data |
数据索引
• Hands-On Exercise: Creating an Inverted Index |
实机操作:进行反向索引
• Computing Term Frequency — Inverse Document Frequency |
逆文档频率
• Calculating Word Co-Occurrence |
计算词共现
• Hands-On Exercise: Calculating Word Co-Occurrence |
实机操作:计算词共现

 Joining Data Sets in MapReduce Jobs | MapReduce数据集插入
• Writing a Map-Side Join | Map
端写入
• Writing a Reduce-Side Join | Reduce
端写入

 Integrating Hadoop into the Enterprise Workflow | Hadoop集成到企业工作流 
• Integrating Hadoop into an Existing Enterprise |
Hadoop集成到企业现有的IT基础设施
• Loading Data from an RDBMS into HDFS by Using Sqoop |
使用SqoopHDFS导数据到RDBMS
• Hands-On Exercise: Importing Data with Sqoop |
实机操作:使用Sqoop导入数据
• Managing Real-Time Data Using Flume |
使用Flume管理实时数据
• Accessing HDFS from Legacy Systems with FuseDFS and HttpFS |
使用FuseDFSHttpFS从保留系统访问HDFS

█ Machine Learning and Mahout | 机器学习与Mahout
• Introduction to Machine Learning |
机器学习介绍
• Using Mahout |
使用Mahout 
• Hands-On Exercise: Using a Mahout Recommender |
实机操作:使用Mahout推荐引擎

█ An Introduction to Hive and Pig | HivePig
• The Motivation for Hive and Pig | Hive
Pig介绍 
• Hive Basics | Hive
基础 
• Hands-On Exercise: Manipulating Data with Hive |
实机操作:使用Hive处理数据
• Pig Basics | Pig
基础 
• Hands-On Exercise: Using Pig to Retrieve Data |
实机操作: 使用Pig检索数据 
• Choosing Between Hive and Pig | Hive
Pig的选择

█ An Introduction to Oozie | Oozie
• Introduction to Oozie | Oozie
介绍
• Creating Oozie Workflows |
创建Oozie工作流
• Hands-On Exercise: Running an Oozie Workflow |
实机操作:运行Oozie工作流

█ Planning Your Hadoop Cluster | Hadoop集群规划
• General Planning Considerations |
总体考虑因素
• Choosing The Right Hardware |
硬件环境选择
• Node Topologies |
节点分配
• Choosing The Right Software |
软件环境选择

 Deploying Your Cluster | Hadoop集群部署
• Installing Hadoop |
安装Hadoop
• Using SCM Express for easy installation |
使用SCM Express轻松安装
• Typical Configuration Parameters |
典型配置参数
• Configuring Rack Awareness |
配置机架感知
• Using Configuration Management Tools |
使用配置管理工具
• Hands-On Exercise: Installing a Hadoop Cluster |
实机操作:Hadoop集群安装

█ Managing and Scheduling Jobs | 调度管理
• Starting and stopping MapReduce jobs | MapReduce
启动停止
• Hands-On Exercise: Managing jobs |
实机操作:Hadoop管理
• The FIFO Scheduler | FIFO
调度器
• The Fair Scheduler | Fair
调度器
• Hands-On Exercise: Using the FairScheduler |
实机操作:使用Fair调度器

█ Cluster Maintenance | 集群维护
• Checking HDFS with fsck |
使用fsck命令检查HDFS
• Copying data with distcp |
使用distcp拷贝大数据文件
• Rebalancing cluster nodes |
集群节点负载均衡
• Adding and removing cluster nodes |
添加和删除集群节点
• Hands-On Exercise: Verifying the Cluster’s Self-Healing Features |
实机操作: 验证集群自我修复机制
• Backup And Restore |
备份和恢复
• Upgrading and Migrating |
升级和迁移
• Hands-On Exercise: Backing Up and Restoring the NameNode Metadata |
实机操作: 备份和恢复NameNode元数据

█ Cluster Monitoring, Troubleshooting and Optimizing | 集群监控、故障诊断与优化
• Hadoop Log Files | Hadoop
日志文件
• Using the NameNode and JobTracker Web UIs |
使用NameNodeJobTracker Web UIs
• Interpreting Job Logs |
工作日志编译
• Monitoring with Ganglia |
使用Ganglia进行监控
• Other monitoring tools |
其他监控工具
• General Optimization Tips |
通用优化技巧
• Benchmarking Your Cluster |
集群基准测试

█ Populating HDFS From External Sources | 从外部来源填充的HDFS 
• Using Sqoop |
使用Sqoop
• Using Flume |
使用Flume
• Best Practices for Data Ingestion |
数据提取最佳实践

█ Installing And Managing Other Hadoop Projects | 安装和管理其他Hadoop项目
• Hive | Hive
• Pig | Pig 
• HBase | HBase
• Hands-On Exercise: Configuring the Hive Shared Metastore |
实机操作:配置Hive共享元数据存储

█ 
Hadoop and Big Data Era | Hadoop
与大数据时代
• Understand big data |
大数据概述
• Big Data and Hadoop Industry Practical Applications and Enterprise Case Analysis |
大数据与Hadoop行业实践应用与企业案例研究
• Big Data Era: Hadoop Development Trends and Opportunities |
大数据时代:Hadoop发展趋势与机遇

培训体系结构图供参考,具体课程安排会进行相应调整

Hadoop技术开发与管理实战》精品培训致力于打造中国最有影响力的大数据专业培训,不但注重技术与技能的讲解与培训,也注重动手能力的培养;不但拥有全面系统的技术体现机构,也同时提供最新行业实践和商业应用的最新资讯;不但丰富学员的Hadoop专业知识结构,也为培训学员提供Hadoop相关职业发展的宝贵建议;不但提供现场授课,也提供后续网上学习和服务机会。参加《Hadoop技术开发与管理实战》精品培训还可以获得培训证书、培训推荐信(适用于更换职位或有求职需求的学员)、《Hadoop与大数据资料光盘》(各大专业峰会论坛及知名公司技术资料等)、培训会员卡(参加后续专项培训享受会员折扣)等。            






































http://lihuaxi.xjx100.cn/news/242943.html

相关文章

leetcode--删除排序链表中的重复元素--python

文章目录题目题目详情示例解题代码思路代码运行结果最佳方案题目 题目详情 给定一个排序链表&#xff0c;删除所有重复的元素&#xff0c;使得每个元素只出现一次。 示例 输入: 1->1->2 输出: 1->2输入: 1->1->2->3->3 输出: 1->2->3解题代码 …

学好web前端开发要注意哪些问题

web前端学起来是比较困难的&#xff0c;当然想要学好web前端技术&#xff0c;那么有一些注意事项一定是要看的&#xff0c;下面小编就为大家详细的介绍一下学好web前端开发要注意哪些问题? ​  学好web前端开发要注意哪些问题? 基础&#xff1a;无论做什么都一定要有扎实的…

thinkphp-条件判断-范围判断-range标签

说明range标签&#xff0c;替换判断用法,其中type属性的值可以用in/notin/between/notbetween&#xff0c; 其它属性的用法和IN或者BETWEEN一致示例{range name"2" value"1,2,3",type"in"}在 {/range}输出在转载于:https://blog.51cto.com/suyan…

leetcode--买股票的最佳时机II--python

文章目录题目题目详情注意示例代码思路解题代码运行结果最佳方案题目 题目详情 给定一个数组&#xff0c;它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易&#xff08;多次买卖一支股票&#xff09;。…

全球首届APMCon,带你给“应用性能”把把脉

前段时间&#xff0c;美国苹果公司应用程序购买商店和手机等一系列应用因技术故障中断服务&#xff0c;持续了约两个半小时。故障发生后&#xff0c;世界多地苹果用户纷纷吐槽无法购买和更新手机应用、无法备份等。其实&#xff0c;这不是苹果公司在线服务第一次掉线&#xff0…

Java培训收费标准是什么样的

java技术在互联网行业的快速发展&#xff0c;可谓是前景非常可观的&#xff0c;越来越多的人想要了解java技术系统学习的培训和收费标准&#xff0c;尤其是想知道Java培训收费标准是什么样的?来看看下面的详细介绍。 ​  Java培训收费标准是什么样的?要说培训学费我们首先要…

必读的 Java 学习资料分享!

大年前总结一篇 Python 的资源汇总&#xff0c;有同学说应该来篇 Java 的&#xff0c;LeanCloud 最擅长 Java 的工程师与大家做了个小分享&#xff0c;仅是根据个人的学习经验总结&#xff0c;如果工程师们还有更好的推荐&#xff0c;欢迎在留言板留言&#xff0c;与大家分享。…

Java培训找什么样的机构比较好

​ Java培训找什么样的机构比较好?很多人都比较关注java技术&#xff0c;想要学习java技术&#xff0c;参加相关工作&#xff0c;但如今市面上的java培训机构那么多&#xff0c;怎么样选择比较靠谱呢?来看看下面的详细介绍吧。 ​  Java培训找什么样的机构比较好?小编这里…