Category: learn

Continuously learn new and interesting things.

  • Take Note : Data Engineering 101

    Take Note : Data Engineering 101

    Speaker : อาจารย์ มิว Data Engineer จาก CJ ควบตำแหน่ง GDE: Google Developer Expert คนล่าสุดของประเทศไทย และ DataRockie อาจารย์ ทอย Kasidis Satangmongkol
    Date : 2 Mar 2025

    เรียน+รับฟรี หมวก กระเป๋า google ตั้งแต่วันที่ 27 กุมภาพันธ์ – 29 มีนาคม 2568
    https://rsvp.withgoogle.com/events/chaiyogcp-s5/home

    กิจกรรม Technologista: International Women’s Day Bangkok 2025
    Mar 22, 1:00 – 6:00 PM (GMT+7)
    Cleverse, ถนน รัชดาภิเษก, Bangkok, 10310
    https://gdg.community.dev/events/details/google-gdg-cloud-bangkok-presents-technologista-international-womens-day-bangkok-2025/

    /////

    1. Intro to Data Engineering
    2. Which position do I stand ?
    3. Structure
    4. Databases
    5. ทำ Project มาเขียนเป็น blog
    6. Mindset สำคัญมาก
    7. Read
    8. Write

    Intro to Data Engineering

    ทำไมต้องมี DE
    ต้องขอสิทธิในการเข้าถึง data ปรับปรุงข้อมูลให้พร้อมนำไปใช้ ส่งมอบให้ผู้ใช้คนต่อไป เช่น DA เพื่อวิเคราะห์ข้อมูล

    Data Engineering Life Cycle
    1.Pipeline
    2.Components

    4 stage in data pipeline
    Ingestion ต้นทาง (Data Lake) => Transformation => Storage (Data Warehouse) <= Analysis (Analyst/ML/Engineer)

    Data Lake ข้อมูลดิบ
    Data Warehouse ข้อมูลที่จัดเรียงเตรียมนำไปใช้ได้
    Data Mart

    ETL Extract Transform Load
    ดึงข้อมูลมาจากแหล่งข้อมูล มีการทำ transform ไปเก็บที่ Data Warehouse

    ELT Extract Load Transform เป็นที่นิยมในปัจจุบัน สามารถ track ย้อนหลังได้
    ดึง Data มากองไว้ก่อน เพื่อให้มี Raw Data และทำ transform ไปเก็บที่ Data Warehouse

    ค่าเก็บข้อมูลใน could มีส่วนหนึ่งไม่แพง แต่ค่าดึงข้อมูลมาใช้ต้องจ่ายอีกส่วนหนึ่ง

    จากข้อมูลใหญ่ สามารถเลือกดึงข้อมูลแบบใหญ่ หรือ เล็ก ได้ เลือกให้เหมาะสมกับการใช้งาน

    Which position do I stand ?

    Structure

    Unstructured data = text audio video PDF IoT sensor data
    Semi-structured data = XML , CSV, JSON, Web pages
    Structure data = PostageSQL , MySQL

    Databases

    Relational (SQL) , Traditional database/DMBS , table , row-oriented
    : PostageSQL , MySQL , SQLite

    Non-relational (NoSQL) , Not only SQL , อ่านแนวตั้ง ,
    Columnar : apache HBASE , cassandra
    Key-Value : redis , amazon dynamoDB ,
    Cocument : mongoDB couchDB ,
    Graph :neo4j

    OLTP online transaction processing หน้าบ้าน เขียน ตู้เอทีเอ็ม
    OLAP online analytical processing หลังบ้าน อ่าน รายงานประจำเดือน

    Scenario

    Gemini ; Explain the difference between OLTP and OLAP , keep you answer shot concise, and use bullet point, in table format

    Data Lake = Unstructured , semi-structured , structured
    Data Warehouse = structured
    Data Lakehouse = รวม

    Orchestration ตั้งค่าทำงานอัตโนมัติ
    Software Engineer

    DA ควรรู้ SQL JVM, Scala Python Bash
    Spark Pandas Numpy Airflow Sudo

    Infrastructure as a Code
    Container : Docker Bubenetes
    Provisioning : Terraform Git

    Security ใครเป็นเจ้าของ สามารถเข้ามาดู แก้ไข ระดับการเข้าถึง

    Data Architecture
    เข้าใจธุรกิจ การเกิด ความต้องการ เพื่อนำมาปรับ design ในการ serve data อย่างไร

    On premises VS Cloud
    ซื้อ หรือ ใช้ Cloud อยู่ที่ธุรกิจ และ คุ้มทุน

    Serverless มีคนช่วยดูแลให้

    Hybrid and multi-cloud อยู่ที่ทีมผู้ใช้ สะดวกแบบไหน

    Data Governance / Data Management
    Data Monitoring ตั้งค่าเตือน
    Data Discovery & Data Catalog บันทึกข้อมูล คนอื่นๆ สามารถมาดูได้
    Data Lineage บันทึกความสัมพันธ์ของ data
    Data Quality ส่งข้อมูล ที่สำคัญ ไม่เอาขยะ

    How do I become Data Engineer ?
    Modern Data Engineer Roadmap 2021
    https://github.com/datastacktv/data-engineer-roadmap

    ทำ Project มาเขียนเป็น blog

    มีเป้าหมายอยากจะทำอะไร เช่น วิเคราะห์ social media data
    จะเอา data มาจาก social media ได้อย่างไร
    มีเครื่องมือให้ connect และดึงมาใช้ได้ ทดลองใช้ฟรี 14 วัน https://supermetrics.com/
    หรือให้ Gemini ช่วย ;
    Create a sample dataset for RFM modeling (segmentation). Example in retail business.
    Can you give me a new code to generate example dataset in Banking business in RFM modeling

    Mindset สำคัญมาก

    Read

    https://medium.com/
    https://www.oreilly.com/online-learning/

    Write

    Notion
    https://mesodiar.com/
    https://mesodiar.medium.com/

    AI + Prompt

    เพื่อนๆ อ่านแล้ว มีข้อคิดเห็นอย่างไร ช่วยบอกด้วยค่ะ

  • Take Note : Essential Statistics

    Take Note : Essential Statistics

    Speaker : DataRockie อาจารย์ ทอย Kasidis Satangmongkol
    Date : 1 MAR 2025

    ส่งการบ้าน

    10 ideas สำคัญ ที่วิชาสถิติ จำเป็นต้องใช้ในชีวิตประจำวัน

    1. อยากทำกับข้าวให้อร่อย ต้องคนส่วนผสมให้เข้ากันให้ทั่ว ตักมาชิม ถ้าไม่อร่อยปรุงใหม่ จนกว่าจะชิมแล้วอร่อย
    2. เลือกคู่ แฟน สามีหรือภรรยา หาข้อมูลสอบจาก คนรอบข้าง พ่อแม่ พี่น้อง ลุงป้าข้างบ้าน ค่อยนำมาวิเคราะห์ด้วยตัวเอง ว่าเข้ากันได้ไหม ทดลองเป็นแฟน ถ้าไม่ใช่คนที่ต้องการ หาใหม่ จนกว่าจะเจอคนที่ต้องการ ปล. ถึงวิเคราะห์ว่าดีที่สุดแล้ว แต่สุดท้ายจะเลิกกันก็ได้ สถานะการณ์เปลี่ยน ใจคนเปลี่ยนได้เสมอ
    3. การเปรียบเทียบ คะแนนสอบของเรา กับกลุ่มเพื่อนในห้อง
    4. ช่วยให้เราเข้าใจ วิธีการ สำมะโนประชากร ของประเทศไทย
    5. เลือกแผนการลงโฆษณาในช่องทางต่างๆ ให้เหมาะสม เพื่อประมาณการให้ได้ยอดขายสินค้าที่ต้องการ
    6. มีวิธีนำเสนอข้อมูลได้อย่างเหมาะสม เช่น เลือกใช้ กราฟ และ แผนภูมิ ให้เหมาะสมกับข้อมูล
    7. GDP ของประเทศที่โตขึ้น ไม่ได้หมายความว่า คนในประเทศทั้งหมดจะรวยขึ้น แค่มีคน 1 คนที่รวยมากๆ อยู่ในกลุ่มสำรวจ ก็สามารถทำให้ GDP เพิ่มขึ้นได้มากๆ เพราะ GDP คือค่าเฉลี่ยของคนทั้งประเทศ
    8. ทุกประเทศ ในระบบทุนนิยม เหมือนกันหมด คนรวยจุก คนจนกระจาย มีคนรวยน้อยกว่าคนจน และคนรวยๆ เพิ่มขึ้นเรื่อยๆ วิธีแก้ปัญหา แค่คนรวย ยอมที่จะรวยน้อยลง และกระจายรายได้ให้คนจนบ้างก็ได้
    9. วิเคราะห์ข้อมูล ที่เราจดบันทึก รายรับ รายจ่าย ส่วนตัวทุกวัน มาดูสถิติว่าใช้เงินไปในกลุ่มไหนบ้าง และจะลดค่าใช้จ่ายในสวนไหนได้เพิ่มมากขึ้น
    10. ช่วยในการตัดสินใจอย่างมีเหตุผลมากขึ้น ในการเลือกซื้อสินค้า โดยเปรียบเทียบราคาและคุณภาพ หรือ วิธีการตัดสินใจในการลงทุน โดยวิเคราะห์ข้อมูลทางการเงินของตัวเองให้ดีก่อน

    =====

    1. 10 ideas สำคัญ ที่วิชาสถิติ จำเป็นต้องใช้ในชีวิตประจำวัน
    2. สถิติ คืออะไร
    3. ทำไมต้องเรียน
    4. วิธีแบบไหน ที่ให้ได้คุณภาพกลุ่มตัวอย่างที่เหมาะสม
    5. Normal distribution
    6. Standard Normal Distribution

    ใช้ https://app.whiteboard.microsoft.com/ ในการสอน ใช้ฟรี online ใช้ email @hotmail

    สถิติ คืออะไร

    สถิติ คือ การสุ่มตัวอย่างที่ดี เพื่อการตัดสินใจที่ดี Maket Better Decisions
    วางแผนทำ research design การเก็บ collect data เก็บข้อมูลแบบไหน เพื่อจะตอบคำถามแบบที่ต้องการได้

    เคล็ดลับการทำธุรกิจให้ยั่งยืน คือดูแลลูกค้าเก่าให้ยั่งยืน

    ทำไมต้องเรียน

    สถิติ เรียนไปเพื่อให้เข้าใจโลก โดยเรียนรู้จาก small data และกลับไปหากลุ่ม Big Data

    POP 70m > Sampling > Sample n 100 >= generalization กลุ่ม sample ที่กลับไปหากลุ่มใหญ่ POP 70m

    วิธีแบบไหน ที่ให้ได้คุณภาพกลุ่มตัวอย่างที่เหมาะสม

    ยกตัวอย่าง แกง1หม้อ ใช้ช้อนคนให้เข้ากัน ก่อนตักมาชิม 1 ช้อน คือ Sampling

    Sampling
    1. Probability
    2.Non-probability

    1. Probability

    1.1 Simple random sampling ทำระบบปิด เช่น สุ่มตัวอย่าง 10 จาก 100 รายชื่อ ในทางปฏิบัติทำได้ยาก
    =RAND()

    1.2 Systematic random sampling มีระบบบางอย่างที่สุ่มตัวอย่าง เช่น จากรายชื่อทั้งหมด สัมภาษณ์คนที่1 และเว้นไป 2 คน สัมภาษณ์คนที่ 2

    1.3 Custer random sampling แบ่งคนเป็นกลุ่มก่อน จะสุ่ม custer ไปทำกลุ่มตัวอย่าง
    =RANDBETWEEN(1,3)

    1.4 Stratified random sampling * professional ใช้ แบบที่4 เยอะ
    Sample size : time budget , CPI cost per interview
    แบ่งตามพื้นที่และสุ่ม เช่น แบ่งตามภาค แบ่งตามจังหวัด และ่ใช้ตารางกริด แต่ สุดท้าย bias กลับไปหาลูกค้า เลือกกลุ่มด้วยตัวเอง เช่น เลือกกลุ่มที่สินค้าของเขาขายดี เพื่อไม่ให้ข้อมูลเป็นของคู่แข่งมากเกินไป และเมื่อไปสัมภาษณ์จริง ให้หลักการ ซ้ายมือ สัมภาษณ์ บ้านที่ 1 เว้น 4 หลัง สัมภาษณ์ บ้านหลังที่ 2

    2.Non-prob
    Convenience sample GG Forms , LINE , FB
    Sample ไม่สอดคล้อง และไม่สามารถนำมาใช้ได้จริง ในตอนเรียนป.โท ทำเพื่อเรียนขั้นต้น ไม่อย่างนั้น เรียนไม่จบ เพราะเก็บไม่ไหว time budget แต่ถ้าเป็นเรียนปริญญาเอก ไม่ควรใช้ Convenience sample

    Snowball หาคนแรกที่ซื้อของนั้นก่อน แล้วค่อยขอชื่อเพื่อนของคนแรก เพื่อสัมภาษณ์คนถัดไป แต่เต็มไปด้วย bias แต่ต้องใช้เพื่อให้ได้ข้อมูลที่ต้องการ เช่น Ivory

    Sample size , pop 1000 สุ่ม n
    https://www.surveymonkey.com/mp/sample-size-calculator/
    Confidence 95%
    Margin error = +- 5 % // 10, 8 , 5 , 1 = Diminishing return
    1000 , 95 , 5 = sample size 278
    ต้องคำนึงถึง ต้นทุนในการเก็บข้อมูล time budget

    Stat
    1.Descriptive
    2.Inferential

    Book แนะนำ: naked statistics

    Correlation ​​สหสัมพันธ์
    Linear regression ​​การวิเคราะห์ข้อมูลถดถอยเชิงเส้น
    Range = max – min พิสัย

    Central tendency Mean Median Mode
    Spread SD VAR Range
    Position min max percentile

    Center
    5 12 20 25 37
    Mean = (5+12+20+25+37)/5
    Median = 20

    5 12 20 22 25 37
    Median = (20+22)/2 =21

    5 10 10 15 22
    Mode = 10 Unimodal ในชีวิตจริงมีโอกาศเกิดได้มากที่สุด
    Bimodal เช่น จำนวนคนที่เข้า ร้านอาหาร จะเข้าเยอะใน ช่วงเที่ยง กับหลังเลิกงาน
    Multimodal

    Mean
    Median
    Mode Gender M/F เช่น M M F M F
    Normal Distribution , Bell Shape , Mean Median Mode จะเท่ากัน
    Numerical
    Graphical , visual
    Histogram เหมาะกับข้อมูล อันเดียว

    Skewness left right
    หางยาวไปซ้าย เรียกเบ้ซ้าย
    หางยาวไปขวา เรียกเบ้ขวา

    ให้ใช้ median ถ้าข้อมูลเป็นแบบเบ้ซ้ายหรือเบ้ขวา

    68.2% พื้นที่ใต้กราฟ +-SD1
    95%
    99.7%

    Stat เพื่อ Best Decision
    Sampling
    Sample
    Describe

    Part 2
    Descriptive Stat
    1 mean median mode
    2 SD VAR Rang IQR
    2 position

    Measures of Spread
    SD standard deviation ค่าเบี่ยงเบนมาตรฐาน
    VARIANCE ความเเปรปวน
    Range พิสัย

    STATE คือการบีบอัดข้อมูลที่เยอะๆ มาอยู่ใน sample ให้เป็น Single number คือ mean median mode จะใช้ตัวไหน อยู่ที่ค่ากระจายตัวแบบไหน และอยู่ที่ objective ที่จะวัด

    var.p น้อยกว่า var.s
    Report mean คู่กับ SD

    Normal distribution

    150 155 160 165 170 175 180
    -3 -2 -1 +1 +2 +3
    Empirical Rule of Normal Distribution
    68% [160, 170]
    95% [155, 175]
    99.7% [150, 180]

    Exam Score

    Standard Normal Distribution

    Z score
    Z+ มากกว่าค่าเฉลี่ย
    Z- น้อยกว่าค่าเฉลี่ย
    Z=0 เท่ากับค่าเฉลี่ย

    Normal (Raw)
    Standard Normal (Z)

    ค่าพื้นที่ใต้กราฟ Z คือทางซ้ายมือ

    Measures of position
    X = [Min to max]
    Median ตัวที่แบ่งของข้อมูลเป็น 2 ฝั่งเท่ากัน
    Percentile
    P50 = Median

    Quartile

    P0 P25 P50 P75 P100
    Q0 Q1 Q2 Q3 Q4
    Min Median Max

    IQR = Interquartile Range
    Q3-Q1

    สรุปสิ่งที่เรียนวันนี้
    STAT
    Sampling
    Description ( Center , Spread , Position)
    Compare
    Normal Distribution
    Z score

    เพื่อนๆ อ่านแล้ว มีข้อคิดเห็นอย่างไร ช่วยบอกด้วยค่ะ

  • Take Note : Google Analytic

    Take Note : Google Analytic

    Speaker : อาจารย์ แอดยศ จากเพจมาลองเรียน และ DataRockie อาจารย์ ทอย Kasidis Satangmongkol
    Date : 22 Feb 2025

    1. GA คือ
    2. Fundamental of marketing funnel

    GA คือ

    Google Analytic ทำให้รู้ข้อมูลว่าคนที่เข้ามาดู website หรือ application มีพฤติกรรมอย่างไร ใช้เวลามากน้อยแค่ไหน เพื่อนำไปใช้ในการตลาด สำหรับ เจ้าของ web หรือนักการตลาด

    ทำงานโดย เก็บข้อมูลต่างๆ ของผู้ที่เข้ามาชม website หรือ application วิเคราะห์ข้อมูล วัดผลประสิทธิภาพ และ นำข้อมูลเหล่านี้มาวิเคราะห์ เพื่อปรับปรุงเว็บไซต์ให้ตรงกับความต้องการของผู้ใช้งาน และเพิ่มประสิทธิภาพทางการตลาด

    Google signals เก็บข้อมูลจาก app ต่างๆ ของ google เช่น search chome map youtube

    Fundamental of marketing funnel

    awareness
    consideration
    conversion
    royalty

    เราควรมีเว็บไซต์เป็นของตัวเอง นำ code เอาไปใส่ใน web

    เรียนรู้เพิ่มเติมเกี่ยวกับ Google Analytics สามารถดูได้จากแหล่งข้อมูลเหล่านี้

    https://support.google.com/analytics/answer/6367342?hl=en#zippy=%2Cin-this-article

    https://marketingplatform.google.com/about/analytics/features/

    https://mixpanel.com/ เป็นอีกหนึ่ง แพลตฟอร์ม ที่ช่วยวิเคราะห์ website ได้ คล้ายๆ Google Analytics

    มาลองเรียน https://www.malonglearn.com/

    Tab ขวามือ
    Home
    Report มีให้ดูได้หลายรูปแบบ
    Explore สร้าง report ของตัวเองได้ เปลี่ยนชื่อ report จะได้จำได้
    Advertising

    เพื่อนๆ อ่านแล้ว มีข้อคิดเห็นอย่างไร ช่วยบอกด้วยค่ะ