人工智能实战2019第8次做业_李大

项目 内容
课程 人工智能实战2019
做业要求 人工智能实战第八次做业(我的)
个人课程目标 第一次做业 介绍本身,提出课程项目建议
个人Github主页 LeeDua

思考题1 - 如何识别不合法的输入

  • 分类的几率输出来自于softmax,不合法输入的输出值送进softmax前相对于合法输入导出的输出在此处的分布状况会有较大差别。
  • 对于给定字符_alpha_,softmax前输出_ALPHA_,能够预先计算其余合法l={a,b,c,d,1,2,3,...}在softmax前输出分布的集合L,L中每一个元素能够以一个N维(总类别数)正态分布拟合,人为设定sigma断定使ALPHA落在全部L中分布均值sigma外时认为alpha为非法输入。

思考题2 - 如何识别下列元素

  • 算式的语义识别本质上是一个编译问题
  • 进行图像预处理、轮廓提取得到预约义的合法的字符流后,要作的就是根据字符流按照预约义的合法记号(能够包括多个字符,若是是运算符还能够包含关联字符的关系)按照预约义的记号结构进行记号提取,这一部分就是lexer。
  • 以后根据lexer返回的记号流按照预约义的算式文法规则进行语义分析和语法制导计算就是parser。
  • 具体地回答三个问题:
  • A:支持sin:已能分别识别s,i,n后若是在一个字符流读到s,继续向后读i和n,若是读到了return TOKEN_SIN,若是没有将后面多读的字符rollback回记号流按照读到了一个s继续处理。
  • B:复杂的表达式结构:任何表达式结构能够定义一个运算符,指数结构定义成x^y运算符,分数结构定义为竖式x/y,如此返回的字符须要包含该字符的空间关系或该字符在读字符流的过程当中根据该字符和以后的字符的空间关系判断是否知足预约义好的运算符规则。
  • C:和B没有任何区别,只不过须要根据文法屡次记号递归,文法中须要定义某些记号的做用范围,即结合性(如定义根号的做用范围从而读到根号后把其下的全部记号一次所有读出再作处理;指数运算符单一字符左结合,从而不会出现(a^2+b)^2的行为)

最终,任何算式都能按文法表达成抽象语法树,对树作后序遍历的过程当中根据节点的类型(字符、运算符的类型)作对应的语法制导翻译(计算),顶层节点不断调用子节点的计算函数进行递归计算便可求出整棵树顶节点的值,即整个表达式的值。git

相关文章
相关标签/搜索