SakNgoi

Author: Bright

จำกัดช่วงของเลขสุ่มใน Stan

ถ้าจะจำกัดช่วงของเลขที่สุ่มจาก distribution ใดๆสามารถที่จะช่วงที่ต้องการได้โดยใช้ truncation function T ตามนี้ อย่างเช่น ถ้าอยากให้ y สุ่มมาจาก normal ที่ค่าอยู่ในช่วง -0.2 ถึง 1.5 สามารถพิมพ์ได้ตามนี้ครับ หรือจะพิมพ์แบบนี้ก็ได้ครับ แต่ถ้าทำในภาษา Wolfram ก็พิมพ์แบบนี้ได้ครับ

CVODE Constants

ช่วงนี้ปวดหัวกับการ fit model ด้วย MCMC ที่ระบบมัน stiff มาก ในงานที่ทำนั้นใช้ตัว ode solver ที่เรียกว่า cvode ของ sundials ซึ่งมันก็ใช้ได้ดี แต่ chain มัน converge ช้ามากกกก แถมบางครั้ง cvode ก็จะมี flag แปลกๆ กลับมา ข้างล่างนี้เป็นความหมายของ flag ต่างๆ ซึ่งก็เอามาจาก cvode manual

เขาว่าโจทย์เลขป.4

ดูแล้วเด็กก็คงต้องเขียนโปรแกรมช่วยแล้วล่ะครับ 555 ผมลองเขียนโปรแกรมด้วยภาษา Wolfram สำหรับปัญหานี้ตามนี้ครับ คำตอบที่ได้ก็จะประมาณนี้ครับ หรือให้แสดงผลสวย ๆ ก็จะได้

แสดงผลลัพธ์จาก wolfram script แบบกราฟฟิค

ตั้งแต่ Wolfram Engine สามารถใช้ได้ฟรีนี่ทำให้ผมมีอะไรได้ลองเล่นเยอะเลย ถึงแม้จะมี Wolfram Mathematica อยู่แล้วนะเนี้ย ตัว Wolfram Engine ที่เราสามารถโหลดมาใช้ได้ฟรี(http://www.wolfram.com/engine/) นี้จะเป็นแบบ text mode ไม่มี UI มาให้ ก็อาจจะทำให้ลำบากหน่อยถ้าอยากจะดูผลลัพธ์ที่เป็นกราฟฟิค เพราะอาจต้อง Export เป็นไฟล์ไปก่อนแล้วค่อยเปิดดู แต่ถ้าอยากจะให้ตัว Wolfram Engine มันแสดงผลกราฟฟิคให้ดูเราก็สามารถที่จะใช้ตัวแพ็กเกจ JavaGraphics ช่วยได้ครับวิธีก็เพียงโหลด <<JavaGraphics` ก่อนที่จะให้มันแสดงผลลัพธ์กราฟฟิคของคำสั่งที่ต้องการ ตัวอย่างครับ หรือถ้าใครสนใจจะใช้ผ่าน UI อย่าง jupyter ก็ลองดูที่ projects ตามนี้ดูนะครับ https://github.com/Ludwiggle/JWLS https://github.com/mmatera/iwolfram https://github.com/WolframResearch/WolframLanguageForJupyter สวนตัวแนะนำ WolframLanguageForJupyter ครับ วิธการติดตั้งที่อยากแนะนำก็คือลง Anaconda พอลงเสร็จก็รัน Anaconda prompt แล้วรัน wolframscript จากนั้นก็ติดตั้ง WolframLanguageForJupyter ตามวิธีที่เขาแนะนำไว้ครับ

Back to top
%d bloggers like this: