วันนี้จะขอรีวิวหนังสือ วิทยาการคำนวณชั้นม. ปลาย
วิชาที่ดึงความรู้ป.ตรีสายไอที
มาปูพื้นฐานให้เด็กๆ ทั่วประเทศได้เรียนกัน
.
ซึ่งวิทยาการคำนวณชั้นม.4-5-6 เรียนอะไร? ....โพสต์นี้มีคำตอบ
👉 ม.4 -> ปูพื้นฐานวิทย์คอม ได้แก่ เรียนแนวคิดเชิงคำนวณ, อัลกอริทึม, การทำโครงงาน
👉 ม.5 -> เรียน data science (วิทยาการข้อมูล หรือวิทยาศาสตร์ข้อมูล)
👉 ม.6 -> จะแนวรวมยำเทคโนโลยีให้น้องๆ รู้จัก ตั้งแต่สอนเป็นบล็อกเกอร์ รู้จัก AI, คลาวด์, IoT, AR, การเป็นพลเมืองดิจิตัล , กฏหมายดิจิตัล, การประกอบอาชีพไอที และอื่นๆ (ไม่ยากนะ)
.
===========
รีวิว ม.4
===========
วิทยาการคำนวณ ม.4 มีจำนวน 3 บท
🔥 +++บทที่ 1 แนวคิดเชิงคำนวณ +++++
บทนี้จะสอนแนวคิดเชิงคำนวณ (Computational Thinking) คืออะไร?
ซึ่งใครไม่รู้จักอาจงงเล็กน้อย ถึงปานกลาง
หรือเกิดคำถามคาใจ เรียนไปใช้ทำอะไรครับคุณครู
.
สำหรับแนวคิดเรื่อง Computational Thinking
(เรียกเป็นภาษาอังกฤษดีกว่า)
มีไว้เพื่อใช้แก้ปัญหาในแวดวง “วิทยาศาสตร์คอมพิวเตอร์” 🤩 🤩
จริงๆ แล้วมันไม่ใช่เรื่องแปลกใหม่แต่อย่างใด
.
ถ้าเราได้นั่งเรียนในระดับมหาวิทยาลัย
หรือได้ฝึกเขียนโปรแกรมไปเรื่อยๆ ก็จะใช้แนวคิดนี้โดยธรรมชาติ
อย่างไม่รู้ตัวอยู่แล้วครับ ไม่ต้องไปเรียนที่ไหน
.
นิยามของ Computational Thinking หรือแนวคิดเชิงคำนวณ
จะประกอบด้วยแนวคิดย่อย 4 อย่างดังนี้
1) Algorithm
2) Decomposition
3) Pattern recognition
4) Abstract thinking
.
หลายละเอียดแต่ละหัวข้อก็ตามนี้
👉 1) Algorithm ชื่อไทย “ขั้นตอนวิธี”
Algorithm คือลำดับขั้นตอนในการแก้ปัญหาหรือการทำงานที่ชัดเจน การคิดค้น อธิบายขั้นตอนวิธีในการแก้ปัญหาต่าง ๆ
.
ถ้าเคยเรียนตอนป.ตรี คงรู้จักคำนี้ดีไม่ต้องอธิบายมาก เช่น
-จะคำนวณหาพื้นที่เส้นรอบวง ต้องมีสเตปคำนวณอย่างไรบ้าง
-จะค้นหาข้อมูลแบบ binary search ต้องมีขั้นตอน 1,2,3 อย่างไรบ้าง
-จะหาเส้นทางที่ใกล้สุดในกราฟ ด้วยวิธี Dijkstra จะมีขั้นตอน 1,2,3 อย่างไรบ้าง
.
👉 2) Decomposition ชื่อไทยคือ “การแยกส่วนประกอบ และการย่อยปัญหา”
.
Decomposition เป็นการพิจารณาเพื่อแบ่งปัญหา หรืองานออกเป็นส่วนย่อย ทำให้สามารถจัดการกับปัญหาหรืองานได้ง่ายขึ้น พูดง่ายๆ เอาปัญหามาแยกย่อยออกเป็นส่วนๆ
.
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
เช่น การเขียนโปรแกรมแยกเป็นส่วนๆ แยกเป็นแพ็กเกจ แยกเป็นโมดูล
หรือทำระบบเป็น services ย่อยๆ หรือมองเป็น layer เป็นต้น
.
👉 3) Pattern recognition ชื่อไทยคือ “การหารูปแบบ”
.
Pattern recognition เป็นทักษะการหาความสัมพันธ์ที่เกี่ยวข้อง แนวโน้ม และลักษณะทั่วไปของสิ่งต่าง ๆ
.
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
เมื่อมีการทำงานของโปรแกรมที่หลากหลายแบบ
แต่ทว่ามีรูปแบบที่แน่นอนซ้ำๆ กัน
เราสามารถยุบโค้ดมาอยู่ในฟังก์ชั่นเดียวกันได้หรือไม่
หรือเขียนเป็นโปรแกรมวนลูป ให้อยู่ในลูปเดียวกัน เป็นต้น
.
👉 4) Abstract thinking ชือไทย “การคิดเชิงนามธรรม”
.
Abstract thinking เป็นกระบวนการคัดแยกคุณลักษณะที่สำคัญออกจากรายละเอียดปลีกย่อย ในปัญหา หรืองานที่กำลังพิจารณา เพื่อให้ได้ข้อมูลที่จำเป็นและเพียงพอในการแก้ปัญหา
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
-ก็เช่นการใช้ฟังก์ชั่น โดยเราแค่รู้รายละเอียดว่าฟังก์ชั่นทำงานอะไร ต้องการ input/ouput อะไร แล้วได้ return อะไรกลับมา ส่วนเนื้อหาไส้ในละเอียดเรามองไม่เห็น
.
🔥 +++++ บทที่ 2 การแก้ปัญหาและขั้นตอนวิธี +++++++
บททนี้เขาจะปูพื้นฐานอัลกอริทึมให้กับเด็กครับ ได้แก่
2.1 การแก้ปัญหาด้วยคอมพิวเตอร์
2.2 สอนให้รู้จักระบุข้อมูล input, ouput และเงื่อนไขของปัญหา
2.3 สอนการนำแนวคิด Computational Thinking มาออกแบบอัลกอริทึม
มี flow chart โผล่มาเล็กน้อย
2.4 สอนเรื่องการทำซ้ำ หรือก็คือสอนให้รู้จักวนลูปนั่นเอง
2.5 สอนอัลกอริทึมได้แก่ การจัดเรียงและค้นหาข้อมูล
ภาษาอังกฤษก็คือ อัลกอริทึมสำหรับ sort & search
.
🤓 สำหรับเรื่อง sort ก็จะมี
- selection sort (ชื่อไทย การจัดเรียงแบบเลือก)
- insertion sort (ชื่อไทย การจัดเรียงแบบแทรก)
.
🤓 สำหรับเรื่อง search ก็จะมี
-sequential search (ชื่อไทย การค้นหาแบบลำดับ)
-binary search (ชื่อไทย การค้นหาแบบทวีภาค)
.
ลืมบอกไป Big-O ตอนเรียนป.ตรี ก็โผล่ออกมาแว็บๆ นิดหน่อย
เด็กอาจสงสัยมันคืออะไร เป็นญาติอะไรกับ Big-C เปล่าเนี่ย
.
🔥 ++++ บทที่ 3 การพัฒนาโครงงาน ++++
บทนี้ถ้าสรุปสั้นๆ ก็สอนให้เด็กเขียนเสนอโครงงาน
หรือก็คือเขียน proposal เหมือนตอนเรียน ป. ตรีแหละครับ
.
ถ้าใครจำไม่ได้ ก็จะประมาณว่า การเขียนโครงงานต้องมี
บทที่ 1 บทนำ
บทที่ 2 หลักการ ทฤษฏี และงานที่เกียวข้อง
บทที่ 3 วิธีการดำเนินงาน
บทที่ 4 การทดลองและผลการทดลอง
บทที่ 5 สรุปผล วิเคราะห์ และข้อเสนอแนะ
.
===========
รีวิว ม.5
===========
ในวิชา "วิทยาการคำนวณ" ระดับชั้น ม. 5
ได้ดึงวิชา data science (วิทยาศาสตร์ข้อมูล)
มาปูพื้นฐานให้เด็กๆ ได้เรียนกันแล้ว นับว่าเป็นโชคดี
เพราะวิชาพวกนี้เป็นของสูง กว่าจะสัมผัสก็คงตอนป.ตรี โท เอก
ซึ่งผมจะรีวิวเนื้อหาให้อ่านคร่าวๆ เนื้อหาแบ่งเป็น 4 บท
.
👉 ++++ บทที่ 1 - ข้อมูลมีคุณค่า +++++
.
Data science ในตำราเรียนใช้ชื่อไทยว่า "วิทยาการข้อมูล"
บทนี้จะกล่าวถึง Big Data หรือข้อมูลขนาดใหญ่ที่มีค่ามากมาย
และมีบทบาทมากในยุค 4.0 นี้ ทั้งภาครัฐและเอกชน
.
ถ้านึกไม่ออกก็นึกถึงเวลาเราเล่นเนตค้นหาใน Google จะพบข้อมูลมากมายมหาศาล ซึ่งเราสามารถนำมาใช้ในธุรกิจเราได้ ก็เพราะเหตุนี้ศาสตร์ด้านข้อมูล จึงมีบทบาทสำคัญอย่างมากอย่างยิ่งยวด
.
จึงไม่น่าแปลกใจที่ทำให้อาชีพนักวิทยาศาสตร์ด้านข้อมูล (ชื่ออังกฤษ data scientist) มันมีบทบาทสำคัญ และเป็นอาชีพที่มีเสน่ห์และน่าสนใจที่สุดยุคศตวรรษที่ 21
.
Data science ถ้าตามหนังสือเขาให้นิยามว่า
"เป็นการศึกษาถึงกระบวนการ วิธีการ หรือเทคนิค ในการนำข้อมูลจำนวนมหาศาล มาประมวลผล เพื่อให้ได้องค์ความรู้ เข้าใจปรากฏการณ์หรือตีความ ทำนายหรือพยากรณ์ ค้นหารูปแบบหรือแนวโน้มจากข้อมูล
และสามารถนำมาวิเคราะห์ต่อยอดเพื่อแนะนำทางเลือกที่เหมาะสม หรือใช้ในการตัดสินใจเพื่อประโยชน์สูงสุด"
.
สำหรับงาน Data science เขาจะมีกระบวนตามขั้นตอนดังนี้
- ตั้งคำถามที่ตนเองสนใจ
- เก็บรวบรวมข้อมูล
- การสำรวจข้อมูล
- การวิเคราะห์ข้อมูล (analyze the data)
- การสื่อสารและการทำผลลัพธ์ให้เห็นเป็นภาพ (communicate and visualize the results)
.
🤔 นอกจากนี้เขายังพูดถึง design thinking ...ว่าแต่มันคืออะไร?
ต้องบอกว่างานของนักวิทยาศาสตร์ข้อมูล
มันไม่ได้จบแค่เอาข้อมูลที่เราวิเคราะห์ได้แล้ว
มาโชว์ให้คนอื่นเข้าใจ
.
ยังต้องมีขั้นตอนการออกแบบแอพลิชั่น
ที่ต้องใช้ข้อมูลจากที่เราวิเคราะห์ไปนั่นเอง
ซึ่งคำว่า design thinking มันก็คือความคิดยิ่งนักออกแบบดีๆ นี้เอง
ซึ่งนักวิทยาศาสตร์ข้อมูลควรมีไว้เพื่อออกแบบแอพลิชั่นขั้นสุดท้าย
จะได้ตอบสนองความต้องการผู้ใช้
.
👉 ++++ บทที่ 2 การเก็บรวบรวมและสำรวจข้อมูล +++++
.
บทนี้ก็แค่จะปูพื้นฐาน
2.1 การเก็บรวบรวมข้อมูล
ในบทนี้จะพูดถึงข้อมูลที่เป็นลักษณะทุติยภูมิ
ที่หาได้เกลื่อนเน็ต และเราต้องการรวบรวมมาใช้งาน
2.2 การเตรียมข้อมูล (data preparation)
เนื้อหาก็จะมี
-การทำความสะอาดข้อมูล (data cleansing)
-การแปลงข้อมูล (data transformation)
ในม.5 ไม่มีอะไรมาก แต่ถ้าในระดับมหาลัยจะเจอเทคนิคขั้นสูง เช่น PCA
-การเชื่อมโยงข้อมูล (combining data)
2.3 การสำรวจข้อมูล (data exploration)
พูดถึงการใช้กราฟมาสำรวจข้อมูล เช่น
กราฟเส้น ฮิสโทแกรม แผนภาพกล่อง (box plot) แผนภาพแบบกระจาย (scatter plot)
พร้อมยกตัวอย่างการเขียนโปรแกรมดึงข้อมูลออกมาพล็อตเป็นกราฟจากไฟล์ csv (หรือ xls)
2.4 ข้อมูลส่วนบุคคล
สำหรับหัวข้อนี้ ถ้านักวิทยาศาสตร์ข้อมูลจะนำข้อมูลส่วนบุคคลมาใช้งาน ต้องเก็บเป็นความลับ ห้ามหลุด
.
ซึ่งประเด็นข้อมูลส่วนบุคคล ปัจจุบันมีก็มีร่างพรบ. คุ้มครองข้อมูลส่วนบุคคล ออกมาเรียบร้อยแล้ว
.
.
👉 ++++ บทที่ 3 การวิเคราะห์ข้อมูล ++++
.
แบ่งเป็น 2 ส่วน ได้แก่
.
3.1 การวิเคราะห์เชิงพรรณา (descriptive analytics)
เป็นการวิเคราะห์โดยใช้เลขที่เราร่ำเรียนมาตั้งแต่
- การหาสัดส่วนหรือร้อยละ
- การวัดค่ากลางของข้อมูล พวกค่าเฉลี่ย มัธยฐาน ฐานนิยม
- การหาความสัมพันธ์ของชุดข้อมูล (Correlation) พร้อมตัวอย่างการเขียนโปรแกรมให้ดูง่าย
.
.
3.2 การวิเคราะห์เชิงทำนาย (predictive analytics)
.
- มีการพูดถึงการทำนายเชิงตัวเลข (numeric prediction)
- พูดถึงเทคนิคอย่าง linear regression สมการเส้นตรงที่จะเอาไว้ทำนายข้อมูลในอนาคต
รวมทั้งพูดถึงเรื่อง sum of squared errors
ดูว่ากราฟเส้นตรงมันนาบฟิตไปกับข้อมูลหรือยัง (พร้อมตัวอย่างเขียนโปรแกรม)
- สุดท้ายได้กล่าวถึง K-NN (K-Nearest Neighbors: K-NN) เป็นวิธีค้นหาเพื่อนบ้านใกล้เคียงที่สุด K ตัว สำหรับงาน classification (การแบ่งหมวดหมู่)
***หมายเหตุ*****
linear regression กับ K-NN
นี้ก็คืออัลกอริทึมหนึ่งในวิชา machine learning (การเรียนรู้ของเครื่อง สาขาหนึ่งของ AI)
เด็กสมัยเนี่ยได้เรียนแหละนะ
.
.
👉 +++ บทที่ 4 การทำให้ข้อมูลเป็นภาพและสื่อสารด้วยข้อมูล +++
.
บทนี้ไม่อะไรมาก ลองนึกถึงนักวิทยาศาสตร์ หลังวิเคราะห์ข้อมูลอะไรมาเสร็จสรรพ เหลือขั้นสุดท้ายก็คือ การโชว์ให้คนอื่นดูด้วยการทำ data visualization (เรียกทับศัพท์ดีกว่า)
.
ในเนื้อหาก็จะยกตัวอย่างการใช้ แผนภูมิแท่ง,กราฟเส้น, แผนภูมิวงกลม, แผนการกระจาย
.
สุดท้ายที่ขาดไม่ได้ก็คือการเล่าเรื่องจากข้อมูล (data story telling) พร้อมข้อควระวังเวลานำเสนอข้อมูล
.
.
.
***หมายเหตุนี้ ***
😗 ภาษาโปรแกรมที่ตำราเรียน ม.5 กล่าวถึง และยกตัวอย่างมาให้ดู
ก็ได้แก่ python กับภาษา R
.
สำหรับภาษา R หลายคนอาจไม่คุ้น
คนจบไอทีอาจคุ้นกับ python มากกว่า
แต่ใครมาจากสายสถิติจะคุ้นแน่นอน
เพราะภาษา R นิยมมากในสายงานสถิติ
และสามารถนำมาใช้ในงาน data science ได้ง่ายและนิยมไม่แพ้ python
.
แต่ถ้าคนจาก data science จะขยับไปอีกสายหนึ่งของ AI
ก็คือ deep learning (การเรียนรู้เชิงลึก)
python จะนิยมแบบกินขาดครับ
.
===========
รีวิว ม.6
===========
เนื้อหาแบ่งเป็น 4 บท
👉 บทที่ 1 จะออกแนวสอนการเขียนบล็อก เพื่อเป็นบล็อกเกอร์
เนื้อหา ประกอบด้วย
1.1 องค์ประกอบและรูปแบบพื้นฐานในการสื่อสาร
1.1 เทคนิคและวิธีการแบ่งปันข้อมูล
1.1 ข้อควรระวังในการแบ่งปันข้อมูล
👉 บทที่ 2 อันนี้เด็ดดี
2.1 พูดถึงปัญญาประดิษฐ์ (AI), machine learning, deep learning
2.2 พูดถึงการประมวลผลแบบคลาวด์ (clound computing)
2.3 พูดถึง IoT (Internet of Things: IoT) อินเตอร์เน็ตของสรรพสิ่ง มียกตัวอย่าง smart city
2.4 เทคโนโลยีเสมือนจริง กลาวถึงเรื่อง AR ( Augmented Reality: AR) กับ VR (Virtual Reality: VR)
มีแถมเรื่อง block chain กับ quantum computer
.
แต่เนื้อหาเป็นการเกริ่นๆ เฉยๆ ไม่ได้ลงลึกอะไรมากแบบมหาลัยนะครับ
.
👉 บทที่ 3 พูดถึงการเป็นพลเมืองดิจิทัล
เนื้อหาประกอบไปด้วย
3.1 การเป็นพลเมืองดิจิทัล
3.2 การป้องกันตนเองและผู้อื่น
3.3 กฏหมายและมารยาทในสังคมดิจิทัล
.
👉 บทที่ 4 อาชีพในยุคดิจิทัล
เนื้อหาจะประกอบด้วย
4.1 อาชีพด้านเทคโนโลยีสารสนเทศและการสื่อสาร
4.2 การเปลี่ยนแปลงของเทคโนโลยีกับสังคมและอาชีพ
4.3 ผลกระทบของเทคโนโลยีกับอาชีพ
4.4 การทำงานร่วมกับเครื่องจักรและระบบอัตโนมัติ
สรุปแล้วเนื้อหาม.6
ตามความเห็น อ่านแล้วง่าย มันแค่เป็นการอธิบายภาพ
แต่ถ้าเป็นม.4 กับ ม.5 จะหนักกว่าหน่อย
.
ส่วนเนื้อหา ม.1 ม.2 ม.3 เดี่ยวมาเล่าให้ฟัง
แอบกระซิบบอกมี Python ด้วยแหละ
.
.
✍เขียนโดย โปรแกรมเมอร์ไทย thai programmer
👀 อ้างอิง
- วิทยาการคำนวณม.4
- วิทยาการคำนวณม. 5
- วิทยาการคำนวณม.6
.
.
++++++++++++++++++++++++++++=
ทิ้งท้ายในเมื่อ ม.6 มีพูดถึง AI หรือปัญญาประดิษฐ์
เผื่อน้องๆ สนใจอยากศึกษาเชิงลึก เป็นการปูพื้นฐานเรียนต่อมหาลัยจะได้ไม่งง
+++++ขอประชาสัมพันธ์ (ขายของ)
📔 หนังสือ "ปัญญาประดิษฐ์ (AI) ไม่ยาก" เข้าใจได้ด้วยเลขม. ปลาย (เนื้อหาภาษาไทย)
.
ถ้าสนใจสั่งซื้อเล่ม 1 ก็สั่งซื้อได้ที่ (เล่มอื่นๆ กำลังทยอยตามมา)
👉 https://www.mebmarket.com/web/index.php…
.
ขออภัยยังไม่มีเล่มกระดาษจำหน่าย มีแต่ ebook
.
ส่วนตัวอย่างหนังสือ ก็ดูได้ลิงค์นี้
👉 https://www.dropbox.com/s/fg8l38hc0k9b…/chapter_example.pdf…
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「descriptive analytics」的推薦目錄:
- 關於descriptive analytics 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最讚貼文
- 關於descriptive analytics 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最讚貼文
- 關於descriptive analytics 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳解答
- 關於descriptive analytics 在 コバにゃんチャンネル Youtube 的最讚貼文
- 關於descriptive analytics 在 大象中醫 Youtube 的最佳貼文
- 關於descriptive analytics 在 大象中醫 Youtube 的精選貼文
descriptive analytics 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最讚貼文
วันนี้จะขอรีวิวหนังสือ วิทยาการคำนวณชั้นม. ปลาย
วิชาที่ดึงความรู้ป.ตรีสายไอที
มาปูพื้นฐานให้เด็กๆ ทั่วประเทศได้เรียนกัน
.
ซึ่งวิทยาการคำนวณชั้นม.4-5-6 เรียนอะไร? ....โพสต์นี้มีคำตอบ
👉 ม.4 -> ปูพื้นฐานวิทย์คอม ได้แก่ เรียนแนวคิดเชิงคำนวณ, อัลกอริทึม, การทำโครงงาน
👉 ม.5 -> เรียน data science (วิทยาการข้อมูล หรือวิทยาศาสตร์ข้อมูล)
👉 ม.6 -> จะแนวรวมยำเทคโนโลยีให้น้องๆ รู้จัก ตั้งแต่สอนเป็นบล็อกเกอร์ รู้จัก AI, คลาวด์, IoT, AR, การเป็นพลเมืองดิจิตัล , กฏหมายดิจิตัล, การประกอบอาชีพไอที และอื่นๆ (ไม่ยากนะ)
.
===========
รีวิว ม.4
===========
วิทยาการคำนวณ ม.4 มีจำนวน 3 บท
🔥 +++บทที่ 1 แนวคิดเชิงคำนวณ +++++
บทนี้จะสอนแนวคิดเชิงคำนวณ (Computational Thinking) คืออะไร?
ซึ่งใครไม่รู้จักอาจงงเล็กน้อย ถึงปานกลาง
หรือเกิดคำถามคาใจ เรียนไปใช้ทำอะไรครับคุณครู
.
สำหรับแนวคิดเรื่อง Computational Thinking
(เรียกเป็นภาษาอังกฤษดีกว่า)
มีไว้เพื่อใช้แก้ปัญหาในแวดวง “วิทยาศาสตร์คอมพิวเตอร์” 🤩 🤩
จริงๆ แล้วมันไม่ใช่เรื่องแปลกใหม่แต่อย่างใด
.
ถ้าเราได้นั่งเรียนในระดับมหาวิทยาลัย
หรือได้ฝึกเขียนโปรแกรมไปเรื่อยๆ ก็จะใช้แนวคิดนี้โดยธรรมชาติ
อย่างไม่รู้ตัวอยู่แล้วครับ ไม่ต้องไปเรียนที่ไหน
.
นิยามของ Computational Thinking หรือแนวคิดเชิงคำนวณ
จะประกอบด้วยแนวคิดย่อย 4 อย่างดังนี้
1) Algorithm
2) Decomposition
3) Pattern recognition
4) Abstract thinking
.
หลายละเอียดแต่ละหัวข้อก็ตามนี้
👉 1) Algorithm ชื่อไทย “ขั้นตอนวิธี”
Algorithm คือลำดับขั้นตอนในการแก้ปัญหาหรือการทำงานที่ชัดเจน การคิดค้น อธิบายขั้นตอนวิธีในการแก้ปัญหาต่าง ๆ
.
ถ้าเคยเรียนตอนป.ตรี คงรู้จักคำนี้ดีไม่ต้องอธิบายมาก เช่น
-จะคำนวณหาพื้นที่เส้นรอบวง ต้องมีสเตปคำนวณอย่างไรบ้าง
-จะค้นหาข้อมูลแบบ binary search ต้องมีขั้นตอน 1,2,3 อย่างไรบ้าง
-จะหาเส้นทางที่ใกล้สุดในกราฟ ด้วยวิธี Dijkstra จะมีขั้นตอน 1,2,3 อย่างไรบ้าง
.
👉 2) Decomposition ชื่อไทยคือ “การแยกส่วนประกอบ และการย่อยปัญหา”
.
Decomposition เป็นการพิจารณาเพื่อแบ่งปัญหา หรืองานออกเป็นส่วนย่อย ทำให้สามารถจัดการกับปัญหาหรืองานได้ง่ายขึ้น พูดง่ายๆ เอาปัญหามาแยกย่อยออกเป็นส่วนๆ
.
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
เช่น การเขียนโปรแกรมแยกเป็นส่วนๆ แยกเป็นแพ็กเกจ แยกเป็นโมดูล
หรือทำระบบเป็น services ย่อยๆ หรือมองเป็น layer เป็นต้น
.
👉 3) Pattern recognition ชื่อไทยคือ “การหารูปแบบ”
.
Pattern recognition เป็นทักษะการหาความสัมพันธ์ที่เกี่ยวข้อง แนวโน้ม และลักษณะทั่วไปของสิ่งต่าง ๆ
.
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
เมื่อมีการทำงานของโปรแกรมที่หลากหลายแบบ
แต่ทว่ามีรูปแบบที่แน่นอนซ้ำๆ กัน
เราสามารถยุบโค้ดมาอยู่ในฟังก์ชั่นเดียวกันได้หรือไม่
หรือเขียนเป็นโปรแกรมวนลูป ให้อยู่ในลูปเดียวกัน เป็นต้น
.
👉 4) Abstract thinking ชือไทย “การคิดเชิงนามธรรม”
.
Abstract thinking เป็นกระบวนการคัดแยกคุณลักษณะที่สำคัญออกจากรายละเอียดปลีกย่อย ในปัญหา หรืองานที่กำลังพิจารณา เพื่อให้ได้ข้อมูลที่จำเป็นและเพียงพอในการแก้ปัญหา
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
-ก็เช่นการใช้ฟังก์ชั่น โดยเราแค่รู้รายละเอียดว่าฟังก์ชั่นทำงานอะไร ต้องการ input/ouput อะไร แล้วได้ return อะไรกลับมา ส่วนเนื้อหาไส้ในละเอียดเรามองไม่เห็น
.
🔥 +++++ บทที่ 2 การแก้ปัญหาและขั้นตอนวิธี +++++++
บททนี้เขาจะปูพื้นฐานอัลกอริทึมให้กับเด็กครับ ได้แก่
2.1 การแก้ปัญหาด้วยคอมพิวเตอร์
2.2 สอนให้รู้จักระบุข้อมูล input, ouput และเงื่อนไขของปัญหา
2.3 สอนการนำแนวคิด Computational Thinking มาออกแบบอัลกอริทึม
มี flow chart โผล่มาเล็กน้อย
2.4 สอนเรื่องการทำซ้ำ หรือก็คือสอนให้รู้จักวนลูปนั่นเอง
2.5 สอนอัลกอริทึมได้แก่ การจัดเรียงและค้นหาข้อมูล
ภาษาอังกฤษก็คือ อัลกอริทึมสำหรับ sort & search
.
🤓 สำหรับเรื่อง sort ก็จะมี
- selection sort (ชื่อไทย การจัดเรียงแบบเลือก)
- insertion sort (ชื่อไทย การจัดเรียงแบบแทรก)
.
🤓 สำหรับเรื่อง search ก็จะมี
-sequential search (ชื่อไทย การค้นหาแบบลำดับ)
-binary search (ชื่อไทย การค้นหาแบบทวีภาค)
.
ลืมบอกไป Big-O ตอนเรียนป.ตรี ก็โผล่ออกมาแว็บๆ นิดหน่อย
เด็กอาจสงสัยมันคืออะไร เป็นญาติอะไรกับ Big-C เปล่าเนี่ย
.
🔥 ++++ บทที่ 3 การพัฒนาโครงงาน ++++
บทนี้ถ้าสรุปสั้นๆ ก็สอนให้เด็กเขียนเสนอโครงงาน
หรือก็คือเขียน proposal เหมือนตอนเรียน ป. ตรีแหละครับ
.
ถ้าใครจำไม่ได้ ก็จะประมาณว่า การเขียนโครงงานต้องมี
บทที่ 1 บทนำ
บทที่ 2 หลักการ ทฤษฏี และงานที่เกียวข้อง
บทที่ 3 วิธีการดำเนินงาน
บทที่ 4 การทดลองและผลการทดลอง
บทที่ 5 สรุปผล วิเคราะห์ และข้อเสนอแนะ
.
===========
รีวิว ม.5
===========
ในวิชา "วิทยาการคำนวณ" ระดับชั้น ม. 5
ได้ดึงวิชา data science (วิทยาศาสตร์ข้อมูล)
มาปูพื้นฐานให้เด็กๆ ได้เรียนกันแล้ว นับว่าเป็นโชคดี
เพราะวิชาพวกนี้เป็นของสูง กว่าจะสัมผัสก็คงตอนป.ตรี โท เอก
ซึ่งผมจะรีวิวเนื้อหาให้อ่านคร่าวๆ เนื้อหาแบ่งเป็น 4 บท
.
👉 ++++ บทที่ 1 - ข้อมูลมีคุณค่า +++++
.
Data science ในตำราเรียนใช้ชื่อไทยว่า "วิทยาการข้อมูล"
บทนี้จะกล่าวถึง Big Data หรือข้อมูลขนาดใหญ่ที่มีค่ามากมาย
และมีบทบาทมากในยุค 4.0 นี้ ทั้งภาครัฐและเอกชน
.
ถ้านึกไม่ออกก็นึกถึงเวลาเราเล่นเนตค้นหาใน Google จะพบข้อมูลมากมายมหาศาล ซึ่งเราสามารถนำมาใช้ในธุรกิจเราได้ ก็เพราะเหตุนี้ศาสตร์ด้านข้อมูล จึงมีบทบาทสำคัญอย่างมากอย่างยิ่งยวด
.
จึงไม่น่าแปลกใจที่ทำให้อาชีพนักวิทยาศาสตร์ด้านข้อมูล (ชื่ออังกฤษ data scientist) มันมีบทบาทสำคัญ และเป็นอาชีพที่มีเสน่ห์และน่าสนใจที่สุดยุคศตวรรษที่ 21
.
Data science ถ้าตามหนังสือเขาให้นิยามว่า
"เป็นการศึกษาถึงกระบวนการ วิธีการ หรือเทคนิค ในการนำข้อมูลจำนวนมหาศาล มาประมวลผล เพื่อให้ได้องค์ความรู้ เข้าใจปรากฏการณ์หรือตีความ ทำนายหรือพยากรณ์ ค้นหารูปแบบหรือแนวโน้มจากข้อมูล
และสามารถนำมาวิเคราะห์ต่อยอดเพื่อแนะนำทางเลือกที่เหมาะสม หรือใช้ในการตัดสินใจเพื่อประโยชน์สูงสุด"
.
สำหรับงาน Data science เขาจะมีกระบวนตามขั้นตอนดังนี้
- ตั้งคำถามที่ตนเองสนใจ
- เก็บรวบรวมข้อมูล
- การสำรวจข้อมูล
- การวิเคราะห์ข้อมูล (analyze the data)
- การสื่อสารและการทำผลลัพธ์ให้เห็นเป็นภาพ (communicate and visualize the results)
.
🤔 นอกจากนี้เขายังพูดถึง design thinking ...ว่าแต่มันคืออะไร?
ต้องบอกว่างานของนักวิทยาศาสตร์ข้อมูล
มันไม่ได้จบแค่เอาข้อมูลที่เราวิเคราะห์ได้แล้ว
มาโชว์ให้คนอื่นเข้าใจ
.
ยังต้องมีขั้นตอนการออกแบบแอพลิชั่น
ที่ต้องใช้ข้อมูลจากที่เราวิเคราะห์ไปนั่นเอง
ซึ่งคำว่า design thinking มันก็คือความคิดยิ่งนักออกแบบดีๆ นี้เอง
ซึ่งนักวิทยาศาสตร์ข้อมูลควรมีไว้เพื่อออกแบบแอพลิชั่นขั้นสุดท้าย
จะได้ตอบสนองความต้องการผู้ใช้
.
👉 ++++ บทที่ 2 การเก็บรวบรวมและสำรวจข้อมูล +++++
.
บทนี้ก็แค่จะปูพื้นฐาน
2.1 การเก็บรวบรวมข้อมูล
ในบทนี้จะพูดถึงข้อมูลที่เป็นลักษณะทุติยภูมิ
ที่หาได้เกลื่อนเน็ต และเราต้องการรวบรวมมาใช้งาน
2.2 การเตรียมข้อมูล (data preparation)
เนื้อหาก็จะมี
-การทำความสะอาดข้อมูล (data cleansing)
-การแปลงข้อมูล (data transformation)
ในม.5 ไม่มีอะไรมาก แต่ถ้าในระดับมหาลัยจะเจอเทคนิคขั้นสูง เช่น PCA
-การเชื่อมโยงข้อมูล (combining data)
2.3 การสำรวจข้อมูล (data exploration)
พูดถึงการใช้กราฟมาสำรวจข้อมูล เช่น
กราฟเส้น ฮิสโทแกรม แผนภาพกล่อง (box plot) แผนภาพแบบกระจาย (scatter plot)
พร้อมยกตัวอย่างการเขียนโปรแกรมดึงข้อมูลออกมาพล็อตเป็นกราฟจากไฟล์ csv (หรือ xls)
2.4 ข้อมูลส่วนบุคคล
สำหรับหัวข้อนี้ ถ้านักวิทยาศาสตร์ข้อมูลจะนำข้อมูลส่วนบุคคลมาใช้งาน ต้องเก็บเป็นความลับ ห้ามหลุด
.
ซึ่งประเด็นข้อมูลส่วนบุคคล ปัจจุบันมีก็มีร่างพรบ. คุ้มครองข้อมูลส่วนบุคคล ออกมาเรียบร้อยแล้ว
.
.
👉 ++++ บทที่ 3 การวิเคราะห์ข้อมูล ++++
.
แบ่งเป็น 2 ส่วน ได้แก่
.
3.1 การวิเคราะห์เชิงพรรณา (descriptive analytics)
เป็นการวิเคราะห์โดยใช้เลขที่เราร่ำเรียนมาตั้งแต่
- การหาสัดส่วนหรือร้อยละ
- การวัดค่ากลางของข้อมูล พวกค่าเฉลี่ย มัธยฐาน ฐานนิยม
- การหาความสัมพันธ์ของชุดข้อมูล (Correlation) พร้อมตัวอย่างการเขียนโปรแกรมให้ดูง่าย
.
.
3.2 การวิเคราะห์เชิงทำนาย (predictive analytics)
.
- มีการพูดถึงการทำนายเชิงตัวเลข (numeric prediction)
- พูดถึงเทคนิคอย่าง linear regression สมการเส้นตรงที่จะเอาไว้ทำนายข้อมูลในอนาคต
รวมทั้งพูดถึงเรื่อง sum of squared errors
ดูว่ากราฟเส้นตรงมันนาบฟิตไปกับข้อมูลหรือยัง (พร้อมตัวอย่างเขียนโปรแกรม)
- สุดท้ายได้กล่าวถึง K-NN (K-Nearest Neighbors: K-NN) เป็นวิธีค้นหาเพื่อนบ้านใกล้เคียงที่สุด K ตัว สำหรับงาน classification (การแบ่งหมวดหมู่)
***หมายเหตุ*****
linear regression กับ K-NN
นี้ก็คืออัลกอริทึมหนึ่งในวิชา machine learning (การเรียนรู้ของเครื่อง สาขาหนึ่งของ AI)
เด็กสมัยเนี่ยได้เรียนแหละนะ
.
.
👉 +++ บทที่ 4 การทำให้ข้อมูลเป็นภาพและสื่อสารด้วยข้อมูล +++
.
บทนี้ไม่อะไรมาก ลองนึกถึงนักวิทยาศาสตร์ หลังวิเคราะห์ข้อมูลอะไรมาเสร็จสรรพ เหลือขั้นสุดท้ายก็คือ การโชว์ให้คนอื่นดูด้วยการทำ data visualization (เรียกทับศัพท์ดีกว่า)
.
ในเนื้อหาก็จะยกตัวอย่างการใช้ แผนภูมิแท่ง,กราฟเส้น, แผนภูมิวงกลม, แผนการกระจาย
.
สุดท้ายที่ขาดไม่ได้ก็คือการเล่าเรื่องจากข้อมูล (data story telling) พร้อมข้อควระวังเวลานำเสนอข้อมูล
.
.
.
***หมายเหตุนี้ ***
😗 ภาษาโปรแกรมที่ตำราเรียน ม.5 กล่าวถึง และยกตัวอย่างมาให้ดู
ก็ได้แก่ python กับภาษา R
.
สำหรับภาษา R หลายคนอาจไม่คุ้น
คนจบไอทีอาจคุ้นกับ python มากกว่า
แต่ใครมาจากสายสถิติจะคุ้นแน่นอน
เพราะภาษา R นิยมมากในสายงานสถิติ
และสามารถนำมาใช้ในงาน data science ได้ง่ายและนิยมไม่แพ้ python
.
แต่ถ้าคนจาก data science จะขยับไปอีกสายหนึ่งของ AI
ก็คือ deep learning (การเรียนรู้เชิงลึก)
python จะนิยมแบบกินขาดครับ
.
===========
รีวิว ม.6
===========
เนื้อหาแบ่งเป็น 4 บท
👉 บทที่ 1 จะออกแนวสอนการเขียนบล็อก เพื่อเป็นบล็อกเกอร์
เนื้อหา ประกอบด้วย
1.1 องค์ประกอบและรูปแบบพื้นฐานในการสื่อสาร
1.1 เทคนิคและวิธีการแบ่งปันข้อมูล
1.1 ข้อควรระวังในการแบ่งปันข้อมูล
👉 บทที่ 2 อันนี้เด็ดดี
2.1 พูดถึงปัญญาประดิษฐ์ (AI), machine learning, deep learning
2.2 พูดถึงการประมวลผลแบบคลาวด์ (clound computing)
2.3 พูดถึง IoT (Internet of Things: IoT) อินเตอร์เน็ตของสรรพสิ่ง มียกตัวอย่าง smart city
2.4 เทคโนโลยีเสมือนจริง กลาวถึงเรื่อง AR ( Augmented Reality: AR) กับ VR (Virtual Reality: VR)
มีแถมเรื่อง block chain กับ quantum computer
.
แต่เนื้อหาเป็นการเกริ่นๆ เฉยๆ ไม่ได้ลงลึกอะไรมากแบบมหาลัยนะครับ
.
👉 บทที่ 3 พูดถึงการเป็นพลเมืองดิจิทัล
เนื้อหาประกอบไปด้วย
3.1 การเป็นพลเมืองดิจิทัล
3.2 การป้องกันตนเองและผู้อื่น
3.3 กฏหมายและมารยาทในสังคมดิจิทัล
.
👉 บทที่ 4 อาชีพในยุคดิจิทัล
เนื้อหาจะประกอบด้วย
4.1 อาชีพด้านเทคโนโลยีสารสนเทศและการสื่อสาร
4.2 การเปลี่ยนแปลงของเทคโนโลยีกับสังคมและอาชีพ
4.3 ผลกระทบของเทคโนโลยีกับอาชีพ
4.4 การทำงานร่วมกับเครื่องจักรและระบบอัตโนมัติ
สรุปแล้วเนื้อหาม.6
ตามความเห็น อ่านแล้วง่าย มันแค่เป็นการอธิบายภาพ
แต่ถ้าเป็นม.4 กับ ม.5 จะหนักกว่าหน่อย
.
ส่วนเนื้อหา ม.1 ม.2 ม.3 เดี่ยวมาเล่าให้ฟัง
แอบกระซิบบอกมี Python ด้วยแหละ
.
.
✍เขียนโดย โปรแกรมเมอร์ไทย thai programmer
👀 อ้างอิง
- วิทยาการคำนวณม.4
- วิทยาการคำนวณม. 5
- วิทยาการคำนวณม.6
.
.
++++++++++++++++++++++++++++=
ทิ้งท้ายในเมื่อ ม.6 มีพูดถึง AI หรือปัญญาประดิษฐ์
เผื่อน้องๆ สนใจอยากศึกษาเชิงลึก เป็นการปูพื้นฐานเรียนต่อมหาลัยจะได้ไม่งง
+++++ขอประชาสัมพันธ์ (ขายของ)
📔 หนังสือ "ปัญญาประดิษฐ์ (AI) ไม่ยาก" เข้าใจได้ด้วยเลขม. ปลาย (เนื้อหาภาษาไทย)
.
ถ้าสนใจสั่งซื้อเล่ม 1 ก็สั่งซื้อได้ที่ (เล่มอื่นๆ กำลังทยอยตามมา)
👉 https://www.mebmarket.com/web/index.php?action=BookDetails&data=YToyOntzOjc6InVzZXJfaWQiO3M6NzoiMTcyNTQ4MyI7czo3OiJib29rX2lkIjtzOjY6IjEwODI0NiI7fQ&fbclid=IwAR11zxJea0OnJy5tbfIlSxo4UQmsemh_8TuBF0ddjJQzzliMFFoFz1AtTo4
.
ขออภัยยังไม่มีเล่มกระดาษจำหน่าย มีแต่ ebook
.
ส่วนตัวอย่างหนังสือ ก็ดูได้ลิงค์นี้
👉 https://www.dropbox.com/s/fg8l38hc0k9b0md/chapter_example.pdf?dl=0
descriptive analytics 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最佳解答
วิทยาการคำนวณม.4-5-6 เรียนอะไร? ....โพสต์นี้มีคำตอบ
👉 ม.4 -> ปูพื้นฐานวิทย์คอม ได้แก่ เรียนแนวคิดเชิงคำนวณ, อัลกอริทึม, การทำโครงงาน
👉 ม.5 -> เรียน data science (วิทยาการข้อมูล หรือวิทยาศาสตร์ข้อมูล)
👉 ส่วนม.6 ยังไม่มา รอปีหน้าก่อน -> แว่วๆ ว่าน่าจะมีเนื้อหา AI โผล่มาจ๊ะเอ๋ และหลายๆ เรื่องที่จะมีสอน
.
เรียกว่าดึงสิ่งที่ต้องเรียนรู้ในระดับปริญญาตรีมาปูพื้นฐานให้เด็กๆ ทั่วประเทศกันแหละ
.
*** หมายเหตุ "วิทยาการคำนวณ" มีตั้งแต่ ป.1 ยันถึง ม.6 กำลังทยอยเปิดสอนให้ครบทุกชั้นปี แต่โพสต์นี้ขอรีวิวเฉพาะ ม.4, 5 และ 6
===========
รีวิว ม.4
===========
วิทยาการคำนวณ ม.4 มีจำนวน 3 บท
🔥 +++บทที่ 1 แนวคิดเชิงคำนวณ +++++
บทนี้จะสอนแนวคิดเชิงคำนวณ (Computational Thinking) คืออะไร?
ซึ่งใครไม่รู้จักอาจงงเล็กน้อย ถึงปานกลาง
หรือเกิดคำถามคาใจ เรียนไปใช้ทำอะไรครับคุณครู
.
สำหรับแนวคิดเรื่อง Computational Thinking
(เรียกเป็นภาษาอังกฤษดีกว่า)
มีไว้เพื่อใช้แก้ปัญหาในแวดวง “วิทยาศาสตร์คอมพิวเตอร์” 🤩 🤩
จริงๆ แล้วมันไม่ใช่เรื่องแปลกใหม่แต่อย่างใด
.
ถ้าเราได้นั่งเรียนในระดับมหาวิทยาลัย
หรือได้ฝึกเขียนโปรแกรมไปเรื่อยๆ ก็จะใช้แนวคิดนี้โดยธรรมชาติ
อย่างไม่รู้ตัวอยู่แล้วครับ ไม่ต้องไปเรียนที่ไหน
.
นิยามของ Computational Thinking หรือแนวคิดเชิงคำนวณ
จะประกอบด้วยแนวคิดย่อย 4 อย่างดังนี้
1) Algorithm
2) Decomposition
3) Pattern recognition
4) Abstract thinking
.
หลายละเอียดแต่ละหัวข้อก็ตามนี้
👉 1) Algorithm ชื่อไทย “ขั้นตอนวิธี”
Algorithm คือลำดับขั้นตอนในการแก้ปัญหาหรือการทำงานที่ชัดเจน การคิดค้น อธิบายขั้นตอนวิธีในการแก้ปัญหาต่าง ๆ
.
ถ้าเคยเรียนตอนป.ตรี คงรู้จักคำนี้ดีไม่ต้องอธิบายมาก เช่น
-จะคำนวณหาพื้นที่เส้นรอบวง ต้องมีสเตปคำนวณอย่างไรบ้าง
-จะค้นหาข้อมูลแบบ binary search ต้องมีขั้นตอน 1,2,3 อย่างไรบ้าง
-จะหาเส้นทางที่ใกล้สุดในกราฟ ด้วยวิธี Dijkstra จะมีขั้นตอน 1,2,3 อย่างไรบ้าง
.
👉 2) Decomposition ชื่อไทยคือ “การแยกส่วนประกอบ และการย่อยปัญหา”
.
Decomposition เป็นการพิจารณาเพื่อแบ่งปัญหา หรืองานออกเป็นส่วนย่อย ทำให้สามารถจัดการกับปัญหาหรืองานได้ง่ายขึ้น พูดง่ายๆ เอาปัญหามาแยกย่อยออกเป็นส่วนๆ
.
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
เช่น การเขียนโปรแกรมแยกเป็นส่วนๆ แยกเป็นแพ็กเกจ แยกเป็นโมดูล
หรือทำระบบเป็น services ย่อยๆ หรือมองเป็น layer เป็นต้น
.
👉 3) Pattern recognition ชื่อไทยคือ “การหารูปแบบ”
.
Pattern recognition เป็นทักษะการหาความสัมพันธ์ที่เกี่ยวข้อง แนวโน้ม และลักษณะทั่วไปของสิ่งต่าง ๆ
.
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
เมื่อมีการทำงานของโปรแกรมที่หลากหลายแบบ
แต่ทว่ามีรูปแบบที่แน่นอนซ้ำๆ กัน
เราสามารถยุบโค้ดมาอยู่ในฟังก์ชั่นเดียวกันได้หรือไม่
หรือเขียนเป็นโปรแกรมวนลูป ให้อยู่ในลูปเดียวกัน เป็นต้น
.
👉 4) Abstract thinking ชือไทย “การคิดเชิงนามธรรม”
.
Abstract thinking เป็นกระบวนการคัดแยกคุณลักษณะที่สำคัญออกจากรายละเอียดปลีกย่อย ในปัญหา หรืองานที่กำลังพิจารณา เพื่อให้ได้ข้อมูลที่จำเป็นและเพียงพอในการแก้ปัญหา
⌨ ตัวอย่างการนำไปใช้ตอนเขียนโปรแกรม
-ก็เช่นการใช้ฟังก์ชั่น โดยเราแค่รู้รายละเอียดว่าฟังก์ชั่นทำงานอะไร ต้องการ input/ouput อะไร แล้วได้ return อะไรกลับมา ส่วนเนื้อหาไส้ในละเอียดเรามองไม่เห็น
.
🔥 +++++ บทที่ 2 การแก้ปัญหาและขั้นตอนวิธี +++++++
บททนี้เขาจะปูพื้นฐานอัลกอริทึมให้กับเด็กครับ ได้แก่
2.1 การแก้ปัญหาด้วยคอมพิวเตอร์
2.2 สอนให้รู้จักระบุข้อมูล input, ouput และเงื่อนไขของปัญหา
2.3 สอนการนำแนวคิด Computational Thinking มาออกแบบอัลกอริทึม
มี flow chart โผล่มาเล็กน้อย
2.4 สอนเรื่องการทำซ้ำ หรือก็คือสอนให้รู้จักวนลูปนั่นเอง
2.5 สอนอัลกอริทึมได้แก่ การจัดเรียงและค้นหาข้อมูล
ภาษาอังกฤษก็คือ อัลกอริทึมสำหรับ sort & search
.
🤓 สำหรับเรื่อง sort ก็จะมี
- selection sort (ชื่อไทย การจัดเรียงแบบเลือก)
- insertion sort (ชื่อไทย การจัดเรียงแบบแทรก)
.
🤓 สำหรับเรื่อง search ก็จะมี
-sequential search (ชื่อไทย การค้นหาแบบลำดับ)
-binary search (ชื่อไทย การค้นหาแบบทวีภาค)
.
ลืมบอกไป Big-O ตอนเรียนป.ตรี ก็โผล่ออกมาแว็บๆ นิดหน่อย
เด็กอาจสงสัยมันคืออะไร เป็นญาติอะไรกับ Big-C เปล่าเนี่ย
.
🔥 ++++ บทที่ 3 การพัฒนาโครงงาน ++++
บทนี้ถ้าสรุปสั้นๆ ก็สอนให้เด็กเขียนเสนอโครงงาน
หรือก็คือเขียน proposal เหมือนตอนเรียน ป. ตรีแหละครับ
.
ถ้าใครจำไม่ได้ ก็จะประมาณว่า การเขียนโครงงานต้องมี
บทที่ 1 บทนำ
บทที่ 2 หลักการ ทฤษฏี และงานที่เกียวข้อง
บทที่ 3 วิธีการดำเนินงาน
บทที่ 4 การทดลองและผลการทดลอง
บทที่ 5 สรุปผล วิเคราะห์ และข้อเสนอแนะ
.
===========
รีวิว ม.5
===========
ในวิชา "วิทยาการคำนวณ" ระดับชั้น ม. 5
ได้ดึงวิชา data science (วิทยาศาสตร์ข้อมูล)
มาปูพื้นฐานให้เด็กๆ ได้เรียนกันแล้ว นับว่าเป็นโชคดี
เพราะวิชาพวกนี้เป็นของสูง กว่าจะสัมผัสก็คงตอนป.ตรี โท เอก
ซึ่งผมจะรีวิวเนื้อหาให้อ่านคร่าวๆ เนื้อหาแบ่งเป็น 4 บท
.
👉 ++++ บทที่ 1 - ข้อมูลมีคุณค่า +++++
.
Data science ในตำราเรียนใช้ชื่อไทยว่า "วิทยาการข้อมูล"
บทนี้จะกล่าวถึง Big Data หรือข้อมูลขนาดใหญ่ที่มีค่ามากมาย
และมีบทบาทมากในยุค 4.0 นี้ ทั้งภาครัฐและเอกชน
.
ถ้านึกไม่ออกก็นึกถึงเวลาเราเล่นเนตค้นหาใน Google จะพบข้อมูลมากมายมหาศาล ซึ่งเราสามารถนำมาใช้ในธุรกิจเราได้ ก็เพราะเหตุนี้ศาสตร์ด้านข้อมูล จึงมีบทบาทสำคัญอย่างมากอย่างยิ่งยวด
.
จึงไม่น่าแปลกใจที่ทำให้อาชีพนักวิทยาศาสตร์ด้านข้อมูล (ชื่ออังกฤษ data scientist) มันมีบทบาทสำคัญ และเป็นอาชีพที่มีเสน่ห์และน่าสนใจที่สุดยุคศตวรรษที่ 21
.
Data science ถ้าตามหนังสือเขาให้นิยามว่า
"เป็นการศึกษาถึงกระบวนการ วิธีการ หรือเทคนิค ในการนำข้อมูลจำนวนมหาศาล มาประมวลผล เพื่อให้ได้องค์ความรู้ เข้าใจปรากฏการณ์หรือตีความ ทำนายหรือพยากรณ์ ค้นหารูปแบบหรือแนวโน้มจากข้อมูล
และสามารถนำมาวิเคราะห์ต่อยอดเพื่อแนะนำทางเลือกที่เหมาะสม หรือใช้ในการตัดสินใจเพื่อประโยชน์สูงสุด"
.
สำหรับงาน Data science เขาจะมีกระบวนตามขั้นตอนดังนี้
- ตั้งคำถามที่ตนเองสนใจ
- เก็บรวบรวมข้อมูล
- การสำรวจข้อมูล
- การวิเคราะห์ข้อมูล (analyze the data)
- การสื่อสารและการทำผลลัพธ์ให้เห็นเป็นภาพ (communicate and visualize the results)
.
🤔 นอกจากนี้เขายังพูดถึง design thinking ...ว่าแต่มันคืออะไร?
ต้องบอกว่างานของนักวิทยาศาสตร์ข้อมูล
มันไม่ได้จบแค่เอาข้อมูลที่เราวิเคราะห์ได้แล้ว
มาโชว์ให้คนอื่นเข้าใจ
.
ยังต้องมีขั้นตอนการออกแบบแอพลิชั่น
ที่ต้องใช้ข้อมูลจากที่เราวิเคราะห์ไปนั่นเอง
ซึ่งคำว่า design thinking มันก็คือความคิดยิ่งนักออกแบบดีๆ นี้เอง
ซึ่งนักวิทยาศาสตร์ข้อมูลควรมีไว้เพื่อออกแบบแอพลิชั่นขั้นสุดท้าย
จะได้ตอบสนองความต้องการผู้ใช้
.
👉 ++++ บทที่ 2 การเก็บรวบรวมและสำรวจข้อมูล +++++
.
บทนี้ก็แค่จะปูพื้นฐาน
2.1 การเก็บรวบรวมข้อมูล
ในบทนี้จะพูดถึงข้อมูลที่เป็นลักษณะทุติยภูมิ
ที่หาได้เกลื่อนเน็ต และเราต้องการรวบรวมมาใช้งาน
2.2 การเตรียมข้อมูล (data preparation)
เนื้อหาก็จะมี
-การทำความสะอาดข้อมูล (data cleansing)
-การแปลงข้อมูล (data transformation)
ในม.5 ไม่มีอะไรมาก แต่ถ้าในระดับมหาลัยจะเจอเทคนิคขั้นสูง เช่น PCA
-การเชื่อมโยงข้อมูล (combining data)
2.3 การสำรวจข้อมูล (data exploration)
พูดถึงการใช้กราฟมาสำรวจข้อมูล เช่น
กราฟเส้น ฮิสโทแกรม แผนภาพกล่อง (box plot) แผนภาพแบบกระจาย (scatter plot)
พร้อมยกตัวอย่างการเขียนโปรแกรมดึงข้อมูลออกมาพล็อตเป็นกราฟจากไฟล์ csv (หรือ xls)
2.4 ข้อมูลส่วนบุคคล
สำหรับหัวข้อนี้ ถ้านักวิทยาศาสตร์ข้อมูลจะนำข้อมูลส่วนบุคคลมาใช้งาน ต้องเก็บเป็นความลับ ห้ามหลุด
.
ซึ่งประเด็นข้อมูลส่วนบุคคล ปัจจุบันมีก็มีร่างพรบ. คุ้มครองข้อมูลส่วนบุคคล ออกมาเรียบร้อยแล้ว
.
.
👉 ++++ บทที่ 3 การวิเคราะห์ข้อมูล ++++
.
แบ่งเป็น 2 ส่วน ได้แก่
.
3.1 การวิเคราะห์เชิงพรรณา (descriptive analytics)
เป็นการวิเคราะห์โดยใช้เลขที่เราร่ำเรียนมาตั้งแต่
- การหาสัดส่วนหรือร้อยละ
- การวัดค่ากลางของข้อมูล พวกค่าเฉลี่ย มัธยฐาน ฐานนิยม
- การหาความสัมพันธ์ของชุดข้อมูล (Correlation) พร้อมตัวอย่างการเขียนโปรแกรมให้ดูง่าย
.
.
3.2 การวิเคราะห์เชิงทำนาย (predictive analytics)
.
- มีการพูดถึงการทำนายเชิงตัวเลข (numeric prediction)
- พูดถึงเทคนิคอย่าง linear regression สมการเส้นตรงที่จะเอาไว้ทำนายข้อมูลในอนาคต
รวมทั้งพูดถึงเรื่อง sum of squared errors
ดูว่ากราฟเส้นตรงมันนาบฟิตไปกับข้อมูลหรือยัง (พร้อมตัวอย่างเขียนโปรแกรม)
- สุดท้ายได้กล่าวถึง K-NN (K-Nearest Neighbors: K-NN) เป็นวิธีค้นหาเพื่อนบ้านใกล้เคียงที่สุด K ตัว สำหรับงาน classification (การแบ่งหมวดหมู่)
***หมายเหตุ*****
linear regression กับ K-NN
นี้ก็คืออัลกอริทึมหนึ่งในวิชา machine learning (การเรียนรู้ของเครื่อง สาขาหนึ่งของ AI)
เด็กสมัยเนี่ยได้เรียนแหละนะ
.
.
👉 +++ บทที่ 4 การทำให้ข้อมูลเป็นภาพและสื่อสารด้วยข้อมูล +++
.
บทนี้ไม่อะไรมาก ลองนึกถึงนักวิทยาศาสตร์ หลังวิเคราะห์ข้อมูลอะไรมาเสร็จสรรพ เหลือขั้นสุดท้ายก็คือ การโชว์ให้คนอื่นดูด้วยการทำ data visualization (เรียกทับศัพท์ดีกว่า)
.
ในเนื้อหาก็จะยกตัวอย่างการใช้ แผนภูมิแท่ง,กราฟเส้น, แผนภูมิวงกลม, แผนการกระจาย
.
สุดท้ายที่ขาดไม่ได้ก็คือการเล่าเรื่องจากข้อมูล (data story telling) พร้อมข้อควระวังเวลานำเสนอข้อมูล
.
.
.
***หมายเหตุนี้ ***
😗 ภาษาโปรแกรมที่ตำราเรียน ม.5 กล่าวถึง และยกตัวอย่างมาให้ดู
ก็ได้แก่ python กับภาษา R
.
สำหรับภาษา R หลายคนอาจไม่คุ้น
คนจบไอทีอาจคุ้นกับ python มากกว่า
แต่ใครมาจากสายสถิติจะคุ้นแน่นอน
เพราะภาษา R นิยมมากในสายงานสถิติ
และสามารถนำมาใช้ในงาน data science ได้ง่ายและนิยมไม่แพ้ python
.
แต่ถ้าคนจาก data science จะขยับไปอีกสายหนึ่งของ AI
ก็คือ deep learning (การเรียนรู้เชิงลึก)
python จะนิยมแบบกินขาดครับ
.
===========
รีวิว ม.6
===========
สำหรับม.6 หนังสือยังไม่มา เพราะหลักสูตรจะมาปีหน้า
แต่ถ้าไปอ่านคำอธิบายรายวิชาก็จะได้ตามนี้ (ก็อปปี้มาอีกที)
.
- ศึกษาการใช้เทคโนโลยีในการนำเสนอและแบ่งปันข้อมูลอย่างปลอดภัยและมีจริยธรรม
- การสร้างชิ้นงานและเผยแพร่ผ่านสื่อต่าง ๆ ที่คำนึงถึงจริยธรรม ลิขสิทธิ์ทรัพย์สินทางปัญญา และกฎหมาย
- หลักการของปัญญาประดิษฐ์ และเทคโนโลยีในอนาคต
- กรณีศึกษาเกี่ยวกับนวัตกรรมหรือเทคโนโลยีที่เกี่ยวข้องกับชีวิตประจำวัน
- อาชีพที่เกี่ยวข้องกับงานทางด้านเทคโนโลยีสารสนเทศ
- ตัวอย่างผลกระทบของเทคโนโลยีสารสนเทศ
+++++++++
เขียนโดยโปรแกรมเมอร์ไทย thai programmer
++++++++
อ้างอิง
- วิทยาการคำนวณม.4
- วิทยาการคำนวณม. 5
- http://oho.ipst.ac.th/…/ipst-cs-course-description-M1-M6.pdf