2017/9/7 db tech showcase Tokyo 2017(JPOUG in 15 minutes)にて発表した内容です。
SQL大量発行に伴う処理遅延は、ミッションクリティカルシステムでありがちな性能問題のひとつです。
SQLをまとめて発行したり、処理の多重度を上げることができれば高速化可能です。ですが・・・
AP設計に起因する性能問題のため、開発工程の終盤においては対処が難しいことが多々あります。
そのような状況において、どのような改善手段があるのか、Oracleを例に解説します。
2017/9/7 db tech showcase Tokyo 2017(JPOUG in 15 minutes)にて発表した内容です。
SQL大量発行に伴う処理遅延は、ミッションクリティカルシステムでありがちな性能問題のひとつです。
SQLをまとめて発行したり、処理の多重度を上げることができれば高速化可能です。ですが・・・
AP設計に起因する性能問題のため、開発工程の終盤においては対処が難しいことが多々あります。
そのような状況において、どのような改善手段があるのか、Oracleを例に解説します。
Boosting Documents in Solr by Recency, Popularity and Personal Preferences - ...lucenerevolution
See conference video - http://www.lucidimagination.com/devzone/events/conferences/revolution/2011
Attendees with come away from this presentation with a good understanding and access to source
code for boosting and/or filtering documents by recency, popularity, and personal preferences. My
solution improves upon the common “recipe” based solution for boosting by document age. The
framework also supports boosting documents by a popularity score, which is calculated and
managed outside the index. I will present a few different ways to calculate popularity in a scalable
manner. Lastly, my solution supports the concept of a personal document collection, where each
user is only interested in a subset of the total number of documents in the index.
DocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer Simonlucenerevolution
See conference video - http://www.lucidimagination.com/devzone/events/conferences/revolution/2011
Lucene 4.0 is on its way to deliver a tremendous amount of new features and improvements. Beside
Real-Time Search & Flexible Indexing DocValues aka. Column Stride Fields is one of the “next
generation” features. DocValues enable Lucene to efficiently store and retrieve type-safe Document
& Value pairs in a column stride fashion either entirely memory resident random access or disk
resident iterator based without the need to un-invert fields. Its final goal is to provide a
independently update-able per document storage for scoring, sorting or even filtering. This talk will
introduce the current state of development, implementation details, its features and how DocValues
have been integrated into Lucene’s Codec API for full extendability.
某大学で非常勤講師を行った際の講義資料。最適化を中心としたオペレーションズ・リサーチのモデルを示します。
Operations Research lecture presentation document. Decision optimization modelings for business application are explained.
2022/3/24に開催した「オンプレML基盤 on Kubernetes」の資料です。機械学習モデルの開発者が、よりモデルの開発にのみ集中できるようにすることを目指して開発している「LakeTahoe(レイクタホ)」について紹介します。
https://ml-kubernetes.connpass.com/event/239859/
セル生産方式におけるロボットの活用には様々な問題があるが,その一つとして 3 体以上の物体の組み立てが挙げられる.一般に,複数物体を同時に組み立てる際は,対象の部品をそれぞれロボットアームまたは治具でそれぞれ独立に保持することで組み立てを遂行すると考えられる.ただし,この方法ではロボットアームや治具を部品数と同じ数だけ必要とし,部品数が多いほどコスト面や設置スペースの関係で無駄が多くなる.この課題に対して音𣷓らは組み立て対象物に働く接触力等の解析により,治具等で固定されていない対象物が組み立て作業中に運動しにくい状態となる条件を求めた.すなわち,環境中の非把持対象物のロバスト性を考慮して,組み立て作業条件を検討している.本研究ではこの方策に基づいて,複数物体の組み立て作業を単腕マニピュレータで実行することを目的とする.このとき,対象物のロバスト性を考慮することで,仮組状態の複数物体を同時に扱う手法を提案する.作業対象としてパイプジョイントの組み立てを挙げ,簡易な道具を用いることで単腕マニピュレータで複数物体を同時に把持できることを示す.さらに,作業成功率の向上のために RGB-D カメラを用いた物体の位置検出に基づくロボット制御及び動作計画を実装する.
This paper discusses assembly operations using a single manipulator and a parallel gripper to simultaneously
grasp multiple objects and hold the group of temporarily assembled objects. Multiple robots and jigs generally operate
assembly tasks by constraining the target objects mechanically or geometrically to prevent them from moving. It is
necessary to analyze the physical interaction between the objects for such constraints to achieve the tasks with a single
gripper. In this paper, we focus on assembling pipe joints as an example and discuss constraining the motion of the
objects. Our demonstration shows that a simple tool can facilitate holding multiple objects with a single gripper.
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matchingharmonylab
公開URL:https://arxiv.org/pdf/2404.19174
出典:Guilherme Potje, Felipe Cadar, Andre Araujo, Renato Martins, Erickson R. ascimento: XFeat: Accelerated Features for Lightweight Image Matching, Proceedings of the 2024 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2023)
概要:リソース効率に優れた特徴点マッチングのための軽量なアーキテクチャ「XFeat(Accelerated Features)」を提案します。手法は、局所的な特徴点の検出、抽出、マッチングのための畳み込みニューラルネットワークの基本的な設計を再検討します。特に、リソースが限られたデバイス向けに迅速かつ堅牢なアルゴリズムが必要とされるため、解像度を可能な限り高く保ちながら、ネットワークのチャネル数を制限します。さらに、スパース下でのマッチングを選択できる設計となっており、ナビゲーションやARなどのアプリケーションに適しています。XFeatは、高速かつ同等以上の精度を実現し、一般的なラップトップのCPU上でリアルタイムで動作します。
1. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
ランキングチューニングと定量評価
ヤフー株式会社 近藤司
2015/5/13 第16回 Lucence/Solr勉強会 #SolrJP
2. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P2自己紹介
• 近藤 司
• ヤフー株式会社
• 新卒 3年目
• Solr歴 半年
• 業務内容
• ヤフーの各種サービスへSolr導入やランキング
チューニングのお手伝い
• 社内向けドキュメントの検索サービスの開発・運用
3. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P3本日の話の概要
• 検索結果の質を定量的に評価する手法
• ↑と組み合わせてランキングチューニングを
する方法についてお話します
• 時間があれば、Solrでドキュメントのスコアの
内訳を見る方法を説明します
4. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P4話の流れ
• ランキングチューニングについて
• 難しいところ
• 解決策
• 定量評価の手法
• NDCG
• 実際のチューニング作業の流れ
• (時間があれば)ドキュメントのスコアの見方
5. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P5話の流れ
• ランキングチューニングについて
• 難しいところ
• 解決策
• 定量評価の手法
• NDCG
• 実際のチューニング作業の流れ
• (時間があれば)ドキュメントのスコアの見方
6. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P6ランキングチューニングとは
• 検索結果の上位に質の高いドキュメントを
持ってくる作業
• ex)
• q = “本田圭佑 試合”
• 「本田試合速報」
• 「本田圭佑2ゴール!!」
7. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P7Solrでのチューニング作業
• Solrだと大体こんな感じ
• qf=title_ma^10 title_ng^2 body_ma^5 body_ng^1
• 各フィールドへの重みを変えたり
• bf=production(field(ctr),10)
• Boost functionでインデキシングしておいた定数を
調整したり
8. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P8チューニングの難しいところ
• フィールドへの重みをどう決めるのか
• とりあえず、Titleは強めの重み?
• MA(形態素解析)も大きめに?
• ランキングが良くなっているのか分かりにくい
• あるクエリでは良くなっているけど、別のクエリでは?
• そもそも、評価が主観
ランキングの良し悪しを判断する基準が無い
9. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P9チューニングと定量評価
• チューニングと定量評価をセットで考える
• 重みを変えたら評価をする
• メリット
• 客観的にランキングを評価できる
• 最もランキングが良くなる重みを探しだせる
• チューニング作業の一部を自動化できる
• デメリット
• 導入コストが高い
• 定量評価の計算に時間がかかる場合がある
10. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P10話の流れ
• ランキングチューニングについて
• 難しいところ
• 解決策
• 定量評価の手法
• NDCG
• 実際のチューニング作業の流れ
• (時間があれば)ドキュメントのスコアの見方
11. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P11NDCG
• NDCG
• Normalized Discounted Cumulative Gain
• ランキングの並びの良さを評価する指標
• クエリとの適合度が高いドキュメントが上位に
来ていればいるほど評価大
12. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P12NDCG
• DCG … 順位と適合度をもとにしたスコア
• IDCG … 理論上ランキングの並びが最も良く
なった場合のDCG
• i … 検索順位
• rel … i位に順位付けされたドキュメントのクエ
リとの適合度
NDCG =
DCG
IDCG
DCG =
2reli
−1
log(1+i)i
k
∑
13. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P13NDCGの計算例
• あるクエリで検索した場合の
検索結果上位3位の評価が下記の場合
4:
very
good
3:
good
2:
bad
1:
very
bad
順位
ドキュメント
評価
1
doc1
1
2
doc2
4
3
doc3
3
ドキュメントがクエリに
マッチしているかどうかは人手で判断
21. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P21補足
• 定性評価について
• 必要なくなる訳ではない
• 検索結果に不適切なドキュメントが紛れてい
ないか調査が必要
• NDCGが低いクエリの調査
• TopKに入って欲しくないドキュメントの調査
22. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P22
• 正解データを準備するコストが高い
• 評価用クエリ100個 * 1クエリ当たりで評価するドキュメン
ト5件 = 500件分の評価が必要
• NDCGの計算に時間がかかる場合がある
• フィールド数:4、調査する重みの範囲:1 – 10の場合、
10^4=10000通りの試行回数が必要
定量評価を組み合わせることのデメリット
23. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P23話の流れ
• ランキングチューニングについて
• 難しいところ
• 解決策
• 定量評価の手法
• NDCG
• 実際のチューニング作業の流れ
• (時間があれば)ドキュメントのスコアの見方
24. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P24Solrのスコアの確認方法
• Solrのスコアの内訳の確認方法
• 時間があればお話します
25. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P25Solrのスコアの確認方法
• 検索時にdebugQueryを有効にする
• q=Solr AND 検索エンジン
&defType=edismax&qf=tilte_ma^10
description_ma^5.0&debugQuery=true
26. Copyright
(C)
2015
Yahoo
Japan
Corpora5on.
All
Rights
Reserved.
P26Solrのスコアリング
• debugQueryを叩くと下記のような情報が見れます
“1”: “
1.7210351 = (MATCH) max of:
--省略--
3.4420702 = (MATCH) weight(description_ma:solr^5.0 in 120322) [DefaultSimilarity],
result of:
3.4420702 = score(doc=120322,freq=4.0 = termFreq=4.0
), product of:
0.86576945 = queryWeight, product of:
5.0 = boost
10.601961 = idf(docFreq=20, maxDocs=310669)
0.016332252 = queryNorm
3.9757354 = fieldWeight in 120322, product of:
2.0 = tf(freq=4.0), with freq of:
4.0 = termFreq=4.0
10.601961 = idf(docFreq=20, maxDocs=310669)
0.1875 = fieldNorm(doc=120322)
0.5 = coord(1/2)