データサイエンス

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


5
役立つ注釈ツール(ある場合)
私と私のチームがトレーニングセットに注釈を付けるのに役立つツールを探しています。大量のデータセットがある環境で作業しています。その一部は非構造化または半構造化されています。多くの場合、根拠のある真実を見つけるのに役立つ登録があります。ただし、多くの場合、評価のためだけのものであっても、キュレートされたセットが必要です。複雑な要因は、一部のデータが前提を離れることができないことです。 オブジェクト検出タスクに注釈を付けることを検討していますが、画像セグメンテーションタスク、テキスト分類タスク、および感情検出タスクが近い将来に見込まれます。 私が探しているのは、グループが注釈を作成するのを支援できるシステムです。できれば、グループの進捗状況、相対的な個人の進捗状況、そしておそらく個人の注釈者間の合意を示すことで、アノテーターに動機を与える方法です。

3
LSTMセル、ユニット、入力に関する質問
LSTMネットワークがどのように機能するかを学習しようとしています。基本を理解しても、内部構造の詳細はわかりません。 このブログリンクで、私はこのLSTMアーキテクチャのスキームを見つけました 明らかに、すべての円はLSTMこのような個々のユニットに対応している必要があります これは正しいです? セル内の各ユニットは他のユニットから独立していますか?または、彼らは情報を共有しますか? 次の構成があるとします。サンプル数= 1000時間ステップ数= 10特徴数= 5 この場合、セルの各ユニットは、サイズ5のベクトルを入力として受け取りますか? しかし、1つのユニットの出力のサイズはどうなるでしょうか。1? ありがとう

2
タスク期間を予測する
タスクの期間を予測する回帰モデルを作成しようとしています。私が持っているトレーニングデータは、これらの変数を使用して約4万の完了したタスクで構成されています。 誰がタスクを実行したか(約250人) プロジェクトのどの部分(サブプロジェクト)でタスクが実行されたか(約20の異なる部分) タスクのタイプ タスクの開始日(10年分のデータ) タスクを実行しなければならない人がそれがかかると推定する時間 このタスクが完了するまでにかかった実際の期間 所要時間は30分から数百時間の間で変動しますが、かなり正確に歪んでいます(ほとんどのタスクは10時間以内に完了します)。対数スケールでは、分布はまだわずかに右に歪んでいます。 予測は完璧である必要はありませんが、私は人々の推定を改善しようとしています。質問の1つは、「定義されたbeterをどのような尺度で使用できるか」です。大きな誤差は小さな誤差よりもはるかに悪いため、平均二乗誤差(MSE)が最良の測定になると思います。 機械学習に移る前に、平均または中央値の誤差で推定値を調整したり、サブプロジェクトでグループ化された人別の平均値/中央値誤差で調整したりするなど、いくつかの単純なアプローチを試しましたが、これらはそれぞれパフォーマンスが低下しました。 機械学習で最初に遭遇した問題の1つは、カテゴリ変数の数でした。これは、ほとんどのモデルでこれらを何らかの方法でエンコードする必要があるためです(例:ワンホット)。とにかく、私はいくつかの線形モデルを適用しようとしました。たとえば、確率的勾配降下法では、私のアプローチは次のようになります。 カテゴリ機能をワンホットエンコード 日付をUNIXタイムスタンプに変換 0と1の間にないすべての機能を正規化する データを80/20学習セットとテストセットに分割します。 グリッド検索の相互検証と学習セットを使用して、最適なハイパーパラメーターを見つけ、モデルに適合させます。 テストセットで予測する エラー/スコアを計算する 今気づいたことの1つは、結果がかなり異なるということでした。ある実行では、MSEは別の実行(150および280)の2倍に近かったです。もう1つは、人々の推定値のMSEが約80であるため、モデルのパフォーマンスが少し悪いことです。 パフォーマンスを改善するための私の努力の間に、私は誰かが生存モデルを使用することを提案するこの質問を偶然見つけました。現在、私はこれらの種類のモデルに慣れていませんが、それは有望に聞こえましたが、これを使用した最初のテスト中に、目的に対して遅すぎる(データセットが大きすぎる)ことがわかりました。 生存モデル(およびWikipediaページ)の使用を提案したのと同じデータサイエンスの回答で、ポアソン回帰についても言及しましたが、これを自分のケースにどのように適用するかはわかりません。 つまり、2つの質問があります。1. SGDを使用する私のアプローチは「正しい」ものでしたか、それによって結果を改善できると思いますか?2.他のモデルはこの種の予測により適していますか?そうであれば、私がそれらをどのように使用するかを少し説明できますか?

1
DBSCANのepsを決定するためのKnn距離プロット
DBSCANアルゴリズムに対してどのeps値を選択すればよいかを知るために、knn距離プロットを使用したいと思います。このページに基づく: アイデアは、すべてのポイントからk個の最近傍への距離の平均を計算することです。kの値はユーザーによって指定され、MinPtsに対応します。次に、これらのk距離は昇順でプロットされます。目的は、最適なepsパラメータに対応する「膝」を決定することです。 numpy / sklearnでpythonを使用すると、次の点が得られます。6-knnの距離は次のとおりです。 X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]]) nbrs = NearestNeighbors(n_neighbors=len(X)).fit(X) distances, indices = nbrs.kneighbors(X) # Indices [[0 1 2 3 4 5] [1 0 2 3 4 5] [2 1 0 3 4 5] [3 4 5 0 …


2
Scikit LearnのGridSearchCVの評価指標としてコーエンのカッパを使用する方法は?
私は1:15の比率、つまり非常に低いイベント率でクラスの不均衡を抱えています。したがって、scikitでGBMのチューニングパラメータを選択するには、F1スコアの代わりにカッパを使用することを学びます。カッパは、クラスの不均衡のF1スコアよりも優れた指標です。 しかし、私はここでsklearn.metricsをscikit learnのEvaluation_metricとしてkappaを見つけることができません でした。 ご質問 gridsearchcvにカッパを含めるための回避策はありますか? scikit learnでカッパの代わりに使用できる他のより良いメトリックはありますか?

1
SMOTE手法を使用してデータセットのバランスをとるのに使用される最良のパフォーマンスメトリックは何ですか
スモートテクニックを使用してデータセットをオーバーサンプリングし、バランスのとれたデータセットを手に入れました。私が直面した問題は、パフォーマンスメトリックです。精度、再現率、f1メジャー、不均衡データセットの精度は、均衡データセットよりも優れています。 データセットのバランスがモデルのパフォーマンスを向上させる可能性があることを示すために、どの測定を使用できますか? 注意:roc_auc_scoreは、データセットが不均衡なroc_auc_scoreよりも、バランスのとれたデータセットで優れています。これは、優れたパフォーマンス測定と見なすことができますか?説明の後、コードを実装し、この結果を得ました import pandas as pd import numpy as np from sklearn import preprocessing import matplotlib.pyplot as plt plt.rc("font", size=14) from sklearn.svm import LinearSVC from sklearn.svm import SVC from sklearn.cross_validation import train_test_split,StratifiedShuffleSplit,cross_val_score import seaborn as sns from scipy import interp from time import * from sklearn import metrics X=dataCAD.iloc[:,0:71] …

1
kerasのModelCheckpointが機能しない
私はケラスでモデルをトレーニングしようとしており、ModelCheckpointを使用して、監視された検証メトリック(私の場合はJaccardインデックス)に従って最適なモデルを保存しています。 テンソルボードでモデルが改善されているのを確認できますが、重みをロードしてモデルを評価しようとすると、まったく機能しません。さらに、重みが格納されるはずのファイルのタイムスタンプから、重みがまったく保存されていないことがわかります。タイムスタンプは、トレーニングを開始した時刻にほぼ対応しています。 誰かが以前にそのような問題に遭遇したことがありますか?
8 keras  convnet 

1
不均衡なクラスに対処するためのアプローチの分類
不均衡クラス問題に対処するために開発されたアプローチを分類する最良の方法は何ですか? この記事では、それらを次のように分類しています。 前処理:オーバーサンプリング、アンダーサンプリング、ハイブリッド法を含みます コスト重視の学習:直接的な方法とメタ学習が含まれ、後者はさらにしきい値とサンプリングに分割されます。 アンサンブル手法:アンサンブル学習と組み合わせたコスト重視のアンサンブルとデータ前処理が含まれます。 第二の分類: データの前処理:分布の変更とデータ空間の重み付けが含まれます。1クラス学習は、分布の変化と見なされます。 特別な学習方法 予測後処理:しきい値法とコスト重視の後処理を含みます ハイブリッドメソッド: 3番目の記事: データレベルのメソッド アルゴリズムレベルの方法 ハイブリッド法 最後の分類では、出力調整を独立したアプローチと見なしています。 前もって感謝します。


3
プロット/画像上の点を特定するための機械学習技術はありますか?
次の画像とサンプルデータの3つのプロットに示すように、時間と車線番号に対する各車両の横位置のデータがあります。 > a Frame.ID xcoord Lane 1 452 27.39400 3 2 453 27.38331 3 3 454 27.42999 3 4 455 27.46512 3 5 456 27.49066 3 人間のドライバーは車両の位置を完全に制御できないため、横方向の位置は時間とともに変化します。車線変更操作は、横方向の位置が急激に変化したときに始まり、変化が再び「正常」になったときに終了します。これは、データから直接識別することはできません。車線変更の所要時間を推定するには、各車両のプロットを手動で見て、車線変更操作の開始点と終了点を決定する必要があります。しかし、私はデータセットに何千もの車両を持っています。これらのポイントを特定するためにトレーニングできる関連する画像分析/機械学習アルゴリズムを教えていただけませんか?私はRで働いています。よろしくお願いします。

5
トピックモデルとLDAに関するチュートリアル
トピックモデルとLDAに関する優れたチュートリアル(高速で簡単)があり、直感的にいくつかのパラメーターの設定方法、それらの意味、そして可能であれば実際の例を教えているかどうかを知りたいと思います。

2
トレーニングセットに負のy値がない場合、勾配ブースティング回帰は負の値を予測するのはなぜですか?
私は木の数を増やすと学ぶscikitさんGradientBoostingRegressor、私は私のトレーニングやテストセットには負の値が存在しないにもかかわらず、多くの負の予測を取得します。私は約10の機能を持っていますが、そのほとんどはバイナリです。 私が調整していたパラメーターのいくつかは次のとおりです。 木/反復の数; 深さを学ぶ; そして学習率。 負の値のパーセンテージは、最大で2%のようです。学習深度1(切り株)は、負の値の最大の%を持っているように見えました。このパーセンテージは、ツリーが多く、学習率が小さいほど増加するように見えました。データセットは、kaggle遊び場コンテストの1つからのものです。 私のコードは次のようなものです: from sklearn.ensemble import GradientBoostingRegressor X_train, X_test, y_train, y_test = train_test_split(X, y) reg = GradientBoostingRegressor(n_estimators=8000, max_depth=1, loss = 'ls', learning_rate = .01) reg.fit(X_train, y_train) ypred = reg.predict(X_test)

4
検証セットとテストセットの予測に違いがあるのはなぜですか?
XGBoostモデルで、通貨が次の期間(5分)に上昇または下降するかどうかを予測しようとしています。2004年から2018年までのデータセットがあります。ランダム化されたデータを95%トレインと5%検証に分割し、検証セットの精度は最大55%です。その後、新しいテストセット(2019年のデータ)でモデルを使用すると、精度が51%未満に低下します。 誰かがその理由を説明できますか? つまり、モデルがテストデータよりも検証データを "見た"(トレーニングした)とは考えていません。そのため、モデルは本当に過剰適合しているのでしょうか? 以下に簡単なモデルを添付して説明します。検証セットでは54%が得られますが、テストセットでは50.9%にすぎません。 助けてくれてありがとう! NB私が持っていた理論の1つは、一部の機能が履歴データ(移動平均など)に依存しているため、何らかのデータ漏えいの可能性があるというものでした。次に、移動平均の作成に含まれないサンプルデータのみを使用して、それを修正しようとしました。たとえば、3周期の移動平均がある場合、2周期前のデータ行をサンプリング/使用しません。それは何も変更しなかったので、以下のモデルにはありません。 NB2以下のモデルは、私が使用しているものの単純なバージョンです。私が検証セットを使用した理由は、ハイパーパラメーター調整に遺伝的アルゴリズムを使用しているためです。 import pandas as pd import talib as ta from sklearn.utils import shuffle pd.options.mode.chained_assignment = None from sklearn.metrics import accuracy_score # ## TRAINING AND VALIDATING # ### Read in data input_data_file = 'EURUSDM5_2004-2018_cleaned.csv' # For train and validation df = pd.read_csv(input_data_file) # ### …

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