星期五。見面

程式 | 學習 | 日記 | 玩樂

    [論文速速讀]系列文章介紹

前言

論文速速讀系列是從今年四月開始,我開始寫一些論文的中文讀書筆記,還記得第一篇是[論文速速讀]ReZero is All You Need: Fast Convergence at Large Depth,之後發現儘管自己已經陸續產出了幾篇文章,可是好像都沒正式的跟大家介紹這系列文章的由來xD

所以這篇文章就是來講講這系列文章到底是什麼,以及我會和會想寫這些文章。

論文速速讀系列是什麼?

由於在AI領域每年總是有一些非常重大的突破和應用,如果跟不上潮流很有可能就會錯失許多機會。例如,對NLP領域熟悉的話你一定聽過2013年的word2vec、2014年開始流行的attention、2018年的Bert…這些很有名的技術。

還記得Bert剛出的時候我好像剛進碩士實驗室,當時只知道這個技術屌打了當時一堆NLP的研究,但我想也想不到兩年後Bert已經造成如此大的影響力,一堆基於Bert的變形應用在各大領域上都取得了非常優異的結果。

因此,我想要藉由這系列的文章讓自己能夠更加快速的了解AI的新技術和研究,同時逼迫自己看論文xD

繼續閱讀

    [課程筆記]課程筆記系列總覽

本文記錄了自己在上課時所記錄的一些課程筆記,可以透過這邊文章連結到所有以往發過的課程筆記文章。

繼續閱讀

2019 SecBuzzer AI UP!人工智慧資安挑戰賽參賽心得

擷取1.PNG

在去年11月底的時候,因緣際會下有位學長通知我去參加這個由資策會資安所舉辦的惡意程式分類競賽,這是一個為期一個月的競賽,以競賽時程來說算是相對小品的競賽。以下擷取活動網站的競賽內容:

本次競賽中的每一筆惡意程式 (malware) 均有一組可獨立辨識的 md5 編碼,競賽者須透過人工智慧訓練、推論技術,對每一筆惡意程式進行類別 (class) 可能性的歸屬判定。

總之就是要透過ML/DL的方式來進行惡意程式的分類,期間只有一個月,而資料的大小又蠻大的(train + test ~ 60G)所以其實沒有什麼太多時間做無謂的嘗試,整個時程大約被我分成三個階段,就我自己來說,我覺得所有資料科學競賽的規劃其實都是大同小異的:

  1. 資料前處理,做一些基本的特徵萃取和建立base line
  2. 基於baseline開始嘗試一些額外的不同方式
  3. 大約最後一個禮拜,開始就現有最好的模型版本進行進一步的調參

下面會簡述整個比賽的規劃、心路歷程以及一些分享:

繼續閱讀

LINE TAIWAN TECHPULSE 2019參加心得

這是第一次參加LINE TAIWAN TECHPULSE,會得知這個訊息的原因是由於FB上某個社團友人分享了這則訊息。雖然經驗尚淺,不過以前也製作過一兩個chatbot,也因此一直都有在關注Line的相關技術發展,看到這訊息後就毅然決定報名參加。

活動的地點舉辦在台北和平籃球館,參加費用是免費,不過報名的時候他們有提到會進行篩選,所以有可能不是人人都有票,總之後來我有拿到票就是了。

繼續閱讀

[DL]運行Keras時遇到CUDNN_STATUS_INTERNAL_ERROR問題

問題描述

最近在執行Keras程式碼時,遇到了以下的問題:

UnknownError: 2 root error(s) found.
(0) Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
[[{ {node conv2d_3/convolution}}]]
[[loss_1/mul/_201]]
(1) Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
[[{ {node conv2d_3/convolution}}]]
0 successful operations.
0 derived errors ignored.

繼續閱讀

[Pytorch]cuda out of memory when increase loop iteration

今天發現了這陣子一直沒有解決的一個bug,蠢到都想挖一個洞把自己埋起來,還是記錄一下以免日後又犯蠢。

不太清楚要怎麼用英文下這個標題,主要的問題敘述是:在使用pytorch訓練模型的時候,為了紀錄模型對於testing set的效果,每隔幾個epoch我就會將acc / loss append到一個list中,然後我的模型常常會發生一個很神奇的狀況:

剛開始跑的時候GPU mem還塞得下,但隨著loop次數增加,mem居然也相對的增加了,導致幾個loop後就會發生”cuda out of memory”的問題。

繼續閱讀

[Python]Utility function of calculate convolution output shape

心情不好就來發發廢文技術文,然後完蛋了要過年了距離我的目標100篇還差5篇。

在使用pytorch時比較麻煩的一點是,convolution的shape要計算好,才不會給錯conv的參數,所以這時候使用者就要對於Convolution到底怎麼運作的(kernel size/padding/stride/dilation)有很清楚的瞭解才行,不然連shape都推不出來是要怎麼給模型參數?

繼續閱讀

2019新北耶誕城

這個假日因為一些因緣際會,就上去台北參加一個課程,結果發現那堂課根本沒有要講我想要的東西,講師也對這領域沒有到非常專精,所以根本沒有什麼收穫,(我覺得我來講說不定都比講師好,主辦方要不要聘我去當講師)。

不過既然都來台北了,就想去耶誕城晃晃,雖然那邊就是一個聚集了各種光害(各種意義上)的地方,不過今年的藝術裝置很吸引我,想了想還是想去拍幾張照片,於是就一個人出發了。

img_20191130_190823

繼續閱讀

>