ท่อส่ง Amazon SageMaker เป็นบริการบูรณาการอย่างต่อเนื่องและการส่งมอบอย่างต่อเนื่อง (CI/CD) ที่ออกแบบมาสำหรับกรณีการใช้งานแมชชีนเลิร์นนิง (ML) คุณสามารถใช้เพื่อสร้าง ทำให้เป็นอัตโนมัติ และจัดการเวิร์กโฟลว์ ML ตั้งแต่ต้นทางถึงปลายทาง มันจัดการกับความท้าทายในการเตรียมแต่ละขั้นตอนของกระบวนการ ML ซึ่งต้องใช้เวลา ความพยายาม และทรัพยากร เพื่อความสะดวกในการใช้งาน มีเทมเพลตหลายแบบให้คุณปรับแต่งตามความต้องการของคุณ
บริการวิเคราะห์ภาพและวิดีโอที่มีการจัดการเต็มรูปแบบยังช่วยเร่งการนำโซลูชัน Computer Vision มาใช้อีกด้วย AWS เสนอบริการ AWS AI ที่ได้รับการฝึกอบรมล่วงหน้าและมีการจัดการอย่างเต็มรูปแบบที่เรียกว่า ความหมายของ Amazon ที่สามารถรวมเข้ากับแอปพลิเคชันคอมพิวเตอร์วิทัศน์โดยใช้การเรียก API และไม่จำเป็นต้องมีประสบการณ์ ML คุณเพียงแค่ต้องให้ภาพกับ API การรับรู้ของ Amazon และสามารถระบุออบเจ็กต์ที่ต้องการได้ตามป้ายกำกับที่กำหนดไว้ล่วงหน้า นอกจากนี้ยังสามารถจัดเตรียมฉลากแบบกำหนดเองเฉพาะสำหรับกรณีการใช้งานของคุณ และสร้างแบบจำลองคอมพิวเตอร์วิทัศน์แบบกำหนดเองโดยไม่จำเป็นต้องใช้ค่าใช้จ่ายเพียงเล็กน้อยหรือไม่มีเลยสำหรับความเชี่ยวชาญด้าน ML
ในโพสต์นี้ เราพูดถึงปัญหาการมองเห็นของคอมพิวเตอร์โดยเฉพาะ: การจำแนกประเภทรอยโรคที่ผิวหนัง และใช้ไปป์ไลน์โดยปรับแต่งเทมเพลตที่มีอยู่และปรับแต่งให้เข้ากับงานนี้ การจำแนกประเภทของโรคผิวหนังที่แม่นยำสามารถช่วยในการวินิจฉัยโรคมะเร็งในระยะเริ่มต้นได้ อย่างไรก็ตาม เป็นงานที่ท้าทายในด้านการแพทย์ เนื่องจากมีความคล้ายคลึงกันสูงระหว่างรอยโรคที่ผิวหนังประเภทต่างๆ ไปป์ไลน์ช่วยให้เราสามารถใช้ประโยชน์จากโมเดลและอัลกอริธึมที่มีอยู่มากมาย และสร้างไปป์ไลน์การผลิตแบบ end-to-end โดยใช้ความพยายามและเวลาน้อยที่สุด
ภาพรวมโซลูชัน
ในโพสต์นี้ เราสร้างไปป์ไลน์แบบ end-to-end โดยใช้ไปป์ไลน์เพื่อจำแนกภาพที่ผิวหนังของรอยโรคที่ผิวหนังเป็นเม็ดสีทั่วไป เราใช้ สตูดิโอ Amazon SageMaker เทมเพลตโครงการ เทมเพลต MLOps สำหรับการสร้าง การฝึกอบรม และการปรับใช้โมเดล และรหัสดังต่อไปนี้ พื้นที่เก็บข้อมูล GitHub. สถาปัตยกรรมที่ได้จะแสดงในรูปต่อไปนี้
สำหรับไปป์ไลน์นี้ เราใช้ชุดข้อมูล HAM10000 (“Human Against Machine with 10000 training images”) ซึ่งประกอบด้วยภาพ 10,015 dermatoscopic ทางผิวหนัง งานที่อยู่ในมือคือการจำแนกประเภทหลายคลาสในด้านการมองเห็นด้วยคอมพิวเตอร์ ชุดข้อมูลนี้แสดงหมวดหมู่การวินิจฉัยที่สำคัญที่สุดหกประเภทในขอบเขตของรอยโรคที่เป็นเม็ดสี: actinic keratoses และ intraepithelial carcinoma หรือ Bowen's disease (akiec
), มะเร็งเซลล์ต้นกำเนิด (bcc
) รอยโรคคล้าย Keratosis ที่ไม่เป็นพิษเป็นภัย (เลนทิจีนีแสงอาทิตย์หรือเคราโตส seborrheic และไลเคน-พลานัสเช่นเคราโตส bkl
), โรคผิวหนัง (df
), มะเร็งผิวหนัง (mel
), เมลาโนไซติก เนวิ (nv
) และรอยโรคของหลอดเลือด (angiomas, angiokeratomas, pyogenic granulomas และ hemorrhage, vasc
).
สำหรับรูปแบบของอินพุตของโมเดล เราใช้ RecordIO
รูปแบบ. นี่เป็นรูปแบบกะทัดรัดที่เก็บข้อมูลภาพไว้ด้วยกันเพื่อการอ่านอย่างต่อเนื่อง ดังนั้นจึงฝึกได้เร็วและมีประสิทธิภาพมากขึ้น นอกจากนี้ ความท้าทายอย่างหนึ่งของการใช้ชุดข้อมูล HAM10000 คือความไม่สมดุลของคลาส ตารางต่อไปนี้แสดงการแจกแจงคลาส
ชั้น | อากี้ | สำเนาลับ | ขล | df | เมล | nv | วาสค |
จำนวนภาพ | 327 | 514 | 1099 | 115 | 1113 | 6705 | 142 |
รวม | 10015 |
เพื่อแก้ไขปัญหานี้ เราเพิ่มชุดข้อมูลโดยใช้การแปลงแบบสุ่ม (เช่น การครอบตัด การพลิก การมิเรอร์ และการหมุน) เพื่อให้ทุกคลาสมีรูปภาพจำนวนเท่ากันโดยประมาณ
ขั้นตอนก่อนการประมวลผลนี้ใช้ MXNet และ OpenCV ดังนั้นจึงใช้อิมเมจคอนเทนเนอร์ MXNet ที่สร้างไว้ล่วงหน้า ส่วนที่เหลือของการพึ่งพาได้รับการติดตั้งโดยใช้a requirements.txt
ไฟล์. หากคุณต้องการสร้างและใช้รูปภาพแบบกำหนดเอง โปรดดูที่ สร้างโปรเจ็กต์ Amazon SageMaker ด้วยไปป์ไลน์ CI/CD ของการสร้างอิมเมจ.
สำหรับขั้นตอนการฝึกอบรม เราใช้ตัวประมาณที่มีจากอิมเมจ Scikit Docker ในตัวของ SageMaker สำหรับการจัดประเภทรูปภาพและตั้งค่าพารามิเตอร์ดังนี้:
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับอิมเมจคอนเทนเนอร์ โปรดดูที่ อัลกอริธึมการจำแนกรูปภาพ.
สร้างโครงการสตูดิโอ
สำหรับคำแนะนำโดยละเอียดเกี่ยวกับวิธีการตั้งค่า Studio โปรดดูที่ ออนบอร์ดไปยังโดเมน Amazon SageMaker โดยใช้การตั้งค่าด่วน. ในการสร้างโครงการของคุณ ให้ทำตามขั้นตอนต่อไปนี้:
- ใน Studio ให้เลือก โครงการ เมนูบน แหล่งข้อมูล SageMaker เมนู
ในหน้าโปรเจ็กต์ คุณสามารถเปิดใช้เทมเพลต SageMaker MLOps ที่กำหนดค่าไว้ล่วงหน้าได้ - Choose เทมเพลต MLOps สำหรับการสร้างแบบจำลอง การฝึกอบรม และการปรับใช้.
- Choose เลือกเทมเพลตโครงการ.
- ป้อนชื่อโครงการและคำอธิบายสั้น ๆ
- Choose สร้างโครงการ.
โครงการใช้เวลาไม่กี่นาทีในการสร้าง
เตรียมชุดข้อมูล
ในการเตรียมชุดข้อมูล ให้ทำตามขั้นตอนต่อไปนี้:
- ไปที่ ฮาร์วาร์ด ดาต้าเวิร์ส.
- Choose เข้าถึงชุดข้อมูลและตรวจสอบใบอนุญาต Creative Commons Attribution-NonCommercial 4.0 International Public License
- หากคุณยอมรับใบอนุญาต ให้เลือก รูปแบบต้นฉบับ Zip และดาวน์โหลดไฟล์ ZIP
- สร้าง บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon (Amazon S3) และเลือกชื่อที่ขึ้นต้นด้วย
sagemaker
(สิ่งนี้ทำให้ SageMaker เข้าถึงบัคเก็ตได้โดยไม่ต้องมีการอนุญาตเพิ่มเติม) - คุณสามารถเปิดใช้งานการบันทึกการเข้าถึงและการเข้ารหัสสำหรับแนวทางปฏิบัติด้านความปลอดภัยที่ดีที่สุด
- อัพโหลด
dataverse_files.zip
ไปที่ถัง - บันทึกเส้นทางบัคเก็ต S3 เพื่อใช้ในภายหลัง
- จดชื่อที่เก็บข้อมูลที่คุณเก็บข้อมูลไว้ และชื่อโฟลเดอร์ที่ตามมาเพื่อใช้ในภายหลัง
เตรียมความพร้อมสำหรับการประมวลผลข้อมูลล่วงหน้า
เนื่องจากเราใช้ MXNet และ OpenCV ในขั้นตอนก่อนการประมวลผล เราจึงใช้อิมเมจ MXNet Docker ที่สร้างไว้ล่วงหน้า และติดตั้งการพึ่งพาที่เหลือโดยใช้ requirements.txt
ไฟล์. ในการทำเช่นนั้น คุณต้องคัดลอกและวางภายใต้ pipelines/skin
ใน sagemaker--modelbuild
ที่เก็บ นอกจากนี้ ให้เติม MANIFEST.in
ไฟล์ในระดับเดียวกับ setup.py
เพื่อบอกให้ Python รวม the requirements.txt
ไฟล์. ข้อมูลเพิ่มเติมเกี่ยวกับ รายการใน, เอ่ยถึง รวมไฟล์ในการแจกแจงแหล่งที่มาด้วย MANIFEST.in. ไฟล์ทั้งสองสามารถพบได้ใน พื้นที่เก็บข้อมูล GitHub.
เปลี่ยนเทมเพลตไปป์ไลน์
ในการอัปเดตเทมเพลตไปป์ไลน์ ให้ทำตามขั้นตอนต่อไปนี้:
- สร้างโฟลเดอร์ภายในที่เก็บข้อมูลเริ่มต้น
- ตรวจสอบว่าบทบาทการดำเนินการของ Studio มีสิทธิ์เข้าถึงที่ฝากข้อมูลเริ่มต้นและที่เก็บข้อมูลที่มีชุดข้อมูล
- จากรายการโครงการ ให้เลือกโครงการที่คุณเพิ่งสร้างขึ้น
- เกี่ยวกับ คลัง แท็บ เลือกไฮเปอร์ลิงก์เพื่อโคลน AWS CodeCommit ที่เก็บข้อมูลไปยังอินสแตนซ์ Studio ในพื้นที่ของคุณ
- ไปที่
pipelines
ไดเรกทอรีภายในsagemaker--modelbuild
ไดเร็กทอรีและเปลี่ยนชื่อabalone
directory toskin
. - เปิด
codebuild-buildspec.yml
แฟ้มในsagemaker--modelbuild
ไดเร็กทอรีและแก้ไขเส้นทางไปป์ไลน์ที่รันจากrun-pipeline —module-name pipelines.abalone.pipeline
(บรรทัดที่ 15) ถึงสิ่งต่อไปนี้: - บันทึกไฟล์
- แทนที่ไฟล์
pipelines.py
,preprocess.py
และ evaluate.py
ในไดเร็กทอรีไปป์ไลน์ที่มีไฟล์จาก พื้นที่เก็บข้อมูล GitHub. - อัปเดต
preprocess.py
ไฟล์ (บรรทัด 183-186) พร้อมตำแหน่ง S3 (SKIN_CANCER_BUCKET
) และชื่อโฟลเดอร์ (SKIN_CANCER_BUCKET_PATH
) ที่คุณอัปโหลดdataverse_files.zip
คลังเก็บเอกสารสำคัญ:skin_cancer_bucket=””
skin_cancer_bucket_path=””
skin_cancer_files=””
skin_cancer_files_ext=””
ในตัวอย่างก่อนหน้านี้ ชุดข้อมูลจะถูกเก็บไว้ภายใต้ s3://monai-bucket-skin-cancer/skin_cancer_bucket_prefix/dataverse_files.zip
.
ทริกเกอร์การเรียกใช้ไปป์ไลน์
การผลักการเปลี่ยนแปลงที่คอมมิตไปยังที่เก็บ CodeCommit (ทำบนแท็บการควบคุมแหล่งที่มาของ Studio) จะทริกเกอร์การรันไปป์ไลน์ใหม่ เนื่องจาก อเมซอน EventBridge มอนิเตอร์เหตุการณ์สำหรับการคอมมิต เราสามารถตรวจสอบการทำงานโดยเลือกไปป์ไลน์ภายในโครงการ SageMaker ภาพหน้าจอต่อไปนี้แสดงตัวอย่างของไปป์ไลน์ที่รันได้สำเร็จ
- หากต้องการยืนยันการเปลี่ยนแปลง ให้ไปที่ส่วน Git ในบานหน้าต่างด้านซ้าย
- ดำเนินการเปลี่ยนแปลงที่เกี่ยวข้องทั้งหมด คุณไม่จำเป็นต้องติดตาม
-checkpoint
ไฟล์. คุณสามารถเพิ่มรายการลงใน.gitignore
ไฟล์ด้วย*checkpoint.*
เพื่อละเลยพวกเขา - ยอมรับการเปลี่ยนแปลงโดยให้ข้อมูลสรุปรวมถึงชื่อและที่อยู่อีเมลของคุณ
- ผลักดันการเปลี่ยนแปลง
- กลับไปที่โครงการและเลือก ท่อ มาตรา.
- หากคุณเลือกไปป์ไลน์ที่กำลังดำเนินการ ขั้นตอนของไปป์ไลน์จะปรากฏขึ้น
ซึ่งช่วยให้คุณสามารถตรวจสอบขั้นตอนที่กำลังทำงานอยู่ อาจใช้เวลาสองสามนาทีก่อนที่ไปป์ไลน์จะปรากฏขึ้น สำหรับไปป์ไลน์ที่จะเริ่มทำงาน ขั้นตอนที่กำหนดไว้ใน CI/CDcodebuild-buildspec.yml
ต้องวิ่งให้สำเร็จ เพื่อตรวจสอบสถานะของขั้นตอนเหล่านี้ คุณสามารถใช้ AWS CodeBuild. สำหรับข้อมูลเพิ่มเติม โปรดดูที่ AWS CodeBuild (AMS SSPS). - เมื่อไปป์ไลน์เสร็จสิ้น ให้กลับไปที่หน้าโครงการและเลือก กลุ่มนางแบบ แท็บเพื่อตรวจสอบข้อมูลเมตาที่แนบมากับสิ่งประดิษฐ์ของโมเดล
- ถ้าทุกอย่างดูดี เลือก อัปเดตสถานะ แท็บและอนุมัติโมเดลด้วยตนเอง ค่าเริ่มต้น
ModelApprovalStatus
ถูกตั้งค่าเป็นPendingManualApproval
. หากแบบจำลองของเรามีความแม่นยำมากกว่า 60% แบบจำลองนั้นจะถูกเพิ่มในการลงทะเบียนแบบจำลอง แต่จะไม่ถูกปรับใช้จนกว่าการอนุมัติด้วยตนเองจะเสร็จสมบูรณ์ - ไปที่ ปลายทาง หน้าบนคอนโซล SageMaker ซึ่งคุณสามารถเห็นปลายทางการจัดเตรียมที่ถูกสร้างขึ้น หลังจากไม่กี่นาที ปลายทางจะแสดงรายการพร้อมกับ
InService
สถานะ - ในการปรับใช้ปลายทางในการผลิต บน
CodePipeline
คอนโซล เลือกsagemaker--modeldeploy
ไปป์ไลน์ที่กำลังดำเนินการอยู่ - ในตอนท้ายของ
DeployStaging
ขั้นตอน คุณต้องอนุมัติการปรับใช้ด้วยตนเอง
หลังจากขั้นตอนนี้ คุณจะเห็นปลายทางการใช้งานจริงถูกปรับใช้บน SageMaker ปลายทาง หน้าหนังสือ. หลังจากนั้นไม่นาน จุดปลายจะแสดงเป็น InService
.
ทำความสะอาด
คุณสามารถล้างทรัพยากรทั้งหมดที่สร้างโดยโครงการ SageMaker ได้อย่างง่ายดาย
- ในบานหน้าต่างนำทางใน Studio ให้เลือก แหล่งข้อมูล SageMaker.
- Choose โครงการ จากเมนูแบบเลื่อนลงและเลือกโครงการของคุณ
- เกี่ยวกับ สถานะ เมนูให้เลือก ลบ เพื่อลบทรัพยากรที่เกี่ยวข้องทั้งหมด
ผลลัพธ์และขั้นตอนต่อไป
เราใช้ไปป์ไลน์เพื่อสร้างเฟรมเวิร์ก MLOps ตั้งแต่ต้นจนจบสำหรับการจำแนกประเภทรอยโรคที่ผิวหนังโดยใช้โมเดลในตัวในชุดข้อมูล HAM10000 สำหรับพารามิเตอร์ที่ระบุในที่เก็บ เราได้ผลลัพธ์ต่อไปนี้ในชุดทดสอบ
เมตริก | ความแม่นยำ | จำ | คะแนน F1 |
ความคุ้มค่า | 0.643 | 0.8 | 0.713 |
คุณสามารถทำงานเพิ่มเติมในการปรับปรุงประสิทธิภาพของโมเดลโดยการปรับแต่งไฮเปอร์พารามิเตอร์ของโมเดล เพิ่มการแปลงเพิ่มเติมสำหรับการเสริมข้อมูล หรือใช้วิธีการอื่นๆ เช่น Synthetic Minority Oversampling Technique (SMOTE) หรือ Generative Adversarial Networks (GANs) นอกจากนี้ คุณสามารถใช้โมเดลหรืออัลกอริธึมของคุณเองสำหรับการฝึกโดยใช้อิมเมจ SageMaker Docker ในตัว หรือปรับคอนเทนเนอร์ของคุณเองให้ทำงานบน SageMaker ดูรายละเอียดเพิ่มเติมได้ที่ การใช้คอนเทนเนอร์ Docker กับ SageMaker.
คุณยังสามารถเพิ่มคุณสมบัติเพิ่มเติมให้กับไปป์ไลน์ของคุณได้ หากคุณต้องการรวมการตรวจสอบ คุณสามารถเลือก เทมเพลต MLOps สำหรับการสร้างแบบจำลอง การฝึกอบรม การปรับใช้ และการตรวจสอบ เทมเพลตเมื่อสร้างโปรเจ็กต์ SageMaker สถาปัตยกรรมผลลัพธ์มีขั้นตอนการตรวจสอบเพิ่มเติม หรือถ้าคุณมีที่เก็บ Git บุคคลที่สามอยู่แล้ว คุณสามารถใช้มันได้โดยเลือก เทมเพลต MLOps สำหรับการสร้างแบบจำลอง การฝึกอบรม และการปรับใช้กับที่เก็บ Git บุคคลที่สามโดยใช้ Jenkins โครงการและให้ข้อมูลสำหรับทั้งการสร้างแบบจำลองและที่เก็บการปรับใช้แบบจำลอง วิธีนี้ช่วยให้คุณใช้โค้ดที่มีอยู่และประหยัดเวลาหรือความพยายามในการผสานรวมระหว่าง SageMaker และ Git อย่างไรก็ตาม สำหรับตัวเลือกนี้ a AWS CodeStar จำเป็นต้องมีการเชื่อมต่อ
สรุป
ในโพสต์นี้ เราแสดงวิธีสร้างเวิร์กโฟลว์ ML แบบ end-to-end โดยใช้ Studio และไปป์ไลน์อัตโนมัติ เวิร์กโฟลว์รวมถึงการรับชุดข้อมูล จัดเก็บในที่ที่โมเดล ML สามารถเข้าถึงได้ กำหนดค่าอิมเมจคอนเทนเนอร์สำหรับการประมวลผลล่วงหน้า จากนั้นแก้ไขโค้ดสำเร็จรูปเพื่อให้เหมาะสมกับอิมเมจดังกล่าว จากนั้นเราแสดงวิธีทริกเกอร์ไปป์ไลน์ ขั้นตอนที่ไพพ์ไลน์ติดตาม และวิธีการทำงาน เรายังกล่าวถึงวิธีการตรวจสอบประสิทธิภาพของโมเดลและปรับใช้โมเดลกับปลายทาง
เราดำเนินการงานเหล่านี้ส่วนใหญ่ภายใน Studio ซึ่งทำหน้าที่เป็น ML IDE ที่ครอบคลุมทุกอย่าง และเร่งการพัฒนาและปรับใช้โมเดลดังกล่าว
โซลูชันนี้ไม่ผูกมัดกับงานการจำแนกสกิน คุณสามารถขยายไปยังงานการจำแนกประเภทหรือการถดถอยได้โดยใช้อัลกอริทึมในตัวของ SageMaker หรือโมเดลที่ผ่านการฝึกอบรมล่วงหน้า
เกี่ยวกับผู้แต่ง
มารีม คีทีรี เป็นที่ปรึกษาด้าน AI/ML ที่ AWS Professional Services Globals และเป็นส่วนหนึ่งของทีม Health Care and Life Science (HCLS) เธอหลงใหลในการสร้างโซลูชัน ML สำหรับปัญหาต่างๆ และกระตือรือร้นที่จะก้าวไปสู่โอกาสและความคิดริเริ่มใหม่ๆ เธออาศัยอยู่ในมิวนิก ประเทศเยอรมนี และกระตือรือร้นที่จะเดินทางและสำรวจส่วนอื่นๆ ของโลก
ยัสซีน ซาฟูรี เป็นที่ปรึกษาด้าน AI/ML ภายในบริการระดับมืออาชีพที่ AWS เขาช่วยให้ลูกค้าองค์กรทั่วโลกสามารถสร้างและปรับใช้โซลูชัน AI/ML ในระบบคลาวด์เพื่อเอาชนะความท้าทายทางธุรกิจของพวกเขา ในเวลาว่าง เขาชอบเล่น ดูกีฬา และเดินทางรอบโลก
โฟตินอส ไคริอาคิเดส เป็นวิศวกร AI/ML ภายในบริการระดับมืออาชีพใน AWS เขาหลงใหลในการใช้เทคโนโลยีเพื่อสร้างมูลค่าให้กับลูกค้าและบรรลุผลทางธุรกิจ ที่ลอนดอน ในเวลาว่าง เขาชอบวิ่งและสำรวจ
แอนนา ซาปาอิชชิโควา เป็นที่ปรึกษา ProServe ใน AI/ML และเป็นสมาชิกของ Amazon Healthcare TFC เธอหลงใหลในเทคโนโลยีและผลกระทบที่มีต่อการดูแลสุขภาพ ภูมิหลังของเธอคือการสร้าง MLOps และโซลูชันที่ขับเคลื่อนด้วย AI สำหรับปัญหาของลูกค้าในหลายๆ ด้าน เช่น การประกันภัย ยานยนต์ และการดูแลสุขภาพ
- AI
- ไอ อาร์ต
- เครื่องกำเนิดไออาร์ท
- หุ่นยนต์ไอ
- อเมซอน SageMaker
- ปัญญาประดิษฐ์
- ใบรับรองปัญญาประดิษฐ์
- ปัญญาประดิษฐ์ในการธนาคาร
- หุ่นยนต์ปัญญาประดิษฐ์
- หุ่นยนต์ปัญญาประดิษฐ์
- ซอฟต์แวร์ปัญญาประดิษฐ์
- AWS Machine Learning AWS
- blockchain
- การประชุม blockchain ai
- เหรียญอัจฉริยะ
- ปัญญาประดิษฐ์สนทนา
- การประชุม crypto ai
- ดัล-อี
- การเรียนรู้ลึก ๆ
- google ai
- เรียนรู้เครื่อง
- เพลโต
- เพลโตไอ
- เพลโตดาต้าอินเทลลิเจนซ์
- เกมเพลโต
- เพลโตดาต้า
- เพลโตเกม
- ขนาดไอ
- วากยสัมพันธ์
- ลมทะเล