跳到主要內容

發表文章

目前顯示的是 2016的文章

Google Brains實作出能夠加解密的神經網路

Google Brain又做出了很狂的事情  利用3個角色做出一個加解密的機器學習 Alice, Bob, Eve Alice跟Bob要互相溝通,而Eve要從中竊取資料  這3個角色分別是神經網路 Alice:損失函數為 如果亂猜的情況下跟Eve的猜測來比Eve猜的愈好損失就愈多  Bob:損失函數猜測距離愈遠損失愈大 Eve:損失函數猜測愈準損失愈小 這樣就構成一個對抗式網路(generative adversarial network) 結果還真的讓Alice跟Bob可以互相溝通,也就形成了加解密網路,並且Eve也都沒辦法取得正確明文訊息 這也是彼此學習導致互相增長的一個重要例子  在連結中的論文有提到使用單顆GPU的Tensorflow所做的實驗 https://techcrunch.com/2016/10/28/googles-ai-creates-its-own-inhuman-encryption/

研替心得 曜揚/露天/群暉

這次投履歷的時間沒有很早投,大概是在九月中期投的 不過也有找到不錯的offer所以也就推掉了蠻多間的面試邀約 小弟 國立北科資工系/碩 124大學/124碩 軟體工程測試相關實驗室 班排中間 曜揚科技 專門作資安的一間科技公司,也是我第一次面試的公司 面試時HR會先給你一份基本資料跟人格特質問卷填寫 寫完之後就會拿考卷給你了 考卷大概都是考C++的基礎知識, 像是switch case的陷阱,還是i++ ++i的順序 最後是要你自己寫一個小程式,然後說這能幹嘛 我寫了一個遞迴求最大公因數的函式就交了 交了之後人資稱讚我說寫得真快,心中暗自竊喜 再來主管就進來了,開始問我之前在哪間公司工作 做什麼東西,比賽比什麼東西 問完之後就口頭offer了 結果: 口頭offer 露天 而這是我第二間公司,進去之後也是先寫基本資料 再來也是選擇題的考卷,裡面考了PHP SQL C++ 資安相關的知識 而漂亮的女主管來之後我表明我沒寫過PHP,不過我有寫過django跟rails 就問大概做了些什麼東西,side projects做了什麼 公司裡面又是做哪些部分,我回答網頁前端後端都有 談完之後換一個男主管過來,看起來蠻有經歷的 一開頭就說,我問一個開放性的問題 你覺得你在公司最得意的事情是什麼? 當下是真的不知道要講什麼,然而最後就說出在deadline前交付產品時非常的開心XDD 最後也有聊到自動化測試,jenkins這些東西 問工時正不正常,主管回非常正常 而主管也表示知道我研替要綁三年,需要時間考慮 而我也說我最後決定的時間大概是在12月 主管也問我有沒有急著拿offer,我則是說可以的話XD 結果: 口頭offer 群暉 這段心得一定會很長,但也是我歷經最久的面試過程,在去之前就知道這間是大魔王了 所以特別在一個禮拜期間把以前比ACM的比賽題目演練了一下,也有準備OS的一些東西 一面 第一關先進來一個RD,感覺蠻年輕又很帥,一進來時我就有給他我的簡歷 因為我的104履歷表不太好讀,就自己用了一個給他們看這樣 內容大概是有做過什麼side projects,有比過什麼比賽這樣,拿過比賽的什麼獎之類

UVA 514

此題目稍麻煩一些 重點就是A過去B有兩種方式 第一種是直接送過去 第二種就是放入stack裡面 所以簡單來說 就模擬跑跑看就可以了 發現不可能的時候就是NO囉

UVA 100

非常簡單的經典題 也就是著名的考拉兹猜想 他認為一個數如果是奇數*2+1 如果是偶數就除2 此循環下來必定為得到1 這題目就只是要你把區間裡面的所有數字的循環次數算出來 並且取出最大的循環次數 注意一開始的a跟b有可能不是a~b,有可能為b~a

在Windows的環境底下 利用Python3 安裝Scrapy

由於使用Windows python3 的情況下安裝Scrapy經過了許多困難,所以把我遇到的困難寫成blog,幫助他人也幫助自己 當然也是因為scrapy開始支援python3了 這是Scrapy的官網   系統環境 Windows 10環境 Python 3.5.1 (可於此下載  https://www.python.org/downloads/windows/ ) 安裝Scrapy有一些前置作業必須處理 前置作業 http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml 下載符合你的版本的lxml 以下為以目前我環境為例 pip3 install lxml -3.6 .0 -cp35-cp35m-win32.whl https://sourceforge.net/projects/pywin32/files/pywin32/Build 220/ 下載符合你環境的exe檔 以下為以目前我環境為例 easy_install pywin32 -220. win32-py3 .5 .exe 一切就緒後,就可以開始安裝scrapy 目前支援python3的只有scrapy 1.1版本以上才有支援喔 pip install scrapy

利用機器學習 flappy bird

http://gcaaa31928.github.io/FlappyBirdLearning/ Flappy Bird Learning 此為利用機器學習的方式自動學習flappy bird的專案,而學習方法則是用Q Learning 部份參考至  http://sarvagyavaish.github.io/FlappyBirdRL Game Framework 利用Phaser.js製作出flappy bird遊戲,如下圖 (參考至  http://www.lessmilk.com/tutorial/flappy-bird-phaser-1 ) Q Learning 重點在於這一個公式 而一開始利用這個公式訓練時碰到了一些困難 當只使用這兩個狀態空間時,也就是QState是一個二維的空間 造成在低點的障礙物無法得知離地面或是離天空的距離而常常超出邊界 所以我加上了一個狀態空間,為到天空的距離 但這又引發了別的問題,當我一般的速度通過磚塊時,理論上會以這個方式行動 紅點的位置會慢慢訓練成不按的情況下Q Value會比按的情況下高 但在這個情況時 由於下降的速度太快,導致於Q Value訓練成必須要按下之後才能避免撞到磚塊 也因為這兩個狀態沒辦法收斂到正確的位置,而收斂到了其他的位置 所以我們必須再加一個狀態空間為速度這個空間 基本上這樣就可以完成練習了