Skip to content

Month: April 2016

Learning Rust #2 | ใช้ cargo run แบบ multiple targets

ถ้าเราสร้างโปรเจกต์ด้วยคำสั่ง cargo new my-project --bin  โปรเจกต์นั้นจะสามารถรัน target ได้แค่ target เดียวซึ่งก็คือโปรแกรมที่เขียนไว้ในไฟล์ src/main.rs แล้วถ้าเกิดว่าเราอยากรันหลายๆ target ล่ะ ทำยังไง?

จริงอยู่ที่แต่ละโปรเจกต์ควรทำหน้าที่เพียงอย่างเดียว มี main function เดียว แต่ถ้ากรณีที่เราต้องการทดลองโปรแกรมหลายๆ แบบซึ่งไม่มีความเกี่ยวข้องกันเลยในโปรเจกต์เดียวกันล่ะ? กรณีไหนบ้างที่ต้องทำแบบนี้? กรณีที่ชัดเจนที่สุดก็ตอนเริ่มเรียนรู้จากจาก example code ต่างๆ นี่ไงครับ

Leave a Comment

Learning Rust #1 | เรียนรู้ภาษา Rust

ความตั้งใจของผมคือศึกษาภาษาใหม่ทุกปี เหตุผลมี 2 อย่างคือ

  1. อัปเดตความรู้ตัวเองนอกจากภาษาที่ใช้ทำงานอยู่ก็ควรจะเรียนรู้ภาษาอื่นด้วย
  2. เรียนรู้ว่าภาษานี้ถูกสร้างขึ้นเพราะอะไร แก้ปัญหาอะไร ข้อดี-ข้อเสียมีอะไรบ้าง

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

Leave a Comment

เปลี่ยนการเข้ารหัส HTTPS เป็น Let’s encrypt แล้ว

เดิมผมใช้ StartSSL ซึ่งก็ดีแต่ renew ค่อนข้างลำบาก หลังจากโครงการ Let’s encrypt เปิดให้บริการได้ฟรีเลยย้ายดีกว่าเพราะการติดตั้งและ renew ง่ายกว่ากันเยอะ! การเริ่มโครงการ Let’s encrypt นี้ก็น่าสนใจมากเพราะความปลอดภัยทางข้อมูลดิจิทัล การเข้ารหัสข้อมูลนี้ควรจะเป็นฟีเจอร์พื้นฐานที่ควรเพื่อปกป้องความเป็นส่วนตัวของผู้ใช้งานอินเทอร์เน็ตสมัยนี้ ถึง SSL certificate จากโครงการ Let’s encrypt จะมีอายุแค่ 3 เดือนแต่ก็สามารถต่อได้เรื่อยๆ ไม่มีค่าใช้จ่าย ที่สำคัญตอนนี้มีคนเขียน…

1 Comment

Machine learning #4 | การสร้างระบบ Machine learning ต้องทำอะไรบ้าง

โพสต์ที่แล้วเราเรียนรู้คำศัพท์เฉพาะ (terminology) ใน field ML ไปแล้วว่ามีอะไรบ้าง โพสต์นี้จะเล่าถึงขั้นตอนการสร้าง ML ว่ามีกี่ขั้นตอน อะไรบ้าง ขั้นตอนการสร้างอาจจะมากน้อยต่างกันแล้วแต่ความพร้อมของข้อมูลและความซับซ้อนของระบบ แต่ขั้นตอนหลักๆ ก็มีดังนี้

  1. Pre-processing
  2. Learning
  3. Evaluation
2 Comments

Machine learning #3 | รู้จักศัพท์เฉพาะและคำจำกัดความของ Dataset กันก่อน

Dataset คือชุดข้อมูลเรื่องใดเรื่องหนึ่งที่มีคุณสมบัติ (feature) เหมือนกัน โชคดีของเราที่สมัยนี้มี dataset ที่ถูก digitize ให้เราได้ใช้ได้ฟรี ตัวอย่าง classic dataset ที่ถูกใช้กันแพร่หลายสำหรับ ML ก็เช่น Iris dataset ซึ่งเป็นการรวมตัวอย่าง (sample)  ข้อมูลของดอกไม้ 3 ชนิด ได้แก้ Setosa, Versicolor, Verginica จำนวน 150 sample ซึ่งแต่ละ sample จะมี feature อยู่ 4 อย่างด้วยกันคือ

Leave a Comment

Machine learning #2 | Machine learning มีกี่แบบ แต่ละแบบแตกต่างกันยังไง

โพสต์ที่แล้วเรารู้แล้วว่า machine learning คืออะไร ทีนี้เรามาดูประเภทของ machine learning กันดีกว่าว่ามีกี่แบบ และแต่ละแบบต่างกันยังไงบ้าง เพื่อความกระชับ (จริงๆ ขี้เกียจพิมพ์) ผมจะย่อ machine learning ว่า ML แล้วกันครับ

ประเภทของ machine learning หนังสือแต่ละเล่ม ผู้เชี่ยวชาญแต่ละคนอาจจะแบ่งไม่เหมือนกันแต่โดยทั่วไปแล้วแบ่งได้ 3 แบบดังนี้ครับ

Leave a Comment

Machine learning #1 | Machine learning คืออะไร?

ก่อนจะเริ่มเรียนรู้อะไรเราก็ต้องรู้ก่อน ว่าสิ่งที่เราเรียนรู้คืออะไร งั้นผมขอเริ่มด้วยคำถามว่า “Machine learning คืออะไร?” ก่อนก็แล้วกัน

Machine หรือ เครื่อง ในที่นี้คือคอมพิวเตอร์ ซึ่งคอมพิวเตอร์ก็เป็นเครื่องคำนวณอย่างหนึ่งถ้าจะให้มันทำงานก็ต้องเขียน logic (code) ให้มันทำงานตามซึ่งก็คือ “โปรแกรม”  ความจริงแล้วคอมพิวเตอร์ไม่ได้ฉลาดเลยครับ ความฉลาดเกิดจากคนที่โปรแกรมให้มัน คอมพิวเตอร์แค่คำนวณได้เร็วกว่ามนุษย์มากๆ เท่านั้นเอง มันไม่ได้เข้าใจข้อมูลอะไรเลยถ้าเราไม่สร้างองค์ความรู้ให้มันซะก่อน

Leave a Comment