'新的AI助手角色出現 機器學習如何塑造軟件開發'

"

原創不易 請隨手點擊關注

本文由Rehoo團隊Tin原創,無授權禁轉!(圖片來自網絡)

"

原創不易 請隨手點擊關注

本文由Rehoo團隊Tin原創,無授權禁轉!(圖片來自網絡)

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

谷歌首席執行官桑達皮採也談到“AI自動編寫自己的軟件”。當然,如果你認為軟件開發只是創建經常重複的代碼片段,那麼人工智能的快速發展會讓軟件工程師停下來嗎?

傳統上,開發人員將軟件編寫為一系列硬編碼規則:如果X發生則執行Y.人類逐行指導機器。這是軟件1.0。但是軟件2.0認識到,隨著深度學習的進步 - 我們可以構建一個神經網絡,學習所需結果所需的指令或規則。2.0版支持者提出的論點,如特斯拉的AI主管Andrej Karpathy ,是不是我們不再真正編寫代碼了。我們只是找到數據並將其輸入機器學習系統。在這種情況下,我們可以想象軟件工程師的角色轉變為“數據策劃者”或“數據推動者”。無論我們稱之為什麼,我們都將成為不再編寫代碼的人。

但是,軟件工程不會很快消失。即使一個新的角色發展,無論是軟件2.0工程師,數據科學家2.0等 ,這種技術轉變的方式將賦予軟件1.0從業者權力。事實上,它不確定軟件工程在不久的將來是否會與我們現在的工作完全不同。是的,我們將從深度學習神經網絡系統中獲得幫助,但它們將幫助我們更好地完成當前的工作,而不是完全取代我們。

"

原創不易 請隨手點擊關注

本文由Rehoo團隊Tin原創,無授權禁轉!(圖片來自網絡)

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

谷歌首席執行官桑達皮採也談到“AI自動編寫自己的軟件”。當然,如果你認為軟件開發只是創建經常重複的代碼片段,那麼人工智能的快速發展會讓軟件工程師停下來嗎?

傳統上,開發人員將軟件編寫為一系列硬編碼規則:如果X發生則執行Y.人類逐行指導機器。這是軟件1.0。但是軟件2.0認識到,隨著深度學習的進步 - 我們可以構建一個神經網絡,學習所需結果所需的指令或規則。2.0版支持者提出的論點,如特斯拉的AI主管Andrej Karpathy ,是不是我們不再真正編寫代碼了。我們只是找到數據並將其輸入機器學習系統。在這種情況下,我們可以想象軟件工程師的角色轉變為“數據策劃者”或“數據推動者”。無論我們稱之為什麼,我們都將成為不再編寫代碼的人。

但是,軟件工程不會很快消失。即使一個新的角色發展,無論是軟件2.0工程師,數據科學家2.0等 ,這種技術轉變的方式將賦予軟件1.0從業者權力。事實上,它不確定軟件工程在不久的將來是否會與我們現在的工作完全不同。是的,我們將從深度學習神經網絡系統中獲得幫助,但它們將幫助我們更好地完成當前的工作,而不是完全取代我們。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

機器學習如何塑造軟件開發?

當然,這是一個新世界,事實上,一般辦公室助理已安排您的一天並開始您的電話會議。網絡上甚至還有基於人工智能的系統可以為您的企業生成徽標,並根據您的反饋優化徽標。

今天,您的手機會自動檢查您的拼寫並建議下一個單詞。當您編寫代碼時,類似的工具會突出顯示可能的錯誤。例如, 對編程結對的 人自然會想到軟件2.0對其工作方式的影響。考慮到機器學習和會話界面的進步,可以想象機器有一天會成為編程團隊的另一半。

多年來,我們一直在使用自動化幫助器來重構並節省編寫樣板代碼的時間。我們現在也歡迎在更復雜的軟件開發中出現AI驅動的助手。最近,他們以增壓IDE功能的形式出現在產品團隊中,可以提示更好的代碼完成。

"

原創不易 請隨手點擊關注

本文由Rehoo團隊Tin原創,無授權禁轉!(圖片來自網絡)

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

谷歌首席執行官桑達皮採也談到“AI自動編寫自己的軟件”。當然,如果你認為軟件開發只是創建經常重複的代碼片段,那麼人工智能的快速發展會讓軟件工程師停下來嗎?

傳統上,開發人員將軟件編寫為一系列硬編碼規則:如果X發生則執行Y.人類逐行指導機器。這是軟件1.0。但是軟件2.0認識到,隨著深度學習的進步 - 我們可以構建一個神經網絡,學習所需結果所需的指令或規則。2.0版支持者提出的論點,如特斯拉的AI主管Andrej Karpathy ,是不是我們不再真正編寫代碼了。我們只是找到數據並將其輸入機器學習系統。在這種情況下,我們可以想象軟件工程師的角色轉變為“數據策劃者”或“數據推動者”。無論我們稱之為什麼,我們都將成為不再編寫代碼的人。

但是,軟件工程不會很快消失。即使一個新的角色發展,無論是軟件2.0工程師,數據科學家2.0等 ,這種技術轉變的方式將賦予軟件1.0從業者權力。事實上,它不確定軟件工程在不久的將來是否會與我們現在的工作完全不同。是的,我們將從深度學習神經網絡系統中獲得幫助,但它們將幫助我們更好地完成當前的工作,而不是完全取代我們。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

機器學習如何塑造軟件開發?

當然,這是一個新世界,事實上,一般辦公室助理已安排您的一天並開始您的電話會議。網絡上甚至還有基於人工智能的系統可以為您的企業生成徽標,並根據您的反饋優化徽標。

今天,您的手機會自動檢查您的拼寫並建議下一個單詞。當您編寫代碼時,類似的工具會突出顯示可能的錯誤。例如, 對編程結對的 人自然會想到軟件2.0對其工作方式的影響。考慮到機器學習和會話界面的進步,可以想象機器有一天會成為編程團隊的另一半。

多年來,我們一直在使用自動化幫助器來重構並節省編寫樣板代碼的時間。我們現在也歡迎在更復雜的軟件開發中出現AI驅動的助手。最近,他們以增壓IDE功能的形式出現在產品團隊中,可以提示更好的代碼完成。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

AI助手的角色

現在想象一個更先進的AI助手在未來扮演更重要的角色。當您編寫代碼時,您的機器合作伙伴可能會根據您的風格,使用高級預測分析來確定您正在編寫哪種函數併為您填寫其餘內容。本質上,機器為您編寫其餘代碼,然後您批准它。

AI助手可以幫助的另一個領域是測試驅動的開發。當機器夥伴迭代數百萬次以找到正確的代碼片段來解決這些測試時,人類可以編寫測試。而不是做兩個工作,編寫測試並使測試通過,這時你有一個機器合作伙伴來完成後者。這會有所幫助。您可以花更少的時間在實現代碼上,花更多的時間來理解和解決業務問題。

簡而言之,Software 2.0甚至可以幫助指導測試驅動的開發,並建議下一個測試運行,為您提供原因。讓我們假設營銷人員去開發團隊並說他們想要這樣的功能。如果他們能夠以機器可以理解的方式表達他們想要的東西,這一直變得越來越容易 ,機器可以幫助您選擇所需的測試並建議後續步驟。

"

原創不易 請隨手點擊關注

本文由Rehoo團隊Tin原創,無授權禁轉!(圖片來自網絡)

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

谷歌首席執行官桑達皮採也談到“AI自動編寫自己的軟件”。當然,如果你認為軟件開發只是創建經常重複的代碼片段,那麼人工智能的快速發展會讓軟件工程師停下來嗎?

傳統上,開發人員將軟件編寫為一系列硬編碼規則:如果X發生則執行Y.人類逐行指導機器。這是軟件1.0。但是軟件2.0認識到,隨著深度學習的進步 - 我們可以構建一個神經網絡,學習所需結果所需的指令或規則。2.0版支持者提出的論點,如特斯拉的AI主管Andrej Karpathy ,是不是我們不再真正編寫代碼了。我們只是找到數據並將其輸入機器學習系統。在這種情況下,我們可以想象軟件工程師的角色轉變為“數據策劃者”或“數據推動者”。無論我們稱之為什麼,我們都將成為不再編寫代碼的人。

但是,軟件工程不會很快消失。即使一個新的角色發展,無論是軟件2.0工程師,數據科學家2.0等 ,這種技術轉變的方式將賦予軟件1.0從業者權力。事實上,它不確定軟件工程在不久的將來是否會與我們現在的工作完全不同。是的,我們將從深度學習神經網絡系統中獲得幫助,但它們將幫助我們更好地完成當前的工作,而不是完全取代我們。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

機器學習如何塑造軟件開發?

當然,這是一個新世界,事實上,一般辦公室助理已安排您的一天並開始您的電話會議。網絡上甚至還有基於人工智能的系統可以為您的企業生成徽標,並根據您的反饋優化徽標。

今天,您的手機會自動檢查您的拼寫並建議下一個單詞。當您編寫代碼時,類似的工具會突出顯示可能的錯誤。例如, 對編程結對的 人自然會想到軟件2.0對其工作方式的影響。考慮到機器學習和會話界面的進步,可以想象機器有一天會成為編程團隊的另一半。

多年來,我們一直在使用自動化幫助器來重構並節省編寫樣板代碼的時間。我們現在也歡迎在更復雜的軟件開發中出現AI驅動的助手。最近,他們以增壓IDE功能的形式出現在產品團隊中,可以提示更好的代碼完成。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

AI助手的角色

現在想象一個更先進的AI助手在未來扮演更重要的角色。當您編寫代碼時,您的機器合作伙伴可能會根據您的風格,使用高級預測分析來確定您正在編寫哪種函數併為您填寫其餘內容。本質上,機器為您編寫其餘代碼,然後您批准它。

AI助手可以幫助的另一個領域是測試驅動的開發。當機器夥伴迭代數百萬次以找到正確的代碼片段來解決這些測試時,人類可以編寫測試。而不是做兩個工作,編寫測試並使測試通過,這時你有一個機器合作伙伴來完成後者。這會有所幫助。您可以花更少的時間在實現代碼上,花更多的時間來理解和解決業務問題。

簡而言之,Software 2.0甚至可以幫助指導測試驅動的開發,並建議下一個測試運行,為您提供原因。讓我們假設營銷人員去開發團隊並說他們想要這樣的功能。如果他們能夠以機器可以理解的方式表達他們想要的東西,這一直變得越來越容易 ,機器可以幫助您選擇所需的測試並建議後續步驟。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

這引起了最終的觀點:智能機器是否會完全取代軟件工程師?現實情況更有可能是我們達到90%以上的能力。但這仍然意味著1%的時間失敗,導致不可預測性。這意味著您需要一個監控系統來確保實際工作編寫的代碼。也許這是軟件工程師的新角色,類似於Andrej在其帖子中提到的內容:監控代碼並幫助機器學習系統實現接近100%的準確率。

既然我們已經概述了可以想象的好處,那麼下一個問題就出現了:軟件編程的哪些部分可以轉移到深度學習2.0框架以及傳統1.0框架中應該保留哪些內容?今天,很明顯這些深度學習神經網絡在監督學習環境中表現良好,如果他們為訓練數據提供了很好的例子和不好的例子,那麼他們就可以學習正確輸出什麼。谷歌例如,在整個產品套件中使用深度學習。

但這些系統只能與訓練數據一樣好。而且,正如我的一位同事指出的那樣,改進模型的性能經常涉及改進底層代碼和部署環境,以及改進培訓數據。事實上,一些機器學習系統變得如此之好,以至於他們實際上遇到了人為因素導致的訓練數據缺陷。

"

原創不易 請隨手點擊關注

本文由Rehoo團隊Tin原創,無授權禁轉!(圖片來自網絡)

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

谷歌首席執行官桑達皮採也談到“AI自動編寫自己的軟件”。當然,如果你認為軟件開發只是創建經常重複的代碼片段,那麼人工智能的快速發展會讓軟件工程師停下來嗎?

傳統上,開發人員將軟件編寫為一系列硬編碼規則:如果X發生則執行Y.人類逐行指導機器。這是軟件1.0。但是軟件2.0認識到,隨著深度學習的進步 - 我們可以構建一個神經網絡,學習所需結果所需的指令或規則。2.0版支持者提出的論點,如特斯拉的AI主管Andrej Karpathy ,是不是我們不再真正編寫代碼了。我們只是找到數據並將其輸入機器學習系統。在這種情況下,我們可以想象軟件工程師的角色轉變為“數據策劃者”或“數據推動者”。無論我們稱之為什麼,我們都將成為不再編寫代碼的人。

但是,軟件工程不會很快消失。即使一個新的角色發展,無論是軟件2.0工程師,數據科學家2.0等 ,這種技術轉變的方式將賦予軟件1.0從業者權力。事實上,它不確定軟件工程在不久的將來是否會與我們現在的工作完全不同。是的,我們將從深度學習神經網絡系統中獲得幫助,但它們將幫助我們更好地完成當前的工作,而不是完全取代我們。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

機器學習如何塑造軟件開發?

當然,這是一個新世界,事實上,一般辦公室助理已安排您的一天並開始您的電話會議。網絡上甚至還有基於人工智能的系統可以為您的企業生成徽標,並根據您的反饋優化徽標。

今天,您的手機會自動檢查您的拼寫並建議下一個單詞。當您編寫代碼時,類似的工具會突出顯示可能的錯誤。例如, 對編程結對的 人自然會想到軟件2.0對其工作方式的影響。考慮到機器學習和會話界面的進步,可以想象機器有一天會成為編程團隊的另一半。

多年來,我們一直在使用自動化幫助器來重構並節省編寫樣板代碼的時間。我們現在也歡迎在更復雜的軟件開發中出現AI驅動的助手。最近,他們以增壓IDE功能的形式出現在產品團隊中,可以提示更好的代碼完成。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

AI助手的角色

現在想象一個更先進的AI助手在未來扮演更重要的角色。當您編寫代碼時,您的機器合作伙伴可能會根據您的風格,使用高級預測分析來確定您正在編寫哪種函數併為您填寫其餘內容。本質上,機器為您編寫其餘代碼,然後您批准它。

AI助手可以幫助的另一個領域是測試驅動的開發。當機器夥伴迭代數百萬次以找到正確的代碼片段來解決這些測試時,人類可以編寫測試。而不是做兩個工作,編寫測試並使測試通過,這時你有一個機器合作伙伴來完成後者。這會有所幫助。您可以花更少的時間在實現代碼上,花更多的時間來理解和解決業務問題。

簡而言之,Software 2.0甚至可以幫助指導測試驅動的開發,並建議下一個測試運行,為您提供原因。讓我們假設營銷人員去開發團隊並說他們想要這樣的功能。如果他們能夠以機器可以理解的方式表達他們想要的東西,這一直變得越來越容易 ,機器可以幫助您選擇所需的測試並建議後續步驟。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

這引起了最終的觀點:智能機器是否會完全取代軟件工程師?現實情況更有可能是我們達到90%以上的能力。但這仍然意味著1%的時間失敗,導致不可預測性。這意味著您需要一個監控系統來確保實際工作編寫的代碼。也許這是軟件工程師的新角色,類似於Andrej在其帖子中提到的內容:監控代碼並幫助機器學習系統實現接近100%的準確率。

既然我們已經概述了可以想象的好處,那麼下一個問題就出現了:軟件編程的哪些部分可以轉移到深度學習2.0框架以及傳統1.0框架中應該保留哪些內容?今天,很明顯這些深度學習神經網絡在監督學習環境中表現良好,如果他們為訓練數據提供了很好的例子和不好的例子,那麼他們就可以學習正確輸出什麼。谷歌例如,在整個產品套件中使用深度學習。

但這些系統只能與訓練數據一樣好。而且,正如我的一位同事指出的那樣,改進模型的性能經常涉及改進底層代碼和部署環境,以及改進培訓數據。事實上,一些機器學習系統變得如此之好,以至於他們實際上遇到了人為因素導致的訓練數據缺陷。

新的AI助手角色出現 機器學習如何塑造軟件開發

圖片來自網絡

總結

就目前神經網絡不是靈丹妙藥。相反,我們需要設計神經網絡以與其他解決方案一起使用。軟件開發的某些部分可以很好地用於深度學習,還有其他部分不能實現。如果我們再次關注結對編程,有很多不同的方法可以通過與其他人共享來完成問題。軟件開發是與其他同事不斷合作的過程。每當一對新人聚在一起時,合作伙伴就會帶來不同的經驗和不同的方法來解決問題。您彙集的越多,您獲得的解決方案就越多。

藉助Software 2.0,我們正在添加一個新的合作伙伴,以幫助開發人員更好地完成工作。我們設想一個更有活力的協作環境的興起,這將會有更多,更有效的解決方案。

(此處已添加圈子卡片,請到今日頭條客戶端查看)
"

相關推薦

推薦中...