DataScience 板


LINE

不好意思,又就同一個主題來討教。 前陣子我已經用規則和正規表達式完成一個版本, 不過過程中也發現一些問題,是在規則下無法一一解決的, 想和板眾請教、盼能得到一點方向。 目前我大致的做法是: 1. 用每個Google Vision辨認出的文字框的x座標, 做k-means clustering輔以Silhouette analysis, 以決定這份拿到的成績單有幾個欄位(columns)。 2. 根據決定出的每個欄位的文字內容, 用正規表達式去做一個voting system, 去對每個欄位表決這應該是個: a. 科目欄位 b. 成績欄位 c. 分數單位欄位 d. 前標 - 後標參考範圍欄位 四者之中的哪一種。 3. 最後,挑出科目及成績欄位, 依y座標去讓成績欄位中的文字框向科目欄位中的文字框尋求對應。 但是以上的做法有幾個瓶頸: 1. 在上述做法的第一步裡面,最基本的假設是: 成績單總是依直欄排列,不同項目是分佈在不同直欄內。 但其實這假設不為真。 2. 在第二步中,由於是用整個欄位的內容一起表決, 因此會包含許多不需要的文字框,例如我下面引文裡面的第一個例子, 成績欄位就會包含「姓名:王小明」、「考試日期:」、「分數」、「分數」等, 而且「分數」文字框還會對應到「科目」文字框,形成多餘的無意義組合。 這不能用正規表達式挑數字來解決, 因為成績欄位中不一定是數字,還可能是A+、優秀、有待加強、甲上...等文字, 不可能用正規表達式窮盡所有可能。 3. 同種科目可能在各校有不同名稱,且Google Vision回傳的文字不一定是對的。 這會讓日後的資料變得雜亂而無意義。 我需要一個自動校正系統,盡可能基於人類對「成績單」的認知去校正內容, 例如「國文」、「國語」、「中文」、「團文」、「國X」(真的是英文字母X), 全部都應該要是「國文」。 而「90.l」、「90.I」應該是「90.1」,「3A.6」可能是「34.6」。 現在,我的問題可以限縮成幾個也許和ML或DL有關的問題: 1. 中文的自動校正可以怎麼達成? 我有想過用jieba斷詞,去斷已知、正確的科目名稱,再嘗試做模糊搜索, (雖然實務上要怎麼做模糊搜索也還不清楚), 但是,例如「國文」再斷也就是「國」「文」, 用「文」的話「英文」跟「團文」都變國文,「國語」校正不到; 用「國」的話「團文」就校正不到。 這還沒解決成績中也許「優秀」跟「憂秀」都是「優秀」。 感覺需要一個能自我學習的常用詞系統,但不知道怎麼開始。 2. 要怎麼根據單一個文字框的內容,去判斷它屬於哪一類? 我稍微查過text classification,好像都是對一整篇文章做分類, 例如Stack Overflow的auto-tag,或是垃圾郵件的區辨。 但我今天需要的卻是根據也許十個字元以下的內容, 判斷它是上述步驟2中abcd,還有e(無意義文字框如「分數」)的哪一種。 我初步的想法是把每個文字框內容轉成向量,再做KNN, 但我直覺認為很難分得出來, 尤其裡面有好幾個欄位都可能有文數字摻雜,又或者多個欄位都是數字。 例如:成績中有「優」、「95」這兩個文字框; 同時,前標 - 後標參考範圍中也有「優」、「88-96」這兩個文字框。 直覺上它們的向量都是相近的。 拜託各位高手不吝賜教,謝謝~ ※ 引述《parcequetoi (Sky)》之銘言: : 作業系統: Linux : 問題類別: OCR : 使用工具: Python 3, Google Vision API : 問題內容: : 最近正在玩Google Vision API, : 目標是透過OCR辨認出一份報告/成績單的內容(格式不限), : 並轉存成後續可再利用分析的檔案(e.g. json, csv, txt... 這部分還沒想好)。 : 想像有以下三種成績單: : -------- : XXX高中 : 姓名:王小明 性別:男 : 考試日期:2018/01/10 : 語文能力 : 科目 分數 班平均 : 國文 70 75 : 英文 86 87 : 自然科學 : 科目 分數 班平均 : 物理 40 30 : 化學 93 60 : -------- : 實事求是 精益求精 : 姓名:李大同 性別:男 : 考試日期:2018-01-09 : 科目 分數 班平均 : 國文 : CHINESE 90 80 : 數學 : MATHEMATICS 89 90 : -------- : 姓名:黃小美 : 性別:女 : 學號:970284 : 試驗日期:2018-01-08 : 考試科目 全班平均 實得分數 : CHINESE 國文 60 84 : MATHEMATICS 數學 90 92 : -------- : 這三種照片如果整理成CSV,大概都會希望長得像: : 科目,分數,班平均 : 國文,70,75 : 英文,86,87 : 物理,40,30 : 化學,93,60 : 即英文科目名稱忽略不計,留下分數及班平均。 : 至於照片最上面的個人資料都忽略。(如果能留下考試日期當然也不錯) : 目前我已經做到透過Google Vision API的text detection讀出照片上的文字資訊, : (document text detection我也試過但效果不好) : (https://cloud.google.com/vision/docs/ocr: 並且把每個文字框內容依像素座標由上到下、由左到右排列。 : 但緊接著碰到兩個問題: : 1. 成績單上同列資料y座標軸可能不同 : 可能因為成績單紙張不平整或照相時有歪斜, : 所以由上到下、由左到右排列完後, : 可能會有「75,國文,70」這樣的順序,而非期待的「國文,70,75」。 : 這部分我想到或許可手動用rule-based的方法, : 如任兩個文字框y座標不超過n單位就視為同一列之類的, : 但也想請問有沒有更好的做法? : 2. 分辨各欄位內容 : 各家的個人資料排列方式與位置均不同(置中置左置右), : 有些的科目名稱只有中文,有些是中英文對照, : 中英文對照的又可以有在同一行寫或分兩行寫等變化, : 有些把班平均擺前面欄位,有些擺後面...... : 我曾經想過初步的想法是把每個文字框的x座標做x-means clustering, : 再從x座標小的群開始,把每個cluster的內容依y座標排列下來, : 原本預期可以避開上述問題1, : 但是這方法卻不能排除無用的文字框 : (e.g. 「姓名」、「語文能力」、多餘的英文科目列), : 導致每個cluster的元素數量不會一樣多,卻又不是每個元素都需要; : 另外也不能分辨每一個cluster內表示的究竟是班平均還是個人分數。 : 想請問板上高手,有沒有人有相關的資源或實務經驗可以分享?謝謝! --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.74.120.191
※ 文章網址: https://webptt.com/m.aspx?n=bbs/DataScience/M.1525927544.A.2ED.html ※ 編輯: parcequetoi (203.74.120.191), 05/10/2018 13:07:47







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP