neural network ใน Mathematica

แปะไว้ก่อน กำลังสับสนอย่างเป็นระบบค่อยเป็นค่อยไป https://mathematica.stackexchange.com/questions/123458/how-do-you-make-a-neural-net https://mathematica.stackexchange.com/questions/124977/qa-mathematica-v-11-neural-networks-a-comprehensive-look-at-layers-net-functi  

ส่งผ่านค่าจาก url เข้ามาใน shiny app

ตัวอย่างรับค่าจาก url เข้ามาใช้ใน shiny app ครับ library(shiny) shinyApp( ui = fluidPage( textInput("text", "Text",""), textInput("text2", "Text2","") ), server = function(input, output, session) { observe({ query <- parseQueryString(session$clientData$url_search) if (!is.null(query[['text']])) { updateTextInput(session, "text", value = query[['text']]) } if (!is.null(query[['text2']])) { updateTextInput(session, "text2", value = query[['text2']]) } }) } ) ลองดูเพิ่มเติมที่ https://shiny.rstudio.com/articles/client-data.html

Mathematica package รวบรวมคำสั่งเมีย

ศรีภรรยาผมขอบมีคำถามเกี่ยวกับคอมพิวเตอร์แปลกๆมาถามเสมอ เช่นไอ้โน้น ไอ้นี่ทำไง สุดท้ายผมก็ต้องทำอยู่ดีขัดคำสั่งไม่ได้ โดยแต่ล่ะคำถามก็จะไปจบที่ผมต้องเขียนโปรแกรมเพื่อแก้ปัญหาให้ ซึ่งส่วนใหญ่ผมจะเขียนโดยใช้ภาษา Wolfram ครับ โดยทุกวันนี้เริ่มมีจำนวนคำสั่งมากขึ้นเรื่อย ตอนนี้ก็น่าจะประมาณ 20 คำสั่งได้ ผมก็เลยคิดว่าถ้าเช่นนั้นผมก็เอามารวมเป็น package เลยแล้วกันเผื่อว่าใครอยากจะใช้ด้วย โดยคำสั่งส่วนมากจะเกี่ยวกับปัญหาทางด้าน bioinformatics ครับ ซึ่งมันอาจจะมี package หรือโปรแกรมภาษาอื่นทำในสิ่งที่ผมเขียนไว้นี้ไว้หมดแล้วก็ได้ แต่ผมไม่ได้เช็คนะครับเพราะไม่มีเวลาค้นดูและเวลามันจำกัดครับ ช้าไม่ได้เพราะผมอาจถึงแก่ชีวิตได้ ใครสนใจลองดูที่ https://github.com/slphyx/Nao ผมจะทยอยเพิ่มจำนวนคำสั่งเรื่อยๆครับ  

ใช้ .net ใน CRAN สำหรับ Windows

ใครที่อยากใช้โปรแกรมที่เขียนขึ้นเองในภาษาอื่นใน R package มันก็มีหลายวิธีครับขึ้นกับว่าเราจะเขียน wrap function มันอย่างไรแต่ถ้าคิดจะเอาไปไว้ CRAN ก็คงต้องคิดหนักหน่อยเพราะ CRAN เน้นว่าโปรแกรมอื่นที่เขียนจากภาษาอื่นมานั้นต้อง compile จาก source เท่านั้นเวลาที่มีการติดตั้ง และตัว CRAN หรือ R เองก็ไม่ค่อยถูกกับฝั่ง .net ด้วยสินั่นหมายความว่าต้องใช้ compiler อย่าง gnu gcc เท่านั้น แต่มันก็พอมีวิธีครับถ้าอยากจะเอาโปรแกรมที่เขียนหรือcompiled มาแล้วจาก .net มาใช้งาน พร้อมกับส่งไปที่ CRAN ได้และผมก็เห็นหลาย package ทำกันอย่างเช่น https://github.com/jeroen/curl/blob/7fd8d483e5a9d9fd4716d123a855cbb2e0c17b05/tools/winlibs.R # Build against static libraries from rwinlib if(!file.exists("../windows/libcurl-7.51.0/include/curl/curl.h")){ if(getRversion() < "3.3.0") setInternet2() download.file("https://github.com/rwinlib/libcurl/archive/v7.51.0.zip", "lib.zip", quiet = TRUE) dir.create("../windows", showWarnings = FALSE)

ปัญหาโหลด rJava ไม่ได้ (Windows)

มีหลายคนถามมาว่าอยากจะใช้ package ใน R ที่มันใช้ Java ในเครื่องที่เป็น Windowsแต่มีปัญหาว่าโหลด rJava จากคำสั่ง library(rJava) ไม่ได้ โดยมันขึ้นว่า > library(rJava) Error: package or namespace load failed for ‘rJava’: .onLoad failed in loadNamespace() for 'rJava', details: call: inDL(x, as.logical(local), as.logical(now), ...) error: unable to load shared object 'C:/Users/CAMT/Documents/R/win-library/3.4/rJava/libs/x64/rJava.dll': LoadLibrary failure: %1 is not a valid Win32 application. วิธีแก้ที่ผมแนะนำไปนอกเหนือจากที่ต้องลง JDK ก็มีการเซ็ตpath ให้กับตัวแปรของระบบอย่าง

Mathematica กับปัญหา MH370 กับ Fukushima

ยังจำได้อยู่ว่าคืนที่เห็นคนโพสท์กระทู้นี้ที่บอร์ด community ของ wolfram รู้สึกตื่นเต้นมากกับวิธีที่เค้าเอาข้อมูลการไหลของน้ำในมหาสมุทรของNASAมาใช้ในการดูว่าชิ้นส่วนเครื่องบิน MH370 ที่หายไปควรจะลอยไปที่ใดได้บ้าง กับอีกอันก็ดูว่าการแพร่กระจายของอนุภาคกัมตรังสีจากโรงงานไฟฟ้านิวเคลียร์ของญี่ปุ่นมันจะแพร่ไปทางไหนบ้าง เจ๋งดีครับ http://community.wolfram.com/groups/-/m/t/595870

Stan กับ ปัญหา linear regression

จากที่เคยไปโม้ไว้เยอะว่า Stan มันเจ๋งยังไงให้กับเพื่อนร่วมงานฟัง เมื่อวันศุกร์ที่แล้วผมก็เลยนัดโชว์แบบคร่าวๆพร้อมกับสาธิตการใช้งานกับปัญหาง่ายๆอย่าง linear regression ให้เค้าดูกันครับ ก็เลยคิดว่าจะเอาที่ไปโม้ไว้มาใส่ไว้ที่นี่ด้วยเผื่อว่าใครสนใจใช้งาน Stan แต่ไม่รู้จะเริ่มตรงไหน หวังว่าคงมีประโยชน์กันบ้าง Stan จัดว่าเป็น Probabilistic Programming Language อันหนึ่งที่ช่วยให้เราทำโมเดลที่เกี่ยวข้องกับความน่าจะเป็นในแบบที่ต้องอาศัยทฤษฎีเบย์ได้ง่ายขึ้น และปัญหาที่เราสามารถเอา Stan มาใช้ประโยชน์ก็เช่นด้าน optimization ครับ ซึ่งโปรแกรมด้านนี้มันก็มีหลายตัวครับเช่น WinBUGS/OpenBUGS, JAGS และอื่นๆอีกมาก ลองดูเพิ่มเติมที่ http://probabilistic-programming.org/wiki/Home ครับ ตัวอย่างที่เอามาโชว์นี้ก็มาจากที่ผมเคยพูดไว้แล้วที่  http://www.sakngoi.com/2017/03/22/probabilistic-programming-language/ เรื่องที่เราจะหาค่า จากข้อมูลที่เรามีโดยที่โมเดลของเราเป็นสมการเส้นตรง อันนี้ตัวอย่างcode R สำหรับสร้างข้อมูลที่เอามาfitกับ Stan ครับ set.seed(12345) fakedata<-function(alpha, beta, t){ err<-rnorm(length(t),mean = 0, sd = 5) fake<-data.frame(time=t,y=alpha + beta*t +err) return(fake) } ob<-fakedata(alpha = 1.5, beta = 0.5,

แว่นขยายโดยภาษาWolfram

แอบติดตามงานท่าน Theodore Gray มานานล่ะ คนบ้าอะไรเก่งฉิบ มักจะมี code อะไรแปลกๆมาโชว์ตลอด อันด้านล่างนี้ก็เป็นอีกตัวอย่างหนี่งที่เจ๋งมาก