# 自我介紹 ###### tags: `研替` # 自我介紹 我是張友澤 目前就讀於中興大學資工所 實驗室是自然語言處理實驗室 目前實驗室的研究領域是自然語言處理的中的文字生成有關 大學期間我有去一家公司叫學習王那裏去暑期實習 過程中有以django開發一個小商品的後端 並且有以node.js實作出一個chatbot的前後端 。 研究所期間也有擔任助教 有以django及flask創建及維護後端的經驗 並且有接一個計劃是ptt搜尋引擎 一個可以查詢ptt熱門看版中所有文章及推文和作者等資訊的搜尋引擎 我在裡面的分工為負責爬取全部的資料 而因為資料十分龐大(目前以累積幾億筆資料)我使用類似multiprocess的方式分別對每個看版分別爬取 並且以批次且加上hash等方式來處理這巨量的資料 碩一暑假時我有去工研院實習 在那邊參與開發了一個法律判決書中被告持有物的深度學習model 就是輸入一篇法律判決書 我會找出這篇中的被告的持有物像是手機門號 車牌號碼 銀行帳戶及該銀行 而我負責的東西是以react redux修改標記訓練用資料的前端網站以及model的辨識率算分方式 以及設計出精準的正則表示式來找出持有物中銀行的部分(銀行的名稱及卡號等資訊) 並且在暑假時還有參加法律黑克松開發出一個把基於強化學習的把會被告的字眼轉化成類似意思的文字的一個插件 而我分工的部分就是基於強化學習的深度學習模型開發 ## multithread缺點: 當大量使用 threading 執行平行的功能時,反而會因為大量的 context-switch, 「實現了程式平行的功能,但也因為大量的 context-switch ,使得程式執行速度更慢」。 ## multiprocess缺點: 將資料轉移至其他 CPU 會額外消耗我們程式執行的時間,如果任務過於簡單,效益可能不大。 ------ https://medium.com/erens-tech-book/%E7%90%86%E8%A7%A3-process-thread-94a40721b492 第一種策略是在同一時間內為各家工廠都分配一個員工去作事,這種方式稱作多行程 (Multi-processing) 平行執行。跟單一行程處理比起來,其優點在於可以在相同的時間內完成較多的工作。 另一種策略是在同一時間內把所有員工都派到同一家工廠去工作,此法稱做多執行緒 (Multi-threading) 平行執行。相較於單一執行緒處理方式,它有機會讓相同的工作在比較短的時間內完成。 Multi-processing (多行程) 指多個 Process 在執行,彼此有各自的資料空間,若有資料需要共用,必須採用特別的方法來傳遞 (視 OS 而定)。 由於每個 Process 都需要一些資源來工作,所以 Multi-process 會比 Multi-thread 更消耗資源 (Google Chrome 採用這種設計,因此會消耗不少記憶體)。 Multi-threading (多執行緒) 指一個 Process 裡有多個執行緒在執行,彼此共用相同的資料空間。   cross-entropy 用意是在觀測預測的機率分佈與實際機率分布的誤差範圍 PPO:跟監督學習的cross entropy很像,差別在policy gradient有獎勵,以及我們以往的分類是要讓loss下降,但這裡是要讓reward好的τ機率變大。 # QA * 自己最大的的優點和缺點? 做事情蠻有效率(時間管理) 且有責任心 事情做完或告一段落才會休息 具有領導的能力 會常常想到一些比較天馬行空的點子 自主學習 缺:工作狂性質 * 你寫過最大的程式專案是什麼?中間最難的部份是哪裡?你如何克服這個難題? ptt搜尋引擎,使用的框架是scrapy 但我們的需求(multithread)對scrapy而言太複雜 去查了scrapy的文檔找到了scrapy使用的更底層的框架(twisted.internet) 並且自己想了一套演算法來達成(網路上無人做) 且遇到BUG要通靈 * 你有什麼合作經驗?中間遇到什麼困難,並如何解決? 大部分跟同學間合作都過程蠻順利 而且我本來就會確保事情都有在進度中 所以有時候如果同學很忙的話 我會幫她分擔任務 但有一次那位同學剛好一堆事情擠在一起 整整2個禮拜都在忙 雖然我跟那位同學說別擔心我幫他扛 但因為是我不擅長的領域 所以做起來很吃力 並且效率很差 解決方法就是雖然是不擅長的領域 但冷靜下來分析還是會有自己能做到的事 如此一來雖然效率沒有很好 但是至少有產出 也能讓那位同學比較沒壓力 合戲時 一開始跟另外一個系還不太熟 所以另外一個系常常有點擺爛加上遲到 那時候我們這邊的抱怨聲就蠻大的 解決方式就是多跟另外一個系在排演以外的時間互動 吃飯 唱歌等 讓大家比較熟也不會更緊戒彼此 自然辦事起來比較有效率 更細的就是先跟一個系核或是那種脾氣好被損也沒關係的人 比較好 就更能加快2個團體間的親密 * 你目前人生當中最大的成就是什麼? 如果是成就感最大的 我會說是大一時在之夜時擔任戲導演的任務 當時還會跟很多不太熟的別系的人一起合作 引導大家 並跟大家一起腦力激盪想出更好的劇情 對我而言是個蠻大的成就 因為我之前一直都很不太喜歡在人群中講話發表意見 會接下導演的職位其實也是因為當時原本的導演太混出於責任感決定接下來 所以能走到最後有個happy ending我覺得很滿足 也給了我一個蠻寶貴的訓練領導能力跟社交的機會 對我這種阿宅是個蠻寶貴的經驗 * 你的職涯規劃是什麼? 其實覺得自己目前的實力都還很初階 想先進去公司內好好研磨實力 那時候看碰到甚麼 應該很大機會之後就是朝這個方向走 如果是走這種顧問類型的 之後可能會考慮PM * **你能為公司帶來多少價值與未來呢?** 我覺得部門的氣氛很重要 對於我所待的部門 我會一直保持者認真向上的態度 相信這麼做 身邊的人也會被這種氣氛感染比較認真 並且 我蠻會讀空氣的 會看出來現在的氣氛是不是有點低落 或著是有人在吵架 適時當個帶動氣氛的協調者 * 如果一直達不到工作目標時,你會怎麼辦?」 我會先讓自己冷靜下來 甚至先玩樂徹底放鬆下 然後花更多的時間,去觀察現象、尋找有效方法 * 您可以接受加班嗎?對加班有什麼看法? 如果是偶爾的加班還OK 但如果每天都加班到10 11點可能就不太行 這樣的話我也會思考一下究竟我的上班模式是哪裡出錯了才會每天都花很多額外的時間 * 為什麼想來我們公司工作呢?對公司的瞭解是什麼? IBM是不管國際還是國內都很知名的公司 我想體驗看看在這種大公司上班的感覺 並且對於這種偏向顧問的角色野蠻有興趣的 因為跟自己平時在實驗室的定位有點像 。 公司各個領域都有所發展 AI 雲端混合雲 機台等 * 如果您錄取了,您會怎麼達成目標? 因為這份工作的性質蠻特殊的 我會上網多查閱跟這種顧問類型類似的該多點哪些技能樹 也要多培養自己溝通能力 React redux:action reducer storer # 對公司的問題 1.會接觸到的技術與深度 2.可以詳細描述一下這個職位的一天嗎? 3.薪水、福利 4.做事方式(例如版控、軟工、專案管理、測試、Code review) 5.請問在貴公司可以有什麼樣的個人職涯發展未來 6.言替機率 3 7.半 hackerrank # 前端網站如何做出來 原本想自己做一個 但因為時間緊急所以決定拿之前別人的專案來修改 因為內容相似 # 如何學習react的 最開始自己實作出一個OOXX小遊戲 搞懂架構以後就比較容易搞懂了 react講如何處理highlight部分:因為我們會需要關鍵字的位置來訓練模型回答 所以把關鍵字hihglight起來時不能單純以HL符號來讓他上色 不然位置會跑掉 想到的方法就是額外顯示一層(外層)的文字 然後對他進行HL的動作 但以滑鼠進行標記時會是畫到底層沒跑掉位置的關鍵字來記錄正確的位置 讓後端傳來的關鍵字能夠顯示在前端上:不能單純拿後端回傳的值來劃記 因為會遇到值相同但不同位置的問題 前端的也沒有位置方面的正則尋找方式 所以就改先粗篩抓下來有關鍵字的片段再透過從後端傳來的值來把粗篩抓下來的句子中的關鍵字劃記下來 跟之前的比起來多了正則的部分 我們的標記的物件也更複雜 會是一個物件和他的相關資訊而不是單純文字 # 為何用C++刷提 其實都可以 但一方面是資料結構方面 用C++來做會比較清楚架構 一方面是當時還不確定要投的公司 怕有些公司會用到C++ # 正則怎麼想到的 最開始先用最簡單的一些關鍵字來篩下來一定包括的資料 然後再根據這些資料觀察下來找出規律 再形成一個比較細的 然後再拿比較細的當中取30篇 好好觀察 還要從中取得平恆 因為如果抓的東西太多有可能會把不相關或是相鄰的2個實體一起抓出來 抓的字太少又可能漏掉 最後就得到初版的正則 後續就是邊做標記資料時邊去微調 但其實微調之前效果就已經很不錯了 為何選QA問答 我自己面試人對於 ML 的基本要求是,知不知道用的模型概念是什麼、哪些參數 是重要的、能不能根據問題挑選合適的 metric 以及根據這個 metric 挑選合適 的模型,怎麼判斷模型好壞、成效不好的怎麼 debug 跟調整。 ## 演算法TA 原本學長姊留下來一個很土炮的評分系統 還會被學生盜 我們之前做一個全新版 像是打分數原本也是很簡陋的手刻格式和介面 我把他們都包成正常的csv格式 # 黑克松 最開始其實是要判別會觸犯哪條法律 但因為那幾條太困難(我們人自己都不會分 太相似) 所以改成先訓練出一個會不會被告 再來用我們擅長的文字生成改成生出類似字 原本調查了很多種model 但因為都沒有中文版的很麻煩 所以我提議拿我們之前做的PTT留言生成chatbot接上去看看 沒想到效果蠻好的 可能是因為鄉民講話通常都語帶戲謔 甚至發現表情符號可以很好的改變語氣 ## TREND Process 跟 Thread 差異、Deadlock、同步問題都有問 背網路層概論 結果只有問之前的工作經歷和學校作業和論文的細節。問得非常鉅細彌遺,用什麼做的、為什麼這樣做、為什麼用這些方法、遇到什麼困難、結果是什麼、認為當中有什麼地方能被改善等等。 ### 遇到BUG時的解決想法/方法/步驟 把東西都print出來看看 然後一步步 trace 流程 如果是很大的bug我會先把它拆成很多部分 然後每個部分都確認是不是沒問題 例如design pattern、white box test、black box test等,以及OS相關的race condition。 第二次面試: 和同部門的另一個主管面試,主要有介紹這個Team的分工環節,因為我本身是做深度學習的自然語言處理,還有被詢問覺得自己目前在做的領域有什麼能應用到資安的部分。(GOPHSING) 軟工的開發流程 讀到:4關係 https://hackmd.io/@1eft0ver/HJH4ebBmN?type=view 公司資料查詢:這部分我覺得最重要,要面試之前必須很清楚知道「公司需要什麼樣的人」,然後試著在面試的時候展現自己是那樣的人才 想得到多高的待遇,就要付出多大的努力。分享一個網路上的強者說的: 有心有誠意準備,先刷掉25%競爭者。 平時就有紀錄跟作品,再刷掉25%。 背景符合職缺(技術、domain、角色與經驗、有可靠的人推薦或平時就在社群知道人格特質與能力)吻合,再刷掉25%。 最後1/4才真的是 interview 的臨場表現、溝通、雙方期待。  英文自我介紹 公司產品 ## SAAS 在這種交付模式中,軟體僅需通過網路,不須經過傳統的安裝步驟即可使用,軟體及其相關的資料集中代管於雲端服務。使用者通常使用精簡客戶端,一般即經由網頁瀏覽器來存取、存取軟體即服務。SaaS 最大的特色在於軟體本身並沒有被下載到使用者的硬碟,而是儲存在提供商的雲端或者伺服器。相較於傳統軟體需要花錢購買和下載,軟體即服務只需要使用者租用軟體,線上使用,不但大大減少了使用者購買風險, 也無需下載軟體本身,無裝置要求的限制 https://www.cloudflare.com/zh-tw/learning/ddos/glossary/open-systems-interconnection-model-osi/ 大部分的人都是等待別人給你意見 下一步該怎麼做 但我會自己找下一步該幹嘛 有可能是因為當比較多次leader所以比較知道下一步該怎麼做 像是論文進度算是實驗室中最快的 可以看出來是個有想法的人 也會比較知道自己在幹嘛 自然效果就會比較好 知道自己想要甚麼 ## GCP 以一個統一管理這些API的libary夾帶key(類似header)去call他 他就會回傳需要的(youtube每天定時把自己的訂閱內容下載下來) 雲端DB 雲端SERVER 雲端chatbot管理 [心得] 2021海內外數據科學、資料分析求職心得 https://moptt.tw/p/Soft_Job.M.1636964273.A.A8F  multithread vs multiprocess https://qing-yao.blogspot.com/2016/08/writeByMind-2.html ## 7層網路 實體層:纜線 資料連結層:傳送框架 相同網路 網路層:傳送封包 不同網路間 傳輸層:傳送區段 兩個裝置之間 工作階段層:開啟和關閉2個裝置之間的通訊 呈現層:加密和解壓 應用層  1. https://www.geeksforgeeks.org/evaluation-of-expression-tree/ 2.https://leetcode.com/problems/climbing-stairs/submissions/ APPIER: https://rain-wu.medium.com/2021-%E8%BB%9F%E9%AB%94%E5%B7%A5%E7%A8%8B%E6%96%B0%E9%AE%AE%E4%BA%BA%E9%9D%A2%E8%A9%A6%E5%BF%83%E5%BE%97-appier-umbo-cv-94d514ac576 https://hackmd.io/@Udemyi1vQbOUsmVu4-Nu1w/BJO1UIBU_#Appier-Full-Time-2021-45%E6%9C%88 https://hackmd.io/ESdGq9ioT66XJu1I_tHPSQ https://jessicatsai-66666.medium.com/%E5%BE%9E%E5%85%A9%E6%AC%A1%E4%BA%9E%E9%A6%AC%E9%81%9C%E9%9D%A2%E8%A9%A6%E6%88%90%E5%8A%9F%E7%B6%93%E9%A9%97%E4%B8%AD-%E6%88%91%E5%AD%B8%E5%88%B0%E7%9A%845%E4%BB%B6%E4%BA%8B-%E5%A6%82%E4%BD%95%E6%BA%96%E5%82%99-%E5%BF%83%E5%BE%97-33547512f2c7 https://www.cakeresume.com/resources/5-steps-to-write-a-good-english-cover-letter#opening
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up