I'm developing a Scala-based extreme learning machine, in Apache Spark. My model has to be a Spark Estimator and use the Spark framework in order to fit into the machine learning pipeline. Does anyone know if Breeze can be used in tandem with Spark? All of my data is in Spark data frames and conceivably I could import it using Breeze, use Breeze DenseVectors as the data structure then convert to a DataFrame for the Estimator part. The advantage of Breeze is that it has a function pinv for the Moore-Penrose pseudo-inverse, which is an inverse for a non-square matrix. There is no equivalent function in the Spark MLlib, as far as I can see. I have no idea whether it's possible to convert Breeze tensors to Spark DataFrames so if anyone has experience of this it would be really useful. Thanks!
Can Spark and the ScalaNLP library Breeze be used together?
1.3k Views Asked by LucieCBurgess At
1
There are 1 best solutions below
Related Questions in APACHE-SPARK
- Getting error while running spark-shell on my system; pyspark is running fine
- ingesting high volume small size files in azure databricks
- Spark load all partions at once
- Databricks Delta table / Compute job
- Autocomplete not working for apache spark in java vscode
- How to overwrite a single partition in Snowflake when using Spark connector
- Parse multiple record type fixedlength file with beanio gives oom and timeout error for 10GB data file
- includeExistingFiles: false does not work in Databricks Autoloader
- Spark connectors from Azure Databricks to Snowflake using AzureAD login
- SparkException: Task failed while writing rows, caused by Futures timed out
- Configuring Apache Spark's MemoryStream to simulate Kafka stream
- Databricks can't find a csv file inside a wheel I installed when running from a Databricks Notebook
- Add unique id to rows in batches in Pyspark dataframe
- Does Spark Dynamic Allocation depend on external shuffle service to work well?
- Does Spark structured streaming support chained flatMapGroupsWithState by different key?
Related Questions in MATRIX-INVERSE
- Why does this inverse matrix encryption, decryption not work with more than 1 digit matrix as a key?
- numpy.array_equal returns False for matching np arrays
- Speeding up sparse inversion, element-wise multiplication and addition in python
- Triangular linear system with triangular right hand side in python
- Do CPXbinvcol and CPXbinvrow in CPLEX's C API calculate the inverse matrix or retrieve a precalculated inverse?
- Why is my Python code 3x slower than my Matlab code? (matrix multiplication and inversion)
- Simultaneous Inverse Matrix Computations in TensorFlow for Orthogonal Matching Pursuit
- Optimise matrix inversion in Python for impedance calculation
- Recover a matrix after matrix multiplication
- Why is my gaussian elimination algorithm failing?
- Python version of matlab code is very slow
- Haskell implementation of Determinant, Rank and Inverse Matrix calculation- input matrix size limitation
- Calculate the inverse of an n x n matrix
- How to apply the pseudo-inverse of a matrix to N arrays with Cupy?
- Why is this simple Fortran matrix inversion code not returning the expected value with LAPACK?
Related Questions in SCALA-BREEZE
- Calculate square root of covariance matrix in Scala
- ClassNotFoundException: breeze.storage.Zero$DoubleZero$
- Apply function on two breeze matrices
- Compute softmax using breeze
- Generating same set of random DenseVector from Apache dictributions - Breeze
- Can't create Breeze DenseMatrix with Scala3
- Problem with evidence parameters in breeze
- Scala breeze error: could not find implicit value for parameter
- Scala Breeze matrix outer product
- Does anyone knows how to create a DenseVector[Double] using Breeze library in scala
- Generic method that take as input Breeze Vector or Breeze Matrix
- Counting non-zero elements in a sparse matrix using breeze
- how DenseVector to convert to DenseMatrix
- Using -= with incompatible types (Double and DenseVector) causes strange scala compiler error
- Adding Sparse Vectors 3.0.0 Apache Spark Scala
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Breeze can be used with Spark. In fact is used internally for many MLLib functions, but required conversions are not exposed as
public. You can add your own conversions and use Breeze to process individual records.For example for
Vectorsyou can find conversion code:SparseVector.asBreezeDenseVector.asBreezeVector.fromBreezeFor
Matricesplease seeasBreeze/fromBreezein Matrices.scalaIt cannot however, be used on distributed data structures. Breeze objects use low level libraries, which cannot be used for distributed processing. Therefore
DataFrame- Breeze objects conversions are possible only if youcollectdata to the driver and are limited to the scenarios where data can be stored in the driver memory.There exist other libraries, like SysteML, which integrate with Spark and provide more comprehensive linear algebra routines on distributed objects.