在一條從未飛過的航線開通之前,我們需要知道些什么?常見的來自航司的問題類似,需求量足以支持每天一個航班么?如何定價?如何分配營銷資源?
通常來說,航司會根據(jù)一系列“直覺”回答如上問題。當“直覺”的預測效果不盡如人意的時候,也很容易歸咎于競爭形勢、宏觀經濟等其他干擾因素。航司常見的方法是根據(jù)“同一個國家的”、“已經開通航線的“其他城市來預估新航線。這個方法有明顯的不足,例如說,根據(jù)“同國家的”不同城市預估,就會將莫斯科和圣彼得堡,或者里斯本和法魯,分為同一組,雖然他們地理上是相近的,但是在航班需求方面則差異很大。
那么,是否有更科學的方法來對新的OD對(譯者注:始發(fā)和到達,例如倫敦-里斯本,下同)進行預測呢?這將對營銷投放的精準化,定價和收益管理的初始化,以及航班時刻規(guī)劃等方面起到很大的助益。
機器學習可以提供這樣一種更為科學的處理方式,本文我們將演示一下,機器學習如何在上文所述的多因素復雜情景下,實現(xiàn)以數(shù)據(jù)支持決策。雖然人工智能已經在很多行業(yè)領域被證明能切實提高效率,但是對于航線規(guī)劃來說,應用還并不常見。本文我們采用較為簡單的K-means算法對航班搜索數(shù)據(jù)進行處理,來幫助航司得到相較之前來說更為科學的預估,以便作出更好的后續(xù)決策。(譯者注,k-means是難度和決策樹差不多的入門算法,可以參考以前的一篇k-means入門博客)
方法:用機器學習處理航班搜索數(shù)據(jù)
在這個研究里,我們用機器學習來比較成千上萬個OD對。我們的目標是運用無監(jiān)督機器學習來對他們進行分組。(譯者注,無監(jiān)督就是沒有事先分類的學習,相對的有監(jiān)督學習就是已經有分類,將樣本歸入)
我們的數(shù)據(jù)來自skyscanner平臺的travel insight(譯者注,可以參考以前一篇關于sc數(shù)據(jù)產品的博客),對去年2016年全年的超過5萬條OD對的數(shù)據(jù)進行分析。
分析搜索數(shù)據(jù)
在這個研究里,每個目的地均具備30個參數(shù),包括如出行月份、預定時間、停留在目的地時長(譯者注:特指非單程機票,可以是往返也可以是多程,例如上海到北京,4天后從北京返回上海,停留時長為4天)、出行組合類型(譯者注:例如成人帶兒童)等。在這個案例里,我們事先選擇了有哪些參數(shù),期望通過機器學習來運用這些參數(shù)的比較,對OD對進行分組。
在數(shù)據(jù)源方面,我們第一沒有預先限制地理參數(shù)(譯者注,也就是避免開頭說的只考慮同一個國家),第二沒有根據(jù)距離、始發(fā)國家對線路進行有偏好的事先分類,第三也沒有引入類似價格、可售性等指標(譯者注,也就是說不考慮客人搜索的線路是否有/如何進行售賣)。數(shù)據(jù)展現(xiàn)的是"純粹"的用戶搜索行為。
我們的目標是根據(jù)全球用戶的(由搜索體現(xiàn)的)需求來尋找航線的內在共同點。
(譯者注:雖然這段提到了參數(shù)選擇,但sc的這個案例仍然省略了2個最最日常的步驟:
第一個是數(shù)據(jù)清洗和規(guī)約,例如部分數(shù)據(jù)記錄缺失,或去重復-例如多次查詢才會買機票的休假和一兩次查詢就訂的出差,其查詢次數(shù)是否需要去重復等規(guī)則,這部分占整個分析的九成時間;
第二個是特征參數(shù)篩選,最簡單的方法例如兩兩散點圖肉眼觀察,選擇離散程度大,也就是所謂有信息的屬性組合,如果設定的屬性互相沒有產生更多的信息量-例如一個屬性是出行日期,另一個是出行月份,那么這兩個屬性的距離就沒有意義,還會影響整體聚類。
這個案例直接給出了洗好的數(shù)據(jù)源和現(xiàn)成的參數(shù)組合,可以說是面向用戶的文章)
結果
完整的分析結果可以參考下面的dashboard(譯者注,原文頁面嵌了一個tableau的動態(tài)web報表,靜態(tài)譯文就只放了截圖)。我們首先高屋建瓴的總體看一下分析結果。
毫不意外的結果是,長線、夏季、家庭休假出行是量級最大的查詢分類。
數(shù)據(jù)顯示這種類別含有最多的OD對(譯者注,出差的大城市就那么幾個,而休假冷門目的地繁多),通常這些線路是暑期假期出行,具有較高的周末出發(fā)或至少帶一個小孩的比例。(譯者注,一位sabre的同學也講過類似的,周末+人數(shù)可以篩選出利潤最高的線路,維度沒有本案例30個那么多,用不著上算法)
距離的影響大于國家
研究顯示地理因素確實存在,然而目的地離始發(fā)地的距離,關聯(lián)性要強于目的地所在國家。例如法魯(譯者注,葡萄牙南部城市)作為目的地時,和阿爾及爾(譯者注,大航海時代里的北非海盜基地之一)的搜索需求十分近似,因此被分在同一個分組。這兩個目的地都是典型的冬季目的地、周一到周四出發(fā)(譯者注,冬季休假)。他們在距離上比較相近,如果按照傳統(tǒng)的按國家預估的方法,這兩個目的地可能不會被歸為同一類。
(譯者注,城市和國家范圍在歐洲非常淡漠,因為幾十公里就可以多個國家,大部分歐洲網站都提供類似距離50km內的搜索,而不是限于城市、國家,這是產品國際化的歐洲特色之一)
傳統(tǒng)的浪漫情侶目的地城市,對單獨游客同樣熱門
數(shù)據(jù)顯示無論是“solo”單人出行(譯者注,單打獨斗,游戲玩家不會不認識solo這個詞),還是雙人出行,都近似指向同一類目的地。(譯者注,也就是沒有產生離散化,沒有產生影響,或者說信息熵不大)這個結果顯示并不存在所謂"專門適合情侶"的目的地。以威尼斯為例,這是典型的情侶/蜜月目的地之一,但同時在單人出行目的地里,他的比重也相當高。
(譯者注,如下是截圖,我選了上海SHA始發(fā),原文是交互報表,可以在右上角切換始發(fā)城市三字碼,不知道啥是三字碼請搜索引擎,這玩意和做酒店必背連鎖品牌名單一樣,是做機票必背的)
(譯者注,再來個韓國SEL始發(fā)的看看,明顯比我們國際化吧)
如何閱讀報表?
- 在面板右側選擇始發(fā)城市,然后觀察對應目的地城市的分組。
- 不同分組對應0-9數(shù)字和不同顏色標識的10個組
- 地圖下方的柱狀圖,顯示每個分組在各個參數(shù)下和其他分組的區(qū)別,柱子的具體數(shù)字只代表對比,獨立看沒有意義。(譯者注,k-means的基本原理是計算距離,雖然超過三維的距離很難想象,然后根據(jù)遠近來分組,為了避免較大數(shù)字的影響大于較小數(shù)字,例如金額對比訂單數(shù),需要先對原數(shù)據(jù)進行標準化處理,變成同一范圍的數(shù)字,最簡單的方法例如每個數(shù)值減去平均數(shù),再除標準差)
- 左側氣泡的大小,表示每個分組的od對數(shù)量的相對量的比較
如何使用這些分析結果?
作為營銷人員
- 可以作為“猜你喜歡”的推薦目的地來源之一。(譯者注,例如用戶預訂過上海-巴黎,根據(jù)報表可見,上海始發(fā),巴黎為目的地第9組,同組目的地均可以優(yōu)先推薦,同時第9組的參數(shù)為,長期計劃預定,夏季出行,周末出發(fā),單人、雙人均為熱門,這些均可以用于推薦)
- 規(guī)劃目的地營銷的預算分配,特別是對于還沒有歷史數(shù)據(jù)的新航線來說,尤其適用。(譯者注,也就是用同組已經開通的去預估)
作為收益管理人員
- 可以用同分組已有航線的數(shù)據(jù)來進行初始定價
- 在收益管理組合里優(yōu)化航線歸屬(譯者注,就是下一段說的網絡運籌)
作為航線運籌規(guī)劃人員
- 可以根據(jù)需求分組來輔助參考在一周的哪一天、或一天的哪些時段安排航班(譯者注,例如大部分是周末起飛的搜索,傾向安排在周末)
- 可以將航線分組作為航線網絡運籌的‘校準’(譯者注,航線網絡運籌是傳統(tǒng)的機票收益管理,最簡單的例子是根據(jù)不同航線冷熱頻次不同,從“航路網絡組合”的角度提高整體收益,結果就是例如上海到北京、再從北京到東京的票價,比兩段相加要便宜-甚至比其中一段都便宜,而形成棄程。‘校準’的意思是,可以利用同分組的已有線路,快速得到初始參數(shù))
人工智能時代的航線規(guī)劃
航空業(yè)一直以來都采用量化分析的方式預估并依次開通新航線。機器學習是更新、更高效處理復雜多維度數(shù)據(jù)的分析方法。引入機器學習,或許可以幫助航空業(yè)在新航線開通時減少對“直覺”的依賴。
skyscanner的數(shù)據(jù)產品travle insight可以收集大量用戶搜索需求,幫助航司開展本文這樣的分析,如需進一步了解,可以訪問網站(譯者注,請去原文地址看)。
注1:本文的工具是基于python實現(xiàn)的k-means,一種無監(jiān)督學習算法。
注2:本文的數(shù)據(jù)基于skyscanner平臺上,去年(2016年)全年的用戶搜索數(shù)據(jù),包括超過5萬個OD組合。