[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『vbaで固有名詞判定できますか?』(はしもん)
vbaである文字列に固有名詞が含まれているか判定する関数を作りたいと考えています。方法ご存知の方教えて下さい。
< 使用 Excel:Excel2013、使用 OS:Windows10 >
(マナ) 2020/11/08(日) 20:41
(マナ) 2020/11/08(日) 20:43
(γ) 2020/11/08(日) 21:05
VBAやVBScriptで形態素解析を行う方法 - Qiita
https://qiita.com/mima_ita/items/bc2aeb060ee12d280d7b
VBAで 形態素解析 に挑戦 | ITエンジニアの備忘録的技術ブログ ...
https://www.depthbomb.net/?p=265
などが参考になります。
(以前、回答用に調べたときの環境が残っていたので試してみました。)
前者のコードを使って、
"私の名前は山田太郎です"
という文字列を対象にして、実行すると
以下のように分離された情報が得られます。
私 名詞,代名詞,一般,*,*,*,私,ワタシ,ワタシ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
名前 名詞,一般,*,*,*,*,名前,ナマエ,ナマエ
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
山田 名詞,固有名詞,人名,姓,*,*,山田,ヤマダ,ヤマダ
太郎 名詞,固有名詞,人名,名,*,*,太郎,タロウ,タロー
です 助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
あとは
.GetItem(i).Featureを カンマでSplitして、2番目の要素を見れば
その要素が固有名詞かどうかは判別できます。
適当に応用して、ユーザー定義関数に仕立ててください。
(γ) 2020/11/08(日) 21:57
(はしもん) 2020/11/09(月) 20:44
>商品名を未知語や固有名詞とはんていするにはどうしたらよいでしょうか?
辞書を鍛えていくことでしょうか?
ネット上にMecabに関する辞書の説明があると思います。
調査してみてください。
あとは、ご自分で頑張って下さい。
オープンソースのプロダクトとはそういうものです。
(γ) 2020/11/09(月) 20:57
固有表現抽出(NER)という分野があり、
欧米語であれば、"固有名詞コーパス"のようなデータセットがいくつもあります。
日本語でもそうした研究はあるようです。
「日本語 固有名詞コーパス」などで検索するとヒットするでしょう。
例えば、
日本語固有表現抽出における超大規模ウェブ ... - 喜連川研究室
http://www.tkl.iis.u-tokyo.ac.jp/new/uploads/publication_file/file/139/2008no14fukushima.pdf
いずれにしても、VBAの話じゃないことは確かです。
こんなところで?質問したって埒が明かない話ですよ。
コーディングが別に障害になっているわけじゃないですから。
(γ) 2020/11/09(月) 21:59
この質問は、VBAの質問掲示板で質問して、 回答を受け取るという種類のものではありません。
VBAというコーディング手法ではなく、 それ以前の段階に重点があるからです。 そしてそれは多くの研究者が取り組んでいるテーマでもあるからで、 簡単に回答できるような種類のものではありません。
まずは、以下の書籍などを学習されたらいかがですか。
情報抽出・固有表現抽出のための基礎知識 (実践・自然言語処理シリーズ) https://www.amazon.co.jp/%E6%83%85%E5%A0%B1%E6%8A%BD%E5%87%BA%E3%83%BB%E5%9B%BA%E6%9C%89%E8%A1%A8%E7%8F%BE%E6%8A%BD%E5%87%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E5%9F%BA%E7%A4%8E%E7%9F%A5%E8%AD%98-%E5%AE%9F%E8%B7%B5%E3%83%BB%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E5%87%A6%E7%90%86%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E5%B2%A9%E5%80%89%E5%8F%8B%E5%93%89/dp/4764906104
機械学習・深層学習による自然言語処理入門 ~scikit-learnとTensorFlowを使った実践プログラミング~ https://www.amazon.co.jp/%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%83%BB%E6%B7%B1%E5%B1%A4%E5%AD%A6%E7%BF%92%E3%81%AB%E3%82%88%E3%82%8B%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E5%87%A6%E7%90%86%E5%85%A5%E9%96%80-scikit-learn%E3%81%A8TensorFlow%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E5%AE%9F%E8%B7%B5%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0-Compass-Data-Science/dp/4839966605/ref=pd_lpo_14_t_0/355-1296415-9745254?_encoding=UTF8&pd_rd_i=4839966605&pd_rd_r=35d69155-cd8b-4d77-abe6-6132f0abc7b9&pd_rd_w=oGcxy&pd_rd_wg=LY4fY&pf_rd_p=4b55d259-ebf0-4306-905a-7762d1b93740&pf_rd_r=41FTMZEBB7YFREXJE9W5&psc=1&refRID=41FTMZEBB7YFREXJE9W5
形態素解析の理論と実装 (実践・自然言語処理シリーズ) https://www.amazon.co.jp/%E5%BD%A2%E6%85%8B%E7%B4%A0%E8%A7%A3%E6%9E%90%E3%81%AE%E7%90%86%E8%AB%96%E3%81%A8%E5%AE%9F%E8%A3%85-%E5%AE%9F%E8%B7%B5%E3%83%BB%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E5%87%A6%E7%90%86%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E5%B7%A5%E8%97%A4-%E6%8B%93/dp/4764905779/ref=pd_lpo_14_t_1/355-1296415-9745254?_encoding=UTF8&pd_rd_i=4764905779&pd_rd_r=35d69155-cd8b-4d77-abe6-6132f0abc7b9&pd_rd_w=oGcxy&pd_rd_wg=LY4fY&pf_rd_p=4b55d259-ebf0-4306-905a-7762d1b93740&pf_rd_r=41FTMZEBB7YFREXJE9W5&psc=1&refRID=41FTMZEBB7YFREXJE9W5
なお、こうした自然言語系のデータサイエンスにかかわるテーマでは、 VBAが使われることは滅多にありません。 C++,Pythonなどがもっぱら使われるのではないかと思います。
>新たにどんなことが流行っているか調べてみたくて質問させていた。 twitterでしたら、既に公開されているじゃありませんか。 (γ) 2020/11/10(火) 06:46
どの程度のものか、満足しうるできなのかどうか不明ですが、参考にして下さい。
Pythonを使ったオープンソースなので、トライされたらいかがですか?
自然言語処理ライブラリGiNZAで固有表現抽出してみた - Qiita
https://qiita.com/yuto16/items/1fc1f2b79195a503c681
はじめての自然言語処理
第4回 spaCy/GiNZA を用いた自然言語処理
https://www.ogis-ri.co.jp/otc/hiroba/technical/similar-document-search/part4.html
(γ) 2020/11/10(火) 15:11
(はしもん) 2020/11/10(火) 21:29
ならば、どっかから辞書を取得するか、
自分で辞書を作ればいいのでは?
単語で切り分けるなら、ワードVBAを利用すればよいかと思います。
あとは、自分次第でどうとでも分析アプリを作るだけですね。
(まっつわん) 2020/11/11(水) 19:42
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.