1 컵 밀가루, 2 레몬 껍질과 1 컵 포장 된 갈색 설탕 등 줄에 적용 가능한 양, 측정, 항목 및 설명으로 조리법 성분을 분석해야합니다. 최선의 방법은 무엇입니까? 이? 나는 nltk를 사용하는 것이 최선의 방법이라고 가정하고 있기 때문에 프로젝트에 파이썬을 사용하는 것에 관심이 있지만 다른 언어들에 대해서 열려 있습니다.NLP를 사용하여 조리법 재료를 파싱하려면 어떻게해야합니까?
답변
입력 내용을 구체적으로 기재 할 수 있습니까? 다음과 같이 입력 한 경우 :
1 cup flour
2 lemon peels
1 cup packed brown sugar
NLP를 사용하지 않고 구문 분석하기가 너무 어렵지 않습니다.
위의 몇 가지 예가 있습니다. 특히 레몬 2 개를 껍질을 벗 깁니다. 그것은 자유 형식의 텍스트가 될 것이므로 유효한 금액과 항목 인 것일 수 있습니다. – Greg
정말로 "anything"을 처리 할 수 있기를 원하면 구문 분석을하기 위해 사람이 필요하거나 AI 수준 문제 일 수 있습니다. 그것이 텍스트 파싱의 경우 짐승의 본질입니다. 정상적인 경우에 대한 가정을하고 경계 사례가 실패한다고 가정합니다. –
이 불완전한 답변입니다,하지만 당신은 당신이 알고, :) 아닌 사소한 자유 텍스트 파서, 최대 쓰기보고있는
요리에 특정 지식을 사용하여, 속임수 몇 가지 방법은 :
- {L., C, 컵, t 추천 단어의 약어를 사용
- 측정 단위가 닫힌 집합을 형성하고 그것들에 대한 "형용사"및 "동사"필터에 대한 단어리스트를 구축 , 대시}
- 지침 - 잘라 내기, 주사위, 요리, 껍질. 이 이후에 오는 것들은 거의 확실하게 재료가 될 것입니다.
- 대부분 명사를 찾고 있으며, 명사가 아닌 이름표 목록 (예 : WordNet)을 필터링 할 수 있습니다.
더 야심 찬 사람은 NLTK Book의 파서 장을 참조하십시오.
행운을 빈다. 이것은 주로 할 수있는 프로젝트처럼 들립니다!
나는이 밖으로 몇 년 추측하지만, 나 자신을 비슷한 일을 생각이 우연히되었다, 그래서 F에서 다른 사람에게 유용한 나는 경우에 그것을 찔러있을 수 있습니다 생각
무료 테스트를 구문 분석하기를 원한다고해도, 대부분의 요리법은 조리법 목록에 대해 꽤 표준적인 형식을 가지고 있습니다. 각 성분은 별도의 줄에 있으며, 정확한 문장 구조는 거의 중요하지 않습니다. vocab의 범위는 상대적으로 작습니다.
명사가 될 수있는 단어와 양을 나타내는 단어/기호를 각 줄에서 확인하는 것이 한 가지 방법 일 수 있습니다. WordNet이 단어가 명사가 될지 여부를 확인하는 데 도움이 될 수 있다고 생각하지만 직접 사용하지는 않았습니다. 또는 http://en.wikibooks.org/wiki/Cookbook:Ingredients을 단어 목록으로 사용할 수도 있지만 다시 한 번 포괄적 인 단어인지는 알 수 없습니다.
다른 부분은 수량을 인식하는 것입니다. 이들은 몇 가지 다른 형태로 제공되지만 키워드 목록을 작성할 수있는 것은 거의 없습니다. 특히, 좋은 오류보고가 있는지 확인하십시오. 프로그램이 라인을 완전히 파싱 할 수없는 경우 해당 라인이 무엇인지, 그 라인이 무엇인지, 무엇을 인식하지 못했는지 등을보고하여 적절하게 키워드 목록을 조정하십시오.
Aaanyway,이 중 하나가 작동합니다 (그리고 100 % 신뢰할 수없는 거의 확실입니다) 보장 아니에요하지만 내가
내가 실제로 내 웹 사이트에 대해이 작업을 수행하여 문제를 접근하기 시작 했죠 방법 이는 다른 사람들이 사용할 수 있도록 open source project의 일부가되었습니다.
나는 내 기술에 대한 블로그 게시물을 작성했습니다.
- 1. GSON을 사용하여 이것을 파싱하려면 어떻게해야합니까?
- 2. Scala를 사용하여 xml 문서를 스트림으로 파싱하려면 어떻게해야합니까?
- 3. jQuery를 사용하여 정규 표현식으로 내용을 파싱하려면 어떻게해야합니까?
- 4. Perl에서 전화 번호를 파싱하려면 어떻게해야합니까?
- 5. SOAP 및 libxml2를 사용하여 데이터를 파싱하려면 어떻게할까요?
- 6. 속성을 갖는 xml을 파싱하려면
- 7. 3 개의 URL을 구별하기 위해 html을 파싱하려면 어떻게해야합니까?
- 8. CURL의 params를 JSON 또는 XML 대신 문자열로 파싱하려면 어떻게해야합니까?
- 9. 사과 핵심 데이터 iPhone 조리법 예제 질문
- 10. 난수 생성기 함수 ran2 숫자 조리법
- 11. JQuery와 쇼핑 목록 양식 조리법 성분
- 12. 사람의 이름을 파싱하려면 정규 표현식을 사용 하시겠습니까?
- 13. 이 줄을 파싱하려면 정규식이 필요합니다. 58.21 -13.73 57 -1
- 14. 하나의 XML을 파싱하려면 두 파서를 구현하는 방법은 무엇입니까?
- 15. Ruby 소스를 파싱하려면 어떤 루비 파서를 제안 하시겠습니까?
- 16. C++에서 되풀이 날짜에 대한 설명을 파싱하려면 라이브러리가 필요합니까?
- 17. JavaScript 및 jQuery를 사용하여 20 자리 숫자를 파싱하는 방법
- 18. jQuery를 사용하여 사진을로드하려면 어떻게해야합니까?
- 19. SVN을 사용하여 출시하려면 어떻게해야합니까?
- 20. 패딩을 사용하여 계산하려면 어떻게해야합니까?
- 21. 여러 서브 프로세스 I 알람 인터럽트 설정 SIGALRM에 의존하는 조리법 사용하고
- 22. capistrano를 사용하여 memcache를 지우려면 어떻게해야합니까?
- 23. WebKit.NET을 사용하여 DOM에 액세스하려면 어떻게해야합니까?
- 24. Java를 사용하여 javadoc을 생성하려면 어떻게해야합니까?
- 25. NSDate를 사용하여 카운터를 만들려면 어떻게해야합니까?
- 26. Python을 사용하여 전화를 걸려면 어떻게해야합니까?
- 27. UDP를 사용하여 Traceroute를 구현하려면 어떻게해야합니까?
- 28. 주석을 사용하여 PDF를 만들려면 어떻게해야합니까?
- 29. LinkButton을 사용하여 양식을 제출하려면 어떻게해야합니까?
- 30. JavaScript를 사용하여 객체를 캐시하려면 어떻게해야합니까?
당신이 조리법 구문 분석에 여전히 관심이 있다면 이봐, 내가 [오픈 소스 화] 한 (https://github.com/KitchenPC/core/) 내 구현입니다. 어쩌면 당신은 유용 할 것입니다! –
나는이 질문을 여기에서 찾을 수있을 것이라고 기대하지 않았을 것이다. –