項目 內容 這個作業屬于哪個課程 人工智能實戰2019 這個作業的要求在哪 [作業要求]https://edu.cnblogs.com/campus/buaa/BUAA-AI-2019/homework/3296) 我在這個課程的目標是 了解人工智能相關知識,提高編程能力 這個作業在哪個具體方面幫助我實現目標 提高算法思考能力 作業正文 (http://www.rzrgm.cn/-myq123/p/10965787.html)
思考題1:如何識別不合法(既非數字也非符號)的輸入?
不合法的輸入與合法的輸入差別應該是沒有一個數字或符號與其特別匹配,所以可以設定一個閾值,當一個輸入的所有特征值都低于閾值時則可以判定為不合法輸入,這個閾值可能不好確定,也需要先進行訓練一下,進一步精細一點可以設定一個特征值,例如標準差,當輸入的特征值超過閾值在一定范圍時,可以通過檢驗特征值的標準差來確定是否為合法輸入。
思考題2:如何設計該計算器應用以識別下列元素:
A:更多的符號,比如sin函數
B:復雜的表達式結構(上下結構),比如指數$e^x$,分數\frac{$pi$}{2}
C:更復雜的表達式結構(包圍結構),比如平方根\sqrt[2]{$a2$+$b2$}
A:可以建立一個函數字典,識別時優先匹配函數,不符合在當做普通符號對待
B:首先考慮數字,符號之間的分割,這個通過判斷斷點可以把單個數字,符號分開,然后計算每個字符的中心點以及字符高度,對于指數,通過中心點相對距離容易判斷,分數有三層,應該也比較好判斷,當表達式比較復雜時,必須把這些基本結構當成一個整體,指數優先,分數次之,然后重新計算中心點,或者指數(單獨的)可以以底數的中心點為整體的中心點,分數可以以中間的橫線作為整體的中心點,然后繼續這個過程。
C:對于包圍結構,首先要識別出根號,然后識別出開幾次方,一般來說上下標都在符號的右邊,而根式卻在左邊,(平方根可以不寫冪次),根號可以單獨訓練識別出來,左邊的上標應該難度也不大,然后考慮的是如何確定根式下面有哪些符號,這個需要確定根號邊界點,以及符號的水平位置,這個依然考慮符號的中心點,再加上符號的寬度,在根式外沒有上下結構時,當中心點在在根號的左右邊界之間時,可以認定為其在根式內,當中心點稍超出時,可以考慮超出部分占字符寬度的比例,設定一個閾值,判定其是否應該認定為根式內,當根式外有上下結構時,還需確定根號的上下邊界,在一句中心點等判斷。
浙公網安備 33010602011771號