我的理解是這樣: 原po說的「跑出人類不了解的東西」大概指的是類神經網路的權重值。
通常在類神經網路上我們比較多是在探討網路的結構,不太會去真的看每一個神經元的權重,頂多會去利用每一層的權重的統計值來加速收斂速度。
對我來說,機器學習是一件自然而然發生在資料上的事情; 它是一個人類看這群資料的角度,或者甚至就是資料本身。
我寫的很抽象,是因為其實它就是一個抽象的概念,很多方法都可以達成機器學習,最簡單的,大家高中都學過線性回歸,它也是一種機器學習。
我們是這樣看待線性回歸的:
1. 這個資料是線性的
2. 用最小平方法找到一條線代表這群資料
3. 利用這條線,我們可以歸類或是預測筆資料 (輸入x得到y)
線是我們看待這個資料的方式,也代表了資料本身,所以可以用來預測,大概的邏輯就是這樣。
線可以接受的話,接下來我們就可以探討幾件事。
1. 如果y不能對應整個實數域,只能對應到幾個有限的整數怎麼辦?
2. 如果資料不是線性的怎麼辦?
3. 我們要怎麼確保手上的資料可以代表我們要預測的所有資料?
4. 我們要怎麼把手上的東西轉成可以學的資料?
5. 如果多個演算法找到的結果不太一樣怎麼辦? 或是同一個演算法到底要用哪一組參數?
這些問題都有很多理論在描述或是想辦法解決
不過我覺得實務上最困難的還是取得或是轉化資料,而對於機器來說他們也不可能學出脫離資料本身的結果,也沒辦法做出超過人類定義的動作。
在我們可以找到一個可以餵世界上所有資料的方式,或是可以定義一個很抽象很抽象的動作之前,機器人用永遠會是人類的奴隸。