您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

06 facebook像素代碼在哪看(人工神經網絡概念梳理與實例演示)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-17 10:22:30【】2人已围观

简介多有用的工具:DataVec是一款為ETL(提取-轉化-加載)任務準備模型訓練數據的集成工具。正如Sqoop為Hadoop加載數據,DataVec將數據進行清洗、預處理、規范化與標準化之后將數據加載到

多有用的工具:DataVec是一款為ETL(提取-轉化-加載)任務準備模型訓練數據的集成工具。正如Sqoop為Hadoop加載數據,DataVec將數據進行清洗、預處理、規范化與標準化之后將數據加載到神經網絡。這跟Trifacta’s Wrangler也相似,只不過它更關注二進制數據。

開始階段

第一階段包括典型的大數據任務和ETL:我們需要收集、移動、儲存、準備、規范化、矢量話日志。時間跨度的長短是必須被規定好的。數據的轉化需要花費一些功夫,這是由于JSON日志、文本日志、還有一些非連續標注模式都必須被識別并且轉化為數值數組。DataVec能夠幫助進行轉化和規范化數據。在開發機器學習訓練模型時,數據需要分為訓練集和測試集。

訓練神經網絡

神經網絡的初始訓練需要在訓練數據集中進行。

在第一次訓練的時候,你需要調整一些超參數以使模型能夠實現在數據中學習。這個過程需要控制在合理的時間內。關于超參數我們將在之后進行討論。在模型訓練的過程中,你應該以降低錯誤為目標。

但是這可能會出現神經網絡模型過度擬合的風險。有過度擬合現象出現的模型往往會在訓練集中的很高的分數,但是在遇到新的數據時就會得出錯誤結論。用機器學習的語言來說就是它不夠通用化。Deeplearning4J提供正則化的工具和“過早停止”來避免訓練過程中的過度擬合。

神經網絡的訓練是最花費時間和耗費硬件的一步。在GPUs上訓練能夠有效的減少訓練時間,尤其是做圖像識別的時候。但是額外的硬件設施就帶來多余的花銷,所以你的深度學習的框架必須能夠有效的利用硬件設施。Azure和亞馬遜等云服務提供了基于GPU的實例,神經網絡還可以在異構集群上進行訓練。

創建模型

Deeplearning4J提供ModelSerializer來保存訓練模型。訓練模型可以被保存或者是在之后的訓練中被使用或更新。

在執行異常檢測的過程中,日志文件的格式需要與訓練模型一致,基于神經網絡的輸出結果,你將會得到是否當前的活動符合正常網絡行為預期的結論。

代碼示例

遞歸神經網絡的結構應該是這樣子的:

MultiLayerConfiguration 買粉絲nf = new NeuralNetConfiguration.Builder(

.seed(123)

.optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT).iterations(1)

.weightInit(WeightInit.XAVIER)

.updater(Updater.NESTEROVS).momentum(0.9)

.learningRate(0.005)

.gradientNormalization(GradientNormalization.ClipElementWiseAbsoluteValue)

.gradientNormalizationThreshold(0.5)

.list()

.layer(0, new GravesLSTM.Builder().activation("tanh").nIn(1).nOut(10).build())

.layer(1, new RnnOutputLayer.Builder(LossFunctions.LossFunction.MCXENT)

.activation("softmax").nIn(10).nOut(numLabelClasses).build())

.pretrain(false).backprop(true).build();

MultiLayerNetwork 買粉絲 = new MultiLayerNetwork(買粉絲nf);

買粉絲.init();

下面解釋一下幾行重要的代碼:

.seed(123)

隨機設置一個種子值對神經網絡的權值進行初始化,以此獲得一個有復驗性的結果。系數通常都是被隨機的初始化的,以使我們在調整其他超參數時仍獲得一致的結果。我們需要設定一個種子值,讓我們在調整和測試的時候能夠用這個隨機的權值。

.optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT).iterations(1)

決定使用哪個最優算法(在這個例子中是隨機梯度下降法)來調整權值以提高誤差分數。你可能不需要對這個進行修改。

.learningRate(0.005)

當我們使用隨機梯度下降法的時候,誤差梯度就被計算出來了。在我們試圖將誤差值減到最小的過程中,權值也隨之變化。SGD給我們一個讓誤差更小的方向,這個學習效率就決定了我們該在這個方向上邁多大的梯度。如果學習效率太高,你可能是超過了誤差最小值;如果太低,你的訓練可能將會永遠進行。這是一個你需要調整的超參數。

UI設計中的視覺平衡

我們的眼睛是一個奇怪的器官,經常對我們說謊,但是如果你了解人類視覺感知的特殊性,就能夠理解眼睛的“謊言”,從而做出有親和力和清晰的設計。理解“眼見”和“腦見”所產生的差異,對于構建人機交互的界面UI設計師來說,是非常重要的。

1.物理尺寸和視覺尺寸

一個400px的正方形和400px的圓形哪個看上去更大?從幾何尺寸上看,他們的寬度和高度是相等的,但是從下圖中的兩個圖形可以看出,400px的正方形要比400px的圓形更大一點。這里用與重量有關的詞語描述視覺感知的差異會更合適,即400px的正方形要比400px的圓形在視覺感知上更重一些。

為了證明尺寸的正確性,下圖給出了輔助線和數值。

我們繼續看下圖中的正方形和圓形,在視覺重量上,他們是否相等?

答案是肯定的,至少很難立即分辨出哪個更重,這是因為圓形的直徑增加了50px。

為什么會這樣?我們把上面兩個案例進行了重疊。左圖(400px的正方形與400px的圓形),圓形完全被包含進了正方形里面,正方形超過了圓形4個a區域,正是造成視覺誤差的原因。右圖(400px的正方形與450px的圓形),正方形超過了圓形4個a區域,而圓形也超過了正方形4個b區域,兩個區域相互抵消。雖然他們的尺寸不同,但卻有著相似的面積,所以圓形和正方形在視覺上達到了平衡。

相同的原理也作用在菱形和三角形上,為了達到與正方形在視覺上的平衡,他們應該變得更寬和更高,以達到面積上的相似。

那么,如何在界面設計中運用這些原理呢?當我們創建一組圖標時,重要的是彼此之間保持視覺平衡,讓一組圖標看起來不會有過大或者過小的。如下圖所示,如果在相同的正方形框中繪制圖標,那么面積越大的圖標則看起來越大。

所以這種情況之下,就要放大那些看上去較小的圖標,縮小那些看上去較大的圖標,來達到視覺重量上的平衡。

下圖是一些實現了視覺平衡的圖標示例。

現在我們清楚了為什么一個圖標的背景區域總是大于這個圖標的主體,是讓了能讓非方形的圖標去調整大小,讓他們看起來不會小于其他方形的圖標。

通過一個簡單的方法可以檢查視覺平衡,即模糊,模糊后的圖標能變成大小相似的點,就說明這些圖標具有相同的視覺重量。

但有時我們會用到已有的圖標組合,例如比較常見的“分享”圖標,Instagram和Facebook是方形的,Twitter則是一個異形,Pinterest是一個圓形。這里Twitter和Pinterest的圖標就需要稍做放大,是為了能與Instagram和Facebook的圖標達成視覺上的平衡。

還有一個在視覺平衡上總是處理的不好的地方,是文字輸入框配合圓形的按鈕。如果這個圓形按鈕的直徑和輸入框的高度一樣,視覺上看起來就會覺得有些小,而稍稍放大之后,整個結構就會變得平衡。

但是如果改變了按鈕的樣式,則不需要放大。在下圖中,圓形按鈕和輸入框的高度是一致的,將按鈕填充成黑色,圓形實心按鈕跟輸入框就能達到一個較好的重量平衡。

劃重點:

視覺重量是眼睛所接收到的物體的形狀和感受,并不一定等于它的像素大小;圓形、菱形、三角形等形狀,設計時應稍大一些,以便跟正方形能達到視覺平衡;圖標四周要為視覺平衡留有一定空間,對于成組的圖標來說,這點尤為重要。2.形狀的對齊

視覺對齊是對視覺平衡和視覺重量的一個延伸,看下圖中的長條形,你覺得他們的長度一樣嗎?

其實這兩條形狀像素的長度是一樣的,但是第一眼看上去,下面的線要短于上面的線。

再來一張,感覺有什么變化嗎?

設計師對下面的兩根線進行了視覺的補償,將下面的線增加了20像素,增加了頂端的長度,使兩個形狀在視覺上達到平衡。

下圖還有一些更加復雜的圖形例子。

所以,當我們在設計一張有折疊條紋的海報,或在產品和網站上用到折疊條紋時,請注意要考慮視覺平衡:尖銳的邊緣要比其他的區域突出一些,特別是如果它是一個矩形。

那如何對齊有背景的文本和段落呢?這取決于背景的視覺重量,如果背景是輕的,可以將突出的段落和其他文本對齊。

由于背景很淺,一般不會打斷正常的閱讀。

但在深色的背景上需要不同的處理,下圖由于背景是黑色的,所以需要將背景與段落文本對齊,而背景中需要強調的白色文本則以縮進的方式對齊。

與淺色的背景不同,黑色有很大的視覺重量,如果目標是希望無縫的插入一段文字,最好是以下面的方式進行對齊。

相同的原則也可以用在按鈕和輸入框。

左側淺色背景的輸入框,標簽文字沒有跟輸入框的邊緣對齊,而是跟用戶輸入的內容對齊,右下角的發送按鈕,也沒有對齊輸入框的最右側,因為這個按鈕是深色的,從視覺上看是重的。

右側,輸入框是一個描邊的框,標簽文字跟輸入框的框體對齊,而用戶輸入的內容則有一定縮進;發送按鈕有一個三角形的邊緣,所以把此按鈕向右移動,也是為了跟上面的輸入框達到平衡。

下圖我們來看另一種對齊,即文本在按鈕中的對齊。下圖中的按鈕,文本看起來是完美居中的。

訣竅在于,右邊的按鈕,把文字向左邊移動了,因為它右邊的邊緣是三角形。此外,右邊箭頭按鈕的總寬度也增加了40像素,為了跟左邊正方形的按鈕看起來視覺上一致。

文本按鈕不僅有水平對齊,還有垂直對齊,特別是對于英文字體。在操作系統,網站和APP的界面設計中最常用到的對齊方式是Cap高度對齊,是基于大寫字母的高度對齊,等同于“H”和“I”的高度。

大寫字母的上方與下方的間距是相等的。這種對齊方式被最廣泛的應用也是有原因的。因為英文字母中有向上升部分的占多數,如:l, t, d, b, k, h。有下降部分的則占少數,如:y, j, g, p。而大寫字母的高度與具有上升部分的英文字母高度基本一致。

另一種對齊的方法是使用字體的小寫高度(所謂的“x高度”)來與背景對齊。在無襯線的字體中,它等同于字母x的高度。

這個方法也是有

很赞哦!(82)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:四川资阳简阳市

工作室:小组

Email:[email protected]