第52章 “感知機”的初次實戰

業餘黑客有個潛規則。

政府機關、金融系統、電子商務……這類網站的後臺,是機密重地,通常有高手坐鎮,沒事最好別去溜達。

被網監或者安全專家盯上,十有八九落不了好。

而個人網站、小型辦公網絡、學校網站……

這種信息安全不太敏感的,僅僅是瀏覽或下載一些數據,一般不會有什麼大問題。

比如從鐵道部官網12306爬點數據,做個輔助訂票系統什麼的……

但無論任何地方,肆意破壞總是不被允許的,這是底線。

《原始數據表》的奇怪情況,身份證位數不對,側面支持了這種可能性。

通過黑客手段獲取數據,有時候會遇到一些匪夷所思的問題,比如數據格式特殊,下載的數據寬度受限……

有時候,甚至在後臺數據庫裡,只能找到數據的一部分,而其餘部分被保存在無法訪問的文件裡。

寫後臺程序的人,會基於各種各樣的理由,寫出可讀性極差的代碼。

比如:讀寫效率、數據安全、修補bug、系統健壯……

又或者不想被人繼承代碼,取代自己的位置,甚至單純爲了個人興趣、編程風格……

都可能導致這些人,搞出種種令人費解的騷操作。

當然,也可能老高的技術還有缺陷,或者他是從虛擬內存、交換文件裡挖掘出來的數據。

也有可能在“作案”過程中被人盯上,不得不提前斷開連接……

總之,擺在江寒面前的,就是這麼兩張各有缺陷的表格,外加一個圖片壓縮包。

接下來,江寒首先要做的,是從《原始數據表》裡,篩選出需要的記錄,複製到《報名信息表》裡。

這一步非常簡單,只要用excel自帶的VBScript編寫一個小腳本,將兩個表格按照姓名匹配,就可以得到每個考生在原始表裡的行號。

當然,同名同姓是避免不了的,可能報名信息裡一個“張三”,在原始數據裡會找到一堆“張三”……這個一會兒再說。

腳本編程非常簡單,江寒只用了二十分鐘,就寫完程序並調試無誤。

按了一下預設的快捷鍵,腳本開始執行。

一邊是3萬多行的考生姓名,一邊是10萬多行的原始數據,腳本足足跑了八分鐘,纔得到了一個映射關係表。

接下來,是第二個腳本,參照映射關係表,將原始數據文件篩選出需要保留的行,其他行全都刪除,然後按照《報名信息表》的序號,重新進行排序,得到臨時文件1。

這個臨時文件的行數,要比報名表多出幾千行,這是因爲江寒對重名進行了處理,將重名的人都編上了相同的二級序號。

接下來處理重名。

經過一番分析,江寒發現,原始數據表和報名信息表裡的數據,排列順序是有規律的。

其以地區爲主關鍵字,所在學校爲次要關鍵字,而所在班級則是第三關鍵字排序。

也就是說,一個學校裡,一個班級的人,都挨在一起,學校、地區之間也沒有混亂。

這樣就好辦了。

由於臨時文件已經按序號排列,重名的人擁有同樣的二級序號,自然就聚攏在了一起。

這時,只要看一下這些人的所在地區和學校,就能輕鬆分辨出哪些是多餘的,那個纔是真正對應於《報名信息表》的。

如果一個班級也有同名,就只能具體情況具體分析了,實在確定不了的,就先記下來,放在一邊,以後再說。

一番整理後,臨時文件1已經十分接近高老師希望得到的《報名信息表》。

聯繫電話、家庭住址,畢業學校、班級、民族、年齡、出生年月日都有了。

接下來是重頭戲,通過照片判斷每個學生的性別。

幸運的是,雖然《原始數據表》裡的身份證號,殘缺不全,導致性別信息不可用,可是《報名信息表》裡還有部分殘餘的性別數據。

這就給江寒減少了許多負擔。

接下來,先將照片.rar解壓,然後觀察了一下。

三萬多張照片,按學校、班級分類,放入幾千個文件夾中。

每個文件的大小,都在10KB至30KB之間。

像素只有210*120,不算特別清晰,但看清面部特徵,還是沒什麼問題的。

其中,同班級裡重名的情況,都在姓名後標記着數字1、2……

江寒猜想,這可能是輸入報名表的順序。

接下來要做的,就是在臨時文件1裡,找到每張照片對應的人。

這很簡單,照片的文件名就是姓名,輕鬆就能和表格裡的名字對上。

在解決了數量不算很多的同班重名問題後,就生成了一個照片索引,將每一張照片和報名序號一一對應上了。

然後,是判斷性別,填入新《報名信息表》對應的單元格里。

這一步,按照高老師的想法,就是一個笨功夫,用眼睛去看,然後一個一個敲進去。

這十分麻煩,而且太沒效率。

江寒希望能找個輕巧的辦法,能更快、更好的完成這一步。

那麼,這樣的辦法真的有嗎?

是的。

江寒畢竟搞過機器學習,編程思維有點不一樣。

高老師那樣的普通程序員,也能做到剛纔那些步驟。

但江寒接下來的操作,就是他的思維盲區了。

機器學習裡,有多種算法,都可以輔助完成這樣的任務。

其中江寒最擅長的,自然是人工神經網絡。

人工神經網絡也分爲好多種類。

比如CNN,也就是卷積神經網絡,是最擅長圖形識別的;

而RNN,也就是循環神經網絡,比較適合語音識別、自然語言理解……

如果採用人工神經網絡,哪怕不出動CNN,只用多層神經網絡,也就是所謂的“深度學習”,也可以非常完美地解決這個問題。

但江寒琢磨了一下,還是放棄了這個想法。

一旦泄露出去,他很可能會有麻煩。

因爲這些技術的來源,他根本沒法解釋。

技術跨度太大了。

好吧,安全第一,先用“感知機”湊合一下。

哪怕準確率低點,也無所謂了。

江寒現在唯一可以拿出來的,就是“單層感知機”。

這種技術只能解決二分類問題,並且還要求線性可分。

好在當前所面臨的問題,這兩個要求正好都符合。

江寒重生前,做過一個實驗,用“單層感知機”識別手寫數字,應用場景與現在差不多。

效果也還過得去。

所以,看照片識別男女的任務,完全可以使用“單層感知機”解決。

說起來,這可能是神經網絡技術,在這個世界的第一次實戰?

江寒前幾天寫的論文裡,就有“單層感知機”的代碼,稍微改動了一下,就能用上了。

研究機器學習,首選語言是Python,語法簡單,開發效率高,不容易出錯,也不用關心底層如何實現。

不過,這篇論文的代碼,實在太簡單,用什麼都一樣。

所以,江寒使用了最熟悉的C++。

代碼略……

(PS:絕對不是空白太小寫不下。)

第311章 系統安全特聘測試員第145章 陳萱的邀請第139章 野豬!?第71章 憑什麼是江寒?第292章 江寒的靈氣與編程之道第102章 怎麼就這麼不好對付?第1章 一夜回到十年前第397章 作曲大師,自帶乾糧第57章 非常巨大第97章 媽媽問我爲何跪着看手機?第71章 憑什麼是江寒?第146章 給你個眼神自己領會第136章 打造算術邏輯單元第347章 中計了第73章 臭屁不過金少樓第249章 胸有成竹,根本不慌第391章 一切交給時間第26章 週一凡的震驚第259章 江寒的秘奧義第425章 街頭象棋第359章 大佬,怪蜀黍?第409章 晨曦III巨型計算機第427章 詭異的附加關卡第256章 擴展歐幾里得算法,以及增強線段樹第216章 有些事,再多的錢也沒得談第93章 《泡沫》第315章 故伎重施第93章 《泡沫》第144章 時序邏輯電路和寄存器第399章 此一時,彼一時第236章 意志堅強,沒有毛病第284章 江寒的操作第11章 像我這麼專一第323章 麻雀還是蚊子?第75章 金少樓的警告第340章 實力還是運氣?第64章 渣男第180章 想謙虛都沒地方謙虛第297章 Py大法威力無窮第322章 愚者注視着你第5章 三個系統準備就緒第209章 校服就是最正式的裝扮第230章 萬物皆可“壞蘋果”第6章 三個系統倒有四種資源?第30章 立人設第197章 除了不能說的第257章 NOIP中最難的題型第174章 良心工作室第229章 從源頭上防仿製?第290章 其實已經有點過時了第73章 臭屁不過金少樓第321章 星戰銀行,黑卡飛刀第251章 特效藥第390章 兩份DNA檢測報告單第86章 蘇婉瑩的預測第267章 數據增廣和集成學習第102章 怎麼就這麼不好對付?第272章 冤死駱駝的最後一根稻草第136章 打造算術邏輯單元第324章 如果是江寒哥哥的話……第130章 大佬和小蘿莉第350章 男生不準進去的地方第18章 就是普通同學第97章 媽媽問我爲何跪着看手機?第370章 四軸飛行器第131章 夏雨菲的小秘密第22章 名偵探婉瑩第177章 口是心非的非第285章 “彈性碰撞”第76章 還有什麼是他不會的?第149章 夢後樓臺深鎖第321章 星戰銀行,黑卡飛刀第69章 論如何追女孩紙第330章 小孔成像和PNP問題第161章 論腦補,只服你第230章 萬物皆可“壞蘋果”第68章 舉報了、舉報了第211章 就當幫他們改進一下服務質量了第204章 是男人就餵飽她第387章 打印機和繪圖儀第349章 說錯了什麼?第132章 做個小遊戲第182章 罪證都沒銷燬乾淨第17章 男朋友挺好第414章 蚊子再小也是肉第401章 有種奇遇叫頓悟第393章 男人不能沒有事業第255章 調整超參數,以及防止過擬合第166章 意外的變化第245章 什麼事兒比NOIP還重要?第289章 對等原則第317章 爲什麼偏偏是那串數字?第268章 最終版本第122章 騙過多少女孩子?第34章 遊戲發佈第180章 想謙虛都沒地方謙虛第256章 擴展歐幾里得算法,以及增強線段樹第55章 委託第125章 我有一個同桌第9章 實名震驚
第311章 系統安全特聘測試員第145章 陳萱的邀請第139章 野豬!?第71章 憑什麼是江寒?第292章 江寒的靈氣與編程之道第102章 怎麼就這麼不好對付?第1章 一夜回到十年前第397章 作曲大師,自帶乾糧第57章 非常巨大第97章 媽媽問我爲何跪着看手機?第71章 憑什麼是江寒?第146章 給你個眼神自己領會第136章 打造算術邏輯單元第347章 中計了第73章 臭屁不過金少樓第249章 胸有成竹,根本不慌第391章 一切交給時間第26章 週一凡的震驚第259章 江寒的秘奧義第425章 街頭象棋第359章 大佬,怪蜀黍?第409章 晨曦III巨型計算機第427章 詭異的附加關卡第256章 擴展歐幾里得算法,以及增強線段樹第216章 有些事,再多的錢也沒得談第93章 《泡沫》第315章 故伎重施第93章 《泡沫》第144章 時序邏輯電路和寄存器第399章 此一時,彼一時第236章 意志堅強,沒有毛病第284章 江寒的操作第11章 像我這麼專一第323章 麻雀還是蚊子?第75章 金少樓的警告第340章 實力還是運氣?第64章 渣男第180章 想謙虛都沒地方謙虛第297章 Py大法威力無窮第322章 愚者注視着你第5章 三個系統準備就緒第209章 校服就是最正式的裝扮第230章 萬物皆可“壞蘋果”第6章 三個系統倒有四種資源?第30章 立人設第197章 除了不能說的第257章 NOIP中最難的題型第174章 良心工作室第229章 從源頭上防仿製?第290章 其實已經有點過時了第73章 臭屁不過金少樓第321章 星戰銀行,黑卡飛刀第251章 特效藥第390章 兩份DNA檢測報告單第86章 蘇婉瑩的預測第267章 數據增廣和集成學習第102章 怎麼就這麼不好對付?第272章 冤死駱駝的最後一根稻草第136章 打造算術邏輯單元第324章 如果是江寒哥哥的話……第130章 大佬和小蘿莉第350章 男生不準進去的地方第18章 就是普通同學第97章 媽媽問我爲何跪着看手機?第370章 四軸飛行器第131章 夏雨菲的小秘密第22章 名偵探婉瑩第177章 口是心非的非第285章 “彈性碰撞”第76章 還有什麼是他不會的?第149章 夢後樓臺深鎖第321章 星戰銀行,黑卡飛刀第69章 論如何追女孩紙第330章 小孔成像和PNP問題第161章 論腦補,只服你第230章 萬物皆可“壞蘋果”第68章 舉報了、舉報了第211章 就當幫他們改進一下服務質量了第204章 是男人就餵飽她第387章 打印機和繪圖儀第349章 說錯了什麼?第132章 做個小遊戲第182章 罪證都沒銷燬乾淨第17章 男朋友挺好第414章 蚊子再小也是肉第401章 有種奇遇叫頓悟第393章 男人不能沒有事業第255章 調整超參數,以及防止過擬合第166章 意外的變化第245章 什麼事兒比NOIP還重要?第289章 對等原則第317章 爲什麼偏偏是那串數字?第268章 最終版本第122章 騙過多少女孩子?第34章 遊戲發佈第180章 想謙虛都沒地方謙虛第256章 擴展歐幾里得算法,以及增強線段樹第55章 委託第125章 我有一個同桌第9章 實名震驚