ข้ามไปยังเนื้อหาหลัก

อนุกรมแม็คลอริน: สูตร การขยาย และตัวอย่าง

คู่มือเชิงปฏิบัติสำหรับอนุกรมแม็คลอริน ครอบคลุมสูตรหลัก การขยายที่พบบ่อย กฎการลู่เข้า และการประยุกต์ใช้จริงในวิธีเชิงตัวเลข ฟิสิกส์ และแมชชีนเลิร์นนิง
อัปเดตแล้ว 4 พ.ค. 2569  · 9 นาที อ่าน

ฟังก์ชันบางอย่างซับซ้อนเกินกว่าจะใช้งานโดยตรงได้ — นักคณิตศาสตร์จึงหาวิธีเลียนแบบด้วยพหุนาม

นั่นคือแนวคิดพื้นฐานของอนุกรมแม็คลอริน มันเป็นการแทนฟังก์ชันด้วยผลรวมของพจน์พหุนามอย่างอนันต์ ซึ่งแต่ละพจน์สร้างจากอนุพันธ์ของฟังก์ชันที่ศูนย์ ผลลัพธ์คือสิ่งที่คำนวณได้จริง แม้ฟังก์ชันต้นฉบับจะซับซ้อนเกินไป

อนุกรมแม็คลอรินถือเป็นกรณีพิเศษของอนุกรมเทย์เลอร์ โดยมีจุดศูนย์กลางที่ศูนย์ ข้อจำกัดนี้ทำให้อนุพันธ์ได้ง่ายขึ้นและใช้งานสะดวกขึ้น

บทความนี้จะกล่าวถึงสูตรของอนุกรมแม็คลอริน เดินผ่านการขยายที่พบบ่อยที่สุด และอธิบายวิธีตีความและประยุกต์ใช้

อนุกรมแม็คลอรินคืออะไร?

อนุกรมแม็คลอรินคือการแทนฟังก์ชันด้วยผลรวมอนันต์ของพจน์ที่สร้างจากอนุพันธ์ของฟังก์ชันที่ศูนย์

แต่ละพจน์เป็นพหุนาม — กำลังของ x ที่คูณด้วยค่าจากอนุพันธ์ เมื่อรวมพจน์เหล่านี้มากพอ จะได้พหุนามที่มีพฤติกรรมเหมือนฟังก์ชันต้นฉบับอย่างน้อยบริเวณใกล้ศูนย์

การประมาณฟังก์ชันที่ซับซ้อนด้วยพหุนามคือแก่นของอนุกรมแม็คลอริน พหุนามคำนวณ หาอนุพันธ์ และอินทิเกรตได้ง่าย ซึ่งฟังก์ชันส่วนใหญ่อื่น ๆ ไม่เป็นเช่นนั้น

อนุกรมแม็คลอริน vs. อนุกรมเทย์เลอร์

อนุกรมเทย์เลอร์ประมาณฟังก์ชันเป็นพหุนามอนันต์ที่มีจุดศูนย์กลางใด ๆ ที่ a เลือกจุดนั้น สร้างอนุกรมรอบ ๆ แล้วได้พหุนามที่ใช้ได้ดีบริเวณจุดนั้น

อนุกรมแม็คลอรินก็คืออนุกรมเทย์เลอร์ที่ a = 0 ความต่างมีแค่นี้

การตั้งที่ศูนย์ทำให้คณิตศาสตร์ง่ายลง เพราะพจน์พหุนามตัดส่วนชดเชย (x - a) ทิ้ง กลายเป็นกำลังของ x ตรง ๆ ฟังก์ชันมาตรฐานส่วนใหญ่ที่ใช้ในแคลคูลัส ฟิสิกส์ และแมชชีนเลิร์นนิงจึงมีการขยายตัวแบบแม็คลอรินที่สวยและรู้จักกันดี

การเปรียบเทียบอนุกรมเทย์เลอร์และแม็คลอริน

การเปรียบเทียบอนุกรมเทย์เลอร์และแม็คลอริน

สรุปส่วนนี้ ให้ใช้อนุกรมเทย์เลอร์เมื่อจำเป็นต้องประมาณฟังก์ชันใกล้จุดใดจุดหนึ่งที่ไม่ใช่ศูนย์ ใช้อนุกรมแม็คลอรินเมื่อศูนย์เป็นจุดตั้งต้น — ซึ่งมักจะเป็นเช่นนั้น

สูตรอนุกรมแม็คลอริน

สูตรอนุกรมแม็คลอรินแสดงฟังก์ชันใด ๆ f(x) เป็นผลรวมอนันต์:

สูตรอนุกรมแม็คลอริน

สูตรอนุกรมแม็คลอริน

เมื่อขยายจะมีลักษณะดังนี้:

สูตรอนุกรมแม็คลอรินแบบขยาย

สูตรอนุกรมแม็คลอรินแบบขยาย

แต่ละพจน์ประกอบด้วยสามส่วน:

  • f⁽ⁿ⁾(0) — อนุพันธ์ลำดับที่ n ของ f ประเมินค่าที่ศูนย์ แสดงลักษณะพฤติกรรมของฟังก์ชัน ณ จุดนั้น

  • n! — แฟกทอเรียลของ n ซึ่งทำหน้าที่สเกลแต่ละพจน์ลงเพื่อให้อนุกรมยังมีพฤติกรรมดีเมื่อ n โตขึ้น

  • xⁿ — กำลังลำดับที่ n ของ x กำหนดว่าพจน์แต่ละพจน์ขยายอิทธิพลออกไปไกลจากศูนย์แค่ไหน

พจน์แรก f(0) ตั้งค่าพหุนามให้เท่ากับค่าของฟังก์ชันที่ศูนย์ พจน์ถัดไปแต่ละพจน์เป็นการแก้ไข — ปรับความชัน ความโค้ง ฯลฯ — จนพหุนามเข้าใกล้ฟังก์ชันเดิมเท่าที่ต้องการ

สรุปสั้น ๆ คือ ยิ่งรวมพจน์มาก การประมาณก็ยิ่งดี

อนุกรมแม็คลอรินทำงานอย่างไร

การสร้างอนุกรมแม็คลอรินสรุปได้เป็นขั้นตอนซ้ำ ๆ อย่างหนึ่ง: ประเมินอนุพันธ์ที่ศูนย์ แล้วนำผลลัพธ์มารวมเป็นพหุนาม

ทำงานอย่างนี้แบบทีละขั้น:

  1. ประเมินค่าฟังก์ชันที่ศูนย์: แทนค่า x = 0 ลงใน f(x) จะได้พจน์แรก — ค่าคงที่ที่เป็นจุดตั้งต้นของพหุนาม
  2. หาอนุพันธ์: คำนวณ f'(x), f''(x), f'''(x) เป็นต้น และในแต่ละขั้นให้ประเมินค่าที่ศูนย์ ค่าที่ได้แต่ละค่าเล่าถึงพฤติกรรมของฟังก์ชัน — ความชัน ความโค้ง และอัตราการเปลี่ยนแปลงของความโค้ง
  3. ประกอบเป็นพหุนาม: นำค่าจากอนุพันธ์แต่ละลำดับ หารด้วยแฟกทอเรียลที่สอดคล้องกัน แล้วคูณด้วยกำลังของ x ที่ตรงกัน

จากนั้นรวมทุกพจน์เข้าด้วยกัน:

อนุกรมแม็คลอรินทำงานอย่างไร

อนุกรมแม็คลอรินทำงานอย่างไร

แต่ละพจน์ช่วยให้การประมาณดีขึ้น พจน์แรกตรงค่าฟังก์ชัน พจน์ที่สองตรงความชัน พจน์ที่สามตรงความโค้ง แล้วก็ไปเรื่อย ๆ

หยุดเมื่อความแม่นยำเพียงพอต่อความต้องการ — หรือทำต่อเพื่อความละเอียดขึ้น

การขยายอนุกรมแม็คลอรินที่พบบ่อย

มีฟังก์ชันบางตัวที่พบถี่จนควรจำการขยายแบบแม็คลอริน นี่คือสี่ตัวที่เจอบ่อยที่สุด

ฟังก์ชันเอ็กซ์โพเนนเชียลเป็นกรณีที่ง่ายที่สุด — อนุพันธ์ทุกลำดับของ ยังเป็น อยู่ ดังนั้นเมื่อประเมินที่ศูนย์จะได้ค่าเท่ากับ 1

การขยาย eˆx

การขยาย ex

สัมประสิทธิ์เป็นเพียง 1/n! อนุกรมลู่เข้ากับทุกค่าของ x จึงเป็นหนึ่งในการขยายที่มีประโยชน์มากที่สุดในทางปฏิบัติ

sin(x)

ฟังก์ชันไซน์ให้อนุกรมที่มีกำลังคี่ของ x เท่านั้น และเครื่องหมายสลับบวกกับลบ

การขยาย sin(x)

การขยาย sin(x)

อนุพันธ์ลำดับคู่ของ sin(x) ที่ศูนย์เป็นศูนย์ทั้งหมด จึงไม่มีพจน์เหล่านั้น เหลือแต่กำลังคี่ ตัวส่วนเป็นแฟกทอเรียล เครื่องหมายสลับไปมา เช่นเดียวกับ อนุกรมนี้ลู่เข้ากับทุกค่า x

cos(x)

การขยายของโคไซน์เป็นภาพสะท้อนของไซน์ — มีกำลังคู่ของ x เท่านั้น โดยมีรูปแบบเครื่องหมายสลับเหมือนกัน

การขยาย cos(x)

การขยาย cos(x)

นี่สมเหตุสมผลเพราะ cos(x) เป็นอนุพันธ์ของ sin(x) และได้อนุกรมนี้โดยดิฟเฟอเรนเชียตอนุกรมของ sin(x) ทีละพจน์ พจน์กำลังคี่หายไปด้วยเหตุผลเดียวกับที่พจน์กำลังคู่หายในไซน์ — ค่าจากอนุพันธ์ที่ศูนย์ทำให้หายไป อนุกรมนี้ลู่เข้ากับทุกค่า x

1 / (1 − x)

กรณีนี้มีรูปแบบง่ายที่สุดในสี่ตัว: สัมประสิทธิ์ทุกตัวเป็น 1 ทั้งหมด ไม่มีแฟกทอเรียลและไม่มีเครื่องหมายสลับ

การขยาย 1/1-x

การขยาย 1/(1-x)

นี่คืออนุกรมเรขาคณิต จึงมีรูปแบบที่สะอาด แต่ต่างจากสามฟังก์ชันด้านบน อนุกรมนี้ลู่เข้าเฉพาะเมื่อ |x| < 1 ถ้าตั้งค่า x นอกช่วงนั้น พจน์จะโตขึ้นไม่สิ้นสุดแทนที่จะหดเข้าใกล้ศูนย์

สุดท้าย สำหรับผู้ที่เรียนรู้ด้วยภาพ ต่อไปนี้เป็นแผนภูมิเปรียบเทียบการขยายทั้งสี่แบบโดยใช้หลายพจน์:

อนุกรมแม็คลอรินที่พบบ่อย

อนุกรมแม็คลอรินที่พบบ่อย

การประมาณฟังก์ชันด้วยอนุกรมแม็คลอริน

อนุกรมแม็คลอรินแทบไม่จำเป็นต้องใช้พจน์อนันต์ทั้งหมด ในทางปฏิบัติมักใช้ผลรวม جزบางส่วน — พจน์แรก ๆ — แล้วใช้เป็นค่าประมาณ

ยิ่งรวมพจน์มาก ผลรวม جزบางส่วนก็ยิ่งติดตามฟังก์ชันต้นฉบับได้ใกล้ หากตัดที่สองพจน์ จะพอใช้ได้ใกล้ศูนย์ เมื่อเพิ่มอีกสองสามพจน์ การประมาณจะใช้ได้ไกลออกไป แต่ละพจน์ใหม่แก้สิ่งที่พจน์ก่อนหน้าพลาด

พิจารณา sin(x) เป็นตัวอย่างชัดเจน อนุกรมเต็มคือ:

สูตรการประมาณ sin(x)

สูตรการประมาณ sin(x)

มาประมาณ sin(0.3) ด้วยผลรวม جزบางส่วน แล้วดูว่าผลลัพธ์แต่ละอันเทียบกับค่าจริงอย่างไร

  • 1 พจน์: 0.3 — คลาดเคลื่อน ~0.0045

  • 2 พจน์: 0.3 - (0.3³/6) = 0.2955 — คลาดเคลื่อน ~0.0000196

  • 3 พจน์: เพิ่ม (0.3⁵/120) = 0.29552 — คลาดเคลื่อน ~0.0000000239

สามพจน์ให้ความแม่นยำถึงหกตำแหน่งทศนิยม ซึ่งควรเพียงพอ ส่วนใหญ่แล้วไม่จำเป็นต้องไปไกลกว่านั้น

แนวคิดเดียวกันนี้ในภาษา Python:

import numpy as np
from math import factorial

def maclaurin_sin(x, n_terms):
    return sum(((-1)**n * x**(2*n+1)) / factorial(2*n+1) for n in range(n_terms))

vec_sin = np.vectorize(maclaurin_sin)
x_val = 0.3

print(f"Approximating sin({x_val}):")
print(f"  Exact value : {np.sin(x_val):.10f}")
for n in [1, 2, 3, 4]:
    approx = maclaurin_sin(x_val, n)
    error = abs(np.sin(x_val) - approx)
    print(f"  {n} term(s)   : {approx:.10f}  |  error: {error:.2e}"

เมื่อรันจะพิมพ์ค่าผลรวม جزบางส่วนและข้อผิดพลาดที่ x = 0.3:

ตัวอย่าง Python สำหรับการประมาณอนุกรมแม็คลอรินของ sin(x)

ตัวอย่าง Python สำหรับการประมาณอนุกรมแม็คลอรินของ sin(x)

ยังสามารถดูในเชิงภาพได้ด้วย:

แผนภูมิการประมาณอนุกรมแม็คลอรินของ sin(x)

แผนภูมิการประมาณอนุกรมแม็คลอรินของ sin(x)

จะเห็นได้ชัดว่าการประมาณแต่ละระดับติดตามฟังก์ชัน sin(x) ได้ดีเพียงใด

การลู่เข้าของอนุกรมแม็คลอริน

อนุกรมแม็คลอรินไม่ได้ใช้ได้กับทุกค่า x เสมอไป สำหรับบางฟังก์ชัน อนุกรมจะลู่เข้าหาค่าที่ถูกต้องเฉพาะภายในช่วงหนึ่งรอบศูนย์ นอกช่วงนั้น ผลรวม جزบางส่วนจะโตไม่สิ้นสุดแทน

ช่วงนี้เรียกว่า รัศมีการลู่เข้า บอกว่าจากศูนย์ออกไปไกลแค่ไหนที่อนุกรมยังเชื่อถือได้

พฤติกรรมขึ้นอยู่กับฟังก์ชัน:

  • , sin(x), cos(x) — ลู่เข้ากับทุกค่า x ใส่ตัวเลขใด ๆ ก็ได้และอนุกรมจะให้คำตอบที่ถูกต้อง

  • 1/(1-x) — ลู่เข้าเฉพาะเมื่อ |x| < 1 ที่ x = 1 ตัวฟังก์ชันเองมีค่าสูงไม่สิ้นสุด และอนุกรมสะท้อนสิ่งนั้นด้วยการไม่ลู่เข้าใกล้จุดดังกล่าว

คิดถึงรัศมีการลู่เข้าเป็น “วงกลมแห่งความเชื่อใจ” ที่มีศูนย์กลางเป็นศูนย์ อนุกรมจะเป็นการประมาณที่ใช้ได้เฉพาะภายในวงนี้

ไม่จำเป็นต้องคำนวณรัศมีการลู่เข้าเสมอไป สำหรับฟังก์ชันมาตรฐาน ค่านี้เป็นที่รู้กันอยู่แล้ว แต่เมื่อทำงานกับฟังก์ชันที่ไม่คุ้นเคย การตรวจสอบการลู่เข้าก่อนพึ่งพาการประมาณแบบแม็คลอรินเป็นนิสัยที่ดี

เหตุใดอนุกรมแม็คลอรินจึงสำคัญ

อนุกรมแม็คลอรินพบได้จริงในงานคอมพิวเตชันทั่วคณิตศาสตร์ ฟิสิกส์ และแมชชีนเลิร์นนิง

วิธีเชิงตัวเลข

คอมพิวเตอร์ไม่สามารถประเมินฟังก์ชันส่วนใหญ่แบบสัญลักษณ์ได้ มันประเมินพหุนาม เมื่อไลบรารีคำนวณ sin(x) หรือ มักใช้การประมาณด้วยพหุนาม — ที่ได้มาจากการขยายแบบแม็คลอรินหรือเทย์เลอร์ของฟังก์ชัน อนุกรมให้รูปแบบที่ฮาร์ดแวร์คำนวณได้จริง รวดเร็ว และไม่วนลูปไม่รู้จบ

การประมาณในฟิสิกส์

ฟิสิกส์ใช้อานุกรมแม็คลอรินเมื่อคำตอบที่แน่นอนซับซ้อนเกินไป ตัวอย่างที่พบบ่อยคือการประมาณมุมเล็ก: สำหรับค่า θ เล็ก ๆ sin(θ) ≈ θ นั่นคือพจน์แรกของอนุกรมแม็คลอรินของ sin(x) ช่วยทำให้สมการลูกตุ้ม การคำนวณเชิงทัศนศาสตร์ และแบบจำลองคลื่นง่ายขึ้น — เปลี่ยนปัญหาไม่เชิงเส้นให้เป็นเชิงเส้นที่แก้ได้จริง

แมชชีนเลิร์นนิงและการเพิ่มประสิทธิภาพ

ในแมชชีนเลิร์นนิง อนุกรมเทย์เลอร์และแม็คลอรินอยู่เบื้องหลังคณิตศาสตร์จำนวนมากที่พบในชีวิตประจำวัน เกรเดียนต์ดีเซนต์ใช้การประมาณอันดับหนึ่งของฟังก์ชันการสูญเสียเพื่อกำหนดทิศทางก้าว วิธีอันดับสองอย่างวิธีนิวตันใช้พจน์ความโค้ง เมื่อนักวิจัยวิเคราะห์พฤติกรรมพื้นผิวการสูญเสียของโมเดลในเชิงเฉพาะที่ ก็มักคิดในแง่ของการขยายเทย์เลอร์รอบจุดหนึ่ง

อนุกรมแม็คลอรินยังใช้ในการประมาณฟังก์ชันกระตุ้นอย่าง sigmoid และ tanh ในการวิเคราะห์เชิงทฤษฎีด้วย การขยายเป็นพหุนามทำให้ง่ายต่อการให้เหตุผลเกี่ยวกับเกรเดียนต์และพฤติกรรมอิ่มตัว

สรุป

อนุกรมแม็คลอรินทำสิ่งเดียว: ประมาณฟังก์ชันเป็นพหุนามที่มีศูนย์กลางที่ศูนย์ แนวคิดเรียบง่ายแต่ทรงพลัง

ตั้งแต่การคำนวณเชิงตัวเลขไปจนถึงฟิสิกส์และแมชชีนเลิร์นนิง รูปแบบก็เหมือนเดิมเสมอ: นำฟังก์ชันที่ซับซ้อนมาแทนด้วยพหุนามที่ใกล้เคียงพอ แล้วไปต่อกับปัญหาจริง คณิตศาสตร์เบื้องหลังเกรเดียนต์ดีเซนต์ การประมาณมุมเล็ก และฟังก์ชันในไลบรารีสำเร็จรูป ล้วนย้อนกลับไปยังแนวคิดแกนเดียวกันนี้

การขยายของ , sin(x), cos(x) และ 1/(1-x) ควรค่าแก่การจดจำ พบเจอบ่อยพอที่การจำได้ทันทีช่วยประหยัดเวลา โดยเฉพาะเมื่ออ่านงานวิจัย

คำถามที่พบบ่อยเกี่ยวกับอนุกรมแม็คลอริน

อธิบายอนุกรมแม็คลอรินแบบเข้าใจง่ายคืออะไร?

อนุกรมแม็คลอรินคือการแทนฟังก์ชันด้วยผลรวมอนันต์ของพจน์พหุนาม ซึ่งแต่ละพจน์สร้างจากอนุพันธ์ของฟังก์ชันที่ประเมินที่ศูนย์ ยิ่งรวมพจน์มาก พหุนามก็ยิ่งเข้าใกล้ฟังก์ชันต้นฉบับ เป็นวิธีเปลี่ยนสิ่งที่ซับซ้อนให้เป็นสิ่งที่คอมพิวเตอร์ — หรือมนุษย์ — คำนวณได้จริง

ความแตกต่างระหว่างอนุกรมแม็คลอรินกับอนุกรมเทย์เลอร์คืออะไร?

อนุกรมเทย์เลอร์ประมาณฟังก์ชันเป็นพหุนามที่มีจุดศูนย์กลางที่จุดใด ๆ a ส่วนอนุกรมแม็คลอรินก็คืออนุกรมเทย์เลอร์ที่กำหนดจุดนั้นไว้ที่ศูนย์

ในทางปฏิบัติใช้อานุกรมแม็คลอรินที่ไหนบ้าง?

อนุกรมแม็คลอรินพบในการคำนวณเชิงตัวเลข ฟิสิกส์ และแมชชีนเลิร์นนิง ไลบรารีโปรแกรมใช้การประมาณแบบพหุนามเพื่อคำนวณฟังก์ชันอย่าง sin(x) และ อย่างมีประสิทธิภาพ ใน ML การขยายเทย์เลอร์อยู่เบื้องหลังวิธีเพิ่มประสิทธิภาพอย่างเกรเดียนต์ดีเซนต์และวิธีนิวตัน

รัศมีการลู่เข้าของอนุกรมแม็คลอรินหมายถึงอะไร?

รัศมีการลู่เข้ากำหนดว่าจากศูนย์ออกไปไกลแค่ไหนที่อนุกรมแม็คลอรินยังแม่นยำ ภายในช่วงนั้น ผลรวม جزบางส่วนจะเข้าใกล้ฟังก์ชันที่แท้จริง นอกช่วงนั้น พจน์จะโตขึ้นแทนที่จะหดตัว และการประมาณจะล้มเหลว ฟังก์ชันอย่าง และ sin(x) ลู่เข้าทุกที่ แต่บางตัว — อย่าง 1/(1-x) — ลู่เข้าได้เฉพาะในช่วงจำกัด

ต้องใช้กี่พจน์จึงจะได้การประมาณแบบแม็คลอรินที่ดี?

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

หัวข้อ

เรียนกับ DataCamp

Courses

Linear Algebra for Data Science in R

4 ชม.
20.8K
This course is an introduction to linear algebra, one of the most important mathematical topics underpinning data science.
ดูรายละเอียดRight Arrow
เริ่มหลักสูตร
ดูเพิ่มเติมRight Arrow