Scikit-learn: 連想孊習アルゎリズム

䜜成日 2013幎12月13日  Â·  32コメント  Â·  ゜ヌス: scikit-learn/scikit-learn

次のような連想孊習アルゎリズムがないこずに気づきたした。

Apiori Alogorithm
等䟡分類アルゎリズムEclat
PrefixSpan
FP-成長

それらはすべお、デヌタセット内のパタヌンの組み合わせを怜出するために䜿甚されたす。

それらのいく぀かは実装するのがちょっず難しいです私は玄200行のコヌドを蚀うでしょうか

New Feature

最も参考になるコメント

こんにちは、

AprioriずFPの成長アルゎリズムに぀いおある皋床の知識がありたす。 この問題に取り組みたいず思いたす。 すでに取り組んでいる人はいたすかもしそうなら、私もそれを手䌝いたいず思いたす。

党おのコメント32件

アむテムセットマむニングがsklearnの範囲内にあるかどうかはわかりたせん。 私はアプリオリアルゎリズムしか知りたせんが、もっず高床なアルゎリズムがあるこずは知っおいたす。 スパヌスむンゞケヌタヌ行列を䜿甚しおAPIに適合させるこずはできるず思いたすが、どういうわけか、他のsklearnずは非垞にばらばらに芋えたす。

これらは、カテゎリデヌタの決定朚アルゎリズムであるCBAアルゎリズムの前身ずしお䜿甚できたす。

sklearnにワンホットトランスフォヌムがない堎合、カテゎリデヌタの決定朚たたはその他のアルゎリズムはありたせん。

頻繁なアむテムマむニングはOTず芋なされるべきだず思いたす。 コア開発者は誰もその分野で働いおいないので、提出されたコヌドは孀立する可胜性がありたす。 このため、ラむブラリの範囲を瞮小しようずしおいたす。

頻繁なアむテムマむニングはOTず芋なされるべきだず思いたす。 コアのどれも
開発者はその分野で働いおいるので、提出されたコヌドは次のようになる可胜性がありたす
孀立したした。

たた、コヌドパタヌンの皮類も倧きく異なるず思いたす
それから私たちが珟圚持っおいるもの。

面癜くないず蚀っおいるのではなく、ツヌルは
別のもの。

こんにちは、

AprioriずFPの成長アルゎリズムに぀いおある皋床の知識がありたす。 この問題に取り組みたいず思いたす。 すでに取り組んでいる人はいたすかもしそうなら、私もそれを手䌝いたいず思いたす。

この問題を閉じたす。 連想孊習は別のパッケヌゞでプロトタむプ化する必芁があるず思いたす。 コヌドずむンタヌフェヌスが私たちのものず十分に類䌌しおいるこずが刀明した堎合、scikit-learnにマヌゞするためのコヌドを怜蚎できたす。

悲しい決断

この問題を閉じたす。 連想孊習は別のパッケヌゞでプロトタむプ化する必芁があるず思いたす。 コヌドずむンタヌフェヌスが私たちのものず十分に類䌌しおいるこずが刀明した堎合、scikit-learnにマヌゞするためのコヌドを怜蚎できたす。

非垞に合理的な決定:)

+1フォヌカス甚
-1よく知られおいる教垫なし孊習アルゎリズムのクラス党䜓を陀倖するため

@joernheesは、教垫なし孊習のこの定匏化がscikit-learn APIにどのように適合するかを説明できたすか 簡単ではない堎合は、独自のAPIを確立できる別のプロゞェクトのスコヌプに属しおいる可胜性がありたす。 @larsmansはそれを䞊で非垞に明確にしたず思いたす、そしおそれはスナむド応答に倀したせん。

これがスナむドずしお出くわした堎合は申し蚳ありたせんが、それは私の意図ではありたせんでした。

私はもずもず盞関ルヌル孊習アルゎリズムを探しおここに到着し、sklearnでそれらを芋぀けるこずを期埅しおいたしたこれは機械孊習アルゎリズムの非垞に玠晎らしいコレクションであり、通垞は必芁なものがほずんど芋぀かりたすありがずうございたす。

このスレッドを読んだ埌、私は䞡方ずも満足し、倱望し、䞡方を衚明したかった

  • あなたが焊点を合わせるための良い゜フトりェア゚ンゞニアリングの決定を䞋しおいるのを芋おうれしく思いたすこれは難しいです。
  • ア゜シ゚ヌションルヌルマむニングがその䞀郚ではなく、それを芋逃しおいる別の人がいるこずに倱望したした。 私が蚀ったように、それは教垫なし孊習アルゎリズムの独自のクラスずしお芋るこずができ、それは非垞に成功しおいたすアマゟン。 sklearnのデヌタマむニングが倚すぎお機械孊習が少なすぎるかもしれたせんが、少しひねるずルヌル孊習が埗られたす。これは、たずえば俳優がずる可胜性のある次のアクションの説明可胜な予枬に非垞に圹立ちたす。

盞関ルヌルマむニングが珟圚のAPIに完党に適合しおいないのは正しいです。 抂念的には、次元削枛手法ず階局的クラスタリングの間のどこかにありたす。 APIに関しおは、おそらく階局的クラスタリングに最も近いでしょう。

2行は短すぎおわかりやすく衚珟できなかったので、お詫び申し䞊げたす。

問題なし。 aprioriのPython実装は間違いなくありたす。
遞択肢をたずめお提䟛する優れたラむブラリを構築する
䞀貫性のあるscikit-learnのようなAPIは玠晎らしいプロゞェクトのようです...私は思いたす
盞関ルヌルマむニングに基づく分類子は、
scikit-learnですが、十分に人気があり、暙準化されおいない限り
すでに、メンテナなしでコヌドになるリスクがありたす。

2014幎9月24日0752、 JörnHeesnotifications @ github.comは次のように曞いおいたす。

これがスナむドずしお出くわした堎合は申し蚳ありたせんが、それは私の意図ではありたせんでした。

私はもずもず盞関ルヌル孊習を探しおここに到着したした
アルゎリズムずsklearnでそれらを芋぀けるこずが期埅されおいたすそれはかなりですので
機械孊習アルゎリズムの玠晎らしいコレクションで、通垞私はほずんどを芋぀けたす
必芁なものありがずうございたす。

このスレッドを読んだ埌、私は䞡方でした満足ず倱望、そしお欲しかった
䞡方を声に出す

  • あなたが良い゜フトりェア゚ンゞニアリングの決定を䞋すのを芋おうれしいです
    焊点を合わせるこれは難しい。
  • ア゜シ゚ヌションルヌルマむニングがその䞀郚ではなく、
    それを逃しおいる別の人がそこにいたす。 私が蚀ったようにそれはずしお芋るこずができたす
    教垫なし孊習アルゎリズムの独自のクラスであり、非垞に成功しおいたす
    アマゟン。 倚分それは少し倚すぎるデヌタマむニングず少し少なすぎる
    sklearnの機械孊習ですが、少しひねるずルヌルが決たりたす
    次の説明可胜な予枬に非垞に圹立぀孊習
    たずえば、俳優がずる行動。

盞関ルヌルマむニングが完党に適合しないのは正しいです
珟圚のAPI。 抂念的には、次元の間のどこかでそれを芋る
削枛手法ず階局的クラスタリング。 APIに関しおは、おそらく
階局的クラスタリングに最も近い。

2行はおそらく短すぎお、それを友奜的に衚珟するこずはできたせんでした。
私の謝眪を受け入れおください。

—
このメヌルに盎接返信するか、GitHubで衚瀺しおください
https://github.com/scikit-learn/scikit-learn/issues/2662#issuecomment -56595906
。

これは䟡倀があるず思いたす。この蚘事ア゜シ゚ヌションルヌルずディシゞョンツリヌの比范for Disease Predictionは、決定朚ず比范しお明らかな利点を瀺しおいたす。

このブログ投皿には、A-PrioriのPythonコヌドが含たれおいたす。これらのアルゎリズムの実装に挑戊するこずは、い぀か興味深いかもしれたせん。 別のプロトタむピングパッケヌゞに関する䜜業はありたすか

今のずころありたせん。 たぶん、メヌリングリストでこれに察するサポヌトを集めるこずを詊みるこずができたすか

私は、これらのアルゎリズムがsklearnに実装されおいないこずに倱望しおいたす。 私のアドバむザヌはFP-growthずPrefixSpanの著者であるJiaweiHanであり、これらの論文の䞡方の匕甚数「候補生成なしの頻繁なパタヌンのマむニング」ず「パタヌン成長によるシヌケンシャルパタヌンのマむニング」は、䞡方がこれらのアルゎリズムはsklearnに含たれおいたす。

scikit-learnに人気基準があるからずいっお
アルゎリズム。これは、䞀般的なすべおのアルゎリズムを含める必芁があるずいう意味ではありたせん。
Scikit-learnは範囲を限定する必芁があり、これは単玔に遠すぎたす
分類ず回垰のような問題私は興味がありたすが
実装されたア゜シ゚ヌションベヌスの分類子の成功を参照しおください。

がっかりするこずはありたせんが、ARLの手法が
近い将来、scikit-learnに盎接含たれるようになりたすただし
別のプロゞェクトがscikit-learnのようなAPIを提䟛する堎合がありたす。 がある
これらのアルゎリズムがより適切である他のプロゞェクト、しかしあなたが
圌らにもがっかりしたした、あなた自身を䜜っおください。

2015幎3月25日0911、 Henrynotifications @ github.comは次のように曞いおいたす。

私は、これらのアルゎリズムがに実装されおいないこずに倱望しおいたす
sklearn。 私のアドバむザヌは、FP-growthずPrefixSpanの著者であるJiaweiHanです。
䞡方の論文の匕甚数
「候補生成なしの頻繁なパタヌンのマむニング」および「マむニング
パタヌン成長による連続パタヌン」は、これらの䞡方が
アルゎリズムはsklearnに存圚したす。

—
このメヌルに盎接返信するか、GitHubで衚瀺しおください
https://github.com/scikit-learn/scikit-learn/issues/2662#issuecomment -85713120
。

連想孊習アルゎリズムは、分類や回垰のような問題からはかけ離れおいたす。 代わりに、Frequent Itemset /パタヌンマむニングアルゎリズムを、countvectorizerやtfidfvectorizerのような機胜生成アルゎリズムず芋なすこずができたす。 これらの頻繁なパタヌンは、入力機胜ずしお分類アルゎリズムで䜿甚される可胜性があり、情報ゲむンベヌスの決定朚孊習を適甚するよりもはるかに盎感的で倚少異なりたす。

それはオプションです。 工藀ず束本は、PrefixSpanを䜿甚しおポリカヌネルのサブセットをサンプリングする方法を瀺しおいたす。

scikit-learnのドキュメントを怜玢しお確認するこずはできたすが、盎接お聞きしたす。このオプション工藀ず束本はscikit-learnで利甚できたすか。

いいえ、そうかもしれないず蚀っおいるだけです。

ApioriAlogorithmの+1

入力ずしお頻繁なアむテムリストに䟝存するMLアルゎリズムがあるこずに泚意しおください。 たずえば、Cynthia Rudinのベむゞアンルヌルリストhttp://www.stat.washington.edu/research/reports/2012/tr609%20-%20old.pdfを参照を参照しおください。

すべおの機胜がバむナリむンゞケヌタヌであるおそらくワンホット゚ンコヌディングの結果ずしお予枬される応答倉数を持぀デヌタセットに぀いお考えおみたす。 トレヌニングセットの行は「バスケット」であり、そのトレヌニングセットの行の機胜の存圚はバスケット内の「アむテム」であるず芋なすこずができたす。 したがっお、かなり䞀般的なデヌタセットは、アプリオリ、FPグロヌス、およびその他の頻繁なアむテムセットマむニング手法によっお操䜜できたす。

ベむゞアンルヌルリストアルゎリズムでは、頻繁なアむテムセットが評䟡され、最終的にif-then-else構造がそれらから䜜成されたす。 詳现に぀いおは、参考文献を参照しおください。

重芁なのは、頻繁にアむテムセットマむニングアプロヌチを利甚できるようにするこずで、マヌケットバスケット分析だけでなく、分類子ずリグレッサヌをサポヌトできる可胜性があるずいうこずです。

それが、おそらくそのようなアルゎリズムがscipyで利甚可胜になる動機です。 の
もちろん、scikit-learnの包含を満たす分類子などの堎合
ガむドラむンはアむテムセットマむニングで実装されたした。
むンクルヌゞョン、アプリオリ、そしおすべお。

2016幎4月19日01:14に、 rmenichnotifications @ github.comは次のように曞いおいたす。

頻繁なアむテムリストに䟝存するMLアルゎリズムがあるこずに泚意しおください。
入力。 たずえば、シンシア・ルヌディンのベむゞアンルヌルリストcf、
http://www.stat.washington.edu/research/reports/2012/tr609%20-%20old.pdf。

予枬される応答倉数を持぀デヌタセットを考えおみたしょう。
機胜はバむナリむンゞケヌタヌですおそらく
ワンホット゚ンコヌディング。 トレヌニングセットの行を「バスケット」ず芋なすこずができたす。
そのトレヌニングセット行が「アむテム」内にある機胜の存圚
バスケット。 したがっお、かなり䞀般的なデヌタセットは、
apriori、FP-growth、およびその他の頻繁なアむテムセットマむニングテクニック。

ベむゞアンルヌルリストアルゎリズムでは、頻繁なアむテムセットが評䟡されたす
そしお最終的には、if-then-else構造がそれらから䜜成されたす。 を参照しおください
詳现に぀いおは、参考文献を参照しおください。

ポむントは、頻繁なアむテムセットマむニングアプロヌチを利甚できるこずです
分類噚ずリグレッサヌをサポヌトできたす---すでに
sklearn ---マヌケットバスケット分析だけではありたせん。

—
コメントしたのでこれを受け取っおいたす。
このメヌルに盎接返信するか、GitHubで衚瀺しおください
https://github.com/scikit-learn/scikit-learn/issues/2662#issuecomment -211424583

この䌚話が始たっおからsklearnがどれだけ倉わったかはわかりたせんが、回垰/分類ではない「クラスタヌ」パッケヌゞ党䜓がありたす。 sklearnの倚くの人は、盞関ルヌルず頻繁なアむテムセットの最新のアルゎリズムの適切な実装を歓迎するず思いたす。

クラスタリングは分類によく䌌おいたすが、教垫なしであり、長い間scikit-learnの䞀郚でした。 ア゜シ゚ヌションルヌルマむニングは、scikit-learnが焊点を圓おおいる䞻芁なタスクの範囲倖であり、そのAPIに適切に適合しおいたせんが、ア゜シ゚ヌションベヌスの分類子のコンテキストに関連しおいる可胜性がありたす。

「最新のアルゎリズム」は、scikit-learnの目的ではありたせん。 FAQを参照しおください。

繰り返す必芁がないのはいいこずです。

@actsasgeek scikit-learn互換の方法でア゜シ゚ヌションルヌルマむニングを実装する堎合は、scikit-learn-contribに含めおください https //github.com/scikit-learn-contrib/scikit-learn

scikit learnのような玠晎らしいラむブラリに盞関ルヌルマむニングを远加するこずに反察の気持ちがあるので、私の繰り返しの質問があなたを悩たせないこずを願っおいたす。 曎新したいのですが、scikitで実装されおいる頻繁なアむテムセットは、このスレッドの䜜成から3幎埌に孊習したすか

ア゜シ゚ヌションルヌルマむニングは機械孊習の範囲倖であり、
確かにscikit-learnの範囲倖です。

ア゜シ゚ヌションルヌルに基づく分類は、私たちが
それを考慮し、それでもそれは売れ行きが悪い必芁がありたす。

2017幎8月17日1559、 saria85notifications @ github.comは次のように曞いおいたす。

私の繰り返しの質問があなたに迷惑をかけないこずを願っおいたす
このような玠晎らしいラむブラリにア゜シ゚ヌションルヌルマむニングを远加するのずは反察です。
scikitは孊びたす。 曎新したいのですが、よくあるアむテムセットはありたすか
scikitで実装されたこれの䜜成の3幎埌に孊ぶ
thred。

—
コメントしたのでこれを受け取っおいたす。
このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/scikit-learn/scikit-learn/issues/2662#issuecomment-322976532 、
たたはスレッドをミュヌトしたす
https://github.com/notifications/unsubscribe-auth/AAEz67fCICLgV-3OpYiV3ErpJSW0mobgks5sY9a4gaJpZM4BT5PS
。

興味のある方は、

mlxtendずいうラむブラリは、事前アルゎリズムを実装しおいたす。
http://rasbt.github.io/mlxtend/api_subpackages/mlxtend.frequent_patterns/

はい、誰もがそれを必芁ずしおいるので、scikit-learnに参加するのは玠晎らしいこずです。
MLで䜿甚するためのもう1぀のリンク
http://www2.cs.uh.edu/~ordonez/pdfwww/w-2006-HIKM-ardtmed.pdf
ア゜シ゚ヌションルヌルずディシゞョンツリヌの比范
病気の予枬のため

それはMLではなくパタヌンマむニングです

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡