iT邦幫忙

julia相關文章
共有 53 則文章
鐵人賽 自我挑戰組 DAY 30

技術 [Day 30] End

終於寫到最後了! 我們從julia的教學一路寫到兩個專案並且告訴大家如何公開專案,覺得自己終於完成一件事了! 這系列文除了做教學以外,也有推廣這個語言的性質,帶...

鐵人賽 自我挑戰組 DAY 29

技術 [Day 29] Simulated annealing -- 公開程式碼

基本上就是丟到github上拉~~~~ 不過julia沒有這麼聰明幫你做這些事情,創帳號、創repository這些都是自己來的! 不過這篇文章不負責教怎麼創帳...

鐵人賽 自我挑戰組 DAY 28

技術 [Day 28] Simulated annealing -- 包成套件並測試

前天終於摸懂julia要怎麼包成套件的形式並且做測試orz............... 他包成套件之後真的很好測試!! 創造套件 打開julia consol...

鐵人賽 自我挑戰組 DAY 27

技術 [Day 27] Simulated annealing -- 重新實作(ii)

狀態 abstract State immutable StatePair current::State proposal::State en...

鐵人賽 自我挑戰組 DAY 26

技術 [Day 26] Simulated annealing -- 重新實作 (i)

Cooling scheduler 這部份我重新設計了一下。 program(pgm::Type{Val{:linear}}, t0::Float64, a::...

鐵人賽 自我挑戰組 DAY 25

技術 [Day 25] Simulated annealing -- 分析

明確來說我不是只要把程式寫出來就好,我會比較希望可以把他發展成一個框架。 前面寫了一部份的原型,我後來補上了一些部份讓他可以動起來,不過我就不放上來了。 這篇我...

鐵人賽 自我挑戰組 DAY 24

技術 [Day 24] Simulated annealing -- thermo-scheduler

之前有了大致的框架,不過對於控制溫度下降的速度也是重要的一環。 這決定了整體函數收斂的情況。 實作 參考了A Comparison of Cooling Sch...

鐵人賽 自我挑戰組 DAY 23

技術 [Day 23] Simulated annealing -- 實作

本來預定是要再寫一部份理論的,不過前面一不小心就把理論都講的差不多了XD 那我們就進入實作吧! 其實實作的部份沒有很難,照著前面的框架走應該是沒問題的 func...

鐵人賽 自我挑戰組 DAY 22

技術 [Day 22] Simulated annealing -- 細緻平衡

前面提到馬可夫蒙地卡羅法(MCMC),感覺非常的神奇! 這個方法可以模擬目標分佈,並且做抽樣的動作,成為一個sampler! 怎麼做到的! 這邊我只講結論,如果...

鐵人賽 自我挑戰組 DAY 21

技術 [Day 21] Simulated annealing -- 演算法

接下來的專案是實作模擬退火法! 在最佳化演算法當中,梯度下降法(gradient descent method)是一個廣泛使用的演算法,主要他實作上不複雜,也有...

鐵人賽 自我挑戰組 DAY 16

技術 [Day 16] Reactive programming--API設計

目前我們已經完成一小部分的程式 那如果我們想要把他包裝成比較方便使用的介面呢? 設計API 由於Julia偏好他自己方式的物件導向寫法,比較不是用傳統的物件導向...

鐵人賽 自我挑戰組 DAY 15

技術 [Day 15] Reactive programming--組合起來!

這邊我們要把前面的functional pattern跟Task組合成reactive programming。 import Base: get, map,...

鐵人賽 自我挑戰組 DAY 14

技術 [Day 14] Reactive programming--實作bridge

我們前面已經提到Task的使用方法跟把Task跟Task之間串起來的方法。 但是總覺得前面的串接方法非常的不自由,於是我想了個方法... 先把初始化搞定 覺得每...

鐵人賽 自我挑戰組 DAY 13

技術 [Day 13] 前哨站--functional patterns

我似乎發現,我是不是還沒說明我要做什麼樣的專案阿XD 我想在Julia這個語言上實作Reactive programming這樣的概念。 如果有成功的話,我會進...

鐵人賽 自我挑戰組 DAY 12

技術 [Day 12] Asynchronous programming--連結起來

上一篇寫得太順就把這篇的頭拿去寫到上一篇的尾巴了XD 我們繼續! 把他們連結起來 我們試著把task跟task之間串接起來: tas...

鐵人賽 自我挑戰組 DAY 11

技術 [Day 11] Asynchronous programming--Task

今天的章節會先介紹Julia中的Asynchronous programming。 相信大家在其他語言多多少少有碰過這類東西,像是網頁前端、寫concurren...

鐵人賽 自我挑戰組 DAY 10

技術 [Day 10] Julia是個什麼樣的語言

目前為止介紹到這邊已經算是把Julia這個語言都介紹過一遍了。 雖然有些細節部份沒有提到,或是更進階的功能也沒有提到,不過這些應該足以讓我們可以完成一個專案了。...

鐵人賽 自我挑戰組 DAY 9

技術 [Day 09] Metaprogramming

Julia中,Lisp留下的最好的禮物就是metaprogramming。Julia體現了Lisp "code as a data structur...

鐵人賽 自我挑戰組 DAY 8

技術 [Day 08] 函數式程式設計

以上我們已經介紹了Julia語言精心設計的物件導向。 這篇我來帶大家穿梭Julia的函數式程式設計! Functional的世界 其實functional pr...

鐵人賽 自我挑戰組 DAY 7

技術 [Day 07] Julia的物件導向世界

有沒有看到那到光 基本上前面介紹的就是Julia的type system與multiple dispatch,這兩個可謂Julia設計最優雅的地方,當然我還有很...

鐵人賽 自我挑戰組 DAY 6

技術 [Day 06] Multiple dispatch

Polymorphism 在講method的定義之前,我們先來聊聊多型(polymorphism) 多型,大家第一個會想到的大多都是在物件導向風格裏面,讓s...

鐵人賽 自我挑戰組 DAY 5

技術 [Day 05] Julia的型別系統

說起來,Julia的型別真是非常意義不明的東西,但是又很優雅。 如果有寫過其他語言的朋友,Julia的型別定義上非常像C裡面的struct,他只有定義了fi...

鐵人賽 自我挑戰組 DAY 4

技術 [Day 04] Julia的函式

你說上一篇怎麼還沒介紹完就沒了?當然不是阿!且聽我娓娓道來~~~ 簡介函式 前面我們介紹完了一些命令式跟結構化程式設計的元素,現在我們要來介紹一個好玩的東西,稱...

鐵人賽 自我挑戰組 DAY 3

技術 [Day 03] 跑起來吧!Julia!

上一篇我們在數字跟變數的叢林中繞阿繞的,可是我們似乎沒寫到任何一點程式阿! 別急~~~~ 我們這就來點不一樣的!! 我們來寫個猜拳遊戲好了! 首先,我們需要定義...

鐵人賽 自我挑戰組 DAY 2

技術 [Day 02] 進入Julia叢林—變數與數字

數字是一切的開始...... 變數與數字叢林 歡迎進入到Julia的世界!我們先來試試看一些簡單的程式。 x = 5 y = 4::Int64 z = x...

鐵人賽 自我挑戰組 DAY 1

技術 [Day 01] 我與Julia的相遇

我與Julia這個程式語言相遇的故事要從我碩班說起... 屠資料巨龍 某天我正在森林當中練等的時候,一手拿著Java牌的通用機槍,另一手拿著剛拿到不久的Pyth...

鐵人賽 Cloud、Big Data DAY 30

技術 julia (30) -- 結語

這次參加鐵人賽選了一個相對冷門的主題。有關數據的分析和實作文章在IThelp其實不太常見,而julia又是冷門中的冷門。會選擇這個主題來研究是因為我在使用幾個主...

鐵人賽 Cloud、Big Data DAY 29

技術 julia (29) -- julia有可能是科學運算的未來嗎?

這篇來稍微總結一下julia。 julia應該是繼Fortran之後第一個完全以科學計算為目的而設計語言。長久以來,腳本式語言如(R/C/C++)有效率不彰的問...

鐵人賽 Cloud、Big Data DAY 28

技術 julia (28) -- 連結C/C++函式

這篇要如何用julia來呼叫C/C++的函式庫。Julia把跨語言的介面做得非常好。雖然python和matlab等高階語言也都有連結C/C++的能力,但都有一...

鐵人賽 Cloud、Big Data DAY 27

技術 julia (27) -- 平行運算的實例:蒙地卡羅法計算圓周率

julia另一種常見的parallel computing模式是直接把for loop的運作平行化,像這樣: @parallel for i=1:10000...