Python Colab Gemini

การ โปรแกรมและประยุกต์ใช้งาน Python Colab

ใช้ Gmail ในการสมัคร มีตัวอย่างและคำอธิบายดังด้านล่าง

 

จากเว็บไซต์: https://colab.research.google.com

ระบบปัญญาประดิษฐ์ Gemini: https://deepmind.google/technologies/gemini/#introduction

และช่อง Youtube: https://www.youtube.com/@iTForLifebyAjNu

 

 

 

 

ระบบ Gemini คืออะไร?

 ระบบ Gemini หมายถึงระบบปัญญาประดิษฐ์ (AI) ประเภทโมเดลภาษาขนาดใหญ่ (LLM) ที่ Google พัฒนาขึ้น

 

ระบบ Gemini มีจุดเด่นคือ:

 

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

 

ระบบ Gemini ประกอบไปด้วยโมเดลย่อย 3 โมเดล ได้แก่:

 

  • Gemini Ultra: โมเดลที่มีขนาดใหญ่ที่สุด ทำงานได้หลากหลาย เหมาะสำหรับงานที่ต้องการความละเอียดสูง
  • Gemini Pro: โมเดลที่มีขนาดปานกลาง เหมาะสำหรับงานทั่วไป
  • Gemini Nano: โมเดลที่มีขนาดเล็ก เหมาะสำหรับงานที่ต้องการความรวดเร็ว

 

ระบบ Gemini นั้นเปิดให้ใช้งานแล้ว แต่ยังอยู่ในช่วงทดลอง ผู้ใช้สามารถสมัครใช้งานได้ที่เว็บไซต์ https://irinagyurjinyan.wordpress.com/2022/04/12/%D1%83%D1%80%D0%BE%D0%BA-19/

 

ตัวอย่างการใช้งานระบบ Gemini

 

  • แปลภาษา: ผู้ใช้สามารถป้อนข้อความภาษาไทย ระบบ Gemini จะแปลเป็นภาษาอังกฤษ หรือภาษาอื่นๆ ได้อย่างแม่นยำ
  • เขียนข้อความสร้างสรรค์: ผู้ใช้สามารถป้อนหัวข้อ ระบบ Gemini จะเขียนบทความ เรื่องสั้น หรือบทกวี ได้อย่างน่าสนใจ
  • ตอบคำถาม: ผู้ใช้สามารถถามคำถามเกี่ยวกับเรื่องต่างๆ ระบบ Gemini จะตอบคำถามอย่างละเอียด
  • วิเคราะห์ข้อมูล: ผู้ใช้สามารถป้อนข้อมูล ระบบ Gemini จะวิเคราะห์ข้อมูลและสรุปผลให้
  • เขียนโค้ด: ผู้ใช้สามารถป้อนคำอธิบาย ระบบ Gemini จะเขียนโค้ดโปรแกรมได้

 

สรุป

 

ระบบ Gemini เป็นระบบ AI ประเภท LLM ที่มีความสามารถหลากหลาย แม่นยำ ใช้งานง่าย และมีประสิทธิภาพ เหมาะสำหรับงานที่ต้องการความละเอียดสูง งานทั่วไป และงานที่ต้องการความรวดเร็ว

 

 

ยินดีต้อนรับสู่ Colab


 
 
 
 
 

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

ภาพขนาดย่อของวิดีโอที่แสดงฟีเจอร์ที่น่าสนใจของ Google Colab 3 รายการ

 
 
 
[ ]
 
 
 
 

Colab คืออะไร

Colab หรือ "Colaboratory" ช่วยให้คุณสามารถเขียนและเรียกใช้ Python ในเบราว์เซอร์ด้วย

  • ไม่ต้องกำหนดค่าใด
  • เข้าถึง GPU โดยไม่มีค่าใช้จ่าย
  • แชร์ได้ง่ายๆ

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


 
  

เริ่มต้นใช้งาน

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

ลองดูตัวอย่างนี้ นี่คือเซลล์โค้ดที่มีสคริปต์ Python สั้นๆ ซึ่งจะคำนวณค่าค่าหนึ่ง เก็บไว้ในตัวแปร แล้วพิมพ์ผลลัพธ์ออกมา

 
 
[ ]
 
 
seconds_in_a_day = 24 * 60 * 60
seconds_in_a_day
 
account_circle
86400
 

 หากต้องการเรียกใช้โค้ดในเซลล์ด้านบน ให้คลิกเพื่อเลือกโค้ดนั้น และกดปุ่มเล่นทางด้านซ้ายของโค้ด หรือจะใช้แป้นพิมพ์ลัด "Command/Ctrl+Enter" ก็ได้ หากต้องการแก้ไขโค้ด ก็เพียงคลิกเซลล์และเริ่มแก้ไขได้เลย

ตัวแปรที่คุณกำหนดในเซลล์หนึ่งจะใช้ในเซลล์อื่นในภายหลังได้


 
 
 
[ ]
 
 
seconds_in_a_week = 7 * seconds_in_a_day
seconds_in_a_week
 
account_circle
604800
 

 
 

สมุดบันทึก Colab ช่วยให้คุณรวมโค้ดที่สั่งการได้และ Rich Text ลงในเอกสารเดียว ควบคู่ไปกับรูปภาพHTMLLaTeX และอื่นๆ ได้ เมื่อคุณสร้างสมุดบันทึก Colab ของตัวเอง สมุดบันทึกเหล่านั้นจะจัดเก็บอยู่ในบัญชี Google ไดรฟ์ โดยจะแชร์สมุดบันทึก Colab กับเพื่อนหรือเพื่อนร่วมงานและอนุญาตให้บุคคลดังกล่าวแสดงความคิดเห็นหรือแก้ไขสมุดบันทึกของคุณได้ง่ายๆ ดูข้อมูลเพิ่มเติมได้ในภาพรวมของ Colab หากต้องการสร้างสมุดบันทึก Colab เล่มใหม่ คุณจะใช้เมนู "ไฟล์" ด้านบน หรือทำผ่านลิงก์สร้างสมุดบันทึก Colab เล่มใหม่ก็ได้

สมุดบันทึก Colab คือสมุดบันทึก Jupyter ที่ Colab โฮสต์ไว้ ดูข้อมูลเพิ่มเติมเกี่ยวกับโปรเจ็กต์ Jupyter ได้ที่ jupyter.org


  
 

วิทยาศาสตร์ข้อมูล

Colab ให้คุณใช้ประโยชน์จากไลบรารี Python ที่ได้รับความนิยมได้อย่างเต็มศักยภาพ เพื่อวิเคราะห์และแสดงข้อมูลเป็นภาพ เซลล์โค้ดด้านล่างใช้ numpy เพื่อสร้างข้อมูลสุ่มขึ้นมา และใช้ matplotlib เพื่อแสดงข้อมูลนั้นเป็นภาพ หากต้องการแก้ไขโค้ด ก็เพียงคลิกเซลล์และเริ่มแก้ไขได้เลย


 
[ ]
 
 
import numpy as np
from matplotlib import pyplot as plt

ys = 200 + np.random.randn(100)
x = [x for x in range(len(ys))]

plt.plot(x, ys, '-')
plt.fill_between(x, ys, 195, where=(ys > 195), facecolor='g', alpha=0.6)

plt.title("Sample Visualization")
plt.show()
 
account_circle
  
 
 

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


  
 

แมชชีนเลิร์นนิง

Colab ให้คุณนำเข้าชุดข้อมูลรูปภาพ ฝึกการทำงานของตัวแยกประเภทรูปภาพกับชุดข้อมูลนั้น แล้วประเมินโมเดล โดยทั้งหมดนี้ใช้โค้ดเพียงไม่กี่บรรทัดเท่านั้น สมุดบันทึก Colab เรียกใช้โค้ดในเซิร์ฟเวอร์ระบบคลาวด์ของ Google ซึ่งหมายความว่าคุณจะใช้ประโยชน์จากประสิทธิภาพของฮาร์ดแวร์ Google รวมถึง GPU และ TPU โดยไม่ต้องคำนึงถึงสมรรถภาพของคอมพิวเตอร์ตัวเองเลย ใช้แค่เบราว์เซอร์เท่านั้น


 
 

ชุมชนแมชชีนเลิร์นนิงมีการประยุกต์ใช้ Colab อย่างกว้างขวางในงานต่างๆ เช่น

  • การเริ่มต้นใช้งาน TensorFlow
  • การพัฒนาและการฝึกโครงข่ายระบบประสาทเทียม
  • การทดสอบกับ TPU
  • การเผยแพร่งานวิจัย AI
  • การสร้างบทแนะนำ

ดูตัวอย่างสมุดบันทึก Colab ที่สาธิตการประยุกต์ใช้แมชชีนเลิร์นนิงได้ในตัวอย่างแมชชีนเลิร์นนิงด้านล่าง


  

แหล่งข้อมูลเพิ่มเติม

การทำงานกับสมุดบันทึกใน Colab

การทำงานกับข้อมูล

หลักสูตรเร่งรัดเกี่ยวกับแมชชีนเลิร์นนิง

นี่คือสมุดบันทึกบางส่วนจากหลักสูตรแมชชีนเลิร์นนิงออนไลน์ของ Google ดูเพิ่มเติมได้ในเว็บไซต์การเรียนรู้แบบเต็มหลักสูตร

การใช้ฮาร์ดแวร์ที่มีการเร่ง


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

  • การฝึกตัวแยกประเภทรูปภาพใหม่: สร้างโมเดล Keras เพิ่มเติมจากตัวแยกประเภทรูปภาพที่ฝึกไว้ล่วงหน้าเพื่อแยกแยะดอกไม้ชนิดต่างๆ

  • การจัดประเภทข้อความ: จัดประเภทรีวิวภาพยนตร์ใน IMDB ว่าเป็นเชิงบวกหรือเชิงลบ

  • การโอนรูปแบบ: ใช้การเรียนรู้เชิงลึกเพื่อโอนรูปแบบระหว่างรูปภาพ

  • การถามและตอบเกี่ยวกับ Universal Sentence Encoder แบบหลายภาษา: ใช้โมเดลแมชชีนเลิร์นนิงเพื่อตอบคำถามจากชุดข้อมูล SQuAD

  • ชนิดการประมาณค่าในช่วงวิดีโอ: คาดการณ์สิ่งที่เกิดขึ้นในวิดีโอระหว่างเฟรมแรกกับเฟรมสุดท้าย

  •  
  •  

  •  

  • ตัวอย่างโค้ด Python จาก Gemini

    1. พิมพ์ข้อความ "Hello World!"

    Python
    print("Hello World!")
    

    2. แสดงผลลัพธ์ของตัวแปร

    Python
    x = 10
    y = "Python"
    
    print("x =", x)
    print("y =", y)
    

    3. การคำนวณพื้นฐาน

    Python
    a = 5
    b = 3
    
    sum = a + b
    difference = a - b
    product = a * b
    quotient = a / b
    
    print("ผลรวม:", sum)
    print("ผลต่าง:", difference)
    print("ผลคูณ:", product)
    print("ผลหาร:", quotient)
    

    4. การใช้เงื่อนไข if-else

    Python
    age = 20
    
    if age >= 18:
        print("คุณบรรลุนิติภาวะ")
    else:
        print("คุณยังไม่บรรลุนิติภาวะ")
    

    5. วนลูป for

    Python
    for i in range(5):
        print(i)
    

    6. ฟังก์ชัน

    Python
    def say_hello():
        print("Hello!")
    
    say_hello()
    

    7. การอ่านไฟล์

    Python
    with open("myfile.txt", "r") as f:
        content = f.read()
    
    print(content)
    

    8. การเขียนไฟล์

    Python
    with open("myfile.txt", "w") as f:
        f.write("This is a new file.")
    

    ตัวอย่างเพิ่มเติม

    • คัมภีร์เทพ IT 10 Python Programs ที่น่าสนใจพร้อมตัวอย่าง Code: [URL ที่ไม่ถูกต้องถูกนำออกแล้ว]
    • รวมเทคนิคการเขียนโปรแกรมภาษา Python ‍: [URL ที่ไม่ถูกต้องถูกนำออกแล้ว]
    • ตัวอย่างโจทย์การเขียนโปรแกรมด้วยภาษา Python คำสั่ง print input และ if: [URL ที่ไม่ถูกต้องถูกนำออกแล้ว]
    • บทที่ 4 การเขียนโปรแกรม python ประเภทตัวแปร และ ข้อความ: http://courseware.npru.ac.th/admin/files/20210907110003_65235a3b992bf4f7d36b7e3cb735f37c.pdf
    • ภาษาไพทอน (Python language) และการเขียนโปรแกรมเบื้องต้น: https://www2.cs.science.cmu.ac.th/courses/204101/lib/exe/fetch.php?media=w02-w03-lab-intro-to-python.pdf

    แหล่งข้อมูลออนไลน์

    หมายเหตุ:

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

 

  •  
ตัวอย่าง Deep Learning การ Immage Processing ของ Colab

import tensorflow as tf
import tensorflow_hub as hub

model = hub.load('https://bit.ly/metrabs_l')  # Takes about 3 minutes
! wget -q https://drive.google.com/file/d/1aicTaNaSLu3iFTaokVJxAXDLRKF_zgqn/view?usp=sharing
img = tf.image.decode_image(tf.io.read_file('Test220221017.jpg'))
pred = model.detect_poses(img, skeleton='smpl+head_30')
pred['poses3d'].shape

def plot_results(image, pred, joint_names, joint_edges):
    import matplotlib.pyplot as plt
    from mpl_toolkits.mplot3d import Axes3D
    from matplotlib.patches import Rectangle
    fig = plt.figure(figsize=(10, 5.2))
    image_ax = fig.add_subplot(1, 2, 1)
    image_ax.imshow(image.numpy())
    for x, y, w, h, c in pred['boxes'].numpy():
        image_ax.add_patch(Rectangle((x, y), w, h, fill=False))

    pose_ax = fig.add_subplot(1, 2, 2, projection='3d')
    pose_ax.view_init(5, -75)
    pose_ax.set_xlim3d(-1500, 1500)
    pose_ax.set_zlim3d(-1500, 1500)
    pose_ax.set_ylim3d(2000, 5000)
    poses3d = pred['poses3d'].numpy()
    poses3d[..., 1], poses3d[..., 2] = poses3d[..., 2], -poses3d[..., 1]
    for pose3d, pose2d in zip(poses3d, pred['poses2d'].numpy()):
        for i_start, i_end in joint_edges:
            image_ax.plot(*zip(pose2d[i_start], pose2d[i_end]), marker='o', markersize=2)
            pose_ax.plot(*zip(pose3d[i_start], pose3d[i_end]), marker='o', markersize=2)
        image_ax.scatter(*pose2d.T, s=2)
        pose_ax.scatter(*pose3d.T, s=2)

joint_names = model.per_skeleton_joint_names['smpl+head_30'].numpy().astype(str)
joint_edges = model.per_skeleton_joint_edges['smpl+head_30'].numpy()
plot_results(img, pred, joint_names, joint_edges)




Visitors: 18,170