重要开始

       今天是个重要的日子,因为今天决定把以前的坏习惯彻底改掉!以前常耍孩子气,一有不顺心就开始看电影,听音乐,玩游戏无所事事,发觉自己太不会调节自己的情绪了。所以以后要像个man一样,坚持,坚持,再坚持,man要对自己狠一点
      

posted @ 2009-09-06 10:00 vincentsim 阅读(66) | 评论 (0)编辑 收藏

人工智能个人入门篇5

   这几天还是比较忙,主要是老板要把论文中提到的技术用到我们的系统中。这几天就是在消化论文并且画流程图。画流程图的过程中又发现了很多以前理解偏差的地方。另外,老板要求把论文中的技术改进,据说是技术指标达不到........我可从来没干过这事啊,只有硬着头皮上了!粗略的看了一下,要用到概率知识和矩阵知识,这些以前都没怎么学好,现在只有哭了,被迫买了两本书,准备从头开始看了...........这几天还把接下来一周的安排给规划好了,感觉效果应该不错

上午:复习。。。。概率和矩阵的知识,就各看一节吧!另外看点论文涉及到的不懂得技术。
下午:电脑前面,看论文,看看流程图怎么改,才能实现老板要求,真囧。。
晚上:实现代码啊,查阅资料啊,

posted @ 2009-09-04 16:53 vincentsim 阅读(78) | 评论 (0)编辑 收藏

人工智能个人入门篇4

          昨天忙着看论文,比较累,所以没有写。今天终于大致看完了,虽然还有很多都不懂,不过大致意思知道了,可以交差了,^_^
          现在总结一下看论文中用到的一些知识,备忘:

        1.Depth Map是对于某盏灯可见(照明)的各物体表面到该灯的距离数据纪录。它相当于在某盏灯的位置摆放一个灯光主方向一致的相机,通过此相机进行渲染而得到的画面,画面上各点的数值即为对应物体表面某点到相机的距离(与渲染Z-depth通道意义相近)。Depth Map纪录数值的精度是浮点,较一般渲染彩色RGB通道的每通道8位(即256级)灰度精确得多。

        2.反照率通常是指物体反射太阳辐射与该物体表面接收太阳总辐射的两者比率或分数度量,也就是指反射辐射与入射总辐射的比值。反照率与反射系数及辐射波长都有密切关系,而通常也与可见太阳光谱作比较。例如新生雪面之平均反射率约占可见光谱各波长总辐射量之0.85,但同一地点的地面辐射反射率可能迹近于零。

         3.转移概率矩阵是俄国数学家马尔科夫提出的,他在20世纪初发现:一个系统的某些因素在转移中,第n次结果只受第n-1的结果影响,即只与当前所处状态有关,而与过去状态无关。 在马尔科夫分析中,引入状态转移这个概念。所谓状态是指客观事物可能出现或存在的状态;状态转移是指客观事物由一种状态转移到另一种状态的概率。 
 
          4.矩阵右上角加个c是什么意思?表示矩阵的补集!

          5.在统计学中,独立成分分析或独立分量分析(Independent components analysis,缩写:ICA) 是一种利用统计原理进行计算的方法。它是一个线性变换。这个变换把数据或信号分离成统计独立的非高斯的信号源的线性组合。独立成分分析是盲信号分离(Blind source separation)的一种特例。
  
          6. 马尔可夫随机游动:有限图上的随机游动(即有限马尔可夫链)近一二十年来在近似算法设计的重要应用,使它受到越来越广泛的关注。这时算法的有效性大部分依赖于所设计随机游动的性能好坏,而随机游动的性能主要由它的几个重要的参数来决定,如平均首达时间,平均覆盖时间,收敛速度等。在马尔可夫链的每一步,系统根据概率分布,可以从一个状态变到另一个状态,也可以保持当前状态。状态的改变叫做过渡,与不同的状态改变相关的概率叫做过渡概率。随机漫步就是马尔可夫链的例子。随机漫步中每一步的状态是在图形中的点,每一步可以移动到任何一个相邻的点,在这里移动到每一个点的概率都是相同的(无论之前漫步路径是如何的)。

          7.各顶点的度均相同的图称为正则图(regular graph)。各顶点度均为k的正则图称为k-正则图。

          8.马科夫链便利性,指稳定后,到各点的概率确定。可以引入特征向量表示。

          9.差分算子: 差分,又名差分函数差分运算,是数学中的一个概念。它将原函数 映射。差分运算,相应于微分运算,是微积分中重要的一个概念。
             算子是表示一种对函数的运算的符号。如同普通的运算符号作用于数后可以得到新的数那样,一个算子作用于一个函数后可以根据一定的规则生成一个新的函数。常见的算子有D(微分算子),∫(不定积分算子),grad(梯度算子),∇(散度算子),△(拉普拉斯算子)等。 
 
           10.随机场(Random field)定义如下:在概率论中, 由样本空间Ω = {0, 1, ..., G − 1}n取样构成的随机变量Xi所组成的S = {X1, ..., Xn}。若对所有的ω∈Ω下式均成立,则称π为一个随机场。π(ω) > 0.   一些已有的随机场如:马尔可夫随机场(MRF), 吉布斯随机场 (GRF), 条件随机场 (CRF), 和高斯随机场

           11。包围体。在计算机图形学计算几何领域,一组物体的包围体就是将物体组合完全包容起来的一个封闭空间。将复杂物体封装在简单的包围体中,就可以提高几何运算的效率。通常简单的物体比较容易检查相互之间的重叠。一组物体的包围体也是包含一个物体及周围相关环境的封闭空间,因此可以用它来表示一个非空、有限的单一物体。

            12.YCbCr 是在世界数字组织视频标准研制过程中作为ITU - R BT1601 建议的一部分, 其实是YUV经过缩放和偏移的翻版。其中Y与YUV 中的Y含义一致, Cb , Cr 同样都指色彩, 只是在表示方法上不同而已。在YUV 家族中, YCbCr 是在计算机系统中应用最多的成员, 其应用领域很广泛,JPEG、MPEG均采用此格式。一般人们所讲的YUV大多是指YCbCr。YCbCr 有许多取样格式, 如4∶4∶4 , 4∶2∶2 , 4∶1∶1 和4∶2∶0。数字电视的色彩空间和计算机不同,不是RGB空间,而是采用一个亮度信号(Y)和两个色差信号(R-Y、B-Y)的YUV空间或者叫YCbCr空间。数字电视采用YUV(YCbCr)色彩空间的原因主要就是为了减少数据储存空间和数据传输带宽,同时又能非常方便的兼容黑白电视(R-Y和B-Y信号为零)。YUV(YCbCr)空间和RGB空间可以相互转换,转换公式如下:
Y = 0.299 R + 0.587 G + 0.114 B
Cb = - 0.1687 R - 0.3313 G + 0.5 B + 128
Cr = 0.5 R - 0.4187 G - 0.0813 B + 128
反过来也可以:
R = Y + 1.402 (Cr-128)
G = Y - 0.34414 (Cb-128) - 0.71414 (Cr-128)
B = Y + 1.772 (Cb-128)

 .

 


 

posted @ 2009-09-01 23:05 vincentsim 阅读(319) | 评论 (0)编辑 收藏

人工智能个人入门篇3

         这几天比较忙,为了赶进度,熬了几天夜,眼睛都肿了,现在都还疼。以后还是要规划好自己的作息时间啊,身体是革命的本钱啊!!
         现在的计划有点变化咯,老板给了几篇人工智能的论文让预研,时间貌似还很紧!大致分配了一下任务吧:周一周二争取阅读完两篇论文(英文的啊),周三把两篇文章实施的可能性写篇总结(如果可以实施可能还要编写代码,那时间就多了去了),一起交给老板吧。
         这几天没看什么书,没有什么收获。不过赶进度完成mfc程序时,涉及到了客户机服务端的通信问题。我们需要客户端每秒发送一串数据给服务器,服务器定时(每秒?)接受并翻译信息。但是做的时候遇到了很多问题:我们准备用tcp实现(不要问我为什么,tcp虽然可以可靠传输,但是它是面向流的,造成了后面遇到了问题。可能还是udp好啊!面向消息的!但是tcp就不能处理这种情况了吗?现在还不知道!没法解决!)。客户端用send发送,服务器端用recv接受,结果经常服务器端接受到的信息开头会出现若干-52-->'?,不知道是什么东东!?,我暂时用程序直接找数据的标志位来解决了这个问题。但是问题又来了:比如说一次发送接收长度是128,如果开始的-52很多,造成最后的数据在128长度内接受不完,而直接收了部分数据,怎么办?读取时会出现bug!现在还不知道怎么解决啊!(难道要丢掉这一秒传过来的数据才行?)不知道各位高手是怎么用tcp解决这种问题的,

posted @ 2009-08-30 18:27 vincentsim 阅读(368) | 评论 (0)编辑 收藏

人工智能个人入手篇2

      这两天老板要交任务了,虽然是一个比较简单的mfc网络通信程序,但是对于我这个很久没用mfc的人,编程还是很麻烦的,估计这两天就耗在里面了。总结一下这几天看人工智能的一些问题,备忘:
      1.A*算法:和A算法有什么区别,还有里面的大于和小于分别表示什么实际意义,可能是数学基本功太差了,现在还不懂哦。
      2.主体:这个概念好像比较牛逼,可以实现很多东西。
      3.brooks推测和copycat.结构:究竟有什么特色了?唯一的理解他是动态随机生成条件和动作的配对关系?看不懂哦。
      4.动态程序设计是什么?其中的BAADDCABDDA和BBADCBA球最佳对齐的算法是什么意思了?没有看懂哦。
      5.概念图(网络语言)和普通的网络语言有什么区别?

posted @ 2009-08-27 20:37 vincentsim 阅读(175) | 评论 (0)编辑 收藏

人工智能个人入手篇

       这几天在看《人工智能》,发觉里面很多知识都是关于符号处理和逻辑推理能力的知识,比较迷茫。那么人工智能的学习该怎么入手了?根据高人的经验,在看书学习过程中,如果不是带着某种目的性的学习,只是看看了事,几乎收获不大。所以,现在尝试着以“对一种人工智能语言改进”的方向入手来学习。这里先粘贴一些百度百科找到的人工智能语言的介绍(方便查阅):


       人工智能(AI)语言是一类适应于人工智能和知识工程领域的、具有符号处理和逻辑推理能力的计算机程序设计语言。能够用它来编写程序求解非数值计算、知识处理、推理、规划、决策等具有智能的各种复杂问题。
  典型的人工智能语言主要有LISP、Prolog、Smalltalk、C++等。
  一般来说,人工智能语言应具备如下特点:
  •具有符号处理能力(即非数值处理能力);
  •适合于结构化程序设计,编程容易;
  •具有递归功能和回溯功能;
  •具有人机交互能力;
  •适合于推理;
  •既有把过程与说明式数据结构混合起来的能力,又有辨别数据、确定控制的模式匹配机制。
  人们可能会问,用人工智能语言解决问题与传统的方法有什么区别呢?
  传统方法通常把问题的全部知识以各种的模型表达在固定程序中,问题的求解完全在程序制导下按着预先安排好的步骤一步一步(逐条)执行。解决问题的思路与冯.诺依曼式计算机结构相吻合。当前大型数据库法、数学模型法、统计方法等都是严格结构化的方法。
  对于人工智能技术要解决的问题,往往无法把全部知识都体现在固定的程序中。通常需要建立一个知识库(包含事实和推理规则),程序根据环境和所给的输入信息以及所要解决的问题来决定自己的行动,所以它是在环境模式的制导下的推理过程。这种方法有极大的灵活性、对话能力、有自我解释能力和学习能力。这种方法对解决一些条件和目标不大明确或不完备,(即不能很好地形式化,不好描述)的非结构化问题比传统方法好,它通常采用启发式、试探法策略来解决问题。
  人工智能程序与传统程序之间的差别
  在处理一些简单问题时,一般传统方法和人工智能用的方法没有什么区别。但在解决复杂问题时,人工智能方法与传统方法有差别。
  (人工智能程序与传统程序的差别)——传统方法:把问题的全部知识以各种的模型表达在固定程序中,问题的求解完全在程序制导下按着预先安排好的步骤一步一步(逐条)执行。这种方法解决严格结构(Well Structured)问题非常有效。如果把这类问题形式化为三元组(x,->,y),“x”是给定的信息,“->”为求解途径,“y”是目标。传统方法的特点:“x”、“y”是明确的、完备的;“->”有着固定的明确的程式。这个方法之所以有效,主要是因为这个思路与冯.诺依曼式计算机结构相吻合。当前大型数据库法、数学模型法、统计方法等都是严格结构化的方法。
  人工智能方法:人工智能要解决的问题,无法把全部知识都体现在固定的程序中。它要建立一个知识库(包含事实和推理规则),程序根据环境和所给的输入信息以及所要解决的问题来决定自己的行动,所以它是在环境模式的制导下的推理过程。这种方法有极大的灵活性、对话能力、有自我解释能力和学习能力。这种方法对解决一些弱结构(ill structured)问题比传统方法好。弱结构指“x”、“y”不大明确或不完备,即不能很好地形式化,不好描述。“->”用试探法。AI也尚未发展到完全能解决这类问题的全部问题。这类问题是AI研究要解决的问题。随之而来也希望计算机硬件结构也来一个革命,突破冯.诺依曼体系结构。
  人工智能语言的特点
  由于人工智能研究的问题的特点和解决问题的方法的特殊性,为了能方便而有效地建立人工智能系统,需要发展专门的人工智能语言。人工智能语言的特点是什么,亦即人工智能语言应具备的特征是什么?
  一般来说,人工智能语言应具备如下特点:
  1.要有符号处理能力(即非数值处理能力);
  2.适合于结构化程序设计,编程容易;(要把系统分解成若干易于理解和处理的小单位的能力,从而既能较为容易地改变系统的某一部分,而又不破坏整个系统。)
  3.要有递归功能和回溯功能;
  4.要有人机交互能力;
  5.适合于推理;
  6.要有把过程与说明式数据结构混合起来的能力,又要有辨别数据、确定控制的模式匹配机制。
  函数型语言LISP和逻辑型语言PROLOG都适合作符号处理,都适合于结构化程序设计(LISP提供了函数定义,prolog提供了谓词定义),都具有递归功能(prolog还具有自动回溯功能),都具有人机交互能力(prolog还特别适合于推理),也都具有把过程与说明式数据结构混合起来的能力以及辨别数据、确定控制的模式匹配机制(LISP将程序与数据均表示为表,因此可以把程序作为数据处理,也可将数据当作程序来执行。Prolog用一致的数据结构“项(term)”来构造数据和程序,事实、规则和询问的表现形式都为Horn子句,执行时作统一的操作匹配。LISP的匹配函数、prolog的合一运算自动匹配、自动搜索都具有很强的模式匹配机制。)因此可以说LISP和prolog是两种较为典型的人工智能语言。
  人工智能语言
  在人工智能的研究发展过程中,从一开始就注意到了人工智能语言问题。人工智能发展的初期,人工智能语言就得到了研究和开发。实际上四十多年来有一百来种人工智能语言先后出现过,但很多都被淘汰了。它们大抵有三个来源。第一个来源是计算机科学家们对可计算性理论的研究。例如,LISP语言是为处理人工智能中大量出现符号编程问题而设计的,它的理论基础是符号集上的递归函数论。已经证明,用LISP可以编出符号集上的任何可计算函数。Prolog语言是为处理人工智能中也是大量出现的逻辑推理问题(首先是为解决自然语言理解问题)而设计的。它的理论基础是一阶谓词演算(首先是它子集Horn子句演算)的消解法定理证明,其计算能力等价于LISP。OPS5面对的问题也是逻辑推理。不过PROLOG是向后推理,OPS5是向前推理。OPS5的理论基础是Post的产生式系统,其计算能力也等价于LISP。第二个来源是认知科学的研究成果。人们研究出各种各样的认知模型,并为这些模型设计相应的知识表示语言。例如产生式表示、框架表示、语义网络表示等实际上都有其认知模型作为背景。如上所述的OPS5是产生式表示的语言,SRL、FRL、FEST等是框架语言,概念图和SNetI都是语义网络表示语言。面向对象的程序设计是在SIMULA中的类程和Minsky的框架表示两种思想融合的基础上发展起来的(它适用于计算机软件的所有领域,不只是人工智能)。
  近年来出现了具有人工智能特色面向对象程序设计,称为面向主体(Agent,亦称活体)程序设计。往一个对象中增加更多的智能,使它能根据环境的变化进行推理并规划自己的行为,就得到主体(Agent)。主体概念符合Minsky提出的“意念社会”认知模型,特别适用于分布环境。经典的面向对象程序设计语言是Smalltalk,面向主体的程序设计语言也已经有了一些,如OZ等,但还没被大家公认和普遍采用。也有基于PDP认知模型(Parallel Distributed Processing)的神经网络语言。第三来源是知识工程的实际需要。例如,为了开发各种领域的专家系统而设计的包含不精确推理或不确定推理功能,甚至包含多种不同推理机制的AI语言,例如Loops和TUILI。还有的是看到某一个专家系统做得比较成功,干脆抽去它的领域知识,留下它的表示方法,也成为一种语言,俗称专家系统外壳。例如,抽去医学专家系统MYSIN的领域知识就得到一个外壳语言Emycin。
  在人工智能手册中介绍了七种人工智能语言:
  LISP,PLANNER,CINNIVER,QLISP,POP-2,SAIL,FUZZY。近百种人工智能语言中,只有LISP和后起之秀Prolog是人工智能研究和应用中占重要地位的两种人工智能程序设计语言。虽然国内外对这两种AI语言曾有争议,褒贬不一,但LISP和PROLOG的重要性是都不可否认的。
  谈到LISP和PROLOG两种AI语言的重要性,我们可以从美国AI界的权威学者、麻省理工学院教授P.H.Winston(温斯顿)所说的三段话来体会:
  (1)温斯顿认为,LISP 语言是AI的数学,不仅对AI的机器实现有重要意义,而且是AI理论研究的重要工具。
  (2)“在中世纪,拉丁文和希腊文的知识对所有学者来说,都是必不可少的。只懂一种语言的学者必然是一个残缺不全的学者,他缺乏从两个方面来观察世界所获得的那种理解力。同样地,现代的AI专业人员如果不能同时大致通晓LISP和Prolog,也犹如一个残疾人,因为就广义来说,这两种人工智能的主要语言的知识都是必不可少的。”
  “我一直热衷于Lisp,Lisp是在MIT被制造并且在那儿成长起来的。”
  (3)概括地说,计算机语言的发展正是一个从HOW型低级语言向WHAT型高级语言进化的过程.在HOW型语言中,程序编制者必须详细说明运算是怎样(HOW)一步一步进行的;而在WHAT型语言中,程序编制者只需简单说明要做的事情是什么(WHAT) 。 …现代的LISP语言是这些语言的佼佼者,因为采用Common Lisp格式的Lisp具有非凡的表现力,但是如何做某件事情仍然是有待于Lisp程序编制者来表达的东西.相反,Prolog是一种明显地冲破了HOW型语言陈规的语言, 它鼓励程序编制者去描述情况和问题,而不是那些用来解决问题的详细步骤。”
  由以上论述可以看出LISP语言和Prolog语言对人工智能学科和人工智能学者的重要性。
  一般来说,LISP可以称为人工智能的汇编语言, Prolog是人工智能更高级的语言。

posted @ 2009-08-26 22:03 vincentsim 阅读(313) | 评论 (0)编辑 收藏

重要的第一次

       这是第一次网上注册博客,作为自己的一个学习工作备忘,希望能够督促自己不断进步,也希望能和大家一起交流共同提高!以后会常常把自己的工作学习心得拿出来晒晒,只有不怕晒才能提高。

posted @ 2009-08-25 23:41 vincentsim 阅读(243) | 评论 (0)编辑 收藏

仅列出标题
共2页: 1 2 
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

导航

统计

常用链接

留言簿

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜