本周任務:LycorisNet的工具類(utils類)設計
工具類需要包含神經(jīng)網(wǎng)絡必備的一些函數(shù),諸如各種激活函數(shù):relu秸苗,sigmoid卖丸,tanh等,還有一些結(jié)構(gòu)層帮坚,例如softmax,這些函數(shù)用內(nèi)聯(lián)實現(xiàn):
工具類中還需要實現(xiàn)包含fitness數(shù)據(jù)的對象進行排序的方法互艾,這一部分利用C++ 模板實現(xiàn)试和,代碼如下:
對個體進行種群分類的操作中需要計算兩個individual的距離,這個計算邏輯如下:
實現(xiàn)individual交配的代碼如下:
mate過程中藍框部分為拓撲排序的實現(xiàn)纫普,目的是使individual里各節(jié)點按照前饋順序排列阅悍。