データサイエンス

データサイエンスの専門家、機械学習の専門家、およびこの分野に関する知識が豊富な方へ

2
互いに素な分類器のアンサンブルで構成される分類器のROC曲線を計算する効率的なアルゴリズム
同じ入力で2つがtrueを返さないという意味で互いに素な分類子C_1 ... C_nがあるとします(たとえば、決定木のノード)。これらのサブセットの和集合である新しい分類器を構築したい(例えば、決定木のどの葉で肯定的な分類を行うかを決定したい)。もちろん、そうすることで、感度と正の予測値の間にはトレードオフがあります。だから私はROC曲線を見たいです。原則として、分類子のすべてのサブセットを列挙し、結果の感度とPPVを計算することでこれを行うことができます。ただし、nが30以上の場合、これは非常に高価です。一方、パレート最適ではない組み合わせはほぼ確実に存在するため、分岐限定戦略などが存在する可能性があります。 このアプローチが実りある可能性が高いかどうか、作業があるかどうか、または上記の状況でROC曲線を効率的に計算するためのアイデアがあるかどうかについてアドバイスをお願いします。
13 algorithms 

2
データフレーム列の平均を計算し、上位10%を見つける方法
私はScalaとSparkを初めて使い、野球の統計を使用した自作のエクササイズに取り組んでいます。ケースクラスを使用してRDDを作成し、データにスキーマを割り当ててから、それをDataFrameに変換して、SparkSQLを使用して特定の条件を満たす統計情報を介してプレーヤーのグループを選択できるようにします。 さらに検討したいプレーヤーのサブセットができたら、列の平均を見つけたいと思います。例:バッティング平均またはRBI。そこから、すべてのプレーヤーと比較した平均パフォーマンスに基づいて、すべてのプレーヤーをパーセンタイルグループに分割します。上位10%、下位10%、40-50% ただし、DataFrame.describe()関数を使用して、目的の列(mean、stddev、count、min、max)の概要をすべて文字列として返すことができました。ダブルスとして平均値と標準偏差を取得するより良い方法はありますか?また、プレイヤーを10パーセンタイルのグループに分割する最良の方法は何ですか? これまでのところ、パーセンタイル範囲をブックエンドし、コンパレータを介してプレイヤーをグループ化する関数を記述する値を見つけることですが、それは車輪の再発明に国境を接しているように感じます。 現在、次のインポートがあります。 import org.apache.spark.rdd.RDD import org.apache.spark.sql.SQLContext import org.apache.spark.{SparkConf, SparkContext} import org.joda.time.format.DateTimeFormat


1
Neo4j対OrientDB対Titan
私は社会関係マイニングに関連するデータサイエンスプロジェクトに取り組んでおり、いくつかのグラフデータベースにデータを保存する必要があります。最初は、データベースとしてNeo4jを選択しました。しかし、Neo4jの継ぎ目はうまく拡張できません。私が見つけた代替手段は、TitanとoriebtDBです。これら3つのデータベースについてこの比較を行ってきましたが、これらのデータベースについてさらに詳しく知りたいと思います。だから、誰かが最高のものを選ぶのに私を助けることができますか?主に、これらのデータベースのパフォーマンス、スケーリング、利用可能なオンラインドキュメント/チュートリアル、Pythonライブラリのサポート、クエリ言語の複雑さ、グラフアルゴリズムのサポートを比較したいと思います。他にも良いデータベースオプションはありますか?

7
私はプログラマーですが、データサイエンスの分野に入るにはどうすればよいですか?
まず第一に、この用語はとてもあいまいに聞こえます。 とにかく..私はソフトウェアプログラマーです。私がコーディングできる言語の1つはPythonです。データについて言えば、SQLを使用でき、データスクレイピングを実行できます。データサイエンスが得意とする非常に多くの記事を読んだ後、これまでに私が理解したこと: 1-統計 2-代数 3-データ分析 4-視覚化。 5-機械学習。 私がこれまでに知っていること: 1- Pythonプログラミング2- Pythonでのデータスクラップ 理論と実用の両方を磨くために、専門家が私をガイドしたり、ロードマップを提案したりできますか?約8か月の時間枠を自分に与えました。
13 beginner  career 

2
ディープニューラルネットワークトレーニングの視覚化
トレーニング中に重みをプロットするために、多層ネットワーク用のヒントン図に相当するものを見つけようとしています。 訓練されたネットワークは、Deep SRNに多少似ています。つまり、複数のヒントンダイアグラムの同時プロットを視覚的に混乱させる多数のウェイトマトリックスがあります。 誰もが複数のレイヤーを持つリカレントネットワークの重み更新プロセスを視覚化する良い方法を知っていますか? このトピックに関する論文はあまり見当たりません。何かが思いつかない場合は、代わりにレイヤーごとの重みに時間関連の情報を表示することを考えていました。たとえば、各レイヤーの経時的な重みの差分(すべての単一接続の使用を省略します)。PCAは別の可能性です。ただし、視覚化はトレーニング中にオンラインで行われるため、あまり多くの計算を行わないようにします。

1
単一の決定木を追加することによるオンラインランダムフォレスト
ランダムフォレスト(RF)は、ディシジョンツリー(DT)のアンサンブルによって作成されます。バギングを使用することにより、各DTは異なるデータサブセットでトレーニングされます。したがって、新しいデータにさらに決定的な要素を追加して、オンラインランダムフォレストを実装する方法はありますか? たとえば、10,000個のサンプルがあり、10個のDTをトレーニングします。その後、1Kサンプルを取得し、完全なRFを再度トレーニングする代わりに、新しいDTを追加します。予測は、10 + 1 DTのベイジアン平均によって行われます。 さらに、以前のデータをすべて保持する場合、新しいDTは主に新しいデータでトレーニングできます。この場合、サンプルが選択される確率は、既に選択された回数に応じて重み付けされます。

2
NLPの分類プロセスで解析ツリーのどの機能が一般的に使用されますか?
さまざまなタイプの解析ツリー構造を調査しています。2つの広く知られている解析ツリー構造は、a)Constituencyベースの解析ツリーとb)Dependencyベースの解析ツリー構造です。 スタンフォードNLPパッケージを使用して、両方のタイプの解析ツリー構造を生成できます。ただし、これらのツリー構造を分類タスクに使用する方法がわかりません。 たとえば、感情分析を行い、テキストをポジティブクラスとネガティブクラスに分類したい場合、分類タスクの解析ツリー構造からどのような特徴を導き出すことができますか?

2
独立したt検定を使用して、正規分布ではないA / Bテスト結果の分析
A / Bテストの結果セット(1つのコントロールグループ、1つの機能グループ)がありますが、正規分布に適合しません。実際、分布はランダウ分布により似ています。 独立したt検定では、サンプルが少なくともほぼ正規分布している必要があるため、有効な検定の有効な方法としてt検定を使用することはできません。 しかし、私の質問は次のとおりです 。どの時点で、t検定は有意性検定の良い方法ではないと言うことができますか? または、別の言い方をすれば、データセットのみが与えられた場合に、t検定のp値の信頼性をどのように修飾できますか?

4
機械学習アルゴリズムの研究:理解の深さとアルゴリズムの数
最近、私はデータサイエンスの分野に紹介されました(約6か月でした)。IiはAndrew Ngによる機械学習コースとJHUによるデータサイエンス専門分野の仕事を開始しました。 実用的なアプリケーションの面では、私は摩耗を予測する予測モデルの構築に取り組んできました。これまでのところ、これらの方法を学習して適用するためにglm、bayesglm、rfを使用しましたが、これらのアルゴリズムの理解には大きなギャップがあります。 私の基本的なジレンマは次のとおりです。 いくつかのアルゴリズムの複雑さの学習にもっと集中する必要があるのか​​、それとも必要なときにいつでも多くのアルゴリズムを知るというアプローチを使用する必要があるのか​​? 本や記事など、役立つと思われるものを提案するなどして、正しい方向に導いてください。 データサイエンスの分野でキャリアを始めたばかりで、ビジネスの世界で実際的な問題を解決できる人になりたいと思っている人を導くというアイデアをお寄せいただければ幸いです。 この投稿で提案されたリソース(書籍、記事)を(できるだけ多く)読んで、同様の長所と短所について個人的なフィードバックを提供して、これが同様の質問に出くわした人々に役立つ投稿になるようにします将来、これらの本を提案する人々が同じことをすることができれば素晴らしいと思います。

6
ベストプラクティスを理解するデータセット
私はデータマイニングのCSマスター学生です。私のスーパーバイザーは、分類器を実行したり、データセットを使用したりする前に、データを完全に理解し、データがクリーンで正しいことを確認する必要があると言いました。 私の質問: データセットを理解するためのベストプラクティスは何ですか(数値属性と名義属性を持つ高次元)? データセットがクリーンであることを確認するためのプラクティス? データセットの値が間違っていないことを確認する方法

1
リレーショナルデータベースのパフォーマンスが、非リレーショナルデータベースよりも優れている場合
MySQLのようなリレーショナルデータベースが、MongoDBのような非リレーショナルデータベースよりもパフォーマンスが優れている場合 先日、Quoraで、QuoraがまだMySQLをバックエンドとして使用している理由と、パフォーマンスが依然として良好であるという質問を見ました。

4
ビッグデータのケーススタディまたはユースケースの例
さまざまな業界がビッグデータ分析をどのように使用しているかについて、多くのブログや記事を読みました。しかし、これらの記事のほとんどは言及していません これらの企業が使用したデータ。データのサイズは? データの処理に使用したツールテクノロジーの種類 彼らが直面した問題は何であり、彼らがデータを得た洞察がどのように彼らが問題を解決するのを助けたか。 ニーズに合わせてツールやテクノロジーを選択した方法。 データからどのようなパターンを特定したか、データからどのようなパターンを探していたか。 誰かがこれらすべての質問に答えてくれるのか、少なくともいくつかの質問に答えるリンクを提供してくれるのではないかと思います。実世界の例を探しています。 金融業界がビッグデータ分析をどのように利用しているかを誰かが共有できたら素晴らしいと思います。

3
CNNの画像のサイズ変更とパディング
画像認識のためにCNNをトレーニングしたい。トレーニング用の画像のサイズは固定されていません。たとえば、CNNの入力サイズを50x100(高さx幅)にします。いくつかの小さなサイズの画像(たとえば32x32)を入力サイズにサイズ変更すると、画像の内容が水平方向に過度に引き伸ばされますが、一部の中サイズの画像では問題ありません。 コンテンツの破壊を回避しながら画像のサイズを変更する適切な方法は何ですか? (幅と高さの比率をある程度維持してサイズを変更した後、サイズを完全にするために0で画像をパディングすることを考えています。この方法で大丈夫でしょうか?)

1
決定木:リーフワイズ(ベストファースト)およびレベルワイズツリートラバース
問題1: ツリーの展開方法に関するLightGBMの説明に混乱しています。 彼らは述べています: ほとんどの決定木学習アルゴリズムは、次の図のように、レベル(深さ)ごとにツリーを成長させます。 質問1:どの「ほとんどの」アルゴリズムがこの方法で実装されていますか?私が知る限り、C4.5とCARTはDFSを使用します。XGBoostはBFSを使用します。決定木にBFSを使用する他のアルゴリズムまたはパッケージはどれですか? 問題2: LightGBMの状態: LightGBMは、リーフ単位で(ベストファースト)ツリーを成長させます。最大のデルタ損失を持つリーフを選択して成長させます。同じリーフを成長させる場合、リーフワイズアルゴリズムはレベルワイズアルゴリズムよりも損失を減らすことができます。 質問2:レベルごとに成長する木は、すべての葉で同じ深さになると言うのは正しいですか? 質問3:質問2が正しくない場合、レベルワイズおよびリーフワイズの成長からのツリーは、トラバーサルの終わりに同じように見えます(剪定などは行われません)。それは正しい表現ですか? 質問4:質問3が正しい場合、「リーフワイズアルゴリズムはレベルワイズアルゴリズムよりも多くの損失を減らすことができますか?」ポストプルーニングアルゴリズムに関係していますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.