學程式助教

利用Airbnb來更了解居住城市,以臺北為例 Python實作(下)

延續上一篇:利用Airbnb來更了解臺北,這篇我們就要來把自己當成是Airbnb的資料科學家,嘗試建立房屋的訂價模型。 先說說流程: 檢查變數-價格相關性,好讓我們對影響變量有個了解 處理類別資料,轉換為Python的機器學習套件:Sklearn看得懂的東西 清理缺失值 切分資料成訓練、驗證集 利用交叉驗證建模,Baseline(基礎比較)我選擇L1、L2 Regression 建立Random Forest、XGboost Regressor 利用model畫出變數重要性,方便我們優化模型 反覆迭代,持續優化模型 結語,談如何優化與比較好的建模姿勢 (more…)

5 years ago

利用Airbnb來更了解居住城市,以臺北為例 Python實作(上)

導論 這幾年共享經濟興起,外送平臺穿梭在大街小巷協助美食傳送、Uber也成為人們便利的代步工具、而其中Airbnb更是創造了「到別人家住與讓陌生人來自己家住」的嶄新概念。共享經濟的本質就是「更有效率地推動經濟」,在經濟學原理中,我們知道當供給量 = 需求量,就會達到市場均衡,而長期來看,市場會走向一個市場均衡點,市場均衡點其實不能說好、也不能說壞。但有一個可以肯定的點就是: 它讓人們的慾望有效得到滿足,而有效滿足的情況下,人們更容易發現經濟進步的方法。 而共享經濟其實就是在動態的創造市場均衡,讓現金流多了流通的管道、combine不同的需求。既然閒置資源是浪費的,那我們就好好利用它。 包括現在很夯的雲端運算,概念其實也是興起於「共享經濟」,結合規模經濟與處理閒置資源的本質,甚至還有結合區塊鏈的分布式運算系統,讓閒置頻寬得以被充分利用,目前被應用在直播、實況等串流巨大的系統中。 (more…)

5 years ago

從拉麵店的販賣機理解什麼是 API

API,全名叫做 Application Programming Interface,維基百科上的中文翻譯是:「應用程式介面」。這是一個你可能聽過很多次,但從來沒有理解過的東西,常常聽到工程師說著:「串 API」,但還是不知道 API 到底是什麼。 我原本以為在網路上有關 API 的參考資料已經有很多了,應該可以讓初學者理解什麼是 API。但根據我學生們的心得,好像還是有點困難,只好自己跳下來寫一篇,試著來挑戰這個主題,希望寫出一篇淺顯易懂的 API 介紹文。 如果你問我什麼是 API,我會跟你說:「API 就是拉麵店的販賣機」,所以在切入正題之前,我們要先來研究一下日本拉麵店會出現的販賣機。 (more…)

5 years ago

以Weka對資料集進行分群與分類分析之實作

前言 : 以下內容皆使用Weka 3.8.2去做演算法的分析,並且文章會根據分群分析、分類分析,按照這個排序分成兩大部分做探討。 兩個部分皆採用兩種不同類型的Datasets ,「現有Dataset」與「創意Dataset」;此外,每一個Dataset都會用兩種屬於該分群分析或分類分析的演算法。 分群分析會使用的演算法為① K-Means(K-平均法)與② Expectation Maximization, EM(期望最大化法);分類分析會使用的演算法為① Decision Tree(決策樹)與② REPTree(快速決策樹)。 (more…)

5 years ago

網頁不是漂亮、上線就好 !一些你要知道的大小事

網站搜尋迷思:我的網站已經改好了,上網看看結果吧! 其實這裡有一個蠻重要的觀念,影響網站排名的結果,有兩個重要的因素 時間 內容 可能有些人會以為網站一修改完或是新的網站上線,馬上就可以被搜尋引擎找到,但是其實Google是靠著自動爬蟲機器人去爬去網路上的數十億的網站,縱使他的動作在快,效能再強,都會需要一定的時間,有時快則兩三天,慢則三至六個月都有可能,快或慢會根據不同的情況而決定。 (more…)

5 years ago

動態網頁是什麼?非工程人員你也要知道的網頁知識

前言 在這個網路越來越發達的時代,大家每天都在上網,使用瀏覽器查詢資料、看影片、購物等等,都與網頁有關,當你在使用時,你有沒有想過網頁也有區分為靜態網頁以及動態網頁呢,可能會有人覺得動態網頁就是在頁面上有動畫,會動的就是動態網頁,而頁面靜止,不會動的就是靜態網頁,其實不然。以下內容我們將介紹何謂動態網頁以及靜態網頁,讓你可以更加了解平時所使用的網頁喔。 靜態網頁 在了解動態網頁以前,也需要先了解靜態網頁究竟是什麼,這樣才能夠真正搞懂靜態跟動態究竟差在哪裡。 超文件標示語言HyperText Markup Language,簡稱:HTML,HTML是網站建置的基礎技術,常與CSS與Javascript配合成一個適合觀看的網頁,讓瀏覽器去讀取,一般判斷方式為網頁副檔名為html或htm皆為靜態網頁,靜態網頁的優勢為容易為搜尋引擎所接受,所以很多動態網頁會將動態網頁轉變成靜態方式,就是所謂的【偽靜態網頁】來提高搜尋引擎的友善度達到排名優化的成效。 當用戶瀏覽器通過HTTP協議向Web伺服器請求提供網頁內容時,伺服器僅僅是將原先的HTML文檔文檔傳送給用戶瀏覽器,用戶看到的內容是標準的HTML文黨的內容,可能在另外加上GIF格式的動態圖片或是Flash動畫等等,如果想更改網頁上的內容,就必須手動更改HTML文檔。 (more…)

5 years ago

網頁速度好慢?你真的知道什麼是網頁速度嗎

前言 對於使用者而言,當你在開啟一個網頁時,如果需要等上一段時間,或是每次在開啟某個網頁時就是比其他網頁來得慢,那麼你是不是下次就會不太願意再來造訪這個網頁了呢。那麼為什麼有些網頁的開啟速度總是比較慢,當然有時候可能跟使用者所處環境的因素導致訊號不佳,但是對於網頁經營者而言,網站若要長久經營,便要考慮使用者的感受。 (more…)

5 years ago

Node.js 是什麼?基礎入門介紹!

這篇文章適合誰 這篇文章適合想學習Node.js這個框架對於JavaScript並且對於JavaScript有一些認識的讀者,本篇文章將用hello world這個在學習每個程式語言時都會先接觸到的範例,讓你先初步認識Node.js。 何謂Node.js Node.js顧名思義便是使用JavaScript語言作為基礎的框架,特別的是,相對於jQuery或是YUI等在瀏覽器中運行使用的JavaScript框架,Node.js是作為網站程式的後端框架,就如同PHP或是Java一般開發網站。 換句話說,JavaScript不只可以跑在瀏覽器中,還可以當做網站的伺服器。主要的原因是在於隨著Gmail等AJAX網站以及技術的興起,許多的程式開發者紛紛投入心力鑽研JavaScript,並且有許多開發心得、優化技巧陸續被發掘,加上瀏覽器之間的競爭越來越激烈,JavaScript的執行效能持續性的突破,因此最終便誕生了Node.js。 (more…)

5 years ago

JavaScript入門系列:基礎語法介紹!

這篇文章適合誰 這邊文章適合對於JavaScript有興趣也有一點基礎的開發者,以下除了介紹何謂JavaScript外,本篇將運用簡單的範例程式,讓大家可以初步認識JavaScript。 什麼是JavaScript? 如果您想讓網頁動起來,除了使用各種程式語言外,JavaScript 是最適合使用的語言之一。早期的網頁都是用 HTML 語法,製作出一個個靜態網頁,向用戶顯示一些固定不變的資料。若想要讓網頁有更多的變化並且更加精緻,您就必須加上某些程式語言,如 Script 語言。 (more…)

5 years ago

JavaScript入門系列:BOM和DOM基本觀念

前言在剛開始學程式時,你是不是常常聽到一個說法:HTML、CSS 與 JavaScript 是網頁前端三大要素。HTML 主要是負責資料與結構,CSS 則負責樣式的呈現,而JavaScript 負責行為與互動。但其實JavaScript 並沒有提供網頁的操作方法,前端開發者在網頁的操作方法都是「瀏覽器」提供的。 這些操作方法基本上會分別由這兩種物件所擁有:「BOM」與「DOM」。所以在瀏覽器上的 JavaScript 包含了:JavaScript 核心 (以 ECMAScript 標準為基礎)BOM (Browser Object Model,瀏覽器物件模型)DOM (Document Object…

5 years ago