Paper Bad Smell Detection (2)

OMG, 我居然回了自己兩年前的文章 ( Paper Bad Smell Detection, 2008/03/23 ). 話說當初寫的時候以為很快就會做看看了, 結果是最近接連寫投 SEKE 2010 以及 ICSEA 2010 的 Papers 時才驚覺沒這 Tool 不行, 我寫 Paper 很粗心, 邏輯上問題不大但是就是很容易犯一些 Bad Smells.

事實上如果以 English Grammer Check 之類的關鍵字去找, 可以找到許多 Online Services, 但是一來這些 Services 大多沒有提供 Web API, 二來用這些 Services 檢查 Paper 內容難免會有高度的 Security 問題 ( 不過這個問題很有意思... ), 因此在這些考量下就先被我打槍了, 稍後再試試看.

另外在 PC 上用的工具目前試過了老牌的 Diction & Style, 真是有趣的工具, 更加佩服以前的 Unixers 了, 為什麼以前都沒發現這工具呢 ?

不過這類工具基本上還是 Tools for General Purposes, 屬於一般性的檢查, 對於科技論文內容, 或是為領域特定的撰寫風格做調整還是有一定困難. (總之我就是想寫寫看啦~)

總而言之, 最後還是利用 Python 寫了一個簡單的 Tool. 這 Tool 的雛形事實上在去年的 First DBSE Hack Day 被我提出來做, 但是大家七手八腳結果是沒做完, 餘下的 Code 可利用性也不高, 所幸 Dynamic Rule Instantiation 的部分可用, 省下我一些功夫. 從這次經驗再次驗證 (1) Documentation 不可少, (2) 不要在 Prototyping 時要求完美.

完成的 Tool 其實只是很簡單的把 Abstract 跟各個 Sections 的內容抓出來而已, 輔以 Regular Expression 檢查區分正常的文字內容跟圖表, 我連句子中的 Tags 都不額外處理了. 再利用 Regular Expression 來制訂一些 Bad Smells 會出現的情況, 最後簡單的把結果輸出成 HTML Table, It's Done !!



目前可以檢查 ( All are Customizable ) :
  1. Long Sentences
  2. Vague Words
  3. Countable/Uncontable Words
  4. Similair Words
  5. Verb Auxiliary + V-ed Violation
雖然功能還有待加強啦, 而且準確率也有問題, 不過本來這些 Bad Smells 幾乎都是作者需要自行確認是否屬實的, 況且改 Papers 時是寧可錯看 100 個 False Alarms 也不願意漏掉任何一個 Fault ( 安慰自己 XD )

拿來驗證之前被老師批改的 Paper 初稿們, 的確可以抓出不少被老師訂正的地方 :)

0 意見:

Designed by Posicionamiento Web | Modified by seLain | Bloggerized by GosuBlogger | Blue Business Blogger