數學建模競賽中適合使用機器學習嗎?

網上暫時找不到流出的近兩三年(也就是神經網路火起來之後)的美賽O獎論文,無法判斷機器學習目前在數學建模的使用情況

但我身邊搞數學建模的老師和同學都極少提及機器學習,似乎它並不是一種主流方法

那麼,數學建模競賽中適合使用機器學習嗎?細分下來大概有以下幾個問題:

1、機器學習會不會因為缺乏新意(現在幾乎所有領域中都有應用機器學習)而難以得到好的分數?

2、機器學習會不會因為缺乏解釋力而難以得到好的分數?如果會的話,多添加一些hand-crafted的feature能不能有所改善?

3、機器學習會不會因為評委不認可而難以得到好的分數?

4、依據數學建模(美賽)的出題傾向,會不會可以使用機器學習的題目很少?

本人今年大二,去年美賽各種失誤最後S獎收場,希望各位過來人解答一下我的疑問


極其不適合!

極其不適合!

極其不適合!

首先來說,機器學習並不是近幾年才興起的,十多年以前的數學建模競賽中就有人使用神經網路了,儘管當時這種高大上的方法能唬住一些評委,但現在評委們已經基本不吃這一套了。

國賽題目近幾年基本以機理分析類和運籌優化類問題為主,數據類出的比較少,主要還是自己建模型,不要迷信套方法。注意,你要做的是「數學建模」,而不是「數學套模」。

美賽的話,由於目前有6個題目,其中C,D兩題,分別涉及大數據和複雜網路,有可能使用到機器學習方法,而對於其他題目,盡量使用自己建立的模型。


可以有的,答案自然是因題而異。我做過一年華東賽,就是給了一家電信公司的客戶數據,讓我們通過數據裡頭可以找到的規律來提出新的產品。裡頭就要用到聚類,把不同客戶群歸到不同的類裡面,分別給他們設計適合他們的產品。

機器學習無非就是通過數據訓練電腦學習分類,回歸或者聚類的規則,然後用這套規則給新的數據進行分類,回歸或者聚類。那如果題目讓你做分類,回歸或者聚類的其中一個,那就不得不去用機器學習了。

機器學習有很複雜的模型,例如現在的所謂深度學習,學習到的規則幾乎是無法用直觀語言解釋的。當然也有很簡單的模型,例如線性回歸,直接就能看到每個獨立變數對應變數的作用。又或者聚類,說到底無非就是提出一個靠譜的距離函數,讓離的近的點被歸為一類。當然很可能複雜的模型效果好一些,但是對於簡單的只有幾個feature的數據集,簡單的模型也不見得差。裡頭涉及機器學習裡面的一些分析,就不詳述了,有的我也不會。

而做數模,第一步是建模,就是把對問題的描述從現實語言翻譯成數學語言。如果正好是分類,回歸或者聚類(還有reinforcement learning啦),那就可以挑一個機器學習的演算法來解,或者自己設計一個。這些演算法自然是越容易直觀解釋越好,但是假如效果太差的話也可以用複雜一些的演算法試試(也不一定好)。


13年美賽A題沒用任何機器學習和數據挖掘理論獲得m(當時確實不會機器學習)。個人覺得美賽主要是思想,其次是看團隊配合,再次是英語水平(思想再好,英語不行也表達不清)。不要那麼關乎用什麼方法,只要能做到效果不錯就行,有時候高大上的方法反而不如簡單方法。個人崇尚簡單粗暴美,不喜勿噴!


反對說不合適的。

機器學習包含無監督學習,不需要帶標籤的訓練集。有一年國賽的拼碎紙片的題目,一種解法就是先聚類將紙片分行,再在行內跑旅行商問題。

這個聚類就是機器學習中的無監督學習演算法。


首先很多答案根本不懂機器學習,還一本正經的說合適不合適,可發一笑。

這裡只聲明一下:機器學習是數學,機器學習可以解釋。


首先你要找到訓練集;然後保證老師能夠看懂你的方法....

謝喵


沒有測試集做評測的話,就不容易說明模型的有效性。沒有訓練集的話也不容易發揮機器學習方法的能力。機器學習方法一定是建立在數據基礎上的。沒數據或者數據太少就不要用。不過,有的機器學習方法即使只有幾十個樣本也是能用的。機器學習從來不用嘴解釋自己work不work, 而是靠測試結果。在比賽中就是測試集成績。如果你的測試成績能比別人好一大截,那為什麼不能用機器學習呢?

多數回答怎麼都搞得好像只有神經網路才是機器學習的樣子,那麼多白的不能再白的像決策樹,隨機森林,svm/svr, 邏輯回歸,lda,貝葉斯回歸,hmm, lasso,ridge, pls還是可以用的吧,而且上述非樹的方法的求解過程就是解優化問題,一點也不黑,樹的方法依賴於資訊理論,也不黑。不要老拿機器學習當黑箱,人家白著呢!還有,淺層的神經網路也是可以寫出公式化的模型的,所謂的黑箱只有深度學習才算的上吧。


不適合,因為機器學習嚴格說只是一套方法而並不是一個模型。

什麼是模型?條件變成方程,在限制條件下求解最優化問題,這叫模型;用ANN求解,這叫方法。

有說ANN本身也有套理論模型的啊怎麼不算模型。從學科角度卻是是模型,但是你能做到在40-60頁論文里通過嚴謹的證明和闡述說清楚為何你構造的ANN是可以用來求當前問題最優解的么?你需要說明原問題的最優化近似如何與ANN的逼近一致,需要說明ANN的近似解與所求最優解的差異……這一切都不是一篇論文甚至一本書可以闡述清楚的。

再者,如果不能說明你的問題可以轉化為一套近似演算法的有效問題,你用任何方法都不會受到關注。機器學習很新,然而它求解的聚類問題卻並不新。從數學建模競賽的角度,反而不那麼關注你用什麼方法去求解一個問題,關注的是怎麼把一個實際問題抽象成一套可計算模型而已。

再者,就算你用機器學習來解決,大多數題目里你的訓練集去哪兒找?能夠說明與目標的一致性么?有足夠的時間供你實現功能並且訓練完成么?很遺憾,通常這些都不太能做到。

所以終究和你用不用機器學習沒有太大關係,當計算方法可以拉個引文隨筆提一句,當模型組成?一般人做不到。

以上。


適合也不適合。因為它叫數學建模吖。核心就是你得先建立一個模型出來,這個模型體現了某一事物在某種緯度上或者某些約束上的規律,說白了就是找規律,然後數學的形式把這個規律表達出來,說白了就是列方程嘛,你看到這一步,數學建模跟機器學習還是扯不上啥關係的。再之後就是求解過程,這個過程你想咋求解都行,包括使用機器學習。這就算是適合了。說不適合是因為我感覺大多數題要是死往機器學習上套簡直是畫蛇添足...直接上就完了嘛。當然有些題也可以省略建模過程直接暴力套機器學習搞,舉個例子,我記得一個什麼預測河流乾涸周期的,這數據扔svm里跑了就OK,但是。結果是出來了你的模型呢?


樓主,你拿不了O獎,老老實實常規模型也能拿一等


數模的重點是建立模型,在模型建立後可以用機器學習去求解。你在比賽時的摘要中最好不要過多強調機器學習,而是強調你建立的模型。比如2016年美賽C題就可以用機器學習。


用不對地方就不適合。在主要模型中盡量不要使用,畢竟我們了解的只是神經網路,但它具體怎麼處理問題是一個「黑箱」,不能稱之為模型。但是在模型的檢驗,驗證結果部分,神經網路不失為一種不錯的選擇,能為文章增色。


說白了,你怎麼和其他人解釋呢如果用機器學習的話


我理解,機器學習是一個計算機領域的範疇吧,數學建模應該是屬於數學範疇,如果比賽叫機器建模那估計你們老師會頻繁提及機器學習了。。。

數學建模強調的是用數學的方法抽象問題、建立模型、然後求解,用的具體方法倒是五花八門,很早的時候我見過很多使用神經網路、遺傳演算法、聚類、模擬等各種計算機方法,這些都是具體的方法,沒人非要強調說自己使用的是機器學習、人工智慧


推薦閱讀:

LASSO(least absolute shrinkage and selection operator) 回歸中 如何用梯度下降法求解?
數學成績一般,智商普通人,偏偏喜歡上了數學建模,靠譜嗎?
數學建模吹水技巧有哪些?
數學建模比賽中,程序員具體需要做些什麼,以及程序員的數學水平應該達到什麼程度?
數學建模最重要的是思想方法么?

TAG:人工智慧 | 編程 | 機器學習 | 數學建模 | 神經網路 |