回覆列表
  • 1 # 小唐學姐

    本人計算機的研究生,對自動化編碼感興趣,看了很多這個方面的論文。在我看來,網路類工作被人工智慧取代的可能性不大。

    首先簡單一點的說吧,現在外行人對於人工智慧的發展,有點太高估。認為人工智慧可以像科幻電影拍一樣,有人的情感,有思辨能力,甚至還可以統治人類。我不否認,在未來的某一天,可能會出現這種情況。但是,就目前的技術來看,人工智慧無論是用機器學習的方法,還是用機率求解的方法,還是其他的方法去實現。都是基於歸納的思想去解決的。所以本質上,還是人工智障,並非人工智慧。說到自動化程式設計的話,現在還是需要開發人員開發一個工具,然後自動的生成程式碼。程式設計師工作不會被完全取代,但只會搬運程式碼的碼農們,很可能會被人工智慧代替。

    那麼接下來,就說一個例項,闡述現在自動化編碼的常用方法。下面的文章,有些專業了。非專業人員可以直接跳過,看結尾了。

    北大研究者用CNN自動生成程式碼

    這篇論文是2019年發表在AAAI大會上的,有興趣的可以看一下。這篇論文主要講的是:

    程式碼生成可以將一份程式描述對映為用一種程式語言寫成的可執行原始碼。這篇文章文提出了一個基於語法的結構化卷積神經網路,用於程式碼生成。他們的模型透過預測程式語言的語法規則來生成程式;他們設計了若干個 CNN 模組,包括基於樹的卷積和前序卷積,其資訊透過專用的注意力池化層進一步聚集。在爐石傳說基準資料集上的實驗結果顯示,他們的 CNN 程式碼生成器的表現超出之前最佳方法 5 個百分點。

    透過這個例子可以看出,現在自動化編碼大多是用機器學習的方法去實現的。用人工智慧生成可以讓程式設計師在開發過程中,帶來很多便利,節省很多時間。但是,還是沒辦法取代程式設計師。

    結論

    人工智慧寫程式碼,就是一類程式設計師把另一類程式設計師給幹掉的過程。而不是人工智慧,把程式設計師幹掉的。至於題主關心的,誰來教人工智慧寫程式碼,當然是程式設計師啦。

    所以,碼農們,要加油啦,不要被同行幹掉。

  • 中秋節和大豐收的關聯?
  • 微波爐能加熱泡芙嗎?