USADDRESS เป็นห้องสมุด Python สำหรับการแยกวิเคราะห์ที่อยู่ที่อยู่ของสหรัฐอเมริกาที่ไม่มีโครงสร้างลงในส่วนประกอบที่อยู่โดยใช้วิธี NLP ขั้นสูง
สิ่งนี้สามารถทำได้: การใช้แบบจำลองความน่าจะเป็นมันทำให้การคาดเดา (มีการศึกษามาก) ในการระบุส่วนประกอบที่อยู่แม้ในกรณีที่ยุ่งยากซึ่งโดยทั่วไปแล้วตัวแยกวิเคราะห์ตามกฎจะพังทลายลง
สิ่งนี้ไม่สามารถทำได้: ไม่สามารถระบุส่วนประกอบที่อยู่ได้อย่างแม่นยำและไม่สามารถตรวจสอบได้ว่าที่อยู่ที่กำหนดนั้นถูกต้อง/ถูกต้อง
นอกจากนี้ยังไม่ทำให้ที่อยู่ปกติ อย่างไรก็ตามห้องสมุดนี้สร้างขึ้นบน USADDREST
API ที่พักผ่อนที่สร้างขึ้นบน USAddress สำหรับโปรแกรมเมอร์ที่ไม่ได้ใช้ Python ต้องใช้คีย์ API และ 1,000 Parses แรกฟรี
Parserator: ที่อยู่แยกวิเคราะห์และแยกช่วยให้คุณสามารถแยกที่อยู่ออกเป็นคอลัมน์แยกต่างหากตามถนน, เมือง, รัฐ, รหัสไปรษณีย์และอื่น ๆ อีกมากมายใน Google Sheets
ในเทอร์มินัล
pip install usaddress โปรดทราบว่า parse และ tag เป็นวิธีที่แตกต่างกัน:
import usaddress
addr = '123 Main St. Suite 100 Chicago, IL'
# The parse method will split your address string into components, and label each component.
# expected output: [(u'123', 'AddressNumber'), (u'Main', 'StreetName'), (u'St.', 'StreetNamePostType'), (u'Suite', 'OccupancyType'), (u'100', 'OccupancyIdentifier'), (u'Chicago,', 'PlaceName'), (u'IL', 'StateName')]
usaddress . parse ( addr )
# The tag method will try to be a little smarter
# it will merge consecutive components, strip commas, & return an address type
# expected output: (OrderedDict([('AddressNumber', u'123'), ('StreetName', u'Main'), ('StreetNamePostType', u'St.'), ('OccupancyType', u'Suite'), ('OccupancyIdentifier', u'100'), ('PlaceName', u'Chicago'), ('StateName', u'IL')]), 'Street Address')
usaddress . tag ( addr )USADDRESS ใช้ตัวแยกวิเคราะห์ซึ่งเป็นห้องสมุดสำหรับการสร้างและปรับปรุงตัวแยกวิเคราะห์ความน่าจะเป็น - โดยเฉพาะตัวแยกวิเคราะห์ที่ใช้ Python -CRFSuite ของการใช้ฟิลด์สุ่มแบบมีเงื่อนไข Parserator ช่วยให้คุณสามารถฝึกอบรมแบบจำลองของตัวแยกวิเคราะห์ USADDRESS (ไฟล์การตั้งค่า. CRFSUITE) บนข้อมูลการฝึกอบรมที่มีป้ายกำกับและจัดหาเครื่องมือสำหรับการเพิ่มข้อมูลการฝึกอบรมที่มีป้ายกำกับใหม่
ในการสร้าง USADDRESS เวอร์ชันการพัฒนาบนเครื่องของคุณให้เรียกใช้รหัสต่อไปนี้ในบรรทัดคำสั่งของคุณ:
git clone https://github.com/datamade/usaddress.git
cd usaddress
pip install -r requirements.txt
python setup.py develop
parserator train training/labeled.xml usaddress
จากนั้นเรียกใช้ชุดทดสอบเพื่อยืนยันว่าทุกอย่างทำงานอย่างถูกต้อง:
nosetests .
มีปัญหาในการสร้างรหัส? เปิดปัญหาและเรายินดีที่จะช่วยคุณแก้ไขปัญหา
หาก USAddress ล้มเหลวอย่างต่อเนื่องในรูปแบบที่อยู่เฉพาะคุณสามารถปรับพฤติกรรมของ Parser ได้โดยการเพิ่มข้อมูลการฝึกอบรมใหม่ลงในโมเดล ทำตามคำแนะนำของเราในไดเรกทอรีการฝึกอบรมและตรวจสอบให้แน่ใจว่าได้ทำการร้องขอการดึงเพื่อให้เราสามารถรวมการบริจาคของคุณในรุ่นต่อไปของเรา!
รายงานปัญหาในตัวติดตามปัญหา
หากที่อยู่ถูกแยกวิเคราะห์ไม่ถูกต้องโปรดแจ้งให้เราทราบ! คุณสามารถเปิดปัญหาหรือ (ถ้าคุณชอบผจญภัย) เพิ่มข้อมูลการฝึกอบรมใหม่เพื่อปรับปรุงโมเดลของตัวแยกวิเคราะห์ เมื่อเป็นไปได้โปรดส่งตัวอย่างที่อยู่ในโลกแห่งความจริงสองสามรูปแบบของรูปแบบที่อยู่ที่คล้ายกันพร้อมกับข้อมูลบางอย่างเกี่ยวกับแหล่งที่มาของข้อมูล - สิ่งนี้จะช่วยให้เราฝึกอบรมตัวแยกวิเคราะห์และปรับปรุงประสิทธิภาพ
หากบางสิ่งในห้องสมุดไม่ทำงานอย่างสังหรณ์ใจมันเป็นข้อผิดพลาดและควรรายงาน
ลิขสิทธิ์ (c) 2014 รัฐธรรมนูญแอตแลนต้าวารสาร ปล่อยภายใต้ใบอนุญาต MIT