トップページ > プログラム > 2016年01月11日 > uSmHGUn0

書き込み順位&時間帯一覧

16 位/173 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000001001013



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
【PHP】下らねぇ質問はここに書き込みやがれ 3©2ch.net

書き込みレス一覧

【PHP】下らねぇ質問はここに書き込みやがれ 3©2ch.net
375 :デフォルトの名無しさん[sage]:2016/01/11(月) 18:27:59.94 ID:uSmHGUn0
リスト中の文字列すべてに対して類似検索をかけたい
文字列は文字列長50文字未満(要するに短い)英数記号だけでなくUTF8マルチバイトもある
リストは100〜500件程度
処理コストを出来るだけ抑えたい
こういうとき、どうすれば良いでしょうか?
【PHP】下らねぇ質問はここに書き込みやがれ 3©2ch.net
380 :デフォルトの名無しさん[sage]:2016/01/11(月) 21:36:41.54 ID:uSmHGUn0
>>376
sqliteをmemoryに置いて高速に…まではわかるんですが
sqlite側だけで(sqlのlikeではなく)類似検索をやってもらえるもんなんですか?
【PHP】下らねぇ質問はここに書き込みやがれ 3©2ch.net
384 :デフォルトの名無しさん[sage]:2016/01/11(月) 23:59:48.64 ID:uSmHGUn0
>>381
そう、そういうことです。比較対象が画像や記事など大き目のデータではなく短い文字列

similar_text()等だとマルチバイト対応化したコード例もあるものの
速度が気になっていて、リスト件数450件程で20msec

単純に検索文字列をn文字ずつずらしながらm文字ずつ取っていって配列にして
リスト文字列全てから検索文字列配列のいずれかが含まれるものを拾っていって
マッチ回数を順位・精度に使って…とすると2msec位程度には早くなるけどもここからの改善が難しくて難儀してます

sqliteだと固有の機能としてlikeでない類似検索機能はなさそうなので、後者のパターンに近い感じですよね
でもlikeの単純マッチだけになるから順位付け・精度向上は難しそう


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。