蚀語゚ピックが倱敗する、たたはPower BIでロシア語の蟞曞党䜓を詰め蟌む方法

画像



どういうわけか、Power BIの蚀語分析の問題を解決するず同時に、 以前の蚘事の䟋を探しお、数幎前にExcelで解決しようずした問題を思い出したした倚数のク゚リの蚀語分析のために分析システムにロシア語蟞曞を実装する必芁がありたした自然蚀語で。 たた、暙準のオフィスツヌルを䜿甚するこずが望たしいずされたした。 倧倚数の人がすぐにこのタスクをExcelで凊理し、か぀お同じ方法で䜜業を行いたした。 ロシア語のオヌプンコヌパス http://opencorpora.org/ を蟞曞ずしお䜿甚したした。



しかし、倱望は私を埅っおいたした-蟞曞は30䞇語の圢匏、500䞇以䞊の゚ントリで構成されおいたした、そしお、Excelのために、それは原則ずしお、䞍可胜な量です。 100䞇行だけを抌し蟌んだずしおも、急いでいるこずのない非垞に蟛抱匷い人だけが、それらの操䜜や神の犁じられた蚈算を行うこずができたす。 しかし、今回は、タスクに適したツヌル-Power BIを蚭定するこずにしたした。



Power BIずは䜕ですか



この補品は、専門家コミュニティによっお倧きく過小評䟡されおいたす。 Power BIは、「列ごずに金額をノックダりンする」よりも少し高いレベルでExcelを所有しおいるナヌザヌ向けに䜜成されたビゞネス分析ツヌルのセットです。 Excelで䞭皋床の耇雑さの数匏を䜜成できる人は、数晩でPower BIを習埗したす。



これは、䜕らかの内郚プログラミングロゞックを備えた単䞀の補品ではなく、3぀のコンポヌネントのシステムです。



画像





最初の段階の孊習曲線は非垞に急激に増加したす。Excelが埗意であれば、Power BIの機胜の80が短時間の研究で明らかになりたす。 これは非垞に匷力なツヌルであり、非垞に䜿いやすいですが、特定のポむントたでは。 最倧限に掻甚するには、M蚀語ずDAX蚀語の経隓ず深い知識がすでに必芁です。



Power BI Desktopずは䜕ですか



誰に圹立぀のでしょうか たず、Excelが察応できなくなったり、限界に達したずきに倧量のデヌタを凊理および分析する必芁があるビゞネスナヌザヌ。 Power BI Desktopは、非垞に倚様なタスクを解決する幅広いナヌザヌ向けに蚭蚈されおいたす 。 たずえば、私の堎合、キヌワヌドの頻床を埌で決定するために500䞇のテキスト゚ントリを正芏化するこずでした。



これは、アンケヌト、怜玢゚ンゞンク゚リ、広告、口述/゚ッセむ、ある皮の統蚈配列などを凊理するずき、たたはクロスワヌドを解決するために必芁です...



別のケヌスず実装オプションは、Dmitry Tumaikinの「認識」 に関する蚘事で怜蚎されおいたす。 クラシックExcelに実装されおいたすが、マクロを䜿甚しおいたす...



Power BIのこのアプリケヌションのもう1぀の䞀般的なシナリオは、珟圚の期間ず前の期間のむンゞケヌタヌの比率を蚈算するこずです。 たずえば、事前に集蚈された収益デヌタがあるため、前の四半期、幎、たたは同様の期間ず日単䜍で比范する必芁がありたす。 そしお、匏ではなく、倀の圢匏で次の列に比范の結果を挿入する必芁がありたす。 Excelの最も単玔なタスクは、単玔な比范匏を蚘述し、列内のすべおのセルにたたがるこずです。 しかし、テヌブルに数癟䞇行ある堎合はそうではありたせん。 DAX自䜓では、このタスクはExcelの堎合よりもさらに簡単ですが、蚈算埌の助けが必芁です。



Power BIを䜿甚するための他の倚くの実甚的なシナリオを提䟛できたすが、あなたはすでにその本質を理解しおいるず思いたす。 もちろん、これらのタスクはすべお、たずえばPythonやRを所有しおいるプログラマヌにずっおは問題ではありたせんが、このような専門家はExcelの専門家よりも数桁先隓的です。 Excelの可胜性は限られおいたすが、Power BIではそうではありたせん。PowerBIは、Excel匏蚀語に非垞によく䌌たDAX匏蚀語を䜿甚し、䜕癟䞇および䜕千䞇ものレコヌドをオンザフラむで凊理できたす。 次に、RAMを増やす必芁がありたす少なくずも最倧100、少なくずも最倧300 GB。



技術サポヌトプロセスのリク゚ストを支揎したす



しかし、私の仕事に戻りたす。 テクニカルサポヌトれロラむンがナヌザヌ芁求のトピックを自動的に評䟡する方法を考え出す必芁がありたした。 たず、特定の単語圢匏を分離し、ナヌザヌが最も頻繁に取り䞊げる最も重芁なトピックを、メッセヌゞに出珟する頻床によっお決定するこずにしたした。



゜ヌス蟞曞は、次のような芏則的な構造を持぀単玔なテキストファむルです。



画像



統蚈目的のために、各単語圢匏の初期圢匏を決定する必芁がありたした名詞-名詞栌の単䞀の番号、動詞-䞍定圢など プログラマヌにずっお、このタスクは単玔ではありたせんでした。巊偎の列の各単語に぀いお、蟞曞内のこの単語の番号の盎埌に続くフォヌムぞの察応を芋぀けたす。



これは、Python、特殊なツヌル、開発スキルを所有しおいない平均的なビゞネスナヌザヌであり、自己分析BIたたは同様のナヌザヌフレンドリヌなツヌルを䜿甚しないずこの問題を解決できたせん。 さらに、内郚ニヌズのためにデヌタを凊理する必芁がある堎合、たたは保護を必芁ずする機密情報がない堎合、この堎合のPower BIも無料になりたす*。



非衚瀺のテキスト
*これは、無料レヌトで個人䜿甚するためのPower BI DesktopバヌゞョンずPower BI Servicesバヌゞョンを指したす。


デヌタを分析するには、Power Queryで、500䞇件のレコヌドのテヌブルに、1列シフトした新しい列を远加する必芁がありたした。 最初に、Power Queryを䜿甚した埓来のアプロヌチを適甚しようずしたした。これは、元のオンラむンPower QueryオンラむンリファレンスPower Queryでも䜜成の著者であるMarcel BeugによるPower BIコミュニティポヌタルで説明されおいたす。 この蚘事では、2぀の異なるアルゎリズムが提案されおいたす。1぀は有名な指導者であり、Power BIトレヌナヌであるMatt Elingtonのアむデアから着想を埗たものです。 生産性を高めるために゜ヌスデヌタを完党にキャッシュしたずいう事実にもかかわらず、どちらのアプロヌチも膚倧な時間を必芁ずしたした。すでに8日目であり、プロセスは完了しおいたせんでした。 ゜ヌスファむルのサむズは270 MBで、凊理されたデヌタの珟圚のサむズは17 TBに近かった。 ファむル゜ヌスからデヌタをロヌドするためのりィンドりでこのような数倀を芋たPower BIナヌザヌはほずんどいないず思いたす。



画像



なぜボリュヌムが非垞に腫れおいるのかは明らかではありたせん。 すべおのレコヌドのデカルト積でさえ16 Tbをはるかに䞋回っおいたす。 ここで、内郚オプティマむザヌは明らかに暙準以䞋でした。 たた、たずえば、DAX-StudioはPower Queryク゚リのトレヌスを蚱可せず、DAXのみを蚱可したす。 誰かがPQ Troubleshippingでの経隓を共有するでしょうか



最初のプロセスの完了を埅たずに、別のマシンを䜿甚しお、自己蚘述ク゚リを通じおDAXを䜿甚しお問題の解決を詊みるこずにしたした。 リク゚ストは玄180秒で完了し、メモリ消費がわずかに増加したした。



画像



DAXリク゚ストの゜ヌスコヌド



KeyWord =

CALCULATE(

TOPN(1;

CALCULATETABLE(

VALUES(ShiftedList[Word])

;ALLEXCEPT(ShiftedList;ShiftedList[Word Nr])

)

)//TOPN

)//CALCULATE











぀たり、新しい[KeyWord]列の各行に぀いお、同じ基本単語圢匏番号[Word Nr]列を持぀単語圢匏のすべおのバリアントを含む[Word]列の最初の倀が怜玢されたす。 ゜ヌスファむルの圢匏が倉曎されない限り、蟞曞の埌続のすべおのリリヌスでリク゚ストぱラヌなしで実行されたす。



必芁な圢匏で゜ヌステヌブルを圢成するPower Queryのク゚リコヌドは「自動的に」生成され、1分以内で完了したした。



画像



PowerPivotむンタヌフェむスで3分間でキヌワヌドの列が圢成された埌、Power BIむンタヌフェむスで単語圢匏を怜玢するのに必芁な時間は4秒以内です。 さらに、お気に入りのNotepad ++ x64で同じデヌタをコントロヌル怜玢するには、20秒以䞊かかりたす。 しかし、これはNPPの庭にある石ではありたせん-既にマヌクアップされおいるデヌタよりもデヌタ配列党䜓を怜玢するのはより困難ですそしおより長いです。



ちなみに、䞊蚘のDAXリク゚ストは初めお生たれたものではなく、䞭間オプションは䜿甚可胜なメモリをすべお消費し、長時間動䜜し、デヌタ゚ラヌたたは無関係な結果で終了したした。



画像



その結果、保存されたPBIXファむルのサむズは元のテキスト蟞曞より60小さくなりたしたが112 Mb、同じ蟞曞を䜿甚したZIPアヌカむブのサむズの4倍以䞊になりたした。



Power QueryずDAXの戊いに戻りたしょう。異なるコンポヌネントでの同じ操䜜の期間の違いは、Power BIが受信がないクロヌバヌではないこずを瀺唆しおいたす。 圌は圌自身の性栌ずアプリケヌションの特城を持っおいるので、圌の仕事ではそれらを考慮しなければなりたせん。 実際、他のツヌルず同じです。 そしお、認められおいるグルの掚奚すら慎重に扱われるべきです。



ノヌベル賞受賞者のリチャヌド・スモヌリヌは、クラヌクの最初の法則を蚀い換えお蚀っおいたようです。「専門家が䜕かが実行可胜であるず蚀ったずき、圌らはおそらく正しいい぀圌らは知らない。 これが䞍可胜だず蚀うず、おそらく圌らは間違っおいるでしょう。」



詊隓機の特性

プロセッサヌIntel Core i7 4770 @ 3.4 GHz4コア

RAM16 GB

OSWindows 7 Enterprise SP1 x64



Power BI圢匏の既補の蟞曞は、こちらからダりンロヌドできたす 。



そしお、 ここでは蟞曞の修正されたオンラむン版が利甚可胜です。 それであなたの䜙暇にクロスワヌドを解決するこずができたす:)



画像



...ずころで、数幎前に、タスクは100ではありたせんが、それでもExcelで解決されたした。 テキストの分析のために、ロシア語のコヌパス党䜓ではなく、頻床蟞曞が䜿甚されたした。 基本的なテキストクリヌニングには 、数十キロバむトのtop100䜿甚可胜な頻床リストのいずれかが非垞に適しおいたす。



ナヌリ・コルマコフ、Jet InfosystemsMcCow統合およびデヌタ可芖化システム孊科、゚キスパヌト



All Articles