主要有這樣三個大的原因
1.一詞多義,容易產生歧義
2.文化原因,相同的話在不同的文化中表達的意思不太一樣
3.人們很多時候不嚴格按照語法去使用語言
剛開始的時候翻譯軟體採取的方式一般是嚴格按語法來,先是整個詞庫.然後把一句話拿來之後是先是把裡面的詞乙個個對應的替換掉,然後再按語法規則,把詞的順序擺好.就像我們現在編譯器做的事一樣,編譯器實際上也是個簡單的翻譯軟體,把源**翻譯成機器能識別的機器語言.不過由於程式語言是簡潔無任何歧義,如果哪個地方有歧義它就當成錯誤處理的.而自然語言往往有歧義,比如乙個詞會對應非常多的意思,而不僅僅是乙個意思.英語裡乙個詞的意思就特別多,往往有一二十個意思.漢語的話還稍微好點,乙個詞的意思不會太多,實際上古代漢語乙個詞對應的意思也蠻多,你學過文言文的話就能深刻的體會到.
乙個多義詞的具體意思要看語境,所以一般還會整出很多常用的短語來.幾個詞在一起就叫短語.此時具有了語境,就可以消除大部分歧義了.隨著儲存裝置的發展可以在翻譯軟體中多儲存些短語了,而不僅是詞的意思.本來如果這樣一來的話準確率應該蠻高了.但實際上用上這些方式翻譯出來的東東還是準確率極低.特別是在日常用語而不是學術性的文章中.這是為啥呢?
很多話不在一定的文化背景下是理解不了的.而文化因素是個比較虛的東西,是各種習俗文化的傳承,你不能說想辦法把某個文化搬到電腦裡去.比如中國有句罵人的話,我問候你全家女性.翻譯成英語後,那些向來講究紳士風度,女士優先的老外們一看覺得中國人真有禮貌啊,這麼尊重女同志啊.連人都不能很好的理解,你指望翻譯軟體給你翻譯好嗎?
另外像中國的詩歌,方言文就更不好翻譯成英語,翻譯過去簡直是面目全非了.像唐詩宋詞你翻譯成英語後還有啥意思呢,根本就變成了幾句廢話了,失去了原有的韻味了.
另外翻譯不准還有乙個原因,是翻譯軟體永遠不可能百分之百的準確的原因.人使用語言時總是沒有完全按語法去做,總是不斷的犯語法錯誤,而平時我們把一些病句也不當成錯句.我們知道程式語言是先制定一些語法規則,然後編譯器也不是全部按語法來,而給出自己的一些規則.但不管怎麼說這都有確定的規則可參照.然後程式設計師就開始寫源**.邊寫邊用編譯器檢查下看有語法錯誤不.所以最終寫出來的**一般沒啥問題的.程式語言是先有語法才後有源**.
而我們的自然語言可不是先有語法才有語言的.我們中國幾千年來都沒有啥嚴格的語法.連標點符合都沒,最多有幾個點點.我們現在上語言課學的語法和標點符號是**時期很多語言大師們參照英語中的語法體系整出來的.
所以你能指望我們使用語言時完全遵照語法來嗎?雖然我們的教育體制是一開始就想誘使我們完全按語法來.我們讀書時最印象深刻的是啥判斷病句的題目了.但大家一從學校出來後就把那些語法規則拋一邊去了.很少有人說話或寫文章時還老考慮自己寫病句不,當然一些專業的編輯,語言學者,作者,法律條例制定者不在此例啊.於是我們往往在不自覺的傳播病句.
另外人往往容易偷懶,一些句子能省略就省略,往往用些關鍵字就差不多了.而且由於日常生活中那些眾多的病句也沒給我們帶來啥太多的不便.因為人是很聰明的,根據幾個關鍵字就能知道你說啥了.
而且按常理來說,語言只是一門方便我們交流的工具,只要能達到我們的目的,也不一定要完全按語法去做.
由於老嚴格按語法來翻譯準確率老提不高,於是很多聰明人自然會想辦法.於是出現了一種基於經驗的方法.通過分析大量已存在的語言資料.各種書籍,文章.從中找出一些語句和短語的搭配規律.主要統計一下某個詞出現在另外乙個詞的前面或後面的概率.前面有講到單個詞有歧義通過常用短語用消除歧義.而這裡把常用短語的概念擴充套件了.有更多的常用短語(按照概率來確定是不是常用),而且各個短語之前的組合也考慮在內.
所以現階段的翻譯軟體的進步主要體現在收集並分析海量語言資料.以後可能還會把一些常用的語句的對應意思直接儲存下來,當作乙個詞一樣.就不用做啥轉換分析.比如廣東話裡面罵人的話,我頂你個肺,就直接當作乙個詞一樣儲存.比如就代表**** you的意思.
Reachability判斷的不準確 檢測網路
nsstring strnetworktype 建立零位址,0.0.0.0的位址表示查詢本機的網路連線狀態 struct sockaddr storage zeroaddress bzero zeroaddress,sizeof zeroaddress zeroaddress.ss len size...
羅斯蒙特壓力變送器壓力測量不準確的原因你都了解嗎
羅斯蒙特壓力變送器壓力測量不準確的原因解析 羅斯蒙特壓力變送器現在很多客戶都會選擇使用它,但是很多客戶由於不是很清楚它的特性,所以由於一些不正當的操作就會導致其測量資料不正確,下面就帶大家尋找關於它的一些常見的測量資料不准的原因吧。羅斯蒙特壓力變送器壓力測量不准原因 1 羅斯蒙特壓力變送器電源是否正...
移動端rem定位不準確的解決
在專案中使用rem進行適配,在大部分機型上都沒有問題,但是在某些機型上卻出現了百分比的適配正確,rem的適配明顯出現錯誤,導致出現橫向滾動條或者圖示疊起來的問題。拿到 後重新跑了幾遍發現通過js算出的font size值應該是正確的,新增到元素的時候也是正確的,那 會出問題呢?列印了很多獲取值之後加...